using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using DSWeb.Models; using System.Collections.Generic; using JsonHelper; using DSWeb.EntityDA; using DSWeb.Log; namespace DSWeb.ParameterSet { public partial class CodeStlmodeSet : System.Web.UI.Page { private string recvJSON; RangeDA RangeDA = new RangeDA(); T_ALL_DA T_ALL_DA = new T_ALL_DA(); public string strUserID;//用户GID protected void Page_Load(object sender, EventArgs e) { if (Session["USERID"] != null) { strUserID = Session["USERID"].ToString().Trim(); } else { Server.Transfer("~/Error/FriendError.aspx"); return; //strUserID = ""; } // recvJSON = ""; recvJSON = this.recvContainer.Value.Trim(); /* //权限可视范围 this.hdRangeV.Value = RangeDA.GetVISIBLERANGE(strUserID.Trim(), "modOrderManagement"); this.hdRangeO.Value = RangeDA.GetOPERATERANGE(strUserID.Trim(), "modOrderManagement"); string alt = ""; if (this.hdRangeV.Value.Trim() != this.hdRangeO.Value.Trim()) { if (this.hdRangeO.Value.Trim().Equals("0"))//全部 { } else if (this.hdRangeO.Value.Trim().Equals("1"))//分公司 { alt = RangeDA.GetOrderManagementCompany(strUserID.Trim(), strSeaBSNO); if (alt == "") { divadd.Disabled = true; divsave.Disabled = true; divdel.Disabled = true; divrollback.Disabled = true; mygrid_container_recv.Disabled = true; } } else if (this.hdRangeO.Value.Trim().Equals("2"))//部门 { alt = RangeDA.GetOrderManagementDEPT(strUserID.Trim(), strSeaBSNO); if (alt == "") { divadd.Disabled = true; divsave.Disabled = true; divdel.Disabled = true; divrollback.Disabled = true; mygrid_container_recv.Disabled = true; } } else if (this.hdRangeO.Value.Trim().Equals("3"))//个人 { alt = RangeDA.GetOrderManagementPerson(strUserID.Trim(), strSeaBSNO); if (alt == "") { divadd.Disabled = true; divsave.Disabled = true; divdel.Disabled = true; divrollback.Disabled = true; mygrid_container_recv.Disabled = true; } } else if (this.hdRangeO.Value.Trim().Equals("4"))//无 { divadd.Disabled = true; divsave.Disabled = true; divdel.Disabled = true; divrollback.Disabled = true; mygrid_container_recv.Disabled = true; } } */ // if (!IsPostBack) { } // if (!recvJSON.Trim().Equals("")) { //应收账户保存 JsonCodeStlmodeSetGroupEntity CodeStlmodeSetGroupRecvEntity = GetPostEntity(recvJSON); List CodeStlmodeSetRecvEntities = new List(); CodeStlmodeSetRecvEntities = CodeStlmodeSetGroupRecvEntity.JsonCodeStlmodeSetEntities; SaveRecvCodeStlmodeSet(CodeStlmodeSetGroupRecvEntity); //更新完初始化 recvJSON = ""; } } #region 保存应收账户列表更改结果 /// /// 保存应收账户列表更改结果 /// /// private void SaveRecvCodeStlmodeSet(JsonCodeStlmodeSetGroupEntity tempGroupEntity) { if (tempGroupEntity != null) { List CodeStlmodeSetEntities = new List(); CodeStlmodeSetEntities = tempGroupEntity.JsonCodeStlmodeSetEntities; CodeStlmodeSetDA CodeStlmodeSetDA = new CodeStlmodeSetDA(); DataTable CodeStlmodeSetTable = new DataTable(); string strInitSql = ""; if (tempGroupEntity.JsonCodeStlmodeSetEntities.Count > 0) { strInitSql = " SELECT GID,STLCODE,STLNAME,FINANCESOFTCODE FROM code_stlmode order by STLCODE"; } else { return; } CodeStlmodeSetTable = CodeStlmodeSetDA.GetSQL(strInitSql).Tables[0]; //更新操作SQL语句 ArrayList sqlList = new ArrayList(); //日志操作SQL语句 ArrayList logList = new ArrayList(); //日志记录 Logger log = Logger.Instance; for (int i = 0; i < CodeStlmodeSetTable.Rows.Count; i++) { foreach (JsonCodeStlmodeSetEntity CodeStlmodeSet in CodeStlmodeSetEntities) { if (CodeStlmodeSetTable.Rows[i]["GID"].ToString().Trim().Equals(CodeStlmodeSet.CodeStlmodeSet1.Trim()))//惟一编号 { string strSql = ""; string LogContent = ""; LogEntity logEntity = new LogEntity(); #region 更改前后信息对比 //结算方式代码 string strSTLCODE = CodeStlmodeSet.CodeStlmodeSet2.Trim().ToLower().Equals("null") ? "" : CodeStlmodeSet.CodeStlmodeSet2.Trim(); if (!CodeStlmodeSetTable.Rows[i]["STLCODE"].ToString().Trim().Equals(strSTLCODE)) { strSql += String.Format(" STLCODE = '{0}'", strSTLCODE); LogContent += String.Format(log.GetLogContentTemplate(Logger.LogTypes.UPDATE), "结算方式代码", CodeStlmodeSetTable.Rows[i]["STLCODE"].ToString().Trim(), strSTLCODE); } //结算方式 string strSTLNAME = CodeStlmodeSet.CodeStlmodeSet3.Trim().ToLower().Equals("null") ? "" : CodeStlmodeSet.CodeStlmodeSet3.Trim(); if (!CodeStlmodeSetTable.Rows[i]["STLNAME"].ToString().Trim().Equals(strSTLNAME)) { strSql += String.Format(" STLNAME = '{0}'", strSTLNAME); LogContent += String.Format(log.GetLogContentTemplate(Logger.LogTypes.UPDATE), "结算方式", CodeStlmodeSetTable.Rows[i]["STLNAME"].ToString().Trim(), strSTLNAME); } //财务软件代码 string strFINANCESOFTCODE = CodeStlmodeSet.CodeStlmodeSet4.Trim().ToLower().Equals("null") ? "" : CodeStlmodeSet.CodeStlmodeSet4.Trim(); if (!CodeStlmodeSetTable.Rows[i]["FINANCESOFTCODE"].ToString().Trim().Equals(strFINANCESOFTCODE)) { strSql += String.Format(",FINANCESOFTCODE = '{0}'", strFINANCESOFTCODE); LogContent += String.Format(log.GetLogContentTemplate(Logger.LogTypes.UPDATE), "财务软件代码", CodeStlmodeSetTable.Rows[i]["FINANCESOFTCODE"].ToString().Trim(), strFINANCESOFTCODE); } #endregion //如果有字段内容更新则执行更新操作 if (LogContent.Trim().Length > 1) { if (strSql.Trim().StartsWith(",")) { strSql = strSql.Trim().Substring(1); } string strUpdateSql = String.Format("UPDATE {0} SET {1} WHERE GID = '{2}'", "code_stlmode", strSql, CodeStlmodeSet.CodeStlmodeSet1.Trim()); sqlList.Add(strUpdateSql); logList.Add(String.Format("更新账户标识 {0} {1}", CodeStlmodeSet.CodeStlmodeSet1.Trim(), LogContent)); } CodeStlmodeSetEntities.Remove(CodeStlmodeSet); break; } } } if (sqlList.Count > 0) { int iResult = CodeStlmodeSetDA.UpdateCodeStlmodeSetFromGrid(sqlList); //为1表示更新成功 //为-1有异常,更新失败 //为-2更新异常,事务已回滚成功 //更新完成后,记录日志 if (iResult == 1) { #region 日志记录操作 // INSERT-"INSERT INTO {0} ({1}) VALUES ({2})" @{0}-所要插入记录的表;{1}记录字段值;{2}-记录新值@ //if (logList.Count > 0) //{ // for (int i = 0; i < logList.Count; i++) // { // LogEntity logEntity = new LogEntity(); // logEntity.GID = Guid.NewGuid().ToString(); // logEntity.Name = "更新账户信息列表"; // logEntity.LogType = "UPDATE 更新操作"; // logEntity.CreateUserID = strUserID.Trim();//测试使用数据,正式发布请删除 // logEntity.LogContent = logList[i].ToString(); // log.WriteLog(logEntity); // } //} #endregion } } //如果遍历完所有币别表数据,没有相对应的币别信息,则将剩余的币别信息插入到币别表中 if (CodeStlmodeSetEntities.Count > 0) { //插入新的应收币别信息 InsertCodeStlmodeSet(CodeStlmodeSetEntities, 1); } recvJSON = ""; this.recvContainer.Value = ""; } else { recvJSON = ""; this.recvContainer.Value = ""; return; } } #endregion #region 插入账户信息记录 /// /// 插入账户信息记录 /// /// 需要插入账户表的账户实体类 /// 如果iType值为1则记录账户类型为收/否则记录为付 public void InsertCodeStlmodeSet(List CodeStlmodeSetEntities, int iType) { ArrayList sqlInsertList = new ArrayList(); CodeStlmodeSetDA CodeStlmodeSetDA = new CodeStlmodeSetDA(); CodeStlmodeSetEntity CodeStlmodeSetEntity = new CodeStlmodeSetEntity(); CodeStlmodeSetEntity CodeStlmodeSetEntityGID = new CodeStlmodeSetEntity(); string alt = ""; foreach (JsonCodeStlmodeSetEntity CodeStlmodeSet in CodeStlmodeSetEntities) { CodeStlmodeSetEntity.GID = CodeStlmodeSet.CodeStlmodeSet1.Trim().Equals("null") ? "" : CodeStlmodeSet.CodeStlmodeSet1.Trim(); CodeStlmodeSetEntity.STLCODE = CodeStlmodeSet.CodeStlmodeSet2.Trim().Equals("null") ? "" : CodeStlmodeSet.CodeStlmodeSet2.Trim(); CodeStlmodeSetEntity.STLNAME = CodeStlmodeSet.CodeStlmodeSet3.Trim().Equals("null") ? "" : CodeStlmodeSet.CodeStlmodeSet3.Trim(); CodeStlmodeSetEntity.FINANCESOFTCODE = CodeStlmodeSet.CodeStlmodeSet4.ToString().Trim().Equals("null") ? "" : CodeStlmodeSet.CodeStlmodeSet4.Trim(); // CodeStlmodeSetEntityGID = CodeStlmodeSetDA.GetModel(CodeStlmodeSetEntity.GID); if (CodeStlmodeSetEntityGID == null || CodeStlmodeSetEntityGID.GID == null) { int iResult = CodeStlmodeSetDA.Add(CodeStlmodeSetEntity); //为1表示更新成功 //为-1有异常,更新失败 //为-2更新异常,事务已回滚成功 //更新完成后,记录日志 if (iResult == 1) { } } else { alt += CodeStlmodeSetEntity.GID + ","; } } // //if (alt != "") //{ // alt=alt.Trim().Substring(0,alt.Trim().Length-1); // Page.ClientScript.RegisterStartupScript(this.GetType(), "key3", ""); //} } #endregion #region 获取账户客户保存的账户信息 /// /// 获取账户客户保存的账户信息 /// /// /// public JsonCodeStlmodeSetGroupEntity GetPostEntity(string tempValue) { JsonCodeStlmodeSetGroupEntity CodeStlmodeSetGroupEntity = (JsonCodeStlmodeSetGroupEntity)JSON.Instance.ToObject(tempValue); return CodeStlmodeSetGroupEntity; } #endregion } }