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_MISPRO; using GThinking.N_MISPRO.Data; using GThinking.N_MODEL.Page; using GThinking.N_MISPRO.Utility; using GThinking.N_PUBLIC; using GThinking.N_MODEL.Dialog; using GThinking.N_WORKFLOW; using System.Collections.Generic; using GThinking.N_CONTROL; using System.Text; namespace GThinking.U20261363_N_XLXSBJ { [TableMap(DB = "DBERP", DbTableName = "XLXSJGBMX", Umid = 100860174, IsWorkFlow = false, IsAttach = false, UseWhr = true, QuerySelSql = " ", EntitySelSql = " ", UpdateSql = " ", InsertSql = " ", DeleteSql = " ")] public class XLBJD_JGFLD : EntityManager { } public partial class XLBJD_JGFLDInfo : SingleCardBase { XLBJD_JGFLD entity = new XLBJD_JGFLD(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860174; this.UMName = "线缆销售报价单"; this.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 180; this.PageWidth = 420; Master.EnableAttachBtn = false; Master.EnableCancelBtn = false; Master.EnableCopyBtn = false; Master.EnableDeleteBtn = false; Master.EnableEditBtn = false; Master.EnableInsertBtn = false; Master.EnablePrintBtn = false; Master.EnableRefreshBtn = false; Master.EnableSaveBtn = false; txtJCCLJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; txtJCHSJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; txtJGLWSJGF.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; txtJGLHSJGF.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; txtJGLCLJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; txtJGLHSJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; txtJGYLCLJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; txtJGYLHSJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal; base.InitPage(); if (!this.IsPostBack) { InitControls(); } } #region 模板事件继承 #endregion #region 自定义函数 private void InitControls() { int flag = 0; DataSet dsBJCL = null; string sBJCLID = PageParam.GetRTrimString("BJCLID"); string sJGBID = PageParam.GetRTrimString("JGBID"); string sBJDID = PageParam.GetRTrimString("BJDID"); string sBJDHQLY = PageParam.GetRTrimString("BJDHQLY"); string sBJLY = PageParam.GetRTrimString("BJLY"); string sBJFLID = PageParam.GetRTrimString("BJFLID"); string sBJRQ = PageParam.GetRTrimString("BJRQ"); TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); if (!sBJCLID.Equals("")) { SQL.Clear(); SQL.Add(" select XLXSBJCL_JGYBJCLID,XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where (XLXSBJCL_BJCLID = :pBJCLID or XLXSBJCL_JGYBJCLID = :pBJCLID) order by XLXSBJCL_JGYBJCLID "); SQL.ParamByName("pBJCLID").Value = sBJCLID; dsBJCL = dberp.OpenDataSet(SQL); if (dsBJCL.Tables[0].Rows.Count > 0) { //判断 加工原料 铜 for (int i = 0; i < dsBJCL.Tables[0].Rows.Count; i++) { if (dsBJCL.Tables[0].Rows[i]["XLXSBJCL_JGYBJCLID"].ToString().Trim().Equals("")) { flag = 1; } } } else { flag = 2; } } //加工料----table2 //加工原料----table3 //铜丝 if (0 == flag) { table2.Style["display"] = "block"; table3.Style["display"] = "none"; txtJGLZZSL.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("ZZSL")); txtJGLCLJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("CLJG")); txtJGLHSJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("HSJG")); txtJGLWSJGF.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("WSJGF")); txtJGLHSJGF.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("HSJGF")); //加工原料-铜 string sJGYBJCLID = dsBJCL.Tables[0].Rows[0]["XLXSBJCL_JGYBJCLID"].ToString().Trim(); TComboBox.SetComboBox("DBERP", cbxJGYLID, "select XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where 1=1 order by XLXSBJCL_BJCLID", false); TComboBox.SetComboBox("DBERP", cbxJGLID, "select XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where 1=1 order by XLXSBJCL_BJCLID", false); cbxJGYLID.SelectedValue = dsBJCL.Tables[0].Rows[0]["XLXSBJCL_JGYBJCLID"].ToString().Trim(); cbxJGLID.SelectedValue = sBJCLID; txtJCCLJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JCCLJG")); txtJCHSJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JCHSJG")); } //铜 else if (1 == flag) { table2.Style["display"] = "none"; table3.Style["display"] = "block"; txtJGYLZZSL.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("ZZSL")); txtJGYLCLJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("CLJG")); txtJGYLHSJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("HSJG")); } else { table2.Style["display"] = "none"; table3.Style["display"] = "none"; } } #endregion #region 控件事件 protected void btnQR_Click(object sender, EventArgs e) { int flag = 0; DataSet dsBJCL = null; string sBJCLID = PageParam.GetRTrimString("BJCLID"); string sJGBID = PageParam.GetRTrimString("JGBID"); string sBJDID = PageParam.GetRTrimString("BJDID"); string sWLVID = PageParam.GetRTrimString("WLVID"); string sCLVID = PageParam.GetRTrimString("CLVID"); string sBJDHQLY = PageParam.GetRTrimString("BJDHQLY"); string sBJLY = PageParam.GetRTrimString("BJLY"); string sBJFLID = PageParam.GetRTrimString("BJFLID"); string sBJRQ = PageParam.GetRTrimString("BJRQ"); string sJGYBJCLID1 = PageParam.GetRTrimString("JGYBJCLID1"); double fJGBL1 = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JGBL1")); TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); if (!sBJCLID.Equals("")) { SQL.Clear(); SQL.Add(" select XLXSBJCL_JGYBJCLID,XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where (XLXSBJCL_BJCLID = :pBJCLID or XLXSBJCL_JGYBJCLID = :pBJCLID) order by XLXSBJCL_JGYBJCLID "); SQL.ParamByName("pBJCLID").Value = sBJCLID; dsBJCL = dberp.OpenDataSet(SQL); if (dsBJCL.Tables[0].Rows.Count > 0) { //判断 加工原料 铜 for (int i = 0; i < dsBJCL.Tables[0].Rows.Count; i++) { if (dsBJCL.Tables[0].Rows[i]["XLXSBJCL_JGYBJCLID"].ToString().Trim().Equals("")) { flag = 1; } } } else { flag = 2; } } try { SQL.Clear(); SQL.Add(" select V_XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_BJCLID = :pBJCLID and V_XLXSBJDCLHQ_BJDID = :pBJDID "); SQL.Add(" and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID "); SQL.ParamByName("pBJCLID").Value = sBJCLID; SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; DataSet dsBJDCLHQ = dberp.OpenDataSet(SQL); //铜丝 if (0 == flag) { //加工料 //if (txtJGLWSJGF.Value < 0) //{ // ShowMessage("无税加工费不允许小于0!"); // return; //} //if (txtJGLHSJGF.Value < 0) //{ // ShowMessage("含税加工费不允许小于0!"); // return; //} if (txtJGLCLJG.Value < 0) { ShowMessage("无税材料价格不允许小于0!"); return; } if (txtJGLHSJG.Value < 0) { ShowMessage("含税材料价格不允许小于0!"); return; } if (dsBJDCLHQ.Tables[0].Rows.Count > 0) { //更新 SQL.Clear(); SQL.Add(" update V_XLXSBJDCLHQ "); SQL.Add(" set V_XLXSBJDCLHQ_WSJG = :XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG=:XLXSBJDCLHQ_HSJG,V_XLXSBJDCLHQ_WSJGF= :XLXSBJDCLHQ_WSJGF, V_XLXSBJDCLHQ_HSJGF=:XLXSBJDCLHQ_HSJGF, "); SQL.Add(" V_XLXSBJDCLHQ_WSJG1=:V_XLXSBJDCLHQ_WSJG1,V_XLXSBJDCLHQ_HSJG1=:V_XLXSBJDCLHQ_HSJG1,V_XLXSBJDCLHQ_JGBL1=:V_XLXSBJDCLHQ_JGBL1, "); SQL.Add(" V_XLXSBJDCLHQ_WHRID = :XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR = :XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ = :XLXSBJDCLHQ_WHSJ"); SQL.Add(" where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID "); SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGLCLJG.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGLHSJG.Value; SQL.ParamByName("XLXSBJDCLHQ_WSJGF").Value = txtJGLWSJGF.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJGF").Value = txtJGLHSJGF.Value; SQL.ParamByName("V_XLXSBJDCLHQ_WSJG1").Value = txtJGYLCLJG.Value; SQL.ParamByName("V_XLXSBJDCLHQ_HSJG1").Value = txtJGYLHSJG.Value; SQL.ParamByName("V_XLXSBJDCLHQ_JGBL1").Value = fJGBL1; SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now.ToString(); SQL.ParamByName("pBJCLID").Value = sBJCLID; SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; dberp.ExecSQL(SQL); } else { //插入 SQL.Clear(); SQL.Add(" insert into V_XLXSBJDCLHQ( "); SQL.Add(" V_XLXSBJDCLHQ_BJCLID,V_XLXSBJDCLHQ_BJDID, V_XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG, V_XLXSBJDCLHQ_WSJGF,V_XLXSBJDCLHQ_HSJGF, "); SQL.Add(" V_XLXSBJDCLHQ_JGYBJCLID1,V_XLXSBJDCLHQ_WSJG1,V_XLXSBJDCLHQ_HSJG1,V_XLXSBJDCLHQ_JGBL1, "); SQL.Add(" V_XLXSBJDCLHQ_ID,V_XLXSBJDCLHQ_TZRYID,V_XLXSBJDCLHQ_TZRYGH,V_XLXSBJDCLHQ_TZRYMC,V_XLXSBJDCLHQ_TIMESTAMP,V_XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ )"); SQL.Add(" values("); SQL.Add(" :XLXSBJDCLHQ_BJCLID, :XLXSBJDCLHQ_BJDID, :XLXSBJDCLHQ_WSJG,:XLXSBJDCLHQ_HSJG, :XLXSBJDCLHQ_WSJGF, :XLXSBJDCLHQ_HSJGF,"); SQL.Add(" :V_XLXSBJDCLHQ_JGYBJCLID1,:V_XLXSBJDCLHQ_WSJG1,:V_XLXSBJDCLHQ_HSJG1,:V_XLXSBJDCLHQ_JGBL1, "); SQL.Add(" :pCLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP, :XLXSBJDCLHQ_WHRID, :XLXSBJDCLHQ_WHR, :XLXSBJDCLHQ_WHSJ )"); SQL.ParamByName("XLXSBJDCLHQ_BJCLID").Value = sBJCLID; SQL.ParamByName("XLXSBJDCLHQ_BJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pRYGH").Value = tSession.UserId; SQL.ParamByName("pRYMC").Value = tSession.UserName; SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime(); SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGLCLJG.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGLHSJG.Value; SQL.ParamByName("XLXSBJDCLHQ_WSJGF").Value = txtJGLWSJGF.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJGF").Value = txtJGLHSJGF.Value; SQL.ParamByName("V_XLXSBJDCLHQ_JGYBJCLID1").Value = sJGYBJCLID1; SQL.ParamByName("V_XLXSBJDCLHQ_WSJG1").Value = txtJGYLCLJG.Value; SQL.ParamByName("V_XLXSBJDCLHQ_HSJG1").Value = txtJGYLHSJG.Value; SQL.ParamByName("V_XLXSBJDCLHQ_JGBL1").Value = fJGBL1; SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now; dberp.ExecSQL(SQL); } } //铜 else if (1 == flag) { //加工原料 if (txtJGYLCLJG.Value < 0) { ShowMessage("无税材料价格不允许小于0!"); return; } if (txtJGYLHSJG.Value < 0) { ShowMessage("含税材料价格不允许小于0!"); return; } if (dsBJDCLHQ.Tables[0].Rows.Count > 0) { //更新铜 SQL.Clear(); SQL.Add(" update V_XLXSBJDCLHQ "); SQL.Add(" set V_XLXSBJDCLHQ_WSJG = :XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG=:XLXSBJDCLHQ_HSJG, "); SQL.Add(" V_XLXSBJDCLHQ_WHRID = :XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR = :XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ = :XLXSBJDCLHQ_WHSJ"); SQL.Add(" where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID "); SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value; SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now; SQL.ParamByName("pBJCLID").Value = sBJCLID; SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; dberp.ExecSQL(SQL); } else { //插入 SQL.Clear(); SQL.Add(" insert into V_XLXSBJDCLHQ( "); SQL.Add(" V_XLXSBJDCLHQ_BJCLID,V_XLXSBJDCLHQ_BJDID, V_XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG, "); SQL.Add(" V_XLXSBJDCLHQ_ID,V_XLXSBJDCLHQ_TZRYID,V_XLXSBJDCLHQ_TZRYGH,V_XLXSBJDCLHQ_TZRYMC,V_XLXSBJDCLHQ_TIMESTAMP,V_XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ )"); SQL.Add(" values("); SQL.Add(" :XLXSBJDCLHQ_BJCLID, :XLXSBJDCLHQ_BJDID, :XLXSBJDCLHQ_WSJG,:XLXSBJDCLHQ_HSJG,"); SQL.Add(" :pCLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP, :XLXSBJDCLHQ_WHRID, :XLXSBJDCLHQ_WHR, :XLXSBJDCLHQ_WHSJ )"); SQL.ParamByName("XLXSBJDCLHQ_BJCLID").Value = sBJCLID; SQL.ParamByName("XLXSBJDCLHQ_BJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pRYGH").Value = tSession.UserId; SQL.ParamByName("pRYMC").Value = tSession.UserName; SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime(); SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value; SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now; dberp.ExecSQL(SQL); } //处理 因为铜导致的--铜丝,铜带等数据的变更;2020.09.21【LF】铜带细分的物料价格变更 string sJGLBJCL = ""; string sJGLWLBJCL = ""; string sJGLBJCLID = ""; double JGLWSJGF = 0.0; double JGLHSJGF = 0.0; if (dsBJCL.Tables[0].Rows.Count > 0) { //判断 加工原料 铜 for (int i = 0; i < dsBJCL.Tables[0].Rows.Count; i++) { JGLWSJGF = 0.0; JGLHSJGF = 0.0; sJGLBJCLID = dsBJCL.Tables[0].Rows[i]["XLXSBJCL_BJCLID"].ToString().Trim(); if (!dsBJCL.Tables[0].Rows[i]["XLXSBJCL_JGYBJCLID"].ToString().Trim().Equals("")) { sJGLBJCL = sJGLBJCL + dsBJCL.Tables[0].Rows[i]["XLXSBJCL_BJCLMC"].ToString().Trim() + "、"; SQL.Clear(); //查询是否存在记录 SQL.Add("select 1 from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID "); SQL.Add(" and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID "); SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pBJCLID").Value = sJGLBJCLID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { SQL.Clear(); SQL.Add(" update V_XLXSBJDCLHQ "); SQL.Add(" set V_XLXSBJDCLHQ_WSJG1 = :XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG1=:XLXSBJDCLHQ_HSJG, "); SQL.Add(" V_XLXSBJDCLHQ_WHRID = :XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR = :XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ = :XLXSBJDCLHQ_WHSJ"); SQL.Add(" where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID "); SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value; SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now; SQL.ParamByName("pBJCLID").Value = sJGLBJCLID; SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; dberp.ExecSQL(SQL); } else { string sJGYBJCLID = string.Empty; //'ZZZZZZZZ' SQL.Clear(); SQL.Add(" select XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF,XLXSCLHQ_JGYBJCLID1 "); SQL.Add(" from XLXSCLHQ "); SQL.Add(" where XLXSCLHQ_JGBID= :pJGBID "); SQL.Add(" and XLXSCLHQ_BJCLID=:pBJCLID "); SQL.Add(" and XLXSCLHQ_YXQS="); SQL.Add(" ("); SQL.Add(" select max(XLXSCLHQ_YXQS) as maxYXQS"); SQL.Add(" from XLXSCLHQ"); SQL.Add(" where XLXSCLHQ_JGBID= :pJGBID "); SQL.Add(" and XLXSCLHQ_BJCLID=:pBJCLID"); SQL.Add(" and XLXSCLHQ_YXQS<=:pYXQS"); SQL.Add(" )"); //1-价格表行情 2-报价日行情 string tSQL = string.Format(" select 1 from XLXSBJFLBJRHQCL " + " where XLXSBJFLBJRHQCL_BJCLID = '{0}' and XLXSBJFLBJRHQCL_BJFLID = '{1}' ", sBJCLID, sBJFLID); if (CMISproDataBase.ExistsRecord("DBERP", tSQL) || sBJDHQLY.Equals("2")) { SQL.ParamByName("pJGBID").Value = "ZZZZZZZZ"; SQL.ParamByName("pBJCLID").Value = sJGLBJCLID; SQL.ParamByName("pYXQS").Value = sBJRQ; DataSet dsBJRCLHQ = dberp.OpenDataSet(SQL); if (dsBJRCLHQ.Tables[0].Rows.Count > 0) { JGLHSJGF = CMISproConvert.StrToFloat(dsBJRCLHQ.Tables[0].Rows[0]["XLXSCLHQ_HSJGF"].ToString().Trim()); JGLWSJGF = CMISproConvert.StrToFloat(dsBJRCLHQ.Tables[0].Rows[0]["XLXSCLHQ_WSJGF"].ToString().Trim()); sJGYBJCLID = dsBJRCLHQ.Tables[0].Rows[0]["XLXSCLHQ_JGYBJCLID1"].ToString().Trim(); } } else { SQL.ParamByName("pJGBID").Value = sJGBID; SQL.ParamByName("pBJCLID").Value = sJGLBJCLID; SQL.ParamByName("pYXQS").Value = sBJRQ; DataSet dsJGBCLHQ = dberp.OpenDataSet(SQL); if (dsJGBCLHQ.Tables[0].Rows.Count > 0) { JGLHSJGF = CMISproConvert.StrToFloat(dsJGBCLHQ.Tables[0].Rows[0]["XLXSCLHQ_HSJGF"].ToString().Trim()); JGLWSJGF = CMISproConvert.StrToFloat(dsJGBCLHQ.Tables[0].Rows[0]["XLXSCLHQ_WSJGF"].ToString().Trim()); sJGYBJCLID = dsJGBCLHQ.Tables[0].Rows[0]["XLXSCLHQ_JGYBJCLID1"].ToString().Trim(); } } SQL.Clear(); SQL.Add(" insert into V_XLXSBJDCLHQ( "); SQL.Add(" V_XLXSBJDCLHQ_BJCLID,V_XLXSBJDCLHQ_BJDID, V_XLXSBJDCLHQ_WSJG1,V_XLXSBJDCLHQ_HSJG1,V_XLXSBJDCLHQ_WSJGF,V_XLXSBJDCLHQ_HSJGF,"); SQL.Add(" V_XLXSBJDCLHQ_JGYBJCLID1,V_XLXSBJDCLHQ_JGBL1,"); SQL.Add(" V_XLXSBJDCLHQ_ID,V_XLXSBJDCLHQ_TZRYID,V_XLXSBJDCLHQ_TZRYGH,V_XLXSBJDCLHQ_TZRYMC,V_XLXSBJDCLHQ_TIMESTAMP,V_XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ )"); SQL.Add(" VALUES(:pBJCLID,:pBJDID, :XLXSBJDCLHQ_WSJG,:XLXSBJDCLHQ_HSJG, "); SQL.Add(" isnull(:XLXSBJDCLHQ_WSJGF,0),isnull(:XLXSBJDCLHQ_HSJGF,0), "); SQL.Add(" :XLXSBJDCLHQ_JGYBJCLID1, isnull(:XLXSBJDCLHQ_JGBL1,0), "); SQL.Add(" :pCLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP,:XLXSBJDCLHQ_WHRID, :XLXSBJDCLHQ_WHR, :XLXSBJDCLHQ_WHSJ)"); SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value; SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value; SQL.ParamByName("XLXSBJDCLHQ_WSJGF").Value = JGLWSJGF; SQL.ParamByName("XLXSBJDCLHQ_HSJGF").Value = JGLHSJGF; SQL.ParamByName("XLXSBJDCLHQ_JGYBJCLID1").Value = sJGYBJCLID; SQL.ParamByName("XLXSBJDCLHQ_JGBL1").Value = 1; SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now; SQL.ParamByName("pBJCLID").Value = sJGLBJCLID; SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pRYGH").Value = tSession.UserId; SQL.ParamByName("pRYMC").Value = tSession.UserName; SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime(); dberp.ExecSQL(SQL); } //更新或插入后处理加工料的HSJG、WSJG SQL.Clear(); SQL.Add(" update V_XLXSBJDCLHQ set V_XLXSBJDCLHQ_WSJG=V_XLXSBJDCLHQ_WSJG1*V_XLXSBJDCLHQ_JGBL1+V_XLXSBJDCLHQ_WSJGF, "); SQL.Add(" V_XLXSBJDCLHQ_HSJG=V_XLXSBJDCLHQ_HSJG1*V_XLXSBJDCLHQ_JGBL1+V_XLXSBJDCLHQ_HSJGF "); SQL.Add(" where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID "); SQL.ParamByName("pBJCLID").Value = sJGLBJCLID; SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pCLVID").Value = sCLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; dberp.ExecSQL(SQL); //#region 更新XLXSBJD_TJ,XLXSBJD_LJ---不用更新,调整材料行情确定时会更新 //if (!PageParam.GetRTrimString("TBJCLID").Equals("")) //{ // SQL.Clear(); // SQL.Add("update XLXSBJD set XLXSBJD_TJ=(select "); // if (PageParam.GetRTrimString("HSBZ").Equals("Y")) // SQL.Add("XLXSBJDCLHQ_HSJG "); // else // SQL.Add("XLXSBJDCLHQ_WSJG "); // SQL.Add(" from XLXSBJDCLHQ "); // SQL.Add("where XLXSBJDCLHQ_BJDID=:pBJDID"); // SQL.Add(" and XLXSBJDCLHQ_BJCLID=:pTBJCLID"); // SQL.Add(") "); // SQL.Add("where XLXSBJD_BJDID=:pBJDID"); // SQL.ParamByName("pBJDID").Value = sBJDID; // SQL.ParamByName("pTBJCLID").Value = PageParam.GetRTrimString("TBJCLID"); // dberp.ExecSQL(SQL); //} //if (!PageParam.GetRTrimString("LBJCLID").Equals("")) //{ // SQL.Clear(); // SQL.Add("update XLXSBJD set XLXSBJD_LJ=(select "); // if (PageParam.GetRTrimString("HSBZ").Equals("Y")) // SQL.Add("XLXSBJDCLHQ_HSJG "); // else // SQL.Add("XLXSBJDCLHQ_WSJG "); // SQL.Add(" from XLXSBJDCLHQ "); // SQL.Add("where XLXSBJDCLHQ_BJDID=:pBJDID"); // SQL.Add(" and XLXSBJDCLHQ_BJCLID=:pLBJCLID"); // SQL.Add(") "); // SQL.Add("where XLXSBJD_BJDID=:pBJDID"); // SQL.ParamByName("pBJDID").Value = sBJDID; // SQL.ParamByName("pLBJCLID").Value = PageParam.GetRTrimString("LBJCLID"); // dberp.ExecSQL(SQL); //} //#endregion #region 补充----同步调整对应的物料行情 SQL.Clear(); SQL.Add(" SELECT XLXSBJCLWL_WLID,XLXSBJCLWL_BJCLID,XLXSBJCL_BJCLMC FROM XLXSBJCLWL "); SQL.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLXSBJCLWL_BJCLID "); SQL.Add(" WHERE XLXSBJCL_BJHQ = '2' and isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ' "); DataSet dsBJCLWL = dberp.OpenDataSet(SQL); if (dsBJCLWL.Tables[0].Rows.Count > 0) { for (int j = 0; j < dsBJCLWL.Tables[0].Rows.Count; j++) { if (dsBJCLWL.Tables[0].Rows[j]["XLXSBJCLWL_BJCLID"].ToString().Trim().Equals(sJGLBJCLID)) { if (!sJGLWLBJCL.Contains(dsBJCLWL.Tables[0].Rows[j]["XLXSBJCL_BJCLMC"].ToString().Trim())) { sJGLWLBJCL = sJGLWLBJCL + dsBJCLWL.Tables[0].Rows[j]["XLXSBJCL_BJCLMC"].ToString().Trim() + "、"; } string sWLID = dsBJCLWL.Tables[0].Rows[j]["XLXSBJCLWL_WLID"].ToString().Trim(); SQL.Clear(); //查询是否存在插入记录 SQL.Add("select 1 from V_XLXSBJDWLHQ where V_XLXSBJDWLHQ_BJDID=:pBJDID and V_XLXSBJDWLHQ_WLID=:pWLID "); SQL.Add(" and V_XLXSBJDWLHQ_ID = :pWLVID and V_XLXSBJDWLHQ_TZRYID = :pRYID "); SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pWLVID").Value = sWLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pWLID").Value = sWLID; DataSet dsWLHQ = dberp.OpenDataSet(SQL); if (dsWLHQ.Tables[0].Rows.Count > 0) { SQL.Clear(); SQL.Add(" update V_XLXSBJDWLHQ "); SQL.Add(" set V_XLXSBJDWLHQ_WSJG1 = :XLXSBJDWLHQ_WSJG,V_XLXSBJDWLHQ_HSJG1=:XLXSBJDWLHQ_HSJG, "); SQL.Add(" V_XLXSBJDWLHQ_WHRID = :XLXSBJDWLHQ_WHRID, V_XLXSBJDWLHQ_WHR = :XLXSBJDWLHQ_WHR, V_XLXSBJDWLHQ_WHSJ = :XLXSBJDWLHQ_WHSJ"); SQL.Add(" where V_XLXSBJDWLHQ_BJDID=:pBJDID and V_XLXSBJDWLHQ_ID = :pWLVID and V_XLXSBJDWLHQ_TZRYID = :pRYID and V_XLXSBJDWLHQ_WLID=:pWLID "); SQL.ParamByName("XLXSBJDWLHQ_WSJG").Value = txtJGYLCLJG.Value; SQL.ParamByName("XLXSBJDWLHQ_HSJG").Value = txtJGYLHSJG.Value; SQL.ParamByName("XLXSBJDWLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDWLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDWLHQ_WHSJ").Value = DateTime.Now; SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pWLVID").Value = sWLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pWLID").Value = sWLID; dberp.ExecSQL(SQL); } else { SQL.Clear(); SQL.Add(" insert into V_XLXSBJDWLHQ( "); SQL.Add(" V_XLXSBJDWLHQ_BJDID,V_XLXSBJDWLHQ_WLID, V_XLXSBJDWLHQ_WSJG1,V_XLXSBJDWLHQ_HSJG1, V_XLXSBJDWLHQ_WSJGF,V_XLXSBJDWLHQ_HSJGF,"); SQL.Add(" V_XLXSBJDWLHQ_JGYBJCLID1,V_XLXSBJDWLHQ_JGBL1, "); SQL.Add(" V_XLXSBJDWLHQ_ID,V_XLXSBJDWLHQ_TZRYID,V_XLXSBJDWLHQ_TZRYGH,V_XLXSBJDWLHQ_TZRYMC,V_XLXSBJDWLHQ_TIMESTAMP,V_XLXSBJDWLHQ_WHRID, V_XLXSBJDWLHQ_WHR, V_XLXSBJDWLHQ_WHSJ)"); SQL.Add(" SELECT "); SQL.Add(" :XLXSBJDWLHQ_BJDID,:pWLID,:XLXSBJDWLHQ_WSJG,:XLXSBJDWLHQ_HSJG,"); SQL.Add(" isnull(XLXSWLHQ_WSJGF,0),isnull(XLXSWLHQ_HSJGF,0), "); SQL.Add(" isnull(XLXSWLHQ_JGYBJCLID1,' '),isnull(XLXSWLHQ_JGBL1,0), "); SQL.Add(" :pWLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP,:XLXSBJDWLHQ_WHRID, :XLXSBJDWLHQ_WHR, :XLXSBJDWLHQ_WHSJ "); SQL.Add(" from XLXSWLHQ "); SQL.Add(" where XLXSWLHQ_JGBID=' '"); SQL.Add(" and XLXSWLHQ_WLID=:pWLID"); SQL.Add(" and XLXSWLHQ_YXQS="); SQL.Add(" ("); SQL.Add(" select max(XLXSWLHQ_YXQS) as maxYXQS"); SQL.Add(" from XLXSWLHQ"); SQL.Add(" where XLXSWLHQ_JGBID=' ' "); SQL.Add(" and XLXSWLHQ_WLID=:pWLID"); SQL.Add(" and XLXSWLHQ_YXQS<=:pBJRQ "); SQL.Add(" and (XLXSWLHQ_YXQZ>=:pBJRQ or XLXSWLHQ_YXQZ is null)"); SQL.Add(" )"); //SQL.Add(" and XLXSWLHQ_YXQZ is null "); SQL.ParamByName("XLXSBJDWLHQ_BJDID").Value = sBJDID; SQL.ParamByName("pWLVID").Value = sWLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pRYGH").Value = tSession.UserId; SQL.ParamByName("pRYMC").Value = tSession.UserName; SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime(); SQL.ParamByName("pWLID").Value = sWLID; SQL.ParamByName("XLXSBJDWLHQ_WSJG").Value = txtJGYLCLJG.Value; SQL.ParamByName("XLXSBJDWLHQ_HSJG").Value = txtJGYLHSJG.Value; SQL.ParamByName("XLXSBJDWLHQ_WHR").Value = tSession.UserName; SQL.ParamByName("XLXSBJDWLHQ_WHRID").Value = tSession.UserId; SQL.ParamByName("XLXSBJDWLHQ_WHSJ").Value = DateTime.Now; SQL.ParamByName("pBJRQ").Value = sBJRQ; dberp.ExecSQL(SQL); } //更新/插入后处理加工料的HSJG、WSJG SQL.Clear(); SQL.Add(" update V_XLXSBJDWLHQ set V_XLXSBJDWLHQ_WSJG=V_XLXSBJDWLHQ_WSJG1*V_XLXSBJDWLHQ_JGBL1+V_XLXSBJDWLHQ_WSJGF, "); SQL.Add(" V_XLXSBJDWLHQ_HSJG=V_XLXSBJDWLHQ_HSJG1*V_XLXSBJDWLHQ_JGBL1+V_XLXSBJDWLHQ_HSJGF "); SQL.Add(" where V_XLXSBJDWLHQ_BJDID=:pBJDID and V_XLXSBJDWLHQ_ID = :pWLVID and V_XLXSBJDWLHQ_TZRYID = :pRYID and V_XLXSBJDWLHQ_WLID=:pWLID "); SQL.ParamByName("pBJDID").Value = sBJDID; SQL.ParamByName("pWLVID").Value = sWLVID; SQL.ParamByName("pRYID").Value = tSession.RYID; SQL.ParamByName("pWLID").Value = sWLID; dberp.ExecSQL(SQL); } } } #endregion } } sJGLBJCL = sJGLBJCL.TrimEnd('、'); sJGLWLBJCL = sJGLWLBJCL.TrimEnd('、'); if (!sJGLBJCL.Equals("") && !sJGLWLBJCL.Equals("")) { ShowMessage("已同步调整 " + sJGLBJCL + " 的材料价格!" + "\r\n" + "已同步调整 " + sJGLWLBJCL + " 的对应物料价格!"); } else if (!sJGLBJCL.Equals("")) { ShowMessage("已同步调整 " + sJGLBJCL + " 的材料价格!"); } else if (!sJGLWLBJCL.Equals("")) { ShowMessage("已同步调整 " + sJGLWLBJCL + " 的对应物料价格!"); } } } else { //不处理 } } catch (Exception ex) { ShowMessage("调整出现错误,请联系系统管理员!" + ex); } //使用脚本给父页面的隐藏控件赋值,调用父页面的控件事件 DialogOperationScript dos = new DialogOperationScript(this); dos.ClickOwnerButton(PageParam.GetRTrimString("CallBackCtrlID")); dos.CloseSelf(); dos.Execute(); } protected void btnQX_Click(object sender, EventArgs e) { CloseWindow(); } //加工费 protected void txtJGLWSJGF_OnTextChanged(object sender, EventArgs e) { double dJGBL1 = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JGBL1")); txtJGLCLJG.Value = NumberUtils.RoundX(txtJGLWSJGF.Value + txtJCCLJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal); txtJGLHSJGF.Value = NumberUtils.RoundX(txtJGLWSJGF.Value * (1 + txtJGLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal); txtJGLHSJG.Value = NumberUtils.RoundX(txtJGLHSJGF.Value + txtJCHSJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal); } protected void txtJGLHSJGF_OnTextChanged(object sender, EventArgs e) { double dJGBL1 = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JGBL1")); txtJGLHSJG.Value = NumberUtils.RoundX(txtJGLHSJGF.Value + txtJCHSJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal); txtJGLWSJGF.Value = NumberUtils.RoundX(txtJGLHSJGF.Value / (1 + txtJGLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal); txtJGLCLJG.Value = NumberUtils.RoundX(txtJGLWSJGF.Value + txtJCCLJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal); } //材料价格 protected void txtJGYLCLJG_OnTextChanged(object sender, EventArgs e) { txtJGYLHSJG.Value = NumberUtils.RoundX(txtJGYLCLJG.Value * (1 + txtJGYLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal); } protected void txtJGYLHSJG_OnTextChanged(object sender, EventArgs e) { txtJGYLCLJG.Value = NumberUtils.RoundX(txtJGYLHSJG.Value / (1 + txtJGYLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal); } #endregion } }