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; using GThinking.N_CONTROL; using GThinking.N_MISPRO.Data; using GThinking.N_MISPRO.Utility; namespace GThinking.N_XLXSBJ { public partial class TZYZBJHInfo : SingleCardBase { TZYZBJH entity = new TZYZBJH(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860135; this.UMName = "按型号电压颜色主芯截面范围报价数量区间加价/报价数量"; this.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 450; this.PageWidth = 500; if (XLBJDUtils.GetDefaultBJU003(GetOption(100860000, "BJU003")).Equals("M")) { lblBJSLDW.Text = "M"; } else { lblBJSLDW.Text = "Km"; } SetTJYZLable(); if (!this.IsPostBack) { InitControls(); } base.InitPage(); } #region 模板事件继承 protected override void ReportDataSetAdd() { TDatabase db = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(db); sql.Add("select XLXSTZYZ_YZID, XLXSTZYZ_YZMC from XLXSTZYZ where XLXSTZYZ_MXBH='BJD' and XLXSTZYZ_TJYS='H' order by XLXSTZYZ_XSXH,XLXSTZYZ_YZID "); DataSet ds = db.OpenDataSet(sql); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sYZID = "TZYZ_" + ds.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(); string sYZMC = ds.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim(); AddUserReportField("XLXSBJDYZZH", sYZID, sYZMC, "N"); } base.ReportDataSetAdd(); } protected override void ReportRecordSetAdd() { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sSQL = new TSQL(dberp); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLXSTZYZ_YZID, XLXSTZYZ_YZMC "); SQL.Add(" from XLXSTZYZ"); SQL.Add(" where XLXSTZYZ_MXBH = 'BJD' and XLXSTZYZ_TJYS='H' order by XLXSTZYZ_XSXH,XLXSTZYZ_YZID "); DataSet ds = dberp.OpenDataSet(SQL); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { sSQL.Add(string.Format(",sum(decode(XLXSBJDYZZH_YZID, '{0}', XLXSBJDYZZH_YZZ, 0)) as TZYZ_{0}", ds.Tables[0].Rows[i][0].ToString().Trim())); } sSQL.Text = "select 1" + sSQL.Text + " from XLXSBJDYZZH where XLXSBJDYZZH_JGBID='" + txtJGBID.Value.Trim() + "' and XLXSBJDYZZH_XLXHID = '" + (cbxXLXHID.SelectedValue.Trim().Equals("") ? " " : cbxXLXHID.SelectedValue.Trim()) + "' and XLXSBJDYZZH_DYDJID = '" + (cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim()) + "' and XLXSBJDYZZH_XLYSID = '" + cbxXLYSID.SelectedValue.Trim() + "' and XLXSBJDYZZH_ZXJMSX= " + txtZXJMSX.Value + " and XLXSBJDYZZH_ZXJMXX= " + txtZXJMXX.Value + "' and XLXSBJDYZZH_BJSLSX= " + txtBJSLSX.Value + " and XLXSBJDYZZH_BJSLXX= " + txtBJSLXX.Value + ""; AddUserReportSQL("XLXSBJDYZZH", sSQL); base.ReportRecordSetAdd(); } protected override void SetControlState() { base.SetControlState(); txtWHR.Enabled = false; datWHSJ.Enabled = false; # region 给调价因子控件设只读性 if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy || ControlState == TControlState.ctsEdit) { for (int i = 1; i <= 20; i++) { gtNumTextBox txtTJYZ = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "TJYZ" + i); txtTJYZ.Enabled = false; } string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0') + "|"; gtNumTextBox txtTJYZ = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "TJYZ" + j.ToString().Trim()); if (sTJYZList[i].StartsWith(sTZYZID)) { txtTJYZ.Enabled = true; } } } } #endregion } protected override void LoadRecord() { if (!IsPostBack) { entity.Param.Add("XLXSBJDYZZH_JGBID", PageParam.GetRTrimString("XLXSBJDYZZH_JGBID")); entity.Param.Add("XLXSBJDYZZH_XLXHID", PageParam.GetRTrimString("XLXSBJDYZZH_XLXHID").Equals("") ? " " : PageParam.GetRTrimString("XLXSBJDYZZH_XLXHID")); entity.Param.Add("XLXSBJDYZZH_DYDJID", PageParam.GetRTrimString("XLXSBJDYZZH_DYDJID").Equals("") ? " " : PageParam.GetRTrimString("XLXSBJDYZZH_DYDJID")); entity.Param.Add("XLXSBJDYZZH_XLYSID", PageParam.GetRTrimString("XLXSBJDYZZH_XLYSID")); entity.Param.Add("XLXSBJDYZZH_ZXJMSX", PageParam.GetRTrimString("XLXSBJDYZZH_ZXJMSX")); entity.Param.Add("XLXSBJDYZZH_ZXJMXX", PageParam.GetRTrimString("XLXSBJDYZZH_ZXJMXX")); entity.Param.Add("XLXSBJDYZZH_BJSLSX", PageParam.GetRTrimString("XLXSBJDYZZH_BJSLSX")); entity.Param.Add("XLXSBJDYZZH_BJSLXX", PageParam.GetRTrimString("XLXSBJDYZZH_BJSLXX")); entity.Param.Add("XLXSBJDYZZH_YZID", PageParam.GetRTrimString("XLXSBJDYZZH_YZID")); } else { entity.Param.Add("XLXSBJDYZZH_JGBID", txtJGBID.Value.Trim()); entity.Param.Add("XLXSBJDYZZH_XLXHID", txtOLD_XLXHID.Value.Trim().Equals("") ? " " : txtOLD_XLXHID.Value.Trim()); entity.Param.Add("XLXSBJDYZZH_DYDJID", txtOLD_DYDJID.Value.Trim().Equals("") ? " " : txtOLD_DYDJID.Value.Trim()); entity.Param.Add("XLXSBJDYZZH_XLYSID", txtOLD_XLYSID.Value.Trim().Equals("") ? " " : txtOLD_XLYSID.Value.Trim()); entity.Param.Add("XLXSBJDYZZH_ZXJMSX", txtOLD_ZXJMSX.Value); entity.Param.Add("XLXSBJDYZZH_ZXJMXX", txtOLD_ZXJMXX.Value); entity.Param.Add("XLXSBJDYZZH_BJSLSX", txtOLD_BJSLSX.Value); entity.Param.Add("XLXSBJDYZZH_BJSLXX", txtOLD_BJSLXX.Value); entity.Param.Add("XLXSBJDYZZH_YZID", txtYZID.Value.Trim()); } base.LoadRecord(); txtOLD_XLXHID.Value = cbxXLXHID.SelectedValue.Trim().Equals("") ? " " : cbxXLXHID.SelectedValue.Trim(); txtOLD_DYDJID.Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); txtOLD_XLYSID.Value = cbxXLYSID.SelectedValue.Trim(); txtOLD_ZXJMSX.Value = txtZXJMSX.Value.ToString().Trim(); txtOLD_ZXJMXX.Value = txtZXJMXX.Value.ToString().Trim(); txtOLD_BJSLSX.Value = txtBJSLSX.Value.ToString().Trim(); txtOLD_BJSLXX.Value = txtBJSLXX.Value.ToString().Trim(); # region 给调价因子控件赋值 TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add(string.Format(" select XLXSBJDYZZ{0}_YZID, XLXSBJDYZZ{0}_YZZ from XLXSBJDYZZ{0} ", "H")); sql.Add(string.Format(" where XLXSBJDYZZ{0}_JGBID=:pJGBID and XLXSBJDYZZ{0}_XLXHID=:pXLXHID ", "H")); sql.Add(string.Format(" and XLXSBJDYZZ{0}_DYDJID=:pDYDJID and XLXSBJDYZZ{0}_XLYSID=:pXLYSID ", "H")); sql.Add(string.Format(" and XLXSBJDYZZ{0}_ZXJMXX=:pZXJMXX and XLXSBJDYZZ{0}_ZXJMSX=:pZXJMSX ", "H")); sql.Add(string.Format(" and XLXSBJDYZZ{0}_BJSLXX=:pBJSLXX and XLXSBJDYZZ{0}_BJSLSX=:pBJSLSX ", "H")); sql.Add(string.Format(" order by XLXSBJDYZZ{0}_YZID", "H")); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim().Equals("") ? " " : cbxXLXHID.SelectedValue.Trim(); sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXLYSID").Value = cbxXLYSID.SelectedValue.Trim(); sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; sql.ParamByName("pBJSLSX").Value = txtBJSLSX.Value; sql.ParamByName("pBJSLXX").Value = txtBJSLXX.Value; DataSet ds = dberp.OpenDataSet(sql); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sYZID = ds.Tables[0].Rows[i][0].ToString().Trim(); double dYZZ = CMISproConvert.StrToFloat(ds.Tables[0].Rows[i][1].ToString().Trim()); if (PageParam.GetRTrimString("TJYZList").Contains(sYZID + "|")) { for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0'); gtNumTextBox txtTJYZ = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "TJYZ" + j.ToString().Trim()); if (sYZID.Equals(sTZYZID)) txtTJYZ.Value = dYZZ; } } } #endregion } protected override void OnNewRecorder() { base.OnNewRecorder(); txtJGBID.Value = PageParam.GetRTrimString("XLXSBJDYZZH_JGBID"); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now); } protected override void OnCopyRecorder() { base.OnCopyRecorder(); txtJGBID.Value = PageParam.GetRTrimString("XLXSBJDYZZH_JGBID"); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now); } protected override bool DataLogicValid() { if (!base.DataLogicValid()) return false; if (cbxXLXHID.SelectedValue.Trim().Equals("")) { ShowMessage("线缆型号不允许为空!"); return false; } if (txtZXJMXX.Value < 0) { ShowMessage("主芯截面下限--不允许为负数!"); return false; } if (txtZXJMSX.Value < 0) { ShowMessage("主芯截面上限--不允许为负数!"); return false; } if (txtZXJMSX.Value != 0) { if (txtZXJMXX.Value > txtZXJMSX.Value) { ShowMessage("主芯截面下限不允许超过主芯截面上限!"); return false; } } if (txtBJSLXX.Value < 0) { ShowMessage("报价数量下限--不允许为负数!"); return false; } if (txtBJSLSX.Value < 0) { ShowMessage("报价数量上限--不允许为负数!"); return false; } if (txtBJSLSX.Value != 0) { if (txtBJSLXX.Value > txtBJSLSX.Value) { ShowMessage("报价数量下限不允许超过报价数量上限!"); return false; } } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy) { sql.Clear(); sql.Add("select XLXSBJDYZZH_XLXHID,XLXSBJDYZZH_DYDJID,XLXSBJDYZZH_XLYSID, XLXSBJDYZZH_ZXJMXX,XLXSBJDYZZH_ZXJMSX, XLXSBJDYZZH_BJSLXX,XLXSBJDYZZH_BJSLSX "); sql.Add("from XLXSBJDYZZH "); sql.Add("where XLXSBJDYZZH_JGBID=:pJGBID and XLXSBJDYZZH_YZID=:pYZID "); sql.Add(" and XLXSBJDYZZH_XLXHID=:pXLXHID and XLXSBJDYZZH_DYDJID=:pDYDJID and XLXSBJDYZZH_XLYSID=:pXLYSID "); sql.Add(" and ((XLXSBJDYZZH_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { sql.Add(" and XLXSBJDYZZH_ZXJMXX<=:pZXJMSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtZXJMSX.Value != 0) { sql.Add(" XLXSBJDYZZH_ZXJMSX>0 and XLXSBJDYZZH_ZXJMSX>=:pZXJMXX and XLXSBJDYZZH_ZXJMSX<=:pZXJMSX "); } else { sql.Add(" (XLXSBJDYZZH_ZXJMSX>0 and XLXSBJDYZZH_ZXJMSX>=:pZXJMXX) or (XLXSBJDYZZH_ZXJMSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSBJDYZZH_ZXJMXX<=:pZXJMXX and (XLXSBJDYZZH_ZXJMSX=0 or XLXSBJDYZZH_ZXJMSX>=:pZXJMSX))"); sql.Add(" ) "); sql.Add(" and ((XLXSBJDYZZH_BJSLXX>=:pBJSLXX "); if (txtBJSLSX.Value != 0) { sql.Add(" and XLXSBJDYZZH_BJSLXX<:pBJSLSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtBJSLSX.Value != 0) { sql.Add(" XLXSBJDYZZH_BJSLSX>0 and XLXSBJDYZZH_BJSLSX>:pBJSLXX and XLXSBJDYZZH_BJSLSX<=:pBJSLSX "); } else { sql.Add(" (XLXSBJDYZZH_BJSLSX>0 and XLXSBJDYZZH_BJSLSX>:pBJSLXX) or (XLXSBJDYZZH_BJSLSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSBJDYZZH_BJSLXX<:pBJSLXX and (XLXSBJDYZZH_BJSLSX=0 or XLXSBJDYZZH_BJSLSX>:pBJSLSX))"); sql.Add(" ) "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = sTJYZList[i].Split('|')[0]; sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim().Equals("") ? " " : cbxXLXHID.SelectedValue.Trim(); sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXLYSID").Value = cbxXLYSID.SelectedValue.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; if (txtZXJMSX.Value != 0) { sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } sql.ParamByName("pBJSLXX").Value = txtBJSLXX.Value; if (txtBJSLSX.Value != 0) { sql.ParamByName("pBJSLSX").Value = txtBJSLSX.Value; } DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sXZXJMQJ = ""; string sResult = "线缆型号:" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_XLXHID"].ToString().Trim(); sResult += ",电压等级:" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_DYDJID"].ToString().Trim() + ",颜色:" + getYSMC(ds.Tables[0].Rows[0]["XLXSBJDYZZH_XLYSID"].ToString().Trim()); if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMSX"].ToString()) != 0) sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMSX"].ToString().Trim(); else sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMXX"].ToString().Trim() + "~" + "--"; if (txtZXJMSX.Value != 0) sXZXJMQJ = txtZXJMXX.Value.ToString().Trim() + "~" + txtZXJMSX.Value.ToString().Trim(); else sXZXJMQJ = txtZXJMXX.Value.ToString().Trim() + "~" + "--"; string sBJSLQJ = ""; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLSX"].ToString()) != 0) sBJSLQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLSX"].ToString().Trim() + lblBJSLDW.Text.Trim(); else sBJSLQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLXX"].ToString().Trim() + "~" + "--" + lblBJSLDW.Text.Trim(); ShowMessage(string.Format("因子{1}与已有主芯截面区间【{0}】、报价数量区间【{3}】{2}的记录有交集,不允许保存!", sZXJMQJ, sTJYZList[i].Replace("(X)", ""), sResult, sBJSLQJ)); return false; } } else { sql.Clear(); sql.Add("select XLXSBJDYZZH_XLXHID,XLXSBJDYZZH_DYDJID,XLXSBJDYZZH_XLYSID,XLXSBJDYZZH_ZXJMXX,XLXSBJDYZZH_ZXJMSX,XLXSBJDYZZH_BJSLXX,XLXSBJDYZZH_BJSLSX "); sql.Add("from XLXSBJDYZZH "); sql.Add("where XLXSBJDYZZH_JGBID=:pJGBID and XLXSBJDYZZH_YZID=:pYZID "); sql.Add(" and (XLXSBJDYZZH_ZXJMXX<>:pOLDZXJMXX or XLXSBJDYZZH_ZXJMSX<>:pOLDZXJMSX "); sql.Add(" or XLXSBJDYZZH_BJSLXX<>:pOLDBJSLXX or XLXSBJDYZZH_BJSLSX<>:pOLDBJSLSX "); sql.Add(" or XLXSBJDYZZH_XLXHID<>:pOLDXLXHID or XLXSBJDYZZH_DYDJID<>:pOLDDYDJID or XLXSBJDYZZH_XLYSID<>:pOLDXLYSID ) "); sql.Add(" and ((XLXSBJDYZZH_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { sql.Add(" and XLXSBJDYZZH_ZXJMXX<=:pZXJMSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtZXJMSX.Value != 0) { sql.Add(" XLXSBJDYZZH_ZXJMSX>0 and XLXSBJDYZZH_ZXJMSX>=:pZXJMXX and XLXSBJDYZZH_ZXJMSX<=:pZXJMSX "); } else { sql.Add(" (XLXSBJDYZZH_ZXJMSX>0 and XLXSBJDYZZH_ZXJMSX>=:pZXJMXX) or (XLXSBJDYZZH_ZXJMSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSBJDYZZH_ZXJMXX<=:pZXJMXX and (XLXSBJDYZZH_ZXJMSX=0 or XLXSBJDYZZH_ZXJMSX>=:pZXJMSX))"); sql.Add(" ) "); sql.Add(" and ((XLXSBJDYZZH_BJSLXX>=:pBJSLXX "); if (txtBJSLSX.Value != 0) { sql.Add(" and XLXSBJDYZZH_BJSLXX<:pBJSLSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtBJSLSX.Value != 0) { sql.Add(" XLXSBJDYZZH_BJSLSX>0 and XLXSBJDYZZH_BJSLSX>:pBJSLXX and XLXSBJDYZZH_BJSLSX<=:pBJSLSX "); } else { sql.Add(" (XLXSBJDYZZH_BJSLSX>0 and XLXSBJDYZZH_BJSLSX>:pBJSLXX) or (XLXSBJDYZZH_BJSLSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSBJDYZZH_BJSLXX<:pBJSLXX and (XLXSBJDYZZH_BJSLSX=0 or XLXSBJDYZZH_BJSLSX>:pBJSLSX))"); sql.Add(" ) "); sql.Add(" and XLXSBJDYZZH_XLXHID=:pXLXHID and XLXSBJDYZZH_DYDJID=:pDYDJID and XLXSBJDYZZH_XLYSID=:pXLYSID "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = sTJYZList[i].Split('|')[0]; sql.ParamByName("pOLDXLXHID").Value = txtOLD_XLXHID.Value.Trim().Equals("") ? " " : txtOLD_XLXHID.Value.Trim(); sql.ParamByName("pOLDDYDJID").Value = txtOLD_DYDJID.Value.Trim().Equals("") ? " " : txtOLD_DYDJID.Value.Trim(); sql.ParamByName("pOLDXLYSID").Value = txtOLD_XLYSID.Value.Trim(); sql.ParamByName("pOLDZXJMXX").Value = txtOLD_ZXJMXX.Value; sql.ParamByName("pOLDZXJMSX").Value = txtOLD_ZXJMSX.Value; sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; sql.ParamByName("pOLDBJSLXX").Value = txtOLD_BJSLXX.Value; sql.ParamByName("pOLDBJSLSX").Value = txtOLD_BJSLSX.Value; sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim().Equals("") ? " " : cbxXLXHID.SelectedValue.Trim(); sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXLYSID").Value = cbxXLYSID.SelectedValue.Trim(); sql.ParamByName("pBJSLXX").Value = txtBJSLXX.Value; if (txtBJSLSX.Value != 0) { sql.ParamByName("pBJSLSX").Value = txtBJSLSX.Value; } if (txtZXJMSX.Value != 0) { sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sResult = "线缆型号:" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_XLXHID"].ToString().Trim(); sResult += ",电压等级:" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_DYDJID"].ToString().Trim() + ",颜色:" + getYSMC(ds.Tables[0].Rows[0]["XLXSBJDYZZH_XLYSID"].ToString().Trim()); if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMSX"].ToString()) != 0) sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMSX"].ToString().Trim(); else sZXJMQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_ZXJMXX"].ToString().Trim() + "~" + "--"; string sBJSLQJ = ""; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLSX"].ToString()) != 0) sBJSLQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLSX"].ToString().Trim() + lblBJSLDW.Text.Trim(); else sBJSLQJ = ds.Tables[0].Rows[0]["XLXSBJDYZZH_BJSLXX"].ToString().Trim() + "~" + "--" + lblBJSLDW.Text.Trim(); ShowMessage(string.Format("因子{1}与已有主芯截面区间【{0}】、报价数量区间【{3}】{2}的记录有交集,不允许保存!", sZXJMQJ, sTJYZList[i].Replace("(X)", ""), sResult, sBJSLQJ)); return false; } } } return true; } protected override bool Master_BeforeDeleteAction(object sender, EventArgs e) { string sYZIDlist = TZYZBJAInfo.GetYZIDList(PageParam.GetRTrimString("TJYZList")); entity.EntityTable.DeleteSql = " delete from XLXSBJDYZZH where XLXSBJDYZZH_JGBID =:XLXSBJDYZZH_JGBID " + " and XLXSBJDYZZH_XLXHID=:XLXSBJDYZZH_XLXHID and XLXSBJDYZZH_DYDJID=:XLXSBJDYZZH_DYDJID and XLXSBJDYZZH_XLYSID=:XLXSBJDYZZH_XLYSID " + " and XLXSBJDYZZH_ZXJMSX=:XLXSBJDYZZH_ZXJMSX and XLXSBJDYZZH_ZXJMXX=:XLXSBJDYZZH_ZXJMXX " + " and XLXSBJDYZZH_BJSLSX=:XLXSBJDYZZH_BJSLSX and XLXSBJDYZZH_BJSLXX=:XLXSBJDYZZH_BJSLXX and " + CMISproDataBase.GetWhereEqual("XLXSBJDYZZH_YZID", sYZIDlist); return base.Master_BeforeDeleteAction(sender, e); } protected override bool Master_BeforeSaveAction(object sender, EventArgs e) { if (!base.Master_BeforeSaveAction(sender, e)) return false; string sYZIDlist = TZYZBJAInfo.GetYZIDList(PageParam.GetRTrimString("TJYZList")); entity.EntityTable.UpdateSql = " update XLXSBJDYZZH " + " set XLXSBJDYZZH_JGBID = :XLXSBJDYZZH_JGBID, XLXSBJDYZZH_XLXHID=isnull(:XLXSBJDYZZH_XLXHID,' '),XLXSBJDYZZH_DYDJID=isnull(:XLXSBJDYZZH_DYDJID,' '),XLXSBJDYZZH_XLYSID=:XLXSBJDYZZH_XLYSID, " + " XLXSBJDYZZH_ZXJMSX=isnull(:XLXSBJDYZZH_ZXJMSX,0), XLXSBJDYZZH_ZXJMXX=isnull(:XLXSBJDYZZH_ZXJMXX,0), " + " XLXSBJDYZZH_BJSLSX=isnull(:XLXSBJDYZZH_BJSLSX,0), XLXSBJDYZZH_BJSLXX=isnull(:XLXSBJDYZZH_BJSLXX,0),XLXSBJDYZZH_YZZ=isnull(:XLXSBJDYZZH_YZZ,0), " + " XLXSBJDYZZH_WHR=:XLXSBJDYZZH_WHR, XLXSBJDYZZH_WHRID=:XLXSBJDYZZH_WHRID, XLXSBJDYZZH_WHSJ=:XLXSBJDYZZH_WHSJ " + " where XLXSBJDYZZH_JGBID =:XLXSBJDYZZH_JGBID " + " and XLXSBJDYZZH_XLXHID =:OLD_XLXSBJDYZZH_XLXHID and XLXSBJDYZZH_DYDJID =:OLD_XLXSBJDYZZH_DYDJID and XLXSBJDYZZH_XLYSID =:OLD_XLXSBJDYZZH_XLYSID " + " and XLXSBJDYZZH_ZXJMSX=:OLD_XLXSBJDYZZH_ZXJMSX and XLXSBJDYZZH_ZXJMXX=:OLD_XLXSBJDYZZH_ZXJMXX " + " and XLXSBJDYZZH_BJSLSX=:OLD_XLXSBJDYZZH_BJSLSX and XLXSBJDYZZH_BJSLXX=:OLD_XLXSBJDYZZH_BJSLXX and " + CMISproDataBase.GetWhereEqual("XLXSBJDYZZH_YZID", sYZIDlist); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now); return true; } protected override bool Master_AfterSaveAction(object sender, EventArgs e) { txtOLD_XLXHID.Value = cbxXLXHID.SelectedValue.Trim().Equals("") ? " " : cbxXLXHID.SelectedValue.Trim(); txtOLD_DYDJID.Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); txtOLD_XLYSID.Value = cbxXLYSID.SelectedValue.Trim(); txtOLD_ZXJMSX.Value = txtZXJMSX.Value.ToString().Trim(); txtOLD_ZXJMXX.Value = txtZXJMXX.Value.ToString().Trim(); txtOLD_BJSLXX.Value = txtBJSLXX.Value.ToString().Trim(); txtOLD_BJSLSX.Value = txtBJSLSX.Value.ToString().Trim(); txtYZID.Value = PageParam.GetRTrimString("FirstYZID"); string sJGBID = txtJGBID.Value.Trim(); string sXLXHID = cbxXLXHID.SelectedValue.Trim().Equals("") ? " " : cbxXLXHID.SelectedValue.Trim(); string sDYDJID = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); string sXLYSID = cbxXLYSID.SelectedValue.Trim(); # region 将调价因子控件值更新至数据库中 TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); string sYZIDlist = TZYZBJAInfo.GetYZIDList(PageParam.GetRTrimString("TJYZList")); dberp.ExecSQL(string.Format(" delete from XLXSBJDYZZ{0} where XLXSBJDYZZ{0}_JGBID='{1}' and XLXSBJDYZZ{0}_XLXHID='{2}' and XLXSBJDYZZ{0}_ZXJMSX={3} and XLXSBJDYZZ{0}_ZXJMXX={4} " + " and XLXSBJDYZZ{0}_DYDJID='{7}' and XLXSBJDYZZ{0}_XLYSID='{8}' " + " and XLXSBJDYZZ{0}_BJSLSX={5} and XLXSBJDYZZ{0}_BJSLXX={6} and " + CMISproDataBase.GetWhereEqual("XLXSBJDYZZ{0}_YZID", sYZIDlist) , "H", sJGBID, sXLXHID, txtZXJMSX.Value, txtZXJMXX.Value, txtBJSLSX.Value, txtBJSLXX.Value, sDYDJID, sXLYSID)); string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); DateTime tNow = DateTime.Now; for (int i = 0; i < sTJYZList.Length; i++) { sql.Clear(); sql.Add(string.Format(" insert into XLXSBJDYZZ{0}(XLXSBJDYZZ{0}_JGBID, XLXSBJDYZZ{0}_XLXHID,XLXSBJDYZZ{0}_DYDJID,XLXSBJDYZZ{0}_XLYSID,", "H")); sql.Add(string.Format(" XLXSBJDYZZ{0}_ZXJMSX,XLXSBJDYZZ{0}_ZXJMXX, XLXSBJDYZZ{0}_BJSLSX, XLXSBJDYZZ{0}_BJSLXX, ", "H")); sql.Add(string.Format(" XLXSBJDYZZ{0}_YZID, XLXSBJDYZZ{0}_YZZ, XLXSBJDYZZ{0}_WHR, XLXSBJDYZZ{0}_WHRID, XLXSBJDYZZ{0}_WHSJ)", "H")); sql.Add(string.Format(" values(:pJGBID,:pXLXHID,:pDYDJID,:pXLYSID,:pZXJMSX,:pZXJMXX,:pBJSLSX,:pBJSLXX,:pYZID,:pYZZ,:pWHR,:pWHRID,:pWHSJ)")); sql.ParamByName("pJGBID").Value = sJGBID; sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pDYDJID").Value = sDYDJID; sql.ParamByName("pXLYSID").Value = sXLYSID; sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value.ToString().Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value.ToString().Trim(); sql.ParamByName("pBJSLSX").Value = txtBJSLSX.Value.ToString().Trim(); sql.ParamByName("pBJSLXX").Value = txtBJSLXX.Value.ToString().Trim(); sql.ParamByName("pWHR").Value = tSession.UserName; sql.ParamByName("pWHRID").Value = tSession.UserId; sql.ParamByName("pWHSJ").Value = tNow; for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0') + "|"; gtNumTextBox txtTJYZ = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "TJYZ" + j.ToString().Trim()); if (sTJYZList[i].StartsWith(sTZYZID)) { sql.ParamByName("pYZID").Value = sTZYZID.TrimEnd('|'); sql.ParamByName("pYZZ").Value = txtTJYZ.Value; dberp.ExecSQL(sql); } } } #endregion return base.Master_AfterSaveAction(sender, e); } protected override void SetComboxItems() { TComboBox.SetComboBox("DBERP", cbxXLXHID, "select XLXHB_XLXHID as ID,XLXHB_XLXHID as Name from XLXHB where isnull(XLXHB_TYBZ,'N')<>'Y' order by ID ", false); TComboBox.SetComboBox("DBERP", cbxDYDJID, "select XLDYDJB_DYDJID as ID,XLDYDJB_DYDJID as Name from XLDYDJB where isnull(XLDYDJB_TYBZ,'N')<>'Y' order by XLDYDJB_XH ", true); TComboBox.SetComboBox("DBERP", cbxXLYSID, "select XLYSB_XLYSID as ID,XLYSB_XLYSMC as Name from XLYSB where 1=1 order by ID ", true); base.SetComboxItems(); } #endregion #region 自定义函数 private void InitControls() { txtYZID.Value = PageParam.GetRTrimString("FirstYZID"); } private void SetTJYZLable() { string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { for (int j = 1; j <= 20; j++) { string sTZYZID = "BJ" + j.ToString().PadLeft(2, '0') + "|"; gtNumTextBox txtTJYZ = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "TJYZ" + j.ToString().Trim()); gtLabel lblTJYZ = (gtLabel)Master.ContentFormControl.FindControl("lbl" + "TJYZ" + j.ToString().Trim()); if (sTJYZList[i].StartsWith(sTZYZID)) { string s = sTJYZList[i].Replace(sTZYZID, "").Replace("(X)", "") + ":"; lblTJYZ.Text = s; if (sTJYZList[i].EndsWith("(%)") || sTJYZList[i].EndsWith("(元)")) { txtTJYZ.DecimalPlaces = 2; } else if (sTJYZList[i].EndsWith("(X)")) { txtTJYZ.DecimalPlaces = 4; } } } } } private string getYSMC(string sYSID) { string sYSMC = ""; TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XLYSB_XLYSID,XLYSB_XLYSMC from XLYSB where XLYSB_XLYSID = :pXLYSID "); SQL.ParamByName("pXLYSID").Value = sYSID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { sYSMC = ds.Tables[0].Rows[0]["XLYSB_XLYSMC"].ToString().Trim(); } return sYSMC; } #endregion } }