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_MODEL.Dialog; using GThinking.N_MISPRO.Utility; namespace GThinking.N_XLXSBJ { public partial class XHJDDZBInfo : SingleCardBase { XHJDDZB entity = new XHJDDZB(); #region Page类事件继承 protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860038; this.UMName = "报价单型号加点对照表"; this.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 500; this.PageWidth = 700; this.Master.EnableAttachBtn = false; base.InitPage(); if (!IsPostBack) { InitControls(); } } #endregion #region 模板事件继承 protected override void LoadRecord() { string sDYDJID = ""; string sDZHDYDJID = ""; string sXXJGID = ""; if (!IsPostBack) { this.CurEntity.Param.Add("XLXSJGBXHDZB_JGBXLXHID", PageParam.GetRTrimString("XLXSJGBXHDZB_JGBXLXHID").Trim()); this.CurEntity.Param.Add("XLXSJGBXHDZB_BJDXLXHID", PageParam.GetRTrimString("XLXSJGBXHDZB_BJDXLXHID").Trim()); sDYDJID = PageParam.GetRTrimString("XLXSJGBXHDZB_DYDJID"); sDZHDYDJID = PageParam.GetRTrimString("XLXSJGBXHDZB_DZHDYDJID"); sXXJGID = PageParam.GetRTrimString("XLXSJGBXHDZB_XXJGID"); if (sDYDJID.Trim().Equals("")) { sDYDJID = " "; } if (sDZHDYDJID.Trim().Equals("")) { sDZHDYDJID = " "; } if (sXXJGID.Trim().Equals("")) { sXXJGID = " "; } this.CurEntity.Param.Add("XLXSJGBXHDZB_DYDJID", sDYDJID); this.CurEntity.Param.Add("XLXSJGBXHDZB_DZHDYDJID", sDZHDYDJID); this.CurEntity.Param.Add("XLXSJGBXHDZB_XXJGID", sXXJGID); this.CurEntity.Param.Add("XLXSJGBXHDZB_ZXJMXX", PageParam.GetRTrimString("XLXSJGBXHDZB_ZXJMXX").Trim()); this.CurEntity.Param.Add("XLXSJGBXHDZB_ZXJMSX", PageParam.GetRTrimString("XLXSJGBXHDZB_ZXJMSX").Trim()); } else { this.CurEntity.Param.Add("XLXSJGBXHDZB_JGBXLXHID", txtOLDJGBXLXHID.Value.Trim()); this.CurEntity.Param.Add("XLXSJGBXHDZB_BJDXLXHID", txtOLDBJDXLXHID.Value.Trim()); sDYDJID = txtOLD_DYDJID.Value.Trim(); sDZHDYDJID = txtOLD_DZHDYDJID.Value.Trim(); sXXJGID = txtOLD_XXJGID.Value.Trim(); if (sDYDJID.Trim().Equals("")) { sDYDJID = " "; } if (sDZHDYDJID.Trim().Equals("")) { sDZHDYDJID = " "; } if (sXXJGID.Trim().Equals("")) { sXXJGID = " "; } this.CurEntity.Param.Add("XLXSJGBXHDZB_DYDJID", sDYDJID); this.CurEntity.Param.Add("XLXSJGBXHDZB_DZHDYDJID", sDZHDYDJID); this.CurEntity.Param.Add("XLXSJGBXHDZB_XXJGID", sXXJGID); this.CurEntity.Param.Add("XLXSJGBXHDZB_ZXJMXX", txtOLD_ZXJMXX.Value.Trim()); this.CurEntity.Param.Add("XLXSJGBXHDZB_ZXJMSX", txtOLD_ZXJMSX.Value.Trim()); } base.LoadRecord(); txtOLDJGBXLXHID.Value = cbxJGBXLXHID.SelectedValue.Trim(); txtOLDBJDXLXHID.Value = cbxBJDXLXHID.SelectedValue.Trim(); sDYDJID = cbxDYDJID.SelectedValue.Trim(); sDZHDYDJID = cbxDZHDYDJID.SelectedValue.Trim(); sXXJGID = txtXXJGID.Text.Trim(); if (sDYDJID.Trim().Equals("")) { sDYDJID = " "; } if (sDZHDYDJID.Trim().Equals("")) { sDZHDYDJID = " "; } if (sXXJGID.Trim().Equals("")) { sXXJGID = " "; } txtOLD_DYDJID.Value = sDYDJID; txtOLD_DZHDYDJID.Value = sDZHDYDJID; txtOLD_XXJGID.Value = sXXJGID; txtOLD_ZXJMSX.Value = txtZXJMSX.Value.ToString().Trim(); txtOLD_ZXJMXX.Value = txtZXJMXX.Value.ToString().Trim(); } protected override void OnNewRecorder() { base.OnNewRecorder(); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); if (!string.IsNullOrEmpty(PageParam.GetRTrimString("XLXHID"))) { cbxBJDXLXHID.SelectedValue = PageParam.GetRTrimString("XLXHID"); } txtYZZ.Value = 1.000000; XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860038); if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_MRJSFS)) cbxYZZJSFS.SelectedValue = pzxx.XLXSBJPZ_MRJSFS; else cbxYZZJSFS.SelectedValue = "KD"; txtOLDJGBXLXHID.Value = ""; txtOLDBJDXLXHID.Value = ""; txtOLD_DYDJID.Value = ""; txtOLD_DZHDYDJID.Value = ""; txtOLD_XXJGID.Value = ""; txtOLD_ZXJMSX.Value = "0"; txtOLD_ZXJMXX.Value = "0"; } protected override void OnCopyRecorder() { base.OnCopyRecorder(); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); cbxDZHDYDJID.SelectedValue = ""; } protected override bool DataLogicValid() { string sDYDJID = ""; string sDZHDYDJID = ""; string sXXJGID = ""; string sJGBXLXHID = cbxJGBXLXHID.SelectedValue.Trim(); string sBJDXLXHID = cbxBJDXLXHID.SelectedValue.Trim(); sDYDJID =cbxDYDJID.SelectedValue.Trim(); sDZHDYDJID = cbxDZHDYDJID.SelectedValue.Trim(); sXXJGID = txtXXJGID.Text.Trim(); if (sDYDJID.Trim().Equals("")) { sDYDJID = " "; } if (sDZHDYDJID.Trim().Equals("")) { sDZHDYDJID = " "; } if (sXXJGID.Trim().Equals("")) { sXXJGID = " "; } string sZXJMSX = txtZXJMSX.Value.ToString().Trim(); string sZXJMXX = txtZXJMXX.Value.ToString().Trim(); string sOLDDYDJID = ""; string sOLDDZHDYDJID = ""; string sOLDXXJGID = ""; string sOLDJGBXLXHID = txtOLDJGBXLXHID.Value.Trim(); string sOLDBJDXLXHID = txtOLDBJDXLXHID.Value.Trim(); sOLDDYDJID = txtOLD_DYDJID.Value.Trim(); sOLDDZHDYDJID = txtOLD_DZHDYDJID.Value.Trim(); sOLDXXJGID = txtOLD_XXJGID.Value.Trim(); if (sOLDDYDJID.Trim().Equals("")) { sOLDDYDJID = " "; } if (sOLDDZHDYDJID.Trim().Equals("")) { sOLDDZHDYDJID = " "; } if (sOLDXXJGID.Trim().Equals("")) { sOLDXXJGID = " "; } string sOLDZXJMSX = txtOLD_ZXJMSX.Value.ToString().Trim(); string sOLDZXJMXX = txtOLD_ZXJMXX.Value.ToString().Trim(); if (sDZHDYDJID.Trim().Equals("") || sDZHDYDJID.Trim().Equals(sDYDJID)) { if (sJGBXLXHID.Equals(sBJDXLXHID)) { 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 (cbxYZZJSFS.SelectedValue.Trim().Equals("")) { ShowMessage("计算方式不允许为空!"); return false; } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy) { SQL.Clear(); SQL.Add("select XLXSJGBXHDZB_JGBXLXHID,XLXSJGBXHDZB_BJDXLXHID,XLXSJGBXHDZB_DYDJID, XLXSJGBXHDZB_DZHDYDJID,XLXSJGBXHDZB_XXJGID,XLXSJGBXHDZB_ZXJMXX, XLXSJGBXHDZB_ZXJMSX "); SQL.Add("from XLXSJGBXHDZB "); SQL.Add("where XLXSJGBXHDZB_JGBXLXHID=:pJGBXLXHID and XLXSJGBXHDZB_BJDXLXHID=:pBJDXLXHID "); SQL.Add(" and XLXSJGBXHDZB_DYDJID=:pDYDJID and XLXSJGBXHDZB_DZHDYDJID=:pDZHDYDJID and XLXSJGBXHDZB_XXJGID=:pXXJGID "); SQL.Add(" and ((XLXSJGBXHDZB_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { SQL.Add(" and XLXSJGBXHDZB_ZXJMXX<=:pZXJMSX "); } SQL.Add(" ) "); SQL.Add(" or ("); if (txtZXJMSX.Value != 0) { SQL.Add(" XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX<=:pZXJMSX "); } else { SQL.Add(" (XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX) or (XLXSJGBXHDZB_ZXJMSX=0) "); } SQL.Add(" ) "); if (txtZXJMSX.Value != 0) SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and (XLXSJGBXHDZB_ZXJMSX=0 or XLXSJGBXHDZB_ZXJMSX>=:pZXJMSX))"); else SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX=0)"); SQL.Add(" ) "); SQL.ParamByName("pJGBXLXHID").Value = sJGBXLXHID; SQL.ParamByName("pBJDXLXHID").Value = sBJDXLXHID; SQL.ParamByName("pDYDJID").Value = sDYDJID; SQL.ParamByName("pDZHDYDJID").Value = sDZHDYDJID; SQL.ParamByName("pXXJGID").Value = sXXJGID; SQL.ParamByName("pZXJMXX").Value =sZXJMXX; if (txtZXJMSX.Value != 0) SQL.ParamByName("pZXJMSX").Value = sZXJMSX; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sResult = "(价格表线缆型号:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_JGBXLXHID"].ToString().Trim() + ",报价单线缆型号:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_BJDXLXHID"].ToString().Trim() + ")" + ",电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_DYDJID"].ToString().Trim() + ",对照后电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_DZHDYDJID"].ToString().Trim() + ",芯线结构:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_XXJGID"].ToString().Trim() + ")"; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMSX"].ToString()) != 0) { sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMSX"].ToString().Trim(); } else { sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMXX"].ToString().Trim() + "~" + "--"; } ShowMessage(string.Format("与已有主芯截面区间【{0}】{1}的记录有交集,不允许保存!", sZXJMQJ, sResult)); return false; } } else { SQL.Clear(); SQL.Add("select XLXSJGBXHDZB_JGBXLXHID,XLXSJGBXHDZB_BJDXLXHID,XLXSJGBXHDZB_DYDJID,XLXSJGBXHDZB_DZHDYDJID,XLXSJGBXHDZB_XXJGID, XLXSJGBXHDZB_ZXJMXX, XLXSJGBXHDZB_ZXJMSX "); SQL.Add("from XLXSJGBXHDZB "); SQL.Add("where XLXSJGBXHDZB_JGBXLXHID=:pJGBXLXHID and XLXSJGBXHDZB_BJDXLXHID=:pBJDXLXHID "); SQL.Add(" and XLXSJGBXHDZB_DYDJID=:pDYDJID and XLXSJGBXHDZB_DZHDYDJID=:pDZHDYDJID and XLXSJGBXHDZB_XXJGID=:pXXJGID"); SQL.Add(" and (XLXSJGBXHDZB_JGBXLXHID<>:pOLDJGBXLXHID or XLXSJGBXHDZB_BJDXLXHID<>:pOLDBJDXLXHID "); SQL.Add("or XLXSJGBXHDZB_DYDJID<>:pOLDDYDJID or XLXSJGBXHDZB_DZHDYDJID<>:pOLDDZHDYDJID or XLXSJGBXHDZB_XXJGID <>:pOLDXXJGID "); SQL.Add("or XLXSJGBXHDZB_ZXJMSX <> :pOLDZXJMSX or XLXSJGBXHDZB_ZXJMXX <> :pOLDZXJMXX ) "); SQL.Add(" and ((XLXSJGBXHDZB_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { SQL.Add(" and XLXSJGBXHDZB_ZXJMXX<=:pZXJMSX "); } SQL.Add(" ) "); SQL.Add(" or ("); if (txtZXJMSX.Value != 0) { SQL.Add(" XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX<=:pZXJMSX "); } else { SQL.Add(" (XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX) or (XLXSJGBXHDZB_ZXJMSX=0) "); } SQL.Add(" ) "); if (txtZXJMSX.Value != 0) SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and (XLXSJGBXHDZB_ZXJMSX=0 or XLXSJGBXHDZB_ZXJMSX>=:pZXJMSX))"); else SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX=0)"); SQL.Add(" ) "); SQL.Add(" and ( XLXSJGBXHDZB_JGBXLXHID=:pJGBXLXHID and XLXSJGBXHDZB_BJDXLXHID=:pBJDXLXHID"); SQL.Add(" and XLXSJGBXHDZB_DYDJID=:pDYDJID )"); SQL.ParamByName("pJGBXLXHID").Value = sJGBXLXHID; SQL.ParamByName("pBJDXLXHID").Value = sBJDXLXHID; SQL.ParamByName("pDYDJID").Value = sDYDJID; SQL.ParamByName("pDZHDYDJID").Value = sDZHDYDJID; SQL.ParamByName("pXXJGID").Value = sXXJGID; SQL.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; if (txtZXJMSX.Value != 0) SQL.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; SQL.ParamByName("pOLDJGBXLXHID").Value = sOLDJGBXLXHID; SQL.ParamByName("pOLDBJDXLXHID").Value = sOLDBJDXLXHID; SQL.ParamByName("pOLDDYDJID").Value = sOLDDYDJID; SQL.ParamByName("pOLDDZHDYDJID").Value = sOLDDZHDYDJID; SQL.ParamByName("pOLDXXJGID").Value = sOLDXXJGID; SQL.ParamByName("pOLDZXJMSX").Value = sOLDZXJMSX; SQL.ParamByName("pOLDZXJMXX").Value = sOLDZXJMXX; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sResult = "(价格表线缆型号:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_JGBXLXHID"].ToString().Trim() + ",报价单线缆型号:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_BJDXLXHID"].ToString().Trim() + ")" + ",电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_DYDJID"].ToString().Trim() + ",对照后电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_DZHDYDJID"].ToString().Trim() + ",芯线结构:" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_XXJGID"].ToString().Trim() + ")"; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMSX"].ToString()) != 0) { sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMSX"].ToString().Trim(); } else { sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBXHDZB_ZXJMXX"].ToString().Trim() + "~" + "--"; } ShowMessage(string.Format("与已有主芯截面区间【{0}】{1}的记录有交集,不允许保存!", sZXJMQJ, sResult)); return false; } } SQL.Clear(); SQL.Add(" select XLXSJGBXHDZB_JGBXLXHID,XLXSJGBXHDZB_DYDJID,XLXSJGBXHDZB_DZHDYDJID,XLXSJGBXHDZB_XXJGID, XLXSJGBXHDZB_ZXJMXX,XLXSJGBXHDZB_ZXJMSX,XLXSJGBXHDZB_YZZ "); SQL.Add(" from XLXSJGBXHDZB where XLXSJGBXHDZB_JGBXLXHID<>:pJGBXLXHID and XLXSJGBXHDZB_BJDXLXHID=:pBJDXLXHID"); SQL.Add(" and (XLXSJGBXHDZB_JGBXLXHID<>:pOLDJGBXLXHID or XLXSJGBXHDZB_BJDXLXHID<>:pOLDBJDXLXHID "); SQL.Add("or XLXSJGBXHDZB_DYDJID<>:pOLDDYDJID or XLXSJGBXHDZB_DZHDYDJID<>:pOLDDZHDYDJID or XLXSJGBXHDZB_XXJGID <>:pOLDXXJGID "); SQL.Add("or XLXSJGBXHDZB_ZXJMSX <> :pOLDZXJMSX or XLXSJGBXHDZB_ZXJMXX <> :pOLDZXJMXX ) "); if (!cbxDYDJID.SelectedValue.Trim().Equals("")) { SQL.Add(" and (XLXSJGBXHDZB_DYDJID=' ' or XLXSJGBXHDZB_DYDJID=:pDYDJID)"); SQL.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim(); } if (txtZXJMXX.Value != 0 || txtZXJMSX.Value != 0) { SQL.Add(" and ((XLXSJGBXHDZB_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { SQL.Add(" and XLXSJGBXHDZB_ZXJMXX<=:pZXJMSX "); } SQL.Add(" ) "); SQL.Add(" or ("); if (txtZXJMSX.Value != 0) { SQL.Add(" XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX<=:pZXJMSX "); } else { SQL.Add(" (XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX) or (XLXSJGBXHDZB_ZXJMSX=0) "); } SQL.Add(" ) "); if (txtZXJMSX.Value != 0) SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and (XLXSJGBXHDZB_ZXJMSX=0 or XLXSJGBXHDZB_ZXJMSX>=:pZXJMSX))"); else SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX=0)"); SQL.Add(" ) "); SQL.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; if (txtZXJMSX.Value != 0) SQL.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } SQL.ParamByName("pJGBXLXHID").Value = cbxJGBXLXHID.SelectedValue.Trim(); SQL.ParamByName("pBJDXLXHID").Value = cbxBJDXLXHID.SelectedValue.Trim(); SQL.ParamByName("pOLDJGBXLXHID").Value = sOLDJGBXLXHID; SQL.ParamByName("pOLDBJDXLXHID").Value = sOLDBJDXLXHID; SQL.ParamByName("pOLDDYDJID").Value = sOLDDYDJID; SQL.ParamByName("pOLDDZHDYDJID").Value = sOLDDZHDYDJID; SQL.ParamByName("pOLDXXJGID").Value = sOLDXXJGID; SQL.ParamByName("pOLDZXJMSX").Value = sOLDZXJMSX; SQL.ParamByName("pOLDZXJMXX").Value = sOLDZXJMXX; DataSet dsDZXH = dberp.OpenDataSet(SQL); if (dsDZXH.Tables[0].Rows.Count > 0) { string sMsg = ""; for (int i = 0; i < dsDZXH.Tables[0].Rows.Count; i++) { string sZXJMQJ = ""; if (txtZXJMXX.Value != 0 || txtZXJMSX.Value != 0) { if (CMISproConvert.StrToFloat(dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_ZXJMSX"].ToString()) != 0) { sZXJMQJ = dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_ZXJMXX"].ToString().Trim() + "~" + dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_ZXJMSX"].ToString().Trim(); } else { sZXJMQJ = dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_ZXJMXX"].ToString().Trim() + "~" + "--"; } } if (!sZXJMQJ.Equals("")) sZXJMQJ = "【" + sZXJMQJ + "】"; sMsg += dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_JGBXLXHID"].ToString().Trim() + " " + dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_DYDJID"].ToString().Trim() + " " + dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_DZHDYDJID"].ToString().Trim() + " " + dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_XXJGID"].ToString().Trim() + sZXJMQJ + "(综合点数:" + strPadRight(dsDZXH.Tables[0].Rows[i]["XLXSJGBXHDZB_YZZ"].ToString().Trim(), 6) + ")" + "
"; } if (!sMsg.Equals("")) { Confirm.Register("IsQD", cbxBJDXLXHID.SelectedValue.Trim() + "已经维护如下扩展规则,继续保存将删除原扩展规则,改由" + cbxJGBXLXHID.SelectedValue.Trim() + " " + cbxDYDJID.SelectedValue.Trim() + " " + cbxDZHDYDJID.SelectedValue.Trim() + " " + txtXXJGID.Text.Trim() + "进行扩展是否继续?" + "
" + sMsg); Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No; if (Confirm.GetValue("IsQD").Trim().Equals("")) { Confirm.Ask("IsQD"); return false; } else if (Confirm.GetValue("IsQD").Trim().Equals("N")) { //表示进行了提示并选择了取消,直接返回或其他处理 Confirm.Clear(); return false; } else if (Confirm.GetValue("IsQD").Trim().Equals("Y")) { //表示进行了提示并选择了确认 Confirm.Clear(); SQL.Clear(); SQL.Add(" delete from XLXSJGBXHDZB where XLXSJGBXHDZB_JGBXLXHID <> :pJGBXLXHID and XLXSJGBXHDZB_BJDXLXHID = :pBJDXLXHID "); SQL.Add(" and (XLXSJGBXHDZB_JGBXLXHID<>:pOLDJGBXLXHID or XLXSJGBXHDZB_BJDXLXHID<>:pOLDBJDXLXHID "); SQL.Add("or XLXSJGBXHDZB_DYDJID<>:pOLDDYDJID or XLXSJGBXHDZB_DZHDYDJID<>:pOLDDZHDYDJID or XLXSJGBXHDZB_XXJGID <>:pOLDXXJGID "); SQL.Add("or XLXSJGBXHDZB_ZXJMSX <> :pOLDZXJMSX or XLXSJGBXHDZB_ZXJMXX <> :pOLDZXJMXX ) "); if (!cbxDYDJID.SelectedValue.Trim().Equals("")) { SQL.Add(" and (XLXSJGBXHDZB_DYDJID=' ' or XLXSJGBXHDZB_DYDJID=:pDYDJID)"); SQL.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim(); } if (!cbxDZHDYDJID.SelectedValue.Trim().Equals("")) { SQL.Add(" and (XLXSJGBXHDZB_DZHDYDJID=' ' or XLXSJGBXHDZB_DZHDYDJID=:pDZHDYDJID)"); SQL.ParamByName("pDZHDYDJID").Value = cbxDZHDYDJID.SelectedValue.Trim(); } if (!txtXXJGID.Text.Trim().Equals("")) { SQL.Add(" and (XLXSJGBXHDZB_XXJGID=' ' or XLXSJGBXHDZB_XXJGID=:pXXJGID)"); SQL.ParamByName("pXXJGID").Value = txtXXJGID.Text.Trim(); } if (txtZXJMXX.Value != 0 || txtZXJMSX.Value != 0) { SQL.Add(" and ((XLXSJGBXHDZB_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { SQL.Add(" and XLXSJGBXHDZB_ZXJMXX<=:pZXJMSX "); } SQL.Add(" ) "); SQL.Add(" or ("); if (txtZXJMSX.Value != 0) { SQL.Add(" XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX<=:pZXJMSX "); } else { SQL.Add(" (XLXSJGBXHDZB_ZXJMSX>0 and XLXSJGBXHDZB_ZXJMSX>=:pZXJMXX) or (XLXSJGBXHDZB_ZXJMSX=0) "); } SQL.Add(" ) "); if (txtZXJMSX.Value != 0) SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and (XLXSJGBXHDZB_ZXJMSX=0 or XLXSJGBXHDZB_ZXJMSX>=:pZXJMSX))"); else SQL.Add(" or (XLXSJGBXHDZB_ZXJMXX<=:pZXJMXX and XLXSJGBXHDZB_ZXJMSX=0)"); SQL.Add(" ) "); SQL.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; if (txtZXJMSX.Value != 0) SQL.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } SQL.ParamByName("pJGBXLXHID").Value = cbxJGBXLXHID.SelectedValue.Trim(); SQL.ParamByName("pBJDXLXHID").Value = cbxBJDXLXHID.SelectedValue.Trim(); SQL.ParamByName("pOLDJGBXLXHID").Value = sOLDJGBXLXHID; SQL.ParamByName("pOLDBJDXLXHID").Value = sOLDBJDXLXHID; SQL.ParamByName("pOLDDYDJID").Value = sOLDDYDJID; SQL.ParamByName("pOLDDZHDYDJID").Value = sOLDDZHDYDJID; SQL.ParamByName("pOLDXXJGID").Value = sOLDXXJGID; SQL.ParamByName("pOLDZXJMSX").Value = sOLDZXJMSX; SQL.ParamByName("pOLDZXJMXX").Value = sOLDZXJMXX; dberp.ExecSQL(SQL); } } } return base.DataLogicValid(); } protected override bool Master_BeforeDeleteAction(object sender, EventArgs e) { //已在模块使用 //string sSQL = string.Format("select 1 from XLXSBJD where XLXSBJD_BJFLID = '{0}'", txtBJFLID.Text); //if (CMISproDataBase.ExistsRecord("DBERP", sSQL)) //{ // ShowMessage("!"); // return false; //} return base.Master_BeforeDeleteAction(sender, e); } protected override void BeforeSave(TDatabase db, ref bool ActionIsDone) { txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now); base.BeforeSave(db, ref ActionIsDone); } protected override void SetControlState() { base.SetControlState(); txtWHR.Enabled = false; datWHSJ.Enabled = false; txtYZZ.Enabled = false; if (cbxDYDJID.SelectedValue.Trim().Equals("")) cbxDZHDYDJID.Enabled = false; double sZA = txtZA.Value; double sZB = txtZB.Value; double sZC = txtZC.Value; double sR = txtR.Value; double sS = txtS.Value; double sWDZ = txtWDZ.Value; double sFY = txtFY.Value; double sFS = txtFS.Value; double sDD = txtDD.Value; double sFSJD = txtFSJD.Value; double sQX = txtQX.Value; double s90 = txt90.Value; double s105 = txt105.Value; } protected override void AfterSave(TDatabase db, ref bool ActionIsDone) { base.AfterSave(db, ref ActionIsDone); } protected override bool Master_AfterSaveAction(object sender, EventArgs e) { txtOLDJGBXLXHID.Value = cbxJGBXLXHID.SelectedValue.Trim(); txtOLDBJDXLXHID.Value = cbxBJDXLXHID.SelectedValue.Trim(); string sDYDJID = cbxDYDJID.SelectedValue.Trim(); string sDZHDYDJID = cbxDZHDYDJID.SelectedValue.Trim(); string sXXJGID = txtXXJGID.Text.Trim(); if (sDYDJID.Trim().Equals("")) { sDYDJID = " "; } if (sDZHDYDJID.Trim().Equals("")) { sDZHDYDJID = " "; } txtOLD_DYDJID.Value = sDYDJID; txtOLD_DZHDYDJID.Value = sDZHDYDJID; txtOLD_XXJGID.Value = sXXJGID; txtOLD_ZXJMSX.Value = txtZXJMSX.Value.ToString().Trim(); txtOLD_ZXJMXX.Value = txtZXJMXX.Value.ToString().Trim(); return base.Master_AfterSaveAction(sender, e); } protected override void AfterDelete(TDatabase db, ref bool ActionIsDone) { base.AfterDelete(db, ref ActionIsDone); } protected override void SetComboxItems() { TComboBox.SetComboBox("DBERP", cbxJGBXLXHID, "select XLXHB_XLXHID as ID,XLXHB_XLXHID as Name from XLXHB where isnull(XLXHB_TYBZ,'N')<>'Y' order by ID ", false); TComboBox.SetComboBox("DBERP", cbxBJDXLXHID, "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", cbxDZHDYDJID, "select XLDYDJB_DYDJID as ID,XLDYDJB_DYDJID as Name from XLDYDJB where isnull(XLDYDJB_TYBZ,'N')<>'Y' order by XLDYDJB_XH ", true); cbxYZZJSFS.ClearItems(); cbxYZZJSFS.Items.Add(new ListItem("乘以(1+加点(%))", "JD")); cbxYZZJSFS.Items.Add(new ListItem("除以(1-扣点(%))", "KD")); cbxYZZJSFS.Items.Add(new ListItem("1+加点之和(%)", "01")); cbxYZZJSFS.Items.Add(new ListItem("除以(1-扣点之和(%))", "KH")); cbxYZZJSFS.ShowValue = false; base.SetComboxItems(); } #endregion #region 定义事件 private void InitControls() { } public static string strPadRight(string s, int x) { string str = s; if (str.Split('.').Length == 2) { str = str.Split('.')[0] + "." + str.Split('.')[1].PadRight(x, '0'); } else { string tmp = "0"; if (x > 0) { tmp = tmp.PadRight(x, '0'); str = str + "." + tmp; } } return str; } #endregion #region 控件事件 protected void txt_OnTextChanged(object sender, EventArgs e) { if (!IsPostBack) { return; } double sXH = txtXH.Value / 100; double sZA = txtZA.Value / 100; double sZB = txtZB.Value / 100; double sZC = txtZC.Value / 100; double sR = txtR.Value / 100; double sS = txtS.Value / 100; double sWDZ = txtWDZ.Value / 100; double sFY = txtFY.Value / 100; double sFS = txtFS.Value / 100; double sDD = txtDD.Value / 100; double sFSJD = txtFSJD.Value / 100; double sQX = txtQX.Value / 100; double sB1B2 = txtB1B2.Value / 100; double sZS = txtZS.Value / 100; double sNH = txtNH.Value / 100; double s22KZ = txt22KZ.Value / 100; double sP = txtP.Value / 100; double sF = txtF.Value / 100; double sIA = txtIA.Value / 100; double s62KZ = txt62KZ.Value / 100; double s90 = txt90.Value / 100; double s105 = txt105.Value / 100; if (cbxYZZJSFS.SelectedValue.Trim().Equals("KD")) { double sXS = (1 - sXH) * (1 - sZA) * (1 - sZB) * (1 - sZC) * (1 - sR) * (1 - sS) * (1 - sWDZ) * (1 - sFY) * (1 - sFS) * (1 - sDD) * (1 - sFSJD) * (1 - sQX) * (1 - s90) * (1 - s105) * (1 - sB1B2) * (1 - sZS) * (1 - sNH) * (1 - s22KZ) * (1 - sP) * (1 - sF) * (1 - sIA) * (1 - s62KZ); if (sXS != 0) { txtYZZ.Value = NumberUtils.RoundX(1 / sXS, 6); } else { txtYZZ.Value = 1.000000; } } else if (cbxYZZJSFS.SelectedValue.Trim().Equals("JD")) { double sXS = (1 + sXH) * (1 + sZA) * (1 + sZB) * (1 + sZC) * (1 + sR) * (1 + sS) * (1 + sWDZ) * (1 + sFY) * (1 + sFS) * (1 + sDD) * (1 + sFSJD) * (1 + sQX) * (1 + s90) * (1 + s105) * (1 + sB1B2) * (1 + sZS) * (1 + sNH) * (1 + s22KZ) * (1 + sP) * (1 + sF) * (1 + sIA) * (1 + s62KZ); txtYZZ.Value = NumberUtils.RoundX(sXS, 6); } else if (cbxYZZJSFS.SelectedValue.Trim().Equals("01")) { txtYZZ.Value = 1 + sXH + sZA + sZB + sZC + sR + sS + sWDZ + sFY + sFS + sDD + sFSJD + sQX + s90 + s105 + sB1B2 + sZS + sNH + s22KZ + sP + sF + sIA + s62KZ; } else if (cbxYZZJSFS.SelectedValue.Trim().Equals("KH")) { double sXS = (1 - (sXH + sZA + sZB + sZC + sR + sS + sWDZ + sFY + sFS + sDD + sFSJD + sQX + s90 + s105 + sB1B2 + sZS + sNH + s22KZ + sP + sF + sIA + s62KZ)); if (sXS != 0) { txtYZZ.Value = NumberUtils.RoundX(1 / sXS, 6); } else { txtYZZ.Value = 1.000000; } } } protected void cbxDYDJID_OnSelectedIndexChanged(object sender, EventArgs e) { if (cbxDYDJID.SelectedValue.Trim().Equals("")) { cbxDZHDYDJID.SelectedValue = ""; cbxDZHDYDJID.Enabled = false; } else { cbxDZHDYDJID.Enabled = true; } } protected void txtJGBXLXHID_OnTextChanged(object sender, EventArgs e) { string sql = ""; sql += "select XLXHB_XLXHID as ID,XLXHB_XLXHID as Name from XLXHB where 1=1 "; sql += " and XLXHB_XLXHID like '%" + txtJGBXLXHID.Text.Trim() + "%'"; sql += " and isnull(XLXHB_TYBZ,'N')<>'Y' order by ID "; TComboBox.SetComboBox("DBERP", cbxJGBXLXHID, sql, false); } protected void txtBJDXLXHID_OnTextChanged(object sender, EventArgs e) { string sql = ""; sql += "select XLXHB_XLXHID as ID,XLXHB_XLXHID as Name from XLXHB where 1=1 "; sql += " and XLXHB_XLXHID like '%" + txtBJDXLXHID.Text.Trim() + "%'"; sql += " and isnull(XLXHB_TYBZ,'N')<>'Y' order by ID "; TComboBox.SetComboBox("DBERP", cbxBJDXLXHID, sql, false); } #endregion } }