This commit is contained in:
2026-08-21 17:03:02 +08:00
commit f065129b20
2292 changed files with 666241 additions and 0 deletions
+249
View File
@@ -0,0 +1,249 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using GThinking.N_MODEL.Page;
using GThinking.N_MISPRO.Data;
using GThinking.N_MISPRO;
using GThinking.N_MISPRO.Utility;
namespace GThinking.N_XLXSBJ
{
public partial class CXBJD_CFList : OperationBase
{
CXBJD_MXCF entity = new CXBJD_MXCF();
#region 页面事件
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860046;
this.UMName = "线缆销售报价反馈";
this.CurMaster = Master;
this.Tabs = Tab;
this.PageWidth = 700;
this.PageHeight = 500;
AddListSetMap(new ListSet(pagSHD.ID, null, grdJSLM, entity, UPSHD));
if (!IsPostBack)
{
this.Master.PnlQuery.GroupingText = "拆分";
this.Master.PnlBill.GroupingText = "拆分";
this.Master.PnlQuery.Visible = false;
Master.BtnQueryVisible = false;
Master.BtnReportVisible = false;
}
base.InitPage();
if (!IsPostBack)
{
Master_OnQuery();
GridDataBind();
}
}
#endregion
#region 模板继承事件
protected override void Master_OnQuery()
{
entity.BJDID = PageParam.GetRTrimString("BJDID");
entity.BJDXH = PageParam.GetRTrimString("BJDXH");
entity.XLXHID = PageParam.GetRTrimString("XLXHID");
entity.XLGGID = PageParam.GetRTrimString("XLGGID").Replace('*','×');
entity.XLBZID = PageParam.GetRTrimString("XLBZID");
entity.DYDJID = PageParam.GetRTrimString("DYDJID");
base.Master_OnQuery();
}
protected override void GridDataBind()
{
base.GridDataBind();
}
protected override bool Master_OnBeforeOK(object sender, EventArgs e)
{
return base.Master_OnBeforeOK(sender, e);
}
protected override bool DataLogicValid()
{
return base.DataLogicValid();
}
protected override bool Master_OnOK()
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
dberp.BeginTrans();
try
{
TSQL tmpSQL = new TSQL(dberp);
if (grdJSLM.NewRows.Count > 0)
{
for (int i = 0; i < grdJSLM.NewRows.Count; i++)
{
string sBJDID = PageParam.GetRTrimString("BJDID");
string sBJDXH = PageParam.GetRTrimString("BJDXH");
string sCFXH = grdJSLM.GetValueByFieldName("XLXSBJFKCFMX_CFXH", grdJSLM.NewRows[i]).ToString().Trim();
string sXLYSID = grdJSLM.GetValueByFieldName("XLXLB_XLYSID", grdJSLM.NewRows[i]).ToString().Trim();
string sWLID = grdJSLM.GetValueByFieldName("XLXLB_WLID", grdJSLM.NewRows[i]).ToString().Trim();
double sSL = CMISproConvert.StrToFloat(grdJSLM.GetValueByFieldName("CFSL", grdJSLM.NewRows[i]).ToString().Trim(), 0);
DOCF(dberp, tmpSQL, sBJDID, sBJDXH, sCFXH, sXLYSID, sWLID,sSL);
}
}
//使用脚本给父页面的隐藏控件赋值,调用父页面的控件事件
DialogOperationScript dos = new DialogOperationScript(this);
////dos.SetOwnerControlValue("ctl00_CPHForm_txtBJCLID", cbxBJCL.SelectedValue.Trim());
dos.ClickOwnerButton(PageParam.GetRTrimString("RefreshCtrlID"));
ShowMessage("拆分成功!");
dos.CloseSelf();
dos.Execute();
dberp.CommitTrans();
}
catch (Exception ex)
{
dberp.RollbackTrans();
ShowMessage(ex.Message);
}
return true;
}
protected override void Grid_RowDataBound(object sender, GridViewRowEventArgs e)
{
base.Grid_RowDataBound(sender, e);
}
#endregion
#region 自定义函数
private void DOCF(TDatabase dberp, TSQL SQL,string sBJDID,string sBJDXH,string sCFXH,string sXLYSID,string sWLID,double sSL)
{
double dCPBJ = 0;
SQL.Clear();
SQL.Add("select XLXSBJDMX_CPBJ from XLXSBJDMX where XLXSBJDMX_BJDID=:pBJDID AND XLXSBJDMX_XH=:pBJDXH ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pBJDXH").Value = sBJDXH;
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
dCPBJ = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDMX_CPBJ"].ToString(),0);
}
SQL.Clear();
SQL.Add(" SELECT XLXSBJDMX_ZBSL - ISNULL(HJCFSL,0) AS CFSL FROM XLXSBJDMX ");
SQL.Add(" LEFT JOIN (SELECT XLXSBJFKCFMX_BJDID,XLXSBJFKCFMX_BJDXH,SUM(XLXSBJFKCFMX_CFSL) AS HJCFSL FROM XLXSBJFKCFMX ");
SQL.Add(" WHERE XLXSBJFKCFMX_BJDID=:pBJDID AND XLXSBJFKCFMX_BJDXH=:pBJDXH ");
if (!sCFXH.Equals("") && !sCFXH.Equals("0"))
{
SQL.Add(" AND XLXSBJFKCFMX_CFXH <> :pCFXH ");
SQL.ParamByName("pCFXH").Value = sCFXH;
}
SQL.Add(" GROUP BY XLXSBJFKCFMX_BJDID,XLXSBJFKCFMX_BJDXH) A ");
SQL.Add(" ON XLXSBJFKCFMX_BJDID=XLXSBJDMX_BJDID AND XLXSBJFKCFMX_BJDXH=XLXSBJDMX_XH ");
SQL.Add(" WHERE XLXSBJDMX_BJDID=:pBJDID AND XLXSBJDMX_XH=:pBJDXH ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pBJDXH").Value = sBJDXH;
ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["CFSL"].ToString()) < sSL)
{
throw new Exception("拆分数量总和超过中标数量,请调整拆分数量!");
}
}
if (sCFXH.Equals("") || sCFXH.Equals("0"))
{
if (sSL == 0)
return;
//新增
SQL.Clear();
SQL.Add(@" INSERT INTO XLXSBJFKCFMX
(
XLXSBJFKCFMX_BJDID,
XLXSBJFKCFMX_BJDXH,
XLXSBJFKCFMX_CFXH,
XLXSBJFKCFMX_XLYSID,
XLXSBJFKCFMX_WLID,
XLXSBJFKCFMX_CFSL,
XLXSBJFKCFMX_ZBSL,
XLXSBJFKCFMX_ZBJE,
XLXSBJFKCFMX_WHR,
XLXSBJFKCFMX_WHSJ,
XLXSBJFKCFMX_WHRID
) VALUES (
:XLXSBJFKCFMX_BJDID,
:XLXSBJFKCFMX_BJDXH,
:XLXSBJFKCFMX_CFXH,
:XLXSBJFKCFMX_XLYSID,
:XLXSBJFKCFMX_WLID,
:XLXSBJFKCFMX_CFSL,
:XLXSBJFKCFMX_ZBSL,
:XLXSBJFKCFMX_ZBJE,
:XLXSBJFKCFMX_WHR,
:XLXSBJFKCFMX_WHSJ,
:XLXSBJFKCFMX_WHRID
)");
int iXH = CMISproDataBase.GetMaxXH("DBERP", "XLXSBJFKCFMX", "XLXSBJFKCFMX_CFXH",
string.Format("XLXSBJFKCFMX_BJDID ='{0}' AND XLXSBJFKCFMX_BJDXH ={1}", sBJDID, sBJDXH)) + 1;
SQL.ParamByName("XLXSBJFKCFMX_BJDID").Value = sBJDID;
SQL.ParamByName("XLXSBJFKCFMX_BJDXH").Value = sBJDXH;
if (iXH == 1)
iXH = iXH + CMISproConvert.StrToInt(sBJDXH) * 100;
SQL.ParamByName("XLXSBJFKCFMX_CFXH").Value = iXH;
SQL.ParamByName("XLXSBJFKCFMX_XLYSID").Value = sXLYSID;
SQL.ParamByName("XLXSBJFKCFMX_WLID").Value = sWLID;
SQL.ParamByName("XLXSBJFKCFMX_CFSL").Value = sSL;
SQL.ParamByName("XLXSBJFKCFMX_ZBSL").Value = sSL;
SQL.ParamByName("XLXSBJFKCFMX_ZBJE").Value = sSL * dCPBJ;
SQL.ParamByName("XLXSBJFKCFMX_WHR").Value = CurSession.UserName;
SQL.ParamByName("XLXSBJFKCFMX_WHSJ").Value = DateTime.Now;
SQL.ParamByName("XLXSBJFKCFMX_WHRID").Value = CurSession.UserId;
dberp.ExecSQL(SQL);
}
else
{
if (sSL == 0)
{
SQL.Clear();
SQL.Add("delete from XLXSBJFKCFMX where XLXSBJFKCFMX_BJDID=:pBJDID and XLXSBJFKCFMX_BJDXH=:pBJDXH and XLXSBJFKCFMX_CFXH=:pCFXH ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pBJDXH").Value = sBJDXH;
SQL.ParamByName("pCFXH").Value = sCFXH;
}
else
{
//修改
SQL.Clear();
SQL.Add(@" UPDATE XLXSBJFKCFMX SET XLXSBJFKCFMX_CFSL=:pCFSL ,XLXSBJFKCFMX_ZBSL=:pCFSL ,XLXSBJFKCFMX_ZBJE=:pZBJE
where XLXSBJFKCFMX_BJDID=:pBJDID and XLXSBJFKCFMX_BJDXH=:pBJDXH and XLXSBJFKCFMX_CFXH=:pCFXH ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pBJDXH").Value = sBJDXH;
SQL.ParamByName("pCFXH").Value = sCFXH;
SQL.ParamByName("pCFSL").Value = sSL;
SQL.ParamByName("pZBJE").Value = sSL * dCPBJ;
}
dberp.ExecSQL(SQL);
}
}
#endregion
}
}