From d896f67c527862487b1aaa4bbdda8eb7fc3c7169 Mon Sep 17 00:00:00 2001 From: cyf Date: Mon, 1 Jun 2026 02:01:06 +0000 Subject: [PATCH] SVN r1196 SVN-Revision: r1196 --- 插件库/Lskj.PubBillAccount/BillModule.cs | 124 +++++++++++++++-------- 1 file changed, 82 insertions(+), 42 deletions(-) diff --git a/插件库/Lskj.PubBillAccount/BillModule.cs b/插件库/Lskj.PubBillAccount/BillModule.cs index e32e220..ddebad6 100644 --- a/插件库/Lskj.PubBillAccount/BillModule.cs +++ b/插件库/Lskj.PubBillAccount/BillModule.cs @@ -458,7 +458,7 @@ namespace Lskj.PubBillAccount txtccheck.TextField = "mc"; txtccheck.TextEdit.SourceSQL = personnelSql; txtccheck.TextEdit.Properties.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder; - txtcperson_id.SetDataSource(ReturnsResult); + txtccheck.SetDataSource(ReturnsResult); txtccheck.LabelText = labelControl20.Text; labelControl20.Hide(); @@ -706,19 +706,75 @@ namespace Lskj.PubBillAccount /// /// The source of the event. /// The instance containing the event data. - protected void OnInitializeHeaderCallBack(object sender, EventArgs e) + protected void OnInitializeHeaderCallBack() { try { + if (string.IsNullOrWhiteSpace(this.SysModel.BillOrderNo) && string.IsNullOrWhiteSpace(this.SysModel.BillMasterSql)) return; // 通过右键菜单打开单据时,判断修改还是新增 if (!string.IsNullOrEmpty(this.SysModel.BillOrderNo)) { // 修改 - string sqlValue = "select * from " + this.BillModel.MasterTable + " where 1=1"; - string sqlCond = string.Format(" and {0}='{1}'", this.BillModel.PrimaryKey, this.SysModel.BillOrderNo); - DataTable masterTable = BillImpl.GetDataTableResult(sqlValue + sqlCond); + //string sqlValue = "select * from " + this.BillModel.MasterTable + " where 1=1"; + //string sqlCond = string.Format(" and {0}='{1}'", this.BillModel.PrimaryKey, this.SysModel.BillOrderNo); + //DataTable masterTable = BillImpl.GetDataTableResult(sqlValue + sqlCond); + //this.SetBillStatus(masterTable.Rows.Count > 0 ? masterTable.Rows[0] : null); + + //2026-4-14 王杰 根据参数10单据编号替换主表sql中所有参数,获取主表数据 + //获取主表数据 + string sourceSQL = ReplaceHelper.ReplaceParamToValue(BillModel.MasterSql, this.SysModel.BillOrderNo); + DataRow sourceRow = BillImpl.GetDataRowResult(sourceSQL); + //获取明细数据 + DataTable dt = BillImpl.GetDataTableResult(ReplaceHelper.ReplaceRowParam(sourceRow, this.BillModel.DetailSql)); + + + this.detailTable.Clear(); + + // 设置表头 + this.txtcsign.TextEditObj.EditValue = sourceRow[this.BillModel.CsignFieldName] + ""; + this.txtisgnseq.TextEditObj.EditValue = sourceRow["ino_id"] + ""; + this.txtOperateDate.TextEditObj.EditValue = sourceRow["OperateDate"] + ""; + this.txtAffimDate.TextEditObj.EditValue = sourceRow["AffirmDate"] + ""; + this.txtidoc.TextEditObj.EditValue = sourceRow["idoc"] + ""; + this.txtcbill.TextEdit.EditValue = sourceRow["OperatorId"] + ""; + //this.txtcbill.TextEdit.EditValue = sourceRow["OperatorId"] + ""; + + if (sourceRow.Table.Columns.Contains("cbill")) + { + this.txtccashier.TextEdit.EditValue = sourceRow["cbill"] + ""; + } + if (sourceRow.Table.Columns.Contains("ccheck")) + { + this.txtccheck.TextEdit.EditValue = sourceRow["ccheck"] + ""; + } + if (sourceRow.Table.Columns.Contains("cbook")) + { + this.txtcbook.TextEdit.EditValue = sourceRow["cbook"] + ""; + } + + // 设置明细 + foreach (DataRow item in dt.Rows) + { + DataRow newRow = detailTable.NewRow(); + + foreach (DataColumn col in this.detailTable.Columns) + { + if (item.Table.Columns.Contains(col.ColumnName)) + { + newRow[col.ColumnName] = item[col.ColumnName]; + } + } + this.detailTable.Rows.Add(newRow); + } + + this.gridControl.DataSource = detailTable; + + // 设置借方金额 + this.txtmd.Text = CalcColumnTotal(md) + ""; + // 设置贷方金额 + this.txtmc.Text = CalcColumnTotal(mc) + ""; + this.SetBillStatus(sourceRow); - this.SetBillStatus(masterTable.Rows.Count > 0 ? masterTable.Rows[0] : null); } else { @@ -2098,7 +2154,7 @@ namespace Lskj.PubBillAccount StringBuilder fieldBuilder = new StringBuilder(); StringBuilder valueBuilder = new StringBuilder(); - fieldBuilder.Append("csign,"); + fieldBuilder.Append(this.BillModel.CsignFieldName + ","); fieldBuilder.Append("isgnseq,"); fieldBuilder.Append("OperateDate,"); fieldBuilder.Append("idoc,"); @@ -2131,7 +2187,7 @@ namespace Lskj.PubBillAccount StringBuilder updateBuilder = new StringBuilder(); // 修改单据 - updateBuilder.Append("csign='" + this.txtcsign.TextEditObj.EditValue + "',"); + updateBuilder.Append(this.BillModel.CsignFieldName+"='" + this.txtcsign.TextEditObj.EditValue + "',"); updateBuilder.Append("isgnseq='" + this.txtisgnseq.TextEditObj.EditValue + "',"); updateBuilder.Append("OperateDate='" + this.txtOperateDate.TextEditObj.EditValue + "',"); updateBuilder.Append("idoc='" + this.txtidoc.TextEditObj.EditValue + "',"); @@ -2569,6 +2625,7 @@ namespace Lskj.PubBillAccount try { this.RefreshSelectedSource(); + this.OnInitializeHeaderCallBack(); } catch (Exception ex) { @@ -2634,7 +2691,7 @@ namespace Lskj.PubBillAccount this.detailTable.Clear(); // 设置表头 - this.txtcsign.TextEditObj.EditValue = sourceRow["csign"] + ""; + this.txtcsign.TextEditObj.EditValue = sourceRow[this.BillModel.CsignFieldName] + ""; this.txtisgnseq.TextEditObj.EditValue = sourceRow["ino_id"] + ""; this.txtOperateDate.TextEditObj.EditValue = sourceRow["OperateDate"] + ""; this.txtAffimDate.TextEditObj.EditValue = sourceRow["AffirmDate"] + ""; @@ -2642,6 +2699,21 @@ namespace Lskj.PubBillAccount this.txtcbill.TextEdit.EditValue = sourceRow["OperatorId"] + ""; //this.txtcbill.TextEdit.EditValue = sourceRow["OperatorId"] + ""; + if (sourceRow.Table.Columns.Contains("cbill")) + { + this.txtccashier.TextEdit.EditValue = sourceRow["cbill"] + ""; + } + if (sourceRow.Table.Columns.Contains("ccheck")) + { + this.txtccheck.TextEdit.EditValue = sourceRow["ccheck"] + ""; + } + if (sourceRow.Table.Columns.Contains("cbook")) + { + this.txtcbook.TextEdit.EditValue = sourceRow["cbook"] + ""; + } + + + // 设置明细 foreach (DataRow item in table.Rows) { @@ -3701,36 +3773,4 @@ namespace Lskj.PubBillAccount { try { - DataRow rowItem = this.gcMain.GetFocusedDataRow(); - if (rowItem != null) - { - rowItem["cDefine13"] = this.txtcontractNoName.EditText; - } - } - catch (Exception ex) - { - string Message = ErrorMessage.PromptErrorMessage(ex); - MessageUtil.Show(Message, ex.Message); - } - } - - //客户改变 - void Oncccus_idEditEditValueChanged(object sender, EventArgs e) - { - try - { - DataRow rowItem = this.gcMain.GetFocusedDataRow(); - if (rowItem != null) - { - rowItem["ccus_id"] = this.txtcCustomer.EditValue; - } - } - catch (Exception ex) - { - string Message = ErrorMessage.PromptErrorMessage(ex); - MessageUtil.Show(Message, ex.Message); - } - } - #endregion - } -} \ No newline at end of file + \ No newline at end of file