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_CONTROL; using GThinking.N_PUBLIC; using System.Collections.Generic; using GThinking.N_MISPRO.MISPROAS; using GThinking.N_WORKFLOW; using GThinking.N_MISPRO.TableCache; namespace GThinking.N_XLXSBJ { public partial class ZDFXInfo : OperationBase { ZDFXEntity entity = new ZDFXEntity(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860068; this.UMName = "撞单分析"; this.CurMaster = Master; this.Tabs = Tab; this.PageHeight = 600; this.PageWidth = 750; AddListSetMap(new ListSet(pagSHD.ID, null, grdXLBJDMX, entity, UPSHD)); if (!IsPostBack) { this.Master.PnlQuery.GroupingText = "撞单分析信息"; this.Master.PnlBill.GroupingText = "撞单分析信息"; this.Master.PnlQuery.Visible = false; Master.BtnQueryVisible = false; } if (!IsPostBack) { InitControls(); } CustomPageSize = 1000; base.InitPage(); Master.BtnQueryVisible = false; Master.BtnOK.Visible = false; Master.BtnCancel.Visible = false; if (!IsPostBack) { Master_OnQuery(); GridDataBind(); if (PageParam.GetRTrimString("XSCPML").Equals("Y")) { grdXLBJDMX.FindColumnByFieldName("XLXSBJDMX_CPMLMC").Visible = true; } else { grdXLBJDMX.FindColumnByFieldName("XLXSBJDMX_CPMLMC").Visible = false; } FormAreaUpdate(); } } #region 模板继承事件 protected override void Master_OnQuery() { if (!IsPostBack) { if (!string.IsNullOrEmpty(PageParam.GetRTrimString("WFID")) && !string.IsNullOrEmpty(PageParam.GetRTrimString("WFINST"))) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Add("select XLXSBJD_BJDID from XLXSBJD where XLXSBJD_WFID=:XLXSBJD_WFID and XLXSBJD_WFINST=:XLXSBJD_WFINST"); sql.ParamByName("XLXSBJD_WFID").Value = PageParam.GetRTrimString("WFID"); sql.ParamByName("XLXSBJD_WFINST").Value = PageParam.GetRTrimString("WFINST"); DataSet ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { entity.BJDID = ds.Tables[0].Rows[0][0].ToString().Trim(); txtBJDID.Text = ds.Tables[0].Rows[0][0].ToString().Trim(); } } else { if (string.IsNullOrEmpty(PageParam.GetRTrimString("XLXSBJD_BJDID"))) { entity.BJDID = ""; } else { entity.BJDID = PageParam.GetRTrimString("XLXSBJD_BJDID"); txtBJDID.Text = PageParam.GetRTrimString("XLXSBJD_BJDID"); } } } else { entity.BJDID = this.txtBJDID.Text.Trim(); } entity.sBZBJDIDFilter = PageParam.GetRTrimString("BZBJDID"); entity.sCPCFXLBZ = PageParam.GetRTrimString("CPCFXLBZ"); base.Master_OnQuery(); } protected override void GridDataBind() { base.GridDataBind(); } protected override bool QueryValid() { return base.QueryValid(); } protected void grdXLBJDMX_GetDropDownColumnItems(object sender, GetDropDownColumnItemsEventArgs e) { BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(e.MasterDataSet["cbxBJFLID"].Trim()); string sXLXHID = e.RowData["XLXSBJDMX_XLXHID"].ToString().Trim(); string sXLGGID = e.RowData["XLXSBJDMX_XLGGID"].ToString().Trim(); string sXLBZID = e.RowData["XLXSBJDMX_XLBZID"].ToString().Trim().Split('|')[0].Trim(); string sDYDJID = e.RowData["XLXSBJDMX_DYDJID"].ToString().Trim().Split('|')[0].Trim(); string sBJRQ = ""; string JGBID = ""; string sJGCIDS = ""; DataSet ds = new DataSet(); TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); sql.Add(" select XLXSBJD_BJRQ,XLXSBJD_JGBID,XLXSJGB_JGCIDS from XLXSBJD left join XLXSJGB on XLXSJGB_JGBID=XLXSBJD_JGBID where XLXSBJD_BJDID=:pBJDID "); sql.ParamByName("pBJDID").Value = PageParam.GetRTrimString("XLXSBJD_BJDID"); ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { sBJRQ = ds.Tables[0].Rows[0]["XLXSBJD_BJRQ"].ToString().Trim(); JGBID = ds.Tables[0].Rows[0]["XLXSBJD_JGBID"].ToString().Trim(); sJGCIDS = ds.Tables[0].Rows[0]["XLXSJGB_JGCIDS"].ToString().Trim(); } string sJGFID = XLBJDUtils.GetJGFID(sBJRQ); //标记使用材料清单还是价格获取的ds 1表示材料清单 2表示价格表明细 int flag = 0; List lstValue = new List(); lstValue.Clear(); if (e.EventFieldName == "XLXSBJDMX_XLBZID") { sql.Clear(); if (!sXLXHID.Equals("") && !sXLGGID.Equals("")) { string sJGBID = ""; sJGBID = JGBID + "," + sJGCIDS; sJGBID = sJGBID.TrimEnd(','); if (!sJGFID.Equals("")) { if (!sJGBID.Equals("")) { sJGBID += "," + sJGFID; } else { sJGBID = sJGFID; } } //sql.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGBID)); if (bjflxx.XLXSBJFL_BJCPFZJS.Equals("1")) { flag = 1; sql.Clear(); sql.Add(" select a.XLXSCLQD_XLBZID,a.XLBZ_XLBZLXMC,a.PX from "); sql.Add(" ( "); sql.Add(" SELECT DISTINCT XLXSCLQD_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 0 as PX FROM XLXSCLQD"); sql.Add(" LEFT JOIN XLBZ ON XLBZ_XLBZID = XLXSCLQD_XLBZID "); sql.Add(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSCLQD_XLGGID "); sql.Add(" WHERE 1=1 and XLXSCLQD_XLXHID=:pXLXHID and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID and XLXSCLQD_WPID = 'ZZZZ' "); sql.Add(" UNION ALL "); sql.Add(" SELECT XLBZ_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 1 as PX FROM XLBZ"); sql.Add(" WHERE 1=1 and not exists(select 1 from XLXSCLQD left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSCLQD_XLGGID where XLXSCLQD_XLBZID= XLBZ_XLBZID "); sql.Add(" and XLXSCLQD_XLXHID=:pXLXHID and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID and XLXSCLQD_WPID = 'ZZZZ' "); sql.Add(" ) "); sql.Add(" ) a "); sql.Add(" order by PX,len(a.XLXSCLQD_XLBZID),a.XLBZ_PX,a.XLXSCLQD_XLBZID "); sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pXLGGID").Value = sXLGGID.Replace('*', '×'); ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0][2].ToString().Trim().Equals("1")) { flag = 2; sql.Clear(); sql.Add(" select a.XLXSJGBMX_XLBZID,a.XLBZ_XLBZLXMC,a.PX from "); sql.Add(" ( "); sql.Add(" SELECT DISTINCT XLXSJGBMX_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 0 as PX FROM XLXSJGBMX "); sql.Add(" LEFT JOIN XLXSBJXLGGTHB XLXSBJXLGGTHB_MX1 on XLXSBJXLGGTHB_MX1.XLXSBJXLGGTHB_XLGGID=XLXSJGBMX_XLGGID "); sql.Add(" LEFT JOIN XLBZ ON XLBZ_XLBZID = XLXSJGBMX_XLBZID "); sql.Add(" WHERE 1=1 and XLXSJGBMX_XLXHID=:pXLXHID and XLXSBJXLGGTHB_MX1.XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID "); sql.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGBID)); sql.Add(" UNION ALL "); sql.Add(" SELECT XLBZ_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 1 as PX FROM XLBZ "); sql.Add(" WHERE 1=1 and not exists(select 1 from XLXSJGBMX left join XLXSBJXLGGTHB XLXSBJXLGGTHB_MX1N on XLXSBJXLGGTHB_MX1N.XLXSBJXLGGTHB_XLGGID=XLXSJGBMX_XLGGID where XLXSJGBMX_XLBZID= XLBZ_XLBZID "); sql.Add(" and XLXSJGBMX_XLXHID=:pXLXHID and XLXSBJXLGGTHB_MX1N.XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID "); sql.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGBID)); sql.Add(" ) "); sql.Add(" ) a "); sql.Add(" order by PX,len(a.XLXSJGBMX_XLBZID),a.XLBZ_PX,a.XLXSJGBMX_XLBZID "); sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pXLGGID").Value = sXLGGID.Replace('*', '×'); ds = dberp.OpenDataSet(sql); } } } else { flag = 2; sql.Clear(); sql.Add(" select a.XLXSJGBMX_XLBZID,a.XLBZ_XLBZLXMC,a.PX from "); sql.Add(" ( "); sql.Add(" SELECT DISTINCT XLXSJGBMX_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 0 as PX FROM XLXSJGBMX "); sql.Add(" LEFT JOIN XLXSBJXLGGTHB XLXSBJXLGGTHB_MX2 on XLXSBJXLGGTHB_MX2.XLXSBJXLGGTHB_XLGGID=XLXSJGBMX_XLGGID "); sql.Add(" LEFT JOIN XLBZ ON XLBZ_XLBZID = XLXSJGBMX_XLBZID "); sql.Add(" WHERE 1=1 and XLXSJGBMX_XLXHID=:pXLXHID and XLXSBJXLGGTHB_MX2.XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID "); sql.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGBID)); sql.Add(" UNION ALL "); sql.Add(" SELECT XLBZ_XLBZID,XLBZ_XLBZLXMC,"); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 1 as PX FROM XLBZ "); sql.Add(" WHERE 1=1 and not exists(select 1 from XLXSJGBMX left join XLXSBJXLGGTHB XLXSBJXLGGTHB_MX2N on XLXSBJXLGGTHB_MX2N.XLXSBJXLGGTHB_XLGGID=XLXSJGBMX_XLGGID where XLXSJGBMX_XLBZID= XLBZ_XLBZID "); sql.Add(" and XLXSJGBMX_XLXHID=:pXLXHID and XLXSBJXLGGTHB_MX2N.XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID "); sql.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGBID)); sql.Add(" ) "); sql.Add(" ) a "); sql.Add(" order by PX,len(a.XLXSJGBMX_XLBZID),a.XLBZ_PX,a.XLXSJGBMX_XLBZID "); sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pXLGGID").Value = sXLGGID.Replace('*', '×'); ds = dberp.OpenDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0][2].ToString().Trim().Equals("1")) { flag = 1; sql.Clear(); sql.Add(" select a.XLXSCLQD_XLBZID,a.XLBZ_XLBZLXMC,a.PX from "); sql.Add(" ( "); sql.Add(" SELECT DISTINCT XLXSCLQD_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 0 as PX FROM XLXSCLQD"); sql.Add(" LEFT JOIN XLBZ ON XLBZ_XLBZID = XLXSCLQD_XLBZID "); sql.Add(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSCLQD_XLGGID "); sql.Add(" WHERE 1=1 and XLXSCLQD_XLXHID=:pXLXHID and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID and XLXSCLQD_WPID = 'ZZZZ' "); sql.Add(" UNION ALL "); sql.Add(" SELECT XLBZ_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX, "); sql.Add(" 1 as PX FROM XLBZ"); sql.Add(" WHERE 1=1 and not exists(select 1 from XLXSCLQD left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSCLQD_XLGGID where XLXSCLQD_XLBZID= XLBZ_XLBZID "); sql.Add(" and XLXSCLQD_XLXHID=:pXLXHID and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID and XLXSCLQD_WPID = 'ZZZZ' "); sql.Add(" ) "); sql.Add(" ) a "); sql.Add(" order by PX,len(a.XLXSCLQD_XLBZID),a.XLBZ_PX,a.XLXSCLQD_XLBZID "); sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pXLGGID").Value = sXLGGID.Replace('*', '×'); ds = dberp.OpenDataSet(sql); } } } e.DropDownItems.Clear(); if (ds.Tables[0].Rows.Count > 0) { //若有102579008模块权限则增加空选项:102579008|报价材料用量 if (CheckModule("102579008")) { e.DropDownItems.Add(new ListItem("", "")); } //1表示材料清单 2表示价格表明细 if (!sDYDJID.Equals("")) { if (1 == flag) { lstValue = GetBJCPValue_XLXSCLQDorXLXSJGBMX(sXLXHID, sXLGGID, sDYDJID, sJGBID, "XLXSCLQD_DYDJID"); } else if (2 == flag) { lstValue = GetBJCPValue_XLXSCLQDorXLXSJGBMX(sXLXHID, sXLGGID, sDYDJID, sJGBID, "XLXSJGBMX_DYDJID"); } } flag = 0; if (lstValue.Count == 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (ds.Tables[0].Rows[i][2].ToString().Trim().Equals("0")) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i][0].ToString().Trim() + "|" + ds.Tables[0].Rows[i][1].ToString().Trim() + "(*)", ds.Tables[0].Rows[i][0].ToString().Trim())); } else { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i][0].ToString().Trim() + "|" + ds.Tables[0].Rows[i][1].ToString().Trim(), ds.Tables[0].Rows[i][0].ToString().Trim())); } } } else { //第一轮循环判断是不是0的都是lst中 for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (ds.Tables[0].Rows[i][2].ToString().Trim().Equals("0")) { if (!lstValue.Contains(ds.Tables[0].Rows[i][0].ToString().Trim())) { flag = 3; break; } } } if (3 == flag) { //第一轮循环添加** for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (ds.Tables[0].Rows[i][2].ToString().Trim().Equals("0")) { if (lstValue.Contains(ds.Tables[0].Rows[i][0].ToString().Trim())) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i][0].ToString().Trim() + "|" + ds.Tables[0].Rows[i][1].ToString().Trim() + "(**)", ds.Tables[0].Rows[i][0].ToString().Trim())); } } } //第二轮循环添加* for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (ds.Tables[0].Rows[i][2].ToString().Trim().Equals("0")) { if (!lstValue.Contains(ds.Tables[0].Rows[i][0].ToString().Trim())) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i][0].ToString().Trim() + "|" + ds.Tables[0].Rows[i][1].ToString().Trim() + "(*)", ds.Tables[0].Rows[i][0].ToString().Trim())); } } else { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i][0].ToString().Trim() + "|" + ds.Tables[0].Rows[i][1].ToString().Trim(), ds.Tables[0].Rows[i][0].ToString().Trim())); } } } else { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (ds.Tables[0].Rows[i][2].ToString().Trim().Equals("0")) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i][0].ToString().Trim() + "|" + ds.Tables[0].Rows[i][1].ToString().Trim() + "(*)", ds.Tables[0].Rows[i][0].ToString().Trim())); } else { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i][0].ToString().Trim() + "|" + ds.Tables[0].Rows[i][1].ToString().Trim(), ds.Tables[0].Rows[i][0].ToString().Trim())); } } } } } } else { sql.Clear(); sql.Add(" select XLBZ_XLBZID,XLBZ_XLBZLXMC, "); sql.Add(" case when XLBZ_DZSC='Y' then (select isnull(MAX(XLBZ_PX),0) from XLBZ where XLBZ_DZSC = 'Y' ) else XLBZ_PX end as XLBZ_PX "); sql.Add(" from XLBZ "); sql.Add(" where 1=1 order by XLBZ_DZSC,XLBZ_PX,XLBZ_XLBZID"); ds = dberp.OpenDataSet(sql); e.DropDownItems.Clear(); if (ds.Tables[0].Rows.Count > 0) { //若有102579008模块权限则增加空选项:102579008|报价材料用量 if (CheckModule("102579008")) { e.DropDownItems.Add(new ListItem("", "")); } for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i]["XLBZ_XLBZID"].ToString().Trim() + '|' + ds.Tables[0].Rows[i]["XLBZ_XLBZLXMC"].ToString().Trim(), ds.Tables[0].Rows[i]["XLBZ_XLBZID"].ToString().Trim())); } } } } if (e.EventFieldName.Equals("XLXSBJDMX_XLYSID")) { sql.Clear(); sql.Add(" select XLYSB_XLYSID,XLYSB_XLYSMC from XLYSB "); sql.Add(" where 1=1 order by XLYSB_XSXH,XLYSB_XLYSID"); ds = dberp.OpenDataSet(sql); e.DropDownItems.Clear(); if (ds.Tables[0].Rows.Count > 0) { e.DropDownItems.Add(new ListItem("", "")); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { e.DropDownItems.Add(new ListItem(ds.Tables[0].Rows[i]["XLYSB_XLYSMC"].ToString().Trim(), ds.Tables[0].Rows[i]["XLYSB_XLYSID"].ToString().Trim())); } } } } protected override void Grid_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { if (grdXLBJDMX.GetCellByFieldName("CPCF", e.Row).Text.Trim().Equals("Y")) { grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_XLXHID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_XLGGID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_XLBZID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_DYDJID", e.Row).Attributes["BackColor"] = "#87CEFA"; } if (grdXLBJDMX.GetCellByFieldName("CPSLCF", e.Row).Text.Trim().Equals("Y")) { grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_XLXHID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_XLGGID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_XLBZID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_DYDJID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_BJSL", e.Row).Attributes["BackColor"] = "#87CEFA"; } if (grdXLBJDMX.GetCellByFieldName("GGSLCF", e.Row).Text.Trim().Equals("Y")) { grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_XLGGID", e.Row).Attributes["BackColor"] = "#87CEFA"; grdXLBJDMX.GetCellByFieldName("XLXSBJDMX_BJSL", e.Row).Attributes["BackColor"] = "#87CEFA"; } } base.Grid_RowDataBound(sender, e); } #endregion #region 自定义函数 private void InitControls() { //TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); //string sSQL = "select PL_PIID,PL_MC from PL where 1=1 and isnull(PL_TYBZ,'N')<>'Y' order by PL_PIID "; //DataSet ds = dberp.OpenDataSet(sSQL); //for (int i = 0; i < ds.Tables[0].Rows.Count; i++) //{ // string sID = ds.Tables[0].Rows[i]["PL_PIID"].ToString().Trim(); // string sNAME = ds.Tables[0].Rows[i]["PL_MC"].ToString().Trim(); // cbxPIID.Items.Add(new ListItem(sNAME, sID)); //} //TComboBox.SetComboBox("DBERP", cbxXLXHID, "select XLXHB_XLXHID as ID,XLXHB_XLXHID as Name from XLXHB where isnull(XLXHB_TYBZ,'N')<>'Y' order by ID ", true); //TComboBox.SetComboBox("DBERP", cbxDYDJID, "select distinct XLDYDJB_DYDJID as ID,XLDYDJB_DYDJID as Name from XLDYDJB where isnull(XLDYDJB_TYBZ,'N')<>'Y' order by ID ", true); //TComboBox.SetComboBox("DBERP", cbxXLBZID, "select XLBZ_XLBZID,XLBZ_XLBZLXMC from XLBZ order by XLBZ_PX,XLBZ_XLBZID", true); //TComboBox.SetComboBox("DBERP", cbxGCID, "select GC_GCID,GC_GCMC from GC where isnull(GC_TYBZ,'N')<>'Y' order by GC_GCID ", false); //if (cbxGCID.ItemsCount == 1) // cbxGCID.SelectedIndex = 0; //TComboBox.SetComboBox("DBERP", cbxCPMLID, "SELECT XLXSCPML_CPMLID,XLXSCPML_CPMLMC FROM XLXSCPML where isnull(XLXSCPML_TYBZ,'N')<>'Y' order by XLXSCPML_CPMLID ", false); //TSQL sql = new TSQL(dberp); //sql.Add("select XLJGCZBML_JGCZBID,XLJGCZBML_JGCZBMC, XLJGCZBML_JGCZBBBID "); //sql.Add(" from XLJGCZBML "); //sql.Add(" where XLJGCZBML_CZBLX = 'A'"); //sql.Add(" order by XLJGCZBML_JGCZBID"); //ds = null; //ds = dberp.OpenDataSet(sql); //cbxJGCZB.ClearItems(); //for (int i = 0; i < ds.Tables[0].Rows.Count; i++) //{ // string sJGCZBBBID = ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBBBID"].ToString().Trim(); // cbxJGCZB.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBMC"].ToString().Trim() + "|" + sJGCZBBBID // , ds.Tables[0].Rows[i]["XLJGCZBML_JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID)); //} //if (cbxJGCZB.ItemsCount == 1) // cbxJGCZB.SelectedIndex = 0; //else //{ // if (!PageParam.GetRTrimString("JGCZBID").Equals("")) // cbxJGCZB.SelectedValue = PageParam.GetRTrimString("JGCZBID") + "|" + PageParam.GetRTrimString("JGCZBBBID"); //} } //判断模块是否存在并且是否有权限 private bool CheckModule(string sUMID) { int iUMID = CMISproConvert.StrToInt(sUMID); UserRight UR = OpRightUtils.GetUserRight(CurSession.UserId, iUMID); return (DSActiveModule.IsActiveModule(iUMID) && UR.Open); } //标准与电压的转换传入与传出,格式XLXSCLQ_DYDJDID 或者XLXSJGBMX_DYDJID等,表明如果sValue传入电压,返回的则是标准。 private List GetBJCPValue_XLXSCLQDorXLXSJGBMX(string sXLXHID, string sXLGGID, string sValue, string sJGBID, string sLY) { List lst = new List(); lst.Clear(); TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); DataSet ds = new DataSet(); if (sLY.Contains("XLXSCLQD")) { sql.Clear(); if (sLY.Contains("XLXSCLQD_DYDJID")) { sql.Add(" SELECT XLXSCLQD_XLBZID FROM XLXSCLQD"); } else if (sLY.Contains("XLXSCLQD_XLBZID")) { sql.Add(" SELECT XLXSCLQD_DYDJID FROM XLXSCLQD"); } else { sql.Add(" SELECT XLXSCLQD_DYDJID FROM XLXSCLQD"); } sql.Add(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSCLQD_XLGGID"); sql.Add(" WHERE 1=1 and XLXSCLQD_XLXHID=:pXLXHID and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID and XLXSCLQD_WPID = 'ZZZZ' "); if (sLY.Contains("XLXSCLQD_DYDJID")) { sql.Add(" and XLXSCLQD_DYDJID=:pDYDJID "); sql.ParamByName("pDYDJID").Value = sValue.Equals("") ? " " : sValue; } else if (sLY.Contains("XLXSCLQD_XLBZID")) { sql.Add(" and XLXSCLQD_XLBZID=:pXLBZID "); sql.ParamByName("pXLBZID").Value = sValue; } else { sql.Add(" and 1<> 1 "); } sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pXLGGID").Value = sXLGGID.Replace('*', '×'); ds = dberp.OpenDataSet(sql); } else if (sLY.Contains("XLXSJGBMX")) { sql.Clear(); if (sLY.Contains("XLXSJGBMX_DYDJID")) { sql.Add(" SELECT XLXSJGBMX_XLBZID FROM XLXSJGBMX "); } else if (sLY.Contains("XLXSJGBMX_XLBZID")) { sql.Add(" SELECT XLXSJGBMX_DYDJID FROM XLXSJGBMX "); } else { sql.Add(" SELECT XLXSJGBMX_DYDJID FROM XLXSJGBMX "); } sql.Add(" LEFT JOIN XLXSBJXLGGTHB XLXSBJXLGGTHB_MX3 ON XLXSBJXLGGTHB_MX3.XLXSBJXLGGTHB_XLGGID=XLXSJGBMX_XLGGID "); sql.Add(" WHERE 1=1 and XLXSJGBMX_XLXHID=:pXLXHID and XLXSBJXLGGTHB_MX3.XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID "); sql.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGBID)); if (sLY.Contains("XLXSJGBMX_DYDJID")) { sql.Add(" and XLXSJGBMX_DYDJID=:pDYDJID "); sql.ParamByName("pDYDJID").Value = sValue.Equals("") ? " " : sValue; } else if (sLY.Contains("XLXSJGBMX_XLBZID")) { sql.Add(" and XLXSJGBMX_XLBZID=:pXLBZID "); sql.ParamByName("pXLBZID").Value = sValue; } else { sql.Add(" and 1<> 1 "); } sql.ParamByName("pXLXHID").Value = sXLXHID; sql.ParamByName("pXLGGID").Value = sXLGGID.Replace('*', '×'); ds = dberp.OpenDataSet(sql); } if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (!lst.Contains(ds.Tables[0].Rows[i][0].ToString().Trim())) { lst.Add(ds.Tables[0].Rows[i][0].ToString().Trim()); } } } return lst; } #endregion } }