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_CONTROL; namespace GThinking.N_XLXSBJ { public partial class TZYZJJ9Info : SingleCardBase { TZYZJJ_YZZ9 entity = new TZYZJJ_YZZ9(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860160; this.UMName = "按型号规格电压调表价"; this.CurMaster = Master; this.CurEntity = entity; this.PageHeight = 450; this.PageWidth = 500; 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='JZJ' and XLXSTZYZ_TJYS='9' 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("XLXSJGBYZZ9", 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 = 'JZJ' and XLXSTZYZ_TJYS='9' 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(XLXSJGBYZZ9_YZID, '{0}', XLXSJGBYZZ9_YZZ, 0)) as TZYZ_{0}", ds.Tables[0].Rows[i][0].ToString().Trim())); } string sXLGGID = txtXLGGID.Text.Trim().Equals("") ? " " : txtXLGGID.Text.Trim(); sSQL.Text = "select 1" + sSQL.Text + " from XLXSJGBYZZ9 where XLXSJGBYZZ9_JGBID='" + txtJGBID.Value.Trim() + "' and XLXSJGBYZZ9_XLXHID = '" + cbxXLXHID.SelectedValue.Trim() + "' and XLXSJGBYZZ9_XLGGID = '" + sXLGGID + "' and XLXSJGBYZZ9_DYDJID = '" + (cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim()) + "'"; AddUserReportSQL("XLXSJGBYZZ9", 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 <= 10; 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 <= 10; j++) { string sTZYZID = "JZ" + 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("XLXSJGBYZZ9_JGBID", PageParam.GetRTrimString("XLXSJGBYZZ9_JGBID")); entity.Param.Add("XLXSJGBYZZ9_XLXHID", PageParam.GetRTrimString("XLXSJGBYZZ9_XLXHID")); entity.Param.Add("XLXSJGBYZZ9_XLGGID", PageParam.GetRTrimString("XLXSJGBYZZ9_XLGGID").Equals("") ? " " : PageParam.GetRTrimString("XLXSJGBYZZ9_XLGGID")); entity.Param.Add("XLXSJGBYZZ9_DYDJID", PageParam.GetRTrimString("XLXSJGBYZZ9_DYDJID").Equals("") ? " " : PageParam.GetRTrimString("XLXSJGBYZZ9_DYDJID")); entity.Param.Add("XLXSJGBYZZ9_YZID", PageParam.GetRTrimString("XLXSJGBYZZ9_YZID")); } else { entity.Param.Add("XLXSJGBYZZ9_JGBID", txtJGBID.Value.Trim()); entity.Param.Add("XLXSJGBYZZ9_XLXHID", txtOLD_XLXHID.Value.Trim()); entity.Param.Add("XLXSJGBYZZ9_XLGGID", txtOLD_XLGGID.Value.Trim().Equals("") ? " " : txtOLD_XLGGID.Value.Trim()); entity.Param.Add("XLXSJGBYZZ9_DYDJID", txtOLD_DYDJID.Value.Trim().Equals("") ? " " : txtOLD_DYDJID.Value.Trim()); entity.Param.Add("XLXSJGBYZZ9_YZID", txtYZID.Value.Trim()); } base.LoadRecord(); txtOLD_XLXHID.Value = cbxXLXHID.SelectedValue.Trim(); string sXLGGID = txtXLGGID.Text.Trim().Equals("") ? " " : txtXLGGID.Text.Trim(); txtOLD_XLGGID.Value = sXLGGID; txtOLD_DYDJID.Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); # region 给调价因子控件赋值 TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add(" select XLXSJGBYZZ9_YZID, XLXSJGBYZZ9_YZZ from XLXSJGBYZZ9 "); sql.Add(" where XLXSJGBYZZ9_JGBID=:pJGBID and XLXSJGBYZZ9_XLXHID=:pXLXHID and XLXSJGBYZZ9_XLGGID=:pXLGGID "); sql.Add(" and XLXSJGBYZZ9_DYDJID=:pDYDJID "); sql.Add(" order by XLXSJGBYZZ9_YZID"); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim(); sql.ParamByName("pXLGGID").Value = sXLGGID; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); 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 <= 10; j++) { string sTZYZID = "JZ" + 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("XLXSJGBYZZ9_JGBID"); txtWHR.Text = tSession.UserName; txtWHRID.Value = tSession.UserId; datWHSJ.Text = CMISproConvert.ConvertTime(System.DateTime.Now); if (PageParam.GetRTrimString("YCLQDCXWSZ").Equals("Y")) { cbxXLXHID.SelectedValue = PageParam.GetRTrimString("XLXSJGBYZZ9_XLXHID"); txtXLGGID.Text = PageParam.GetRTrimString("XLXSJGBYZZ9_XLGGID"); cbxDYDJID.SelectedValue = PageParam.GetRTrimString("XLXSJGBYZZ9_DYDJID"); } if (!string.IsNullOrEmpty(PageParam.GetRTrimString("XLXHID"))) { cbxXLXHID.SelectedValue = PageParam.GetRTrimString("XLXHID"); } } protected override void OnCopyRecorder() { base.OnCopyRecorder(); txtJGBID.Value = PageParam.GetRTrimString("XLXSJGBYZZ9_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; 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 XLXSJGBYZZ9_XLXHID, XLXSJGBYZZ9_XLGGID, XLXSJGBYZZ9_DYDJID "); sql.Add("from XLXSJGBYZZ9 "); sql.Add("where XLXSJGBYZZ9_JGBID=:pJGBID and XLXSJGBYZZ9_YZID=:pYZID "); sql.Add(" and XLXSJGBYZZ9_XLXHID=:pXLXHID and XLXSJGBYZZ9_XLGGID=:pXLGGID and XLXSJGBYZZ9_DYDJID=:pDYDJID "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = sTJYZList[i].Split('|')[0]; sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim(); string sXLGGID = txtXLGGID.Text.Trim().Equals("") ? " " : txtXLGGID.Text.Trim(); sql.ParamByName("pXLGGID").Value = sXLGGID; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sResult = "(型号:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ9_XLXHID"].ToString().Trim() + ",规格:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ9_XLGGID"].ToString().Trim() + ",电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ9_DYDJID"].ToString().Trim() + ")"; ShowMessage(string.Format("因子{1}与已有记录{0}重复,不允许保存!", sResult, sTJYZList[i])); return false; } } else { sql.Clear(); sql.Add("select XLXSJGBYZZ9_XLXHID,XLXSJGBYZZ9_XLGGID,XLXSJGBYZZ9_DYDJID "); sql.Add("from XLXSJGBYZZ9 "); sql.Add("where XLXSJGBYZZ9_JGBID=:pJGBID and XLXSJGBYZZ9_YZID=:pYZID "); sql.Add(" and (XLXSJGBYZZ9_XLXHID<>:pOLDXLXHID or XLXSJGBYZZ9_XLGGID<>:pOLDXLGGID or XLXSJGBYZZ9_DYDJID<>:pOLDDYDJID) "); sql.Add(" and XLXSJGBYZZ9_XLXHID=:pXLXHID and XLXSJGBYZZ9_XLGGID=:pXLGGID and XLXSJGBYZZ9_DYDJID=:pDYDJID "); sql.ParamByName("pJGBID").Value = txtJGBID.Value.Trim(); sql.ParamByName("pYZID").Value = sTJYZList[i].Split('|')[0]; sql.ParamByName("pOLDXLXHID").Value = txtOLD_XLXHID.Value.Trim(); sql.ParamByName("pOLDXLGGID").Value = txtOLD_XLGGID.Value.Trim().Equals("") ? " " : txtOLD_XLGGID.Value.Trim(); sql.ParamByName("pOLDDYDJID").Value = txtOLD_DYDJID.Value.Trim().Equals("") ? " " : txtOLD_DYDJID.Value.Trim(); sql.ParamByName("pXLXHID").Value = cbxXLXHID.SelectedValue.Trim(); string sXLGGID = txtXLGGID.Text.Trim().Equals("") ? " " : txtXLGGID.Text.Trim(); sql.ParamByName("pXLGGID").Value = sXLGGID; sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { string sResult = "(型号:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ9_XLXHID"].ToString().Trim() + ",规格:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ9_XLGGID"].ToString().Trim() + ",电压等级:" + ds.Tables[0].Rows[0]["XLXSJGBYZZ9_DYDJID"].ToString().Trim() + ")"; ShowMessage(string.Format("因子{1}与已有记录{0}重复,不允许保存!", sResult, sTJYZList[i])); 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 XLXSJGBYZZ9 where XLXSJGBYZZ9_JGBID =:XLXSJGBYZZ9_JGBID " + " and XLXSJGBYZZ9_XLXHID=:XLXSJGBYZZ9_XLXHID and XLXSJGBYZZ9_XLGGID=isnull(:XLXSJGBYZZ9_XLGGID,' ') and XLXSJGBYZZ9_DYDJID=isnull(:XLXSJGBYZZ9_DYDJID,' ') and " + CMISproDataBase.GetWhereEqual("XLXSJGBYZZ9_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 XLXSJGBYZZ9 " + " set XLXSJGBYZZ9_JGBID = :XLXSJGBYZZ9_JGBID,XLXSJGBYZZ9_BZ=:XLXSJGBYZZ9_BZ, " + " XLXSJGBYZZ9_XLXHID=:XLXSJGBYZZ9_XLXHID, XLXSJGBYZZ9_XLGGID=isnull(:XLXSJGBYZZ9_XLGGID,' '), XLXSJGBYZZ9_DYDJID=isnull(:XLXSJGBYZZ9_DYDJID,' '), " + " XLXSJGBYZZ9_YZZ=isnull(:XLXSJGBYZZ9_YZZ,0), " + " XLXSJGBYZZ9_WHR=:XLXSJGBYZZ9_WHR, XLXSJGBYZZ9_WHRID=:XLXSJGBYZZ9_WHRID, XLXSJGBYZZ9_WHSJ=:XLXSJGBYZZ9_WHSJ " + " where XLXSJGBYZZ9_JGBID =:XLXSJGBYZZ9_JGBID " + " and XLXSJGBYZZ9_XLXHID =:OLD_XLXSJGBYZZ9_XLXHID and XLXSJGBYZZ9_XLGGID=:OLD_XLXSJGBYZZ9_XLGGID and XLXSJGBYZZ9_DYDJID=:OLD_XLXSJGBYZZ9_DYDJID " + " and " + CMISproDataBase.GetWhereEqual("XLXSJGBYZZ9_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(); string sXLGGID = txtXLGGID.Text.Trim().Equals("") ? " " : txtXLGGID.Text.Trim(); txtOLD_XLGGID.Value = sXLGGID; txtOLD_DYDJID.Value = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); txtYZID.Value = PageParam.GetRTrimString("FirstYZID"); string sJGBID = txtJGBID.Value.Trim(); string sXLXHID = cbxXLXHID.SelectedValue.Trim(); string sDYDJID = cbxDYDJID.SelectedValue.Trim().Equals("") ? " " : cbxDYDJID.SelectedValue.Trim(); # region 将调价因子控件值更新至数据库中 TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); string sYZIDlist = TZYZBJAInfo.GetYZIDList(PageParam.GetRTrimString("TJYZList")); dberp.ExecSQL("delete from XLXSJGBYZZ9 where XLXSJGBYZZ9_JGBID='" + sJGBID + "' and XLXSJGBYZZ9_XLXHID='" + sXLXHID + "' and XLXSJGBYZZ9_XLGGID='" + sXLGGID + "' and XLXSJGBYZZ9_DYDJID='" + sDYDJID + "' " + " and " + CMISproDataBase.GetWhereEqual("XLXSJGBYZZ9_YZID", sYZIDlist)); string[] sTJYZList = PageParam.GetRTrimString("TJYZList").Split(','); DateTime tNow = DateTime.Now; for (int i = 0; i < sTJYZList.Length; i++) { sql.Clear(); sql.Add("insert into XLXSJGBYZZ9(XLXSJGBYZZ9_JGBID, XLXSJGBYZZ9_XLXHID, XLXSJGBYZZ9_XLGGID, XLXSJGBYZZ9_DYDJID, "); sql.Add(" XLXSJGBYZZ9_YZID, XLXSJGBYZZ9_YZZ,XLXSJGBYZZ9_BZ,XLXSJGBYZZ9_WHR, XLXSJGBYZZ9_WHRID, XLXSJGBYZZ9_WHSJ)"); sql.Add(" values(:pJGBID,:pXLXHID, :pXLGGID, :pDYDJID, :pYZID,:pYZZ,:pBZ,:pWHR,:pWHRID,:pWHSJ)"); sql.ParamByName("pJGBID").Value = sJGBID; sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pXLGGID").Value = sXLGGID; sql.ParamByName("pDYDJID").Value = sDYDJID; sql.ParamByName("pBZ").Value = txtBZ.Text.Trim(); sql.ParamByName("pWHR").Value = tSession.UserName; sql.ParamByName("pWHRID").Value = tSession.UserId; sql.ParamByName("pWHSJ").Value = tNow; 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()); 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); 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 <= 10; j++) { string sTZYZID = "JZ" + j.ToString().PadLeft(2, '0') + "|"; gtNumTextBox txtTJYZ = (gtNumTextBox)Master.ContentFormControl.FindControl("txt" + "TJYZ" + j.ToString().Trim()); txtTJYZ.DecimalPlaces = XLBJDUtils.JGBYZZDecimal; 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 } }