#region 功能说明 /* * 参数说明: * 注意事项: * 更新记录: */ #endregion 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_MODEL.Page; using GThinking.N_MISPRO.Data; using GThinking.N_PUBLIC; using GThinking.N_MISPRO.Utility; using GThinking.N_CONTROL; using GThinking.N_MODEL.Dialog; using System.Collections.Generic; namespace GThinking.N_XLXSBJ { public partial class TZYZJJList : SingleGridBase { XLXSTZYZ entity = new XLXSTZYZ(); TZYZJJ_M queryentity = new TZYZJJ_M(); #region Page类事件继承 protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860004; this.UMName = "线缆销售报价价格表调价因子"; this.CurMaster = Master; this.ModuleGV = grdContentGrid; this.CurEntity = entity; this.CurQueryEntity = queryentity; this.sURLTarget = "TZYZJJInfo.aspx"; this.sQueryURLTarget = "TZYZJJQuery.aspx"; this.PageHeight = 600; this.PageWidth = 750; this.Master.EnableNewBtn = false; this.Master.EnableCopyBtn = false; this.Master.EnableDeleteBtn = false; base.sRefreshClientID = btnGRWJGRefer.ClientID; base.DataKeyNames = new string[] { "XLXSTZYZ_MXBH", "XLXSTZYZ_YZID", "XLXSTZYZ_TJYS", "XLXSJGB_YXQS", "XLXSJGB_YXQZ", "XLXSJGB_JGBMC", "XLXSJGB_BZ", "XLXSTZYZ_YZMC","CLQDTX" }; base.InitPage(); if (!IsPostBack) { Master_OnStandardQuery(null, null); } } #endregion #region 模板事件继承 protected override void Master_OnStandardQuery(object sender, EventArgs e) { base.InitEntityByCondition(); entity.EntityTable.QuerySelSql = GetSQL(); base.Master_OnStandardQuery(sender, e); entity.GridDataBind(grdContentGrid, tSession); } protected override void BeforeDelete(TDatabase db, ref bool ActionIsDone) { entity.Param.Add("XLXSTZYZ_MXBH", this.grdContentGrid.SelectedDataKey["XLXSTZYZ_MXBH"].ToString()); entity.Param.Add("XLXSTZYZ_YZID", this.grdContentGrid.SelectedDataKey["XLXSTZYZ_YZID"].ToString()); base.BeforeDelete(db, ref ActionIsDone); } protected override bool Master_AfterDeleteAction(object sender, EventArgs e) { if (!base.Master_AfterDeleteAction(sender, e)) { return false; } base.InitEntityByCondition(); entity.EntityTable.QuerySelSql = GetSQL(); entity.GridDataBind(grdContentGrid, tSession); grdContentGrid.SelectedIndex = -1; return true; } protected override void moduleGV_Sorting(object sender, GridViewSortEventArgs e) { base.InitEntityByCondition(); string sSQL = GetSQL(); entity.EntityTable.QuerySelSql = sSQL; base.moduleGV_Sorting(sender, e); } protected override void moduleGV_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { //获取调价表索引 int indexJGBID = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XLXSTZYZ_JGBID")); string sTJYS = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSTZYZ_TJYS"].ToString(); string sTJYZID = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSTZYZ_YZID"].ToString().Trim(); string sJGBID = e.Row.Cells[4].Text.ToString().Trim(); string sCLQDTX = grdContentGrid.DataKeys[e.Row.RowIndex]["CLQDTX"].ToString().Trim(); string sYXQS = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSJGB_YXQS"].ToString().Trim(); string sYXQZ = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSJGB_YXQZ"].ToString().Trim(); string sJGBMC = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSJGB_JGBMC"].ToString().Trim(); if (sYXQS.Equals("")) sYXQS = "--"; else sYXQS = CMISproConvert.ConvertDate(sYXQS); if (sYXQZ.Equals("")) sYXQZ = "--"; else sYXQZ = CMISproConvert.ConvertDate(sYXQZ); if (sJGBMC.Equals("")) e.Row.Cells[4].Text = e.Row.Cells[4].Text.Trim() + "|" + sYXQS + "至" + sYXQZ; else e.Row.Cells[4].Text = e.Row.Cells[4].Text.Trim() + "|" + sYXQS + "至" + sYXQZ + "|" + sJGBMC; if (sCLQDTX.Equals("Y")) { //添加a标签 e.Row.Cells[indexJGBID].Text = string.Format("" + e.Row.Cells[indexJGBID].Text.ToString().Trim() + "", sJGBID, sTJYS, sTJYZID, sCLQDTX); } else { //添加a标签 e.Row.Cells[indexJGBID].Text = string.Format("" + e.Row.Cells[indexJGBID].Text.ToString().Trim() + "", sJGBID, sTJYS, sTJYZID, sCLQDTX); } LinkPageParam.AddString("XLXSTZYZ_MXBH", grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSTZYZ_MXBH"].ToString().Trim()); LinkPageParam.AddString("XLXSTZYZ_YZID", grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSTZYZ_YZID"].ToString().Trim()); } base.moduleGV_RowDataBound(sender, e); } protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e) { base.InitEntityByCondition(); entity.EntityTable.QuerySelSql = GetSQL(); grdContentGrid.SelectedIndex = -1; base.moduleGV_PageIndexChanging(sender, e); } #endregion #region 自定义函数 private string GetSQL() { Dictionary dicCLQDTX1 = new Dictionary(); Dictionary dicCLQDTX4 = new Dictionary(); Dictionary dicCLQDTX9 = new Dictionary(); if (CurQueryEntity.FieldByName("CLQDTX").Value.Trim().ToUpper().Equals("TRUE")) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLXSTZYZ_YZID from XLXSTZYZ"); SQL.Add(" where XLXSTZYZ_TJYS = '1' and XLXSTZYZ_MXBH='JZJ'"); SQL.Add(" and exists(select 1 from XLXSCLQD where XLXSCLQD_WPID='ZZZZ'"); SQL.Add(" and not exists(select 1 from XLXSJGBYZZ1 where XLXSJGBYZZ1_JGBID=XLXSTZYZ_JGBID and XLXSJGBYZZ1_YZID=XLXSTZYZ_YZID"); SQL.Add(" and XLXSCLQD_XLXHID=XLXSJGBYZZ1_XLXHID and XLXSCLQD_XLGGID=XLXSJGBYZZ1_XLGGID "); SQL.Add(" and XLXSCLQD_XLBZID=XLXSJGBYZZ1_XLBZID and XLXSCLQD_DYDJID=XLXSJGBYZZ1_DYDJID)"); SQL.Add(" )"); DataSet ds1 = dberp.OpenDataSet(SQL); for (int i = 0; i < ds1.Tables[0].Rows.Count; i++) { dicCLQDTX1.Add(ds1.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(), ""); } SQL.Clear(); SQL.Add("select XLXSTZYZ_YZID from XLXSTZYZ"); SQL.Add(" where XLXSTZYZ_TJYS = '4' and XLXSTZYZ_MXBH='JZJ'"); SQL.Add(" and exists(select 1 from XLXSCLQD where XLXSCLQD_WPID='ZZZZ'"); SQL.Add(" and not exists(select 1 from XLXSJGBYZZ4 where XLXSJGBYZZ4_JGBID=XLXSTZYZ_JGBID and XLXSJGBYZZ4_YZID=XLXSTZYZ_YZID"); SQL.Add(" and XLXSCLQD_XLXHID=XLXSJGBYZZ4_XLXHID and XLXSCLQD_DYDJID=XLXSJGBYZZ4_DYDJID)"); SQL.Add(" and not exists(select 1 from XLXSJGBYZZ4 where XLXSJGBYZZ4_JGBID=XLXSTZYZ_JGBID and XLXSJGBYZZ4_YZID=XLXSTZYZ_YZID"); SQL.Add(" and XLXSCLQD_XLXHID=XLXSJGBYZZ4_XLXHID and XLXSJGBYZZ4_DYDJID=' ')"); SQL.Add(" )"); DataSet ds4 = dberp.OpenDataSet(SQL); for (int i = 0; i < ds4.Tables[0].Rows.Count; i++) { dicCLQDTX4.Add(ds4.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(), ""); } SQL.Clear(); SQL.Add("select XLXSTZYZ_YZID from XLXSTZYZ"); SQL.Add(" where XLXSTZYZ_TJYS = '9' and XLXSTZYZ_MXBH='JZJ'"); SQL.Add(" and exists(select 1 from XLXSCLQD where XLXSCLQD_WPID='ZZZZ'"); SQL.Add(" and not exists(select 1 from XLXSJGBYZZ9 where XLXSJGBYZZ9_JGBID=XLXSTZYZ_JGBID and XLXSJGBYZZ9_YZID=XLXSTZYZ_YZID"); SQL.Add(" and XLXSCLQD_XLXHID=XLXSJGBYZZ9_XLXHID and XLXSCLQD_XLGGID=XLXSJGBYZZ9_XLGGID and XLXSCLQD_DYDJID=XLXSJGBYZZ9_DYDJID)"); SQL.Add(" and not exists(select 1 from XLXSJGBYZZ9 where XLXSJGBYZZ9_JGBID=XLXSTZYZ_JGBID and XLXSJGBYZZ9_YZID=XLXSTZYZ_YZID"); SQL.Add(" and XLXSCLQD_XLXHID=XLXSJGBYZZ9_XLXHID and XLXSCLQD_XLGGID=XLXSJGBYZZ9_XLGGID and XLXSJGBYZZ9_DYDJID=' ')"); SQL.Add(" )"); DataSet ds9 = dberp.OpenDataSet(SQL); for (int i = 0; i < ds9.Tables[0].Rows.Count; i++) { dicCLQDTX9.Add(ds9.Tables[0].Rows[i]["XLXSTZYZ_YZID"].ToString().Trim(), ""); } } string tmpStr = ""; if (dicCLQDTX1.Keys.Count > 0 || dicCLQDTX4.Keys.Count > 0 || dicCLQDTX9.Keys.Count > 0) { tmpStr = " case XLXSTZYZ_YZID "; foreach (string sKey in dicCLQDTX1.Keys) { tmpStr += string.Format("when '{0}' then 'Y' ", sKey); } foreach (string sKey in dicCLQDTX4.Keys) { tmpStr += string.Format("when '{0}' then 'Y' ", sKey); } foreach (string sKey in dicCLQDTX9.Keys) { tmpStr += string.Format("when '{0}' then 'Y' ", sKey); } tmpStr += " else 'N' end as CLQDTX,"; } else { tmpStr = " 'N' as CLQDTX,"; } string sSQL = ""; sSQL = " select XLXSTZYZ_MXBH, XLXSTZYZ_YZID, XLXSTZYZ_YZMC," + tmpStr + "\r\n" + " rtrim(XLXSTZYZ_TJYZID)||'|'||(case XLXSTZYZ_JJFS when 'JD' then '乘以(1+加点(%))' when 'JJ' then '加价(元)' when 'KD' then '除以(1-扣点(%))' when 'SX' then '上点除、下点乘' else XLXSTZYZ_JJFS end) as JJFS," + "\r\n" + " XLXSTZYZ_XSXH, XLXSTZYZ_BZ, XLXSTZYZ_WHRID, XLXSTZYZ_WHR, XLXSTZYZ_WHSJ,XLXSTZYZ_TJYS," + "\r\n" + " XLXSTZYZ_JGBID,XLXSBJCL_BJCLMC as BJCLMC,XLXSJGB_YXQS,XLXSJGB_YXQZ,XLXSJGB_BZ,XLXSJGB_JGBMC,XLXSTZYZ_YZZBT,isnull(XLXSTZYZ_FGQCP,'N') AS XLXSTZYZ_FGQCP " + " from XLXSTZYZ left join XLXSJGB on XLXSJGB_MXBH='JZJ' and XLXSTZYZ_TJYS=XLXSJGB_TJYS and XLXSJGB_JGBID=XLXSTZYZ_JGBID " + "\r\n" + " left join XLXSBJCL on XLXSBJCL_BJCLID=XLXSTZYZ_BJCLID " + "\r\n" + " where XLXSTZYZ_MXBH='JZJ' " + " order by XLXSTZYZ_MXBH, XLXSTZYZ_YZID, XLXSTZYZ_XSXH \r\n"; return sSQL; } //根据sJGBID、sTJYS、sTJYZID跳转到对应的价格表 protected void JGBTZ(string sJGBID,string sTJYS,string sTJYZID,string sCLQDTX) { if (sTJYS.Equals(" ")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJ_YZZList.aspx"; //tpp.CallAction = TPageCallAction.pcaBrowse; tpp.AddString("JGBID", sJGBID); OpenDialog(tpp); } else if (sTJYS.Equals("1"))//型号&规格&电压&标准 { TPageParams tpp = new TPageParams(); tpp.UrlPath = "CLQDYZList.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); if (sCLQDTX.Equals("Y")) tpp.AddString("YCLQDCXWSZ", "True"); else tpp.AddString("YCLQDCXWSZ", "False"); OpenFuncModuleDialog(100860017, tpp); } else if (sTJYS.Equals("2")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "../Components/N_XLBJCL/TZYZJJ2List.aspx"; tpp.AddString("JGBID", sJGBID); OpenFuncModuleDialog(102579011, tpp); } else if (sTJYS.Equals("3")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJ3List.aspx"; tpp.AddString("JGBID", sJGBID); OpenFuncModuleDialog(100860026, tpp); } else if (sTJYS.Equals("4")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJ4List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); if (sCLQDTX.Equals("Y")) tpp.AddString("YCLQDCXWSZ", "True"); else tpp.AddString("YCLQDCXWSZ", "False"); OpenFuncModuleDialog(100860047, tpp); } else if (sTJYS.Equals("5")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJ5List.aspx"; tpp.AddString("JGBID", sJGBID); OpenFuncModuleDialog(100860058, tpp); } else if (sTJYS.Equals("6")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "../Components/N_XLBJCL/TZYZJJ6List.aspx"; tpp.AddString("JGBID", sJGBID); OpenFuncModuleDialog(102579010, tpp); } else if (sTJYS.Equals("7")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "../Components/N_XLBJCL/TZYZJJ7List.aspx"; tpp.AddString("JGBID", sJGBID); OpenFuncModuleDialog(102579009, tpp); } else if (sTJYS.Equals("8")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJ8List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); OpenFuncModuleDialog(100860096, tpp); } else if (sTJYS.Equals("9")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJ9List.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); if (sCLQDTX.Equals("Y")) tpp.AddString("YCLQDCXWSZ", "True"); else tpp.AddString("YCLQDCXWSZ", "False"); OpenFuncModuleDialog(100860160, tpp); } else if (sTJYS.Equals("A")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJAList.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); OpenFuncModuleDialog(100860164, tpp); } else if (sTJYS.Equals("B")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJBList.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); OpenFuncModuleDialog(100860165, tpp); } else if (sTJYS.Equals("C")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZJJCList.aspx"; tpp.AddString("JGBID", sJGBID); tpp.AddString("TJYZID", sTJYZID); OpenFuncModuleDialog(100860166, tpp); } } #endregion protected void btnTJB_OnDropDown(object sender, EventArgs e) { if (grdContentGrid.SelectedIndex < 0) { return; } btnTJB.Nodes.Clear(); string sTJYS = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSTZYZ_TJYS"].ToString();//不要trim() TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Add("select XLXSJGB_JGBID,XLXSJGB_YXQS,XLXSJGB_YXQZ,XLXSJGB_JGBMC "); SQL.Add("from XLXSJGB "); SQL.Add("where XLXSJGB_MXBH='JZJ' and XLXSJGB_TJYS=:pTJYS "); SQL.Add("order by XLXSJGB_JGBID "); SQL.ParamByName("pTJYS").Value = sTJYS; DataSet ds = dberp.OpenDataSet(SQL); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string sJGBID = ds.Tables[0].Rows[i]["XLXSJGB_JGBID"].ToString().Trim(); string sYXQS = ds.Tables[0].Rows[i]["XLXSJGB_YXQS"].ToString().Trim(); string sYXQZ = ds.Tables[0].Rows[i]["XLXSJGB_YXQZ"].ToString().Trim(); string sJGBMC = ds.Tables[0].Rows[i]["XLXSJGB_JGBMC"].ToString().Trim(); if (sYXQS.Equals("")) sYXQS = "--"; else sYXQS = CMISproConvert.ConvertDate(sYXQS); if (sYXQZ.Equals("")) sYXQZ = "--"; else sYXQZ = CMISproConvert.ConvertDate(sYXQZ); string sText = ""; if (sJGBMC.Equals("")) sText = sJGBID + "|" + sYXQS + "至" + sYXQZ; else sText = sJGBID + "|" + sYXQS + "至" + sYXQZ + "|" + sJGBMC; btnTJB.Nodes.Add(new gtTreeNode(sJGBID, sText)); } MenuAreaUpdate(); } protected void btnTJB_Click(object sender, EventArgs e) { if (grdContentGrid.SelectedIndex < 0) { ShowMessage("请选择处理记录!"); return; } string sTJYS = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSTZYZ_TJYS"].ToString();//不要trim() string sTJYSMC = ""; if(sTJYS.Trim().Equals("1")) { sTJYSMC = "型号&规格&电压&标准"; } else if(sTJYS.Trim().Equals("2")) { sTJYSMC = "产品用途&电压等级分类&报价材料"; } else if(sTJYS.Trim().Equals("3")) { sTJYSMC = "销售区域&导体材料&线缆型号&主芯截面"; } else if (sTJYS.Trim().Equals("4")) { sTJYSMC = "型号&电压等级&芯线结构&主芯截面范围"; } else if (sTJYS.Trim().Equals("5")) { sTJYSMC = "型号&电压等级&主芯截面范围&总芯数范围"; } else if (sTJYS.Trim().Equals("6")) { sTJYSMC = "型号&电压等级&报价材料"; } else if (sTJYS.Trim().Equals("7")) { sTJYSMC = "报价材料"; } else if (sTJYS.Trim().Equals("8")) { sTJYSMC = "材料重量"; } else if (sTJYS.Trim().Equals("9")) { sTJYSMC = "型号&规格&电压等级"; } else if (sTJYS.Trim().Equals("A")) { sTJYSMC = "产品目录&主芯截面"; } else if (sTJYS.Trim().Equals("B")) { sTJYSMC = "主芯截面范围"; } else if (sTJYS.Trim().Equals("C")) { sTJYSMC = "产品特性"; } else { } TPageParams tpp = new TPageParams(); tpp.UrlPath = "TZYZ_JGBInfo.aspx"; tpp.CallAction = TPageCallAction.pcaInsert; tpp.AddString("MXBH", "JZJ"); tpp.AddString("TJYS", sTJYS); tpp.AddString("TJYSMC", sTJYSMC); OpenDialog(tpp); } protected void btnTJB_MenuItemClick(object sender, string ItemIndex) { if (grdContentGrid.SelectedIndex < 0) { ShowMessage("请选择处理记录!"); return; } string sJGBID = ItemIndex; string sTJYS = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSTZYZ_TJYS"].ToString();//不要trim() string sTJYZID = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSTZYZ_YZID"].ToString().Trim(); string sCLQDTX = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["CLQDTX"].ToString().Trim(); JGBTZ(sJGBID, sTJYS, sTJYZID,sCLQDTX); } //关闭info页面自动刷新--sRefreshClientID protected void btnGRWJGRefer_Click(object sender, EventArgs e) { int tmpIndex = grdContentGrid.SelectedIndex; moduleGV_PageIndexChanging(null, null); grdContentGrid.SelectedIndex = tmpIndex; } //跳转 protected void btnJGBTZ_Click(object sender, EventArgs e) { string sJGBID = txtJGBID.Value.Trim(); string sTJYS = txtTJYS.Value; string sTJYZID = txtTJYZID.Value.Trim(); string sCLQDTX = txtCLQDTX.Value.Trim(); JGBTZ(sJGBID, sTJYS, sTJYZID,sCLQDTX); } } }