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.Utility; using GThinking.N_MISPRO.Data; namespace GThinking.N_XLXSBJ { public partial class TZYZJJ4_PLSZInfo : SingleCardBase { TZYZJJ4_PLSZ entity = new TZYZJJ4_PLSZ(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860047; this.UMName = "按型号电压芯线结构主芯截面范围调表价"; this.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 400; this.PageWidth = 500; this.Master.EnableCopyBtn = false; this.Master.EnableInsertBtn = false; this.Master.EnableAttachBtn = false; this.Master.EnableCancelBtn = false; this.Master.EnableDeleteBtn = false; this.Master.EnableEditBtn = false; this.Master.EnableSaveBtn = false; this.Master.EnablePrintBtn = false; if (!this.IsPostBack) { InitControls(); } base.InitPage(); } #region 模板事件继承 protected override void SetControlState() { txtYZZ.DecimalPlaces = XLBJDUtils.JGBYZZDecimal; base.SetControlState(); } protected override void OnNewRecorder() { base.OnNewRecorder(); txtJGBID.Value = PageParam.GetRTrimString("XLXSJGBYZZ4_JGBID"); txtZXJMXX.Value = 0; if (!PageParam.GetRTrimString("TJYZList").Contains(",")) cbxTJYZ.SelectedValue = PageParam.GetRTrimString("TJYZList").Split('|')[0]; } protected override void SetComboxItems() { 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); cbxTJYZ.Items.Clear(); string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { cbxTJYZ.Items.Add(new ListItem(sTJYZList[i], sTJYZList[i].Split('|')[0])); } cbxTJYZ.ShowValue = false; base.SetComboxItems(); } #endregion #region 自定义函数 private void InitControls() { } private void SetTJYZLable() { string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); for (int i = 0; i < sTJYZList.Length; i++) { for (int j = 1; j <= 10; j++) { string sTZYZID = "JZ" + 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, "") + ":"; lblTJYZ.Text = s; } } } } #endregion #region 控件事件 protected void btnOK_Click(object sender, EventArgs e) { //DialogOperationScript dos = new DialogOperationScript(this); if (txtJGBID.Value.Trim().Equals("")) { ShowMessage("请先进行查询!"); return; } if (txtXLXH.Text.Trim().Equals("")) { ShowMessage("型号不允许为空!"); return; } if (cbxTJYZ.SelectedValue.Trim().Equals("")) { ShowMessage("调价因子不允许为空!"); return; } if (txtZXJMXX.Value < 0) { ShowMessage("主芯截面下限--不允许为负数!"); return; } if (txtZXJMSX.Value < 0) { ShowMessage("主芯截面上限--不允许为负数!"); return; } if (txtZXJMSX.Value != 0) { if (txtZXJMXX.Value > txtZXJMSX.Value) { ShowMessage("主芯截面下限不允许超过主芯截面上限!"); return; } } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); string[] sXLXHList = txtXLXH.Text.Split(','); try { dberp.BeginTrans(); for (int i = 0; i < sXLXHList.Length; i++) { if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXHB where XLXHB_XLXHID='{0}' and ISNULL(XLXHB_TYBZ,'N') <> 'Y' ", sXLXHList[i]))) { ShowMessage(sXLXHList[i] + "型号不存在或已停用!"); dberp.RollbackTrans(); return; } TSQL sql = new TSQL(dberp); if (chkSFFG.Checked) { sql.Clear(); sql.Add("select 1 from XLXSJGBYZZ4 where XLXSJGBYZZ4_JGBID= :pJGBID and XLXSJGBYZZ4_XLXHID= :pXLXHID "); sql.Add(" and XLXSJGBYZZ4_DYDJID= :pDYDJID and XLXSJGBYZZ4_XXJGID = :pXXJGID and XLXSJGBYZZ4_ZXJMSX=:pZXJMSX "); sql.Add(" and XLXSJGBYZZ4_ZXJMXX = :pZXJMXX and XLXSJGBYZZ4_YZID = :pYZID "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = cbxTJYZ.SelectedValue.Trim(); sql.ParamByName("pXLXHID").Value = sXLXHList[i]; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXXJGID").Value = txtXXJGID.Text.Trim().Equals("") ? " " : txtXXJGID.Text.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; DataSet ds = dberp.OpenDataSet(sql); if(ds.Tables[0].Rows.Count<=0) { sql.Clear(); sql.Add("select XLXSJGBYZZ4_XLXHID, XLXSJGBYZZ4_DYDJID, XLXSJGBYZZ4_XXJGID, XLXSJGBYZZ4_ZXJMXX,XLXSJGBYZZ4_ZXJMSX "); sql.Add("from XLXSJGBYZZ4 "); sql.Add("where XLXSJGBYZZ4_JGBID=:pJGBID and XLXSJGBYZZ4_YZID=:pYZID "); sql.Add(" and XLXSJGBYZZ4_XLXHID=:pXLXHID and XLXSJGBYZZ4_DYDJID=:pDYDJID "); sql.Add(" and XLXSJGBYZZ4_XXJGID=:pXXJGID "); sql.Add(" and ((XLXSJGBYZZ4_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { sql.Add(" and XLXSJGBYZZ4_ZXJMXX<=:pZXJMSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtZXJMSX.Value != 0) { sql.Add(" XLXSJGBYZZ4_ZXJMSX>0 and XLXSJGBYZZ4_ZXJMSX>=:pZXJMXX and XLXSJGBYZZ4_ZXJMSX<=:pZXJMSX "); } else { sql.Add(" (XLXSJGBYZZ4_ZXJMSX>0 and XLXSJGBYZZ4_ZXJMSX>=:pZXJMXX) or (XLXSJGBYZZ4_ZXJMSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSJGBYZZ4_ZXJMXX<=:pZXJMXX and (XLXSJGBYZZ4_ZXJMSX=0 or XLXSJGBYZZ4_ZXJMSX>=:pZXJMSX))"); sql.Add(" ) "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = cbxTJYZ.SelectedValue.Trim(); sql.ParamByName("pXLXHID").Value = sXLXHList[i]; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXXJGID").Value = txtXXJGID.Text.Trim().Equals("") ? " " : txtXXJGID.Text.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; if (txtZXJMSX.Value != 0) { sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } ds.Clear(); ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sResult = "(型号:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_XLXHID"].ToString().Trim() + ",电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_DYDJID"].ToString().Trim() + ",芯线结构:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_XXJGID"].ToString().Trim() + ")"; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMSX"].ToString()) != 0) sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMSX"].ToString().Trim(); else sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMXX"].ToString().Trim() + "~" + "--"; ShowMessage(string.Format("因子{1}与已有主芯截面区间【{0}】{2}的记录有交集!", sZXJMQJ, cbxTJYZ.SelectedItem.Text.Trim(), sResult)); dberp.RollbackTrans(); return; } } sql.Clear(); sql.Add(" merge into XLXSJGBYZZ4 a using "); sql.Add(" (select top 1 :pJGBID as JGBID,:pXLXHID as XLXHID,:pDYDJID as DYDJID, "); sql.Add(" :pXXJGID as XXJGID, :pZXJMSX as ZXJMSX ,:pZXJMXX as ZXJMXX ,:pYZID as YZID from XLXSJGBYZZ4 b) c "); sql.Add(" on(a.XLXSJGBYZZ4_JGBID = c.JGBID "); sql.Add(" and a.XLXSJGBYZZ4_XLXHID = c.XLXHID "); sql.Add(" and a.XLXSJGBYZZ4_DYDJID = c.DYDJID "); sql.Add(" and a.XLXSJGBYZZ4_XXJGID = c.XXJGID "); sql.Add(" and a.XLXSJGBYZZ4_ZXJMSX = c.ZXJMSX "); sql.Add(" and a.XLXSJGBYZZ4_ZXJMXX = c.ZXJMXX "); sql.Add(" and a.XLXSJGBYZZ4_YZID = c.YZID) "); sql.Add(" when matched then update set XLXSJGBYZZ4_YZZ = :pYZZ,XLXSJGBYZZ4_WHR = :pWHR,XLXSJGBYZZ4_WHRID =:pWHRID,XLXSJGBYZZ4_WHSJ =:pWHSJ "); sql.Add(" when not matched then insert "); sql.Add(" (XLXSJGBYZZ4_JGBID,XLXSJGBYZZ4_XLXHID,XLXSJGBYZZ4_DYDJID,XLXSJGBYZZ4_XXJGID,XLXSJGBYZZ4_ZXJMSX,XLXSJGBYZZ4_ZXJMXX, "); sql.Add(" XLXSJGBYZZ4_YZID,XLXSJGBYZZ4_YZZ,XLXSJGBYZZ4_WHR,XLXSJGBYZZ4_WHRID,XLXSJGBYZZ4_WHSJ) values "); sql.Add(" (:pJGBID,:pXLXHID,:pDYDJID,:pXXJGID,:pZXJMSX,:pZXJMXX, "); sql.Add(" :pYZID,:pYZZ,:pWHR,:pWHRID,:pWHSJ) "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = cbxTJYZ.SelectedValue.Trim(); sql.ParamByName("pXLXHID").Value = sXLXHList[i]; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXXJGID").Value = txtXXJGID.Text.Trim().Equals("") ? " " : txtXXJGID.Text.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; sql.ParamByName("pYZZ").Value = txtYZZ.Value; sql.ParamByName("pWHR").Value = tSession.UserName; sql.ParamByName("pWHRID").Value = tSession.UserId; sql.ParamByName("pWHSJ").Value = DateTime.Now.ToString().Trim(); dberp.ExecSQL(sql); } else { sql.Clear(); sql.Add("select 1 from XLXSJGBYZZ4 where XLXSJGBYZZ4_JGBID= :pJGBID and XLXSJGBYZZ4_XLXHID= :pXLXHID "); sql.Add(" and XLXSJGBYZZ4_DYDJID= :pDYDJID and XLXSJGBYZZ4_XXJGID = :pXXJGID and XLXSJGBYZZ4_ZXJMSX=:pZXJMSX "); sql.Add(" and XLXSJGBYZZ4_ZXJMXX = :pZXJMXX and XLXSJGBYZZ4_YZID = :pYZID "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = cbxTJYZ.SelectedValue.Trim(); sql.ParamByName("pXLXHID").Value = sXLXHList[i]; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXXJGID").Value = txtXXJGID.Text.Trim().Equals("") ? " " : txtXXJGID.Text.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count <= 0) { sql.Clear(); sql.Add("select XLXSJGBYZZ4_XLXHID, XLXSJGBYZZ4_DYDJID, XLXSJGBYZZ4_XXJGID, XLXSJGBYZZ4_ZXJMXX,XLXSJGBYZZ4_ZXJMSX "); sql.Add("from XLXSJGBYZZ4 "); sql.Add("where XLXSJGBYZZ4_JGBID=:pJGBID and XLXSJGBYZZ4_YZID=:pYZID "); sql.Add(" and XLXSJGBYZZ4_XLXHID=:pXLXHID and XLXSJGBYZZ4_DYDJID=:pDYDJID "); sql.Add(" and XLXSJGBYZZ4_XXJGID=:pXXJGID "); sql.Add(" and ((XLXSJGBYZZ4_ZXJMXX>=:pZXJMXX "); if (txtZXJMSX.Value != 0) { sql.Add(" and XLXSJGBYZZ4_ZXJMXX<=:pZXJMSX "); } sql.Add(" ) "); sql.Add(" or ("); if (txtZXJMSX.Value != 0) { sql.Add(" XLXSJGBYZZ4_ZXJMSX>0 and XLXSJGBYZZ4_ZXJMSX>=:pZXJMXX and XLXSJGBYZZ4_ZXJMSX<=:pZXJMSX "); } else { sql.Add(" (XLXSJGBYZZ4_ZXJMSX>0 and XLXSJGBYZZ4_ZXJMSX>=:pZXJMXX) or (XLXSJGBYZZ4_ZXJMSX=0) "); } sql.Add(" ) "); sql.Add(" or (XLXSJGBYZZ4_ZXJMXX<=:pZXJMXX and (XLXSJGBYZZ4_ZXJMSX=0 or XLXSJGBYZZ4_ZXJMSX>=:pZXJMSX))"); sql.Add(" ) "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = cbxTJYZ.SelectedValue.Trim(); sql.ParamByName("pXLXHID").Value = sXLXHList[i]; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXXJGID").Value = txtXXJGID.Text.Trim().Equals("") ? " " : txtXXJGID.Text.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; if (txtZXJMSX.Value != 0) { sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; } ds.Clear(); ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sZXJMQJ = ""; string sResult = "(型号:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_XLXHID"].ToString().Trim() + ",电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_DYDJID"].ToString().Trim() + ",芯线结构:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_XXJGID"].ToString().Trim() + ")"; if (CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMSX"].ToString()) != 0) sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMXX"].ToString().Trim() + "~" + ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMSX"].ToString().Trim(); else sZXJMQJ = ds.Tables[0].Rows[0]["XLXSJGBYZZ4_ZXJMXX"].ToString().Trim() + "~" + "--"; ShowMessage(string.Format("因子{1}与已有主芯截面区间【{0}】{2}的记录有交集!", sZXJMQJ, cbxTJYZ.SelectedItem.Text.Trim(), sResult)); dberp.RollbackTrans(); return; } sql.Clear(); sql.Add("insert into XLXSJGBYZZ4"); sql.Add(" (XLXSJGBYZZ4_JGBID,XLXSJGBYZZ4_XLXHID,XLXSJGBYZZ4_DYDJID,XLXSJGBYZZ4_XXJGID,XLXSJGBYZZ4_ZXJMSX,XLXSJGBYZZ4_ZXJMXX, "); sql.Add(" XLXSJGBYZZ4_YZID,XLXSJGBYZZ4_YZZ,XLXSJGBYZZ4_WHR,XLXSJGBYZZ4_WHRID,XLXSJGBYZZ4_WHSJ) values "); sql.Add(" (:pJGBID,:pXLXHID,:pDYDJID,:pXXJGID,:pZXJMSX,:pZXJMXX, "); sql.Add(" :pYZID,:pYZZ,:pWHR,:pWHRID,:pWHSJ) "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = cbxTJYZ.SelectedValue.Trim(); sql.ParamByName("pXLXHID").Value = sXLXHList[i]; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); sql.ParamByName("pXXJGID").Value = txtXXJGID.Text.Trim().Equals("") ? " " : txtXXJGID.Text.Trim(); sql.ParamByName("pZXJMXX").Value = txtZXJMXX.Value; sql.ParamByName("pZXJMSX").Value = txtZXJMSX.Value; sql.ParamByName("pYZZ").Value = txtYZZ.Value; sql.ParamByName("pWHR").Value = tSession.UserName; sql.ParamByName("pWHRID").Value = tSession.UserId; sql.ParamByName("pWHSJ").Value = DateTime.Now.ToString().Trim(); dberp.ExecSQL(sql); } else { continue; } } } dberp.CommitTrans(); ShowMessage("批量设置成功!"); } catch (Exception ex) { ShowMessage(ex.Message); dberp.RollbackTrans(); return; } //if (System.Text.Encoding.Default.GetBytes(txtRWCS.Text.Trim().ToCharArray()).Length < 200) //{ // ShowMessage("任务措施最少字数应为100!"); // return; //} //if (System.Text.Encoding.Default.GetBytes(txtZXCX.Text.Trim().ToCharArray()).Length < 200) //{ // ShowMessage("执行成效最少字数应为100!"); // return; //} //TSQL sql = new TSQL(dberp); //string sZXQK = "专家任务措施:\n " + txtRWCS.Text.Trim() + "\n\r" + "任务执行成效:\n " + txtZXCX.Text.Trim(); //sql.Clear(); //sql.Add("update XMRW set "); //sql.Add(" U_XMRW_ZJRWCS=:U_XMRW_ZJRWCS,U_XMRW_ZJRWCX=:U_XMRW_ZJRWCX,U_XMRW_YJ=:U_XMRW_YJ "); //sql.Add(" where XMRW_XMID =:XMRW_XMID and XMRW_RWID=:XMRW_RWID "); //sql.ParamByName("U_XMRW_ZJRWCS").Value = txtRWCS.Text.Trim(); //sql.ParamByName("U_XMRW_ZJRWCX").Value = txtZXCX.Text.Trim(); //sql.ParamByName("U_XMRW_YJ").Value = sZXQK; //sql.ParamByName("XMRW_XMID").Value = PageParam.GetRTrimString("XMRW_XMID").Equals("") ? "@FRWXM@" : PageParam.GetRTrimString("XMRW_XMID"); //sql.ParamByName("XMRW_RWID").Value = PageParam.GetRTrimString("XMRW_RWID"); //dberp.ExecSQL(sql); ////dos.SetOwnerControlValue(PageParam.GetRTrimString("ZXQK").Trim(), sZXQK); //if (PageParam.ContainsKey("txtTJBJID")) //{ // dos.SetOwnerControlValue(PageParam.GetRTrimString("txtTJBJID").Trim(), "Y"); // dos.ClickOwnerButton(PageParam.GetRTrimString("btnSubmitID").Trim()); //} //else //{ // dos.ClickOwnerButton(PageParam.GetRTrimString("ReLoad").Trim()); //} //dos.CloseSelf(); //dos.Execute(); } protected void btnQX_Click(object sender, EventArgs e) { DialogOperationScript dos = new DialogOperationScript(this); dos.CloseSelf(); dos.Execute(); } #endregion } }