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_WORKFLOW; using System.Text; using GThinking.N_MISPRO.Utility; using GThinking.N_MISPRO; namespace GThinking.N_XLXSBJ { public partial class XLXSBJFKTJList : SingleGridBase { XLXSBJFKTJ entity = new XLXSBJFKTJ(); XLXSBJFKTJ_M qryEntity = new XLXSBJFKTJ_M(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860134; this.UMName = "线缆销售报价反馈统计"; this.CurMaster = Master; this.ModuleGV = grdContentGrid; this.CurEntity = entity; this.CurQueryEntity = qryEntity; this.sURLTarget = "XLBJDInfo.aspx"; this.sQueryURLTarget = "XLXSBJFKTJQuery.aspx"; this.PageHeight = 600; this.PageWidth = 750; Master.EnableNewBtn = false; Master.EnableEditBtn = false; Master.EnableCopyBtn = false; Master.EnableDeleteBtn = false; Master.EnableViewBtn = false; base.DataKeyNames = new string[] { "XLXSBJD_BJDID", "XLXSBJD_WFID", "XLXSBJD_WFINST", "XLXSBJD_WPID" }; if (!IsPostBack) { CurQueryEntity.FieldByName("CXFW").Value = "YQR"; CurQueryEntity.FieldByName("PXFS").Value = "报价日期正序↑"; CurQueryEntity.FieldByName("BJRQS").Value = DateTime.Now.AddMonths(-1).ToString().Trim(); } base.InitPage(); if (!IsPostBack) { if (base.IsDefaultExecute) { Master_OnStandardQuery(null, null); } } TGtGridView.SetGrdColItems("DBERP", grdContentGrid.FindColumnExByFieldName("XLXSBJD_BJFLID"), "select XLXSBJFL_BJFLID,XLXSBJFL_BJFLMC from XLXSBJFL "); TGtGridView.SetGrdColItems("DBERP", grdContentGrid.FindColumnExByFieldName("XLXSBJD_XSBMID"), "select BM_BMID,BM_MC from BM "); TGtGridView.SetGrdColItems("DBERP", grdContentGrid.FindColumnExByFieldName("XLXSBJD_XSQYID"), "select XSQY_XSQYID,XSQY_XSQYMC from XSQY "); } #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 moduleGV_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { TWorkflow awf = new TWorkflow(tSession, null); int indexWPID = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XLXSBJD_WPID")); e.Row.Cells[indexWPID].Text = awf.GetWPName(grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_WFID"].ToString().Trim(), e.Row.Cells[indexWPID].Text); if (grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_WPID"].ToString().Trim().Equals("")) { e.Row.BackColor = System.Drawing.Color.LightBlue; } } 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() { StringBuilder sSQL = new StringBuilder(); sSQL.AppendLine(" select XLXSBJD_BJDID,XLXSBJD_BJRQ,XLXSBJD_WFID,XLXSBJD_WFINST,XLXSBJD_WPID,XLXSBJD_BJFLID,XLXSBJD_TXY,XLXSBJD_XSBMID,XLXSBJD_XSQYID, "); sSQL.AppendLine(" XLXSBJD_KH,XLXSBJD_XMMC,XLXSBJD_ZJE,XLXSBJD_ZBJE,isnull(HTJE,0) as HTJE,isnull(DDJE,0) as DDJE,isnull(FHJE,0) as FHJE,isnull(HKJE,0) as HKJE,XLXSBJD_WHR,XLXSBJD_WHSJ,1 as PX "); sSQL.AppendLine(" from XLXSBJD "); #region 关联合同、订单信息 sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(XSHTBD_HSJE) as HTJE "); sSQL.AppendLine(" from XSHTBD "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = XSHTBD_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' "); sSQL.AppendLine(" group by HTGD_BJDID) a on a.BJDID = XLXSBJD_BJDID "); sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(SO_ZJE) as DDJE "); sSQL.AppendLine(" from SO "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = SO_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' and isnull(SO_WPID,' ') = 'ZZZZ' "); sSQL.AppendLine(" group by HTGD_BJDID) b on b.BJDID = XLXSBJD_BJDID "); sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(SOTH_ZJE) as FHJE "); sSQL.AppendLine(" from SOTH "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = SOTH_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' and isnull(SOTH_WPID,' ') = 'ZZZZ' "); sSQL.AppendLine(" group by HTGD_BJDID) c on c.BJDID = XLXSBJD_BJDID "); sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(SOSKTJ_HKJE) as HKJE "); sSQL.AppendLine(" from SOSKTJ "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = SOSKTJ_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' "); sSQL.AppendLine(" group by HTGD_BJDID) d on d.BJDID = XLXSBJD_BJDID "); #endregion sSQL.AppendLine(" where 1=1 "); sSQL.AppendLine(" and isnull(XLXSBJD_YWLX,' ') = ' ' "); sSQL.AppendLine(" and exists(select 1 from XLXSBJDMX where XLXSBJDMX_BJDID=XLXSBJD_BJDID) ");//存在明细记录 #region 查询条件 if (CurQueryEntity.FieldByName("CXFW").Value.Trim().Equals("WQR"))//未反馈报价单 { sSQL.AppendLine(" and not exists(select 1 from BJD where BJD_BJDID=XLXSBJD_BJDID) "); } else if (CurQueryEntity.FieldByName("CXFW").Value.Trim().Equals("YQR"))//已反馈报价单 { sSQL.AppendLine(" and exists(select 1 from BJD where BJD_BJDID=XLXSBJD_BJDID) "); } if (!CurQueryEntity.FieldByName("BJFL").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJFLID", CurQueryEntity.FieldByName("BJFL").Value.Trim())); } if (!GetOption("BJU012").Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJFLID", GetOption("BJU012"))); } if (!CurQueryEntity.FieldByName("BJDID").Value.Trim().Equals("")) { sSQL.AppendLine(" and XLXSBJD_BJDID like :pBJDID "); entity.Param.Add("pBJDID", "%" + CurQueryEntity.FieldByName("BJDID").Value.Trim() + "%"); } sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("XLXSBJD_BJRQ", CurQueryEntity.FieldByName("BJRQS").Value.ToString().Trim(), CurQueryEntity.FieldByName("BJRQZ").Value.ToString().Trim(), DateTimeType.dtDate, DateTimeType.dtDate)); if (!CurQueryEntity.FieldByName("TXY").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_TXY", CurQueryEntity.FieldByName("TXY").Value.Trim())); } if (!CurQueryEntity.FieldByName("KH").Value.Trim().Equals("")) { sSQL.AppendLine(" and XLXSBJD_KH like :pKH "); entity.Param.Add("pKH", "%" + CurQueryEntity.FieldByName("KH").Value.Trim() + "%"); } if (!CurQueryEntity.FieldByName("XM").Value.Trim().Equals("")) { sSQL.AppendLine(" and XLXSBJD_XMMC like :pXM "); entity.Param.Add("pXM", "%" + CurQueryEntity.FieldByName("XM").Value.Trim() + "%"); } if (!CurQueryEntity.FieldByName("BMID").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_XSBMID", CurQueryEntity.FieldByName("BMID").Value.Trim())); } if (!CurQueryEntity.FieldByName("XSQY").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereLead("XLXSBJD_XSQYID", CurQueryEntity.FieldByName("XSQY").Value.Trim())); } if (CurQueryEntity.FieldByName("SFZB").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(XLXSBJD_ZB,'N') = 'Y' "); } if (CurQueryEntity.FieldByName("SFFH").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(c.BJDID, ' ') <> ' ' "); } if (CurQueryEntity.FieldByName("SFQDHT").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(a.BJDID, ' ') <> ' ' "); } if (CurQueryEntity.FieldByName("SFXDD").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(b.BJDID, ' ') <> ' ' "); } if (CurQueryEntity.FieldByName("SFHK").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(d.BJDID, ' ') <> ' ' "); } #endregion if (CurQueryEntity.FieldByName("HZFS").Value.Trim().Equals("KH")) { sSQL.AppendLine(" union all "); sSQL.AppendLine(" select '小计' as XLXSBJD_BJDID, null as XLXSBJD_BJRQ,' ' as XLXSBJD_WFID, 0 as XLXSBJD_WFINST,' ' as XLXSBJD_WPID,' ' as XLXSBJD_BJFLID,' ' as XLXSBJD_TXY, "); sSQL.AppendLine(" ' ' as XLXSBJD_XSBMID,' ' as XLXSBJD_XSQYID, "); sSQL.AppendLine(" XLXSBJD_KH,' ' as XLXSBJD_XMMC,sum(XLXSBJD_ZJE) as XLXSBJD_ZJE ,sum(XLXSBJD_ZBJE) as XLXSBJD_ZBJE, "); sSQL.AppendLine(" sum(isnull(HTJE,0)) as HTJE,sum(isnull(DDJE,0)) as DDJE,sum(isnull(FHJE,0)) as FHJE,sum(isnull(HKJE,0)) as HKJE,' ' as XLXSBJD_WHR,null as XLXSBJD_WHSJ, 2 as PX "); sSQL.AppendLine(" from XLXSBJD "); #region 关联合同、订单信息 sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(XSHTBD_HSJE) as HTJE "); sSQL.AppendLine(" from XSHTBD "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = XSHTBD_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' "); sSQL.AppendLine(" group by HTGD_BJDID) a on a.BJDID = XLXSBJD_BJDID "); sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(SO_ZJE) as DDJE "); sSQL.AppendLine(" from SO "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = SO_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' and isnull(SO_WPID,' ') = 'ZZZZ' "); sSQL.AppendLine(" group by HTGD_BJDID) b on b.BJDID = XLXSBJD_BJDID "); sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(SOTH_ZJE) as FHJE "); sSQL.AppendLine(" from SOTH "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = SOTH_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' and isnull(SOTH_WPID,' ') = 'ZZZZ' "); sSQL.AppendLine(" group by HTGD_BJDID) c on c.BJDID = XLXSBJD_BJDID "); sSQL.AppendLine(" left join "); sSQL.AppendLine(" (select HTGD_BJDID as BJDID,sum(SOSKTJ_HKJE) as HKJE "); sSQL.AppendLine(" from SOSKTJ "); sSQL.AppendLine(" left join HTGD ON HTGD_HTBH = SOSKTJ_HTBH "); sSQL.AppendLine(" where isnull(HTGD_BJDID,' ') <> ' ' "); sSQL.AppendLine(" group by HTGD_BJDID) d on d.BJDID = XLXSBJD_BJDID "); #endregion sSQL.AppendLine(" where 1=1 "); sSQL.AppendLine(" and isnull(XLXSBJD_YWLX,' ') = ' ' "); sSQL.AppendLine(" and exists(select 1 from XLXSBJDMX where XLXSBJDMX_BJDID=XLXSBJD_BJDID) ");//存在明细记录 #region 查询条件 if (CurQueryEntity.FieldByName("CXFW").Value.Trim().Equals("WQR"))//未反馈报价单 { sSQL.AppendLine(" and not exists(select 1 from BJD where BJD_BJDID=XLXSBJD_BJDID) "); } else if (CurQueryEntity.FieldByName("CXFW").Value.Trim().Equals("YQR"))//已反馈报价单 { sSQL.AppendLine(" and exists(select 1 from BJD where BJD_BJDID=XLXSBJD_BJDID) "); } if (!CurQueryEntity.FieldByName("BJFL").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJFLID", CurQueryEntity.FieldByName("BJFL").Value.Trim())); } if (!GetOption("BJU012").Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJFLID", GetOption("BJU012"))); } if (!CurQueryEntity.FieldByName("BJDID").Value.Trim().Equals("")) { sSQL.AppendLine(" and XLXSBJD_BJDID like :pBJDID "); } sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("XLXSBJD_BJRQ", CurQueryEntity.FieldByName("BJRQS").Value.ToString().Trim(), CurQueryEntity.FieldByName("BJRQZ").Value.ToString().Trim(), DateTimeType.dtDate, DateTimeType.dtDate)); if (!CurQueryEntity.FieldByName("TXY").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_TXY", CurQueryEntity.FieldByName("TXY").Value.Trim())); } if (!CurQueryEntity.FieldByName("KH").Value.Trim().Equals("")) { sSQL.AppendLine(" and XLXSBJD_KH like :pKH "); } if (!CurQueryEntity.FieldByName("XM").Value.Trim().Equals("")) { sSQL.AppendLine(" and XLXSBJD_XMMC like :pXM "); } if (!CurQueryEntity.FieldByName("BMID").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_XSBMID", CurQueryEntity.FieldByName("BMID").Value.Trim())); } if (!CurQueryEntity.FieldByName("XSQY").Value.Trim().Equals("")) { sSQL.AppendLine(" and " + CMISproDataBase.GetWhereLead("XLXSBJD_XSQYID", CurQueryEntity.FieldByName("XSQY").Value.Trim())); } if (CurQueryEntity.FieldByName("SFZB").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(XLXSBJD_ZB,'N') = 'Y' "); } if (CurQueryEntity.FieldByName("SFFH").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(c.BJDID, ' ') <> ' ' "); } if (CurQueryEntity.FieldByName("SFQDHT").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(a.BJDID, ' ') <> ' ' "); } if (CurQueryEntity.FieldByName("SFXDD").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(b.BJDID, ' ') <> ' ' "); } if (CurQueryEntity.FieldByName("SFHK").Value.Trim().ToUpper().Equals("TRUE")) { sSQL.AppendLine(" and isnull(d.BJDID, ' ') <> ' ' "); } #endregion sSQL.AppendLine(" group by XLXSBJD_KH "); } sSQL.AppendLine(" order by "); if (CurQueryEntity.FieldByName("HZFS").Value.Trim().Equals("KH")) { sSQL.AppendLine(" XLXSBJD_KH,PX, "); } if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价单号倒序↓")) { sSQL.AppendLine(" XLXSBJD_BJDID desc "); } else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价单号正序↑")) { sSQL.AppendLine(" XLXSBJD_BJDID "); } else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价日期倒序↓")) { sSQL.AppendLine(" XLXSBJD_BJRQ desc,XLXSBJD_BJDID "); } else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价日期正序↑")) { sSQL.AppendLine(" XLXSBJD_BJRQ,XLXSBJD_BJDID "); } else { sSQL.AppendLine(" XLXSBJD_BJRQ,XLXSBJD_BJDID "); } return sSQL.ToString(); } #endregion #region 控件事件 protected void grdContentGrid_RowDoubleClick(object sender, GThinking.N_CONTROL.RowDoubleClickEventArgs e) { if (!grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJD_WFID"].ToString().Trim().Equals("")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "XLBJDInfo.aspx"; tpp.AddString("WFID", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJD_WFID"].ToString().Trim()); tpp.AddString("WFINST", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJD_WFINST"].ToString().Trim()); tpp.CallAction = TPageCallAction.pcaBrowse; OpenModuleDialog(100860000, tpp); } else if (!grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJD_BJDID"].ToString().Trim().Equals("")) { TPageParams tpp = new TPageParams(); tpp.UrlPath = "XLBJDInfo.aspx"; tpp.AddString("XLXSBJD_BJDID", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJD_BJDID"].ToString().Trim()); tpp.CallAction = TPageCallAction.pcaBrowse; OpenModuleDialog(100860000, tpp); } } #endregion } }