2026821
This commit is contained in:
+376
@@ -0,0 +1,376 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Configuration;
|
||||
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.Data;
|
||||
using GThinking.N_MISPRO;
|
||||
using GThinking.N_MISPRO.Utility;
|
||||
|
||||
namespace GThinking.N_XLXSBJ
|
||||
{
|
||||
#region 主表
|
||||
[EntityType(Db = "DBERP", Table = "XLXSBJD", IsWf = false, IsWhr = false,
|
||||
IsAttach = false)]
|
||||
public class XLXSBJCL_CLHQ : EntityObject
|
||||
{
|
||||
#region 字段属性
|
||||
|
||||
public string sBJRQ = "";
|
||||
public string sJGBID = "";
|
||||
public string sBJDID = "";
|
||||
public string sBJFLID = "";
|
||||
public string sBJDHQLY = "";
|
||||
#endregion
|
||||
|
||||
#region 模板继承事件
|
||||
|
||||
public override TSQL SetQuerySql()
|
||||
{
|
||||
TSQL SQL = base.SetQuerySql();
|
||||
SQL.Clear();
|
||||
//报价单含税为0
|
||||
SQL.Add("select XLXSBJCL_BJCLID as BJCLID,XLXSBJCL_BJCLMC as BJCLMC,'元/Kg' as BJJLDW,XLXSBJCL_BJHQ as BJHQ,");
|
||||
//报价单
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' and XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJG when XLXSBJCL_BJHQ='1' and isnull(XLXSBJDCLHQ_BJCLID,' ')<>' ' then XLXSBJDCLHQ_WSJG else 0.0 end as BJDWSJG,");
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' and XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJG when XLXSBJCL_BJHQ='1' and isnull(XLXSBJDCLHQ_BJCLID,' ')<>' ' then XLXSBJDCLHQ_HSJG else 0.0 end as BJDHSJG,");
|
||||
//报价日期
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then bjrqclhq.CLJG when XLXSBJCL_BJHQ='2' then 0.0 else 0.0 end as BJRQWSJG,");
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then bjrqclhq.HSJG when XLXSBJCL_BJHQ='2' then 0.0 else 0.0 end as BJRQHSJG,");
|
||||
//报价单报价日行情
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='2' then 0 else case when isnull(bjrqclhq.HSJG,0) = 0 then 0 else RoundFix(abs(XLXSBJDCLHQ_HSJG - bjrqclhq.HSJG)/bjrqclhq.HSJG*100,2) end end as BJDBJRHQJCL ,");
|
||||
//价格表
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then jgbclhq.CLJG when XLXSBJCL_BJHQ='2' then 0.0 else 0.0 end as JGBWSJG,");
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then jgbclhq.HSJG when XLXSBJCL_BJHQ='2' then 0.0 else 0.0 end as JGBHSJG, ");
|
||||
//今日价----当下时间
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then CurDateclhq.CLJG when XLXSBJCL_BJHQ='2' then 0.0 else 0.0 end as JRJWSJG,");
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then CurDateclhq.HSJG when XLXSBJCL_BJHQ='2' then 0.0 else 0.0 end as JRJHSJG,");
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then CurDateclhq.WHR when XLXSBJCL_BJHQ='2' then ' ' else ' ' end as JRJWHR,");
|
||||
SQL.Add(" case when XLXSBJCL_BJHQ='1' then CurDateclhq.WHSJ when XLXSBJCL_BJHQ='2' then null else null end as JRJWHSJ,");
|
||||
|
||||
//排序
|
||||
SQL.Add(" case when XLXSBJDCLHQ_BJCLID is null then (case when bjdclhq.XLXSCLHQ_HSJG = 0 then 0 else 1 end ) else (case when XLXSBJDCLHQ_HSJG = 0 then 0 else 1 end) end as px ");
|
||||
|
||||
SQL.Add("from XLXSBJCL B ");
|
||||
/*******************************************************************************************************/
|
||||
SQL.Add("left join ");
|
||||
SQL.Add("( ");
|
||||
/*报价材料之报价日期行情*/
|
||||
SQL.Add(" select BJCLID,XLXSCLHQ_WSJG as CLJG,XLXSCLHQ_HSJG as HSJG ");
|
||||
SQL.Add(" from XLXSCLHQ, ");
|
||||
SQL.Add(" ( ");
|
||||
SQL.Add(" select XLXSCLHQ_BJCLID as BJCLID,max(XLXSCLHQ_YXQS)as maxYXQS ");
|
||||
SQL.Add(" from XLXSCLHQ ");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS<=:pBJRQ and(XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null) ");
|
||||
SQL.Add(" group by XLXSCLHQ_BJCLID ");
|
||||
SQL.Add(" )a ");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add(" and XLXSCLHQ_BJCLID=BJCLID ");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(")bjrqclhq on bjrqclhq.BJCLID=XLXSBJCL_BJCLID ");
|
||||
/*******************************************************************************************************/
|
||||
SQL.Add("left join ");
|
||||
SQL.Add("( ");
|
||||
/*报价材料之当下日期行情----电脑系统时间*/
|
||||
SQL.Add(" select BJCLID,XLXSCLHQ_WSJG as CLJG,XLXSCLHQ_HSJG as HSJG,XLXSCLHQ_WHR as WHR,XLXSCLHQ_WHSJ as WHSJ ");
|
||||
SQL.Add(" from XLXSCLHQ, ");
|
||||
SQL.Add(" ( ");
|
||||
SQL.Add(" select XLXSCLHQ_BJCLID as BJCLID,max(XLXSCLHQ_YXQS)as maxYXQS ");
|
||||
SQL.Add(" from XLXSCLHQ ");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS<=:pCurDate and(XLXSCLHQ_YXQZ>=:pCurDate or XLXSCLHQ_YXQZ is null) ");
|
||||
SQL.Add(" group by XLXSCLHQ_BJCLID ");
|
||||
SQL.Add(" )a ");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ' ");
|
||||
SQL.Add(" and XLXSCLHQ_BJCLID=BJCLID ");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(")CurDateclhq on CurDateclhq.BJCLID=XLXSBJCL_BJCLID ");
|
||||
/*******************************************************************************************************/
|
||||
if (sBJDHQLY.Equals("1"))
|
||||
{
|
||||
SQL.Add(" left join XLXSBJDCLHQ on XLXSBJDCLHQ_BJDID=:pBJDID and XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID");
|
||||
SQL.Add(" left join ");
|
||||
SQL.Add(" (");
|
||||
//报价单报价日之材料行情
|
||||
SQL.Add("select BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||||
SQL.Add(" from XLXSCLHQ,");
|
||||
SQL.Add(" (");
|
||||
SQL.Add(" select XLXSCLHQ_BJCLID as BJCLID,");
|
||||
SQL.Add(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||||
SQL.Add(" from XLXSCLHQ");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||||
SQL.Add(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||||
SQL.Add(" and exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSCLHQ_BJCLID)");//报价日行情之报价材料
|
||||
SQL.Add(" group by XLXSCLHQ_BJCLID");
|
||||
SQL.Add(" ) x");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||||
SQL.Add(" and XLXSCLHQ_BJCLID=BJCLID");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS=maxYXQS");
|
||||
SQL.Add(" union all ");
|
||||
//报价单非报价日之材料行情
|
||||
SQL.Add("select XLXSCLHQ_BJCLID as BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||||
SQL.Add(" from XLXSCLHQ");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID<>'ZZZZZZZZ'");
|
||||
SQL.Add(" and XLXSCLHQ_JGBID=:pJGBID");
|
||||
SQL.Add(" and not exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSCLHQ_BJCLID)");//非报价日行情的报价材料
|
||||
SQL.Add(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||||
}
|
||||
else
|
||||
{
|
||||
SQL.Add(" left join XLXSBJDCLHQ on XLXSBJDCLHQ_BJDID=:pBJDID and XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID");
|
||||
SQL.Add(" left join ");
|
||||
SQL.Add(" (");
|
||||
SQL.Add(" select BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF");
|
||||
SQL.Add(" from XLXSCLHQ,");
|
||||
SQL.Add(" (");
|
||||
SQL.Add(" select XLXSCLHQ_BJCLID as BJCLID,");
|
||||
SQL.Add(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||||
SQL.Add(" from XLXSCLHQ,XLXSBJCL");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||||
SQL.Add(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||||
SQL.Add(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||||
SQL.Add(" group by XLXSCLHQ_BJCLID");
|
||||
SQL.Add(" ) x");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||||
SQL.Add(" and XLXSCLHQ_BJCLID=BJCLID");
|
||||
SQL.Add(" and XLXSCLHQ_YXQS=maxYXQS");
|
||||
SQL.Add(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||||
}
|
||||
/*******************************************************************************************************/
|
||||
SQL.Add("left join ");
|
||||
SQL.Add(" ( ");
|
||||
/*报价材料之价格表行情*/
|
||||
SQL.Add(" select XLXSCLHQ_BJCLID as BJCLID,XLXSCLHQ_WSJG as CLJG,XLXSCLHQ_HSJG as HSJG ");
|
||||
SQL.Add(" from XLXSCLHQ ");
|
||||
SQL.Add(" where XLXSCLHQ_JGBID<>'ZZZZZZZZ' and XLXSCLHQ_JGBID=:pJGBID ");
|
||||
SQL.Add(" )jgbclhq on jgbclhq.BJCLID=XLXSBJCL_BJCLID ");
|
||||
/*******************************************************************************************************/
|
||||
//当前价格表,以及报价日期范围内的物料行情,此时涉及物料行情模块以及价格表的物料行情
|
||||
//SQL.Add("left join ");
|
||||
//SQL.Add("( ");
|
||||
///*报价材料之平均行情:统计自XLXSWLHQ*/
|
||||
//SQL.Add("select XLXSBJCLWL_BJCLID as BJCLID, ");
|
||||
//SQL.Add(" avg(bjdwlhq.CLJG) as BJRQWSJG,avg(bjdwlhq.HSJG) as BJRQHSJG, ");
|
||||
//SQL.Add(" avg(jgbwlhq.CLJG) as JGBWSJG,avg(jgbwlhq.HSJG) as JGBHSJG ");
|
||||
//SQL.Add("from XLXSBJCLWL ");
|
||||
//SQL.Add(" left join ");
|
||||
//SQL.Add(" ( ");
|
||||
///*报价物料之报价单行情*/
|
||||
//SQL.Add(" select WLID,XLXSWLHQ_WSJG as CLJG,XLXSWLHQ_HSJG as HSJG ");
|
||||
//SQL.Add(" from XLXSWLHQ, ");
|
||||
//SQL.Add(" ( ");
|
||||
//SQL.Add(" select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS)as maxYXQS ");
|
||||
//SQL.Add(" from XLXSWLHQ ");
|
||||
//SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
///*2019-08-14为报价日期*/
|
||||
//SQL.Add(" and XLXSWLHQ_YXQS<=:pBJRQ and(XLXSWLHQ_YXQZ>=:pBJRQ or XLXSWLHQ_YXQZ is null) ");
|
||||
//SQL.Add(" group by XLXSWLHQ_WLID ");
|
||||
//SQL.Add(" ) a ");
|
||||
//SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
//SQL.Add(" and XLXSWLHQ_WLID=WLID ");
|
||||
//SQL.Add(" and XLXSWLHQ_YXQS=maxYXQS ");
|
||||
//SQL.Add(" ) bjdwlhq on bjdwlhq.WLID=XLXSBJCLWL_WLID ");
|
||||
|
||||
//SQL.Add(" left join ");
|
||||
//SQL.Add(" ( ");
|
||||
///*报价物料之价格表行情*/
|
||||
//SQL.Add(" select XLXSWLHQ_WLID as WLID,XLXSWLHQ_WSJG as CLJG,XLXSWLHQ_HSJG as HSJG ");
|
||||
//SQL.Add(" from XLXSWLHQ ");
|
||||
///*18120001为报价价格表号*/
|
||||
//SQL.Add(" where XLXSWLHQ_JGBID<>' ' and XLXSWLHQ_JGBID=:pJGBID ");
|
||||
//SQL.Add(" ) jgbwlhq on jgbwlhq.WLID=XLXSBJCLWL_WLID ");
|
||||
//SQL.Add(" group by XLXSBJCLWL_BJCLID ");
|
||||
//SQL.Add(") wlpjhq on wlpjhq.BJCLID=XLXSBJCL_BJCLID ");
|
||||
///*******************************************************************************************************/
|
||||
////当下日期物料行情,此时仅涉及到物料行情模块的数据
|
||||
//SQL.Add("left join ");
|
||||
//SQL.Add("( ");
|
||||
///*报价材料之平均行情:统计自XLXSWLHQ*/
|
||||
//SQL.Add("select XLXSBJCLWL_BJCLID as BJCLID, ");
|
||||
//SQL.Add(" avg(bjdwlhq.CLJG) as CurDateWSJG,avg(bjdwlhq.HSJG) as CurDateHSJG ");
|
||||
//SQL.Add("from XLXSBJCLWL ");
|
||||
//SQL.Add(" left join ");
|
||||
//SQL.Add(" ( ");
|
||||
///*报价物料之报价单行情*/
|
||||
//SQL.Add(" select WLID,XLXSWLHQ_WSJG as CLJG,XLXSWLHQ_HSJG as HSJG ");
|
||||
//SQL.Add(" from XLXSWLHQ, ");
|
||||
//SQL.Add(" ( ");
|
||||
//SQL.Add(" select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS)as maxYXQS ");
|
||||
//SQL.Add(" from XLXSWLHQ ");
|
||||
//SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
//SQL.Add(" and XLXSWLHQ_YXQS<=:pCurDate and(XLXSWLHQ_YXQZ>=:pCurDate or XLXSWLHQ_YXQZ is null) ");
|
||||
//SQL.Add(" group by XLXSWLHQ_WLID ");
|
||||
//SQL.Add(" ) a ");
|
||||
//SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
//SQL.Add(" and XLXSWLHQ_WLID=WLID ");
|
||||
//SQL.Add(" and XLXSWLHQ_YXQS=maxYXQS ");
|
||||
//SQL.Add(" ) bjdwlhq on bjdwlhq.WLID=XLXSBJCLWL_WLID ");
|
||||
//SQL.Add(" group by XLXSBJCLWL_BJCLID,WHR,WHSJ ");
|
||||
//SQL.Add(") CurDatewlpjhq on CurDatewlpjhq.BJCLID=XLXSBJCL_BJCLID ");
|
||||
/*******************************************************************************************************/
|
||||
|
||||
//区别加工原料与普通材料
|
||||
SQL.Add(" left join ");
|
||||
SQL.Add(" ( select distinct XLXSBJCL_JGYBJCLID as BJCLID,0 as PX0 from XLXSBJCL C where isnull(C.XLXSBJCL_JGYBJCLID,' ')<>' ' ) jgybjcl ");
|
||||
SQL.Add(" on jgybjcl.BJCLID=XLXSBJCL_BJCLID ");
|
||||
|
||||
|
||||
SQL.Add(" where 1 = 1 ");
|
||||
SQL.Add(" and exists ( ");
|
||||
SQL.Add(" SELECT 1 FROM XLXSBJDMX");
|
||||
SQL.Add(" LEFT JOIN XLXSCLQD ON XLXSCLQD_XLXHID = XLXSBJDMX_XLXHID AND XLXSCLQD_XLGGID = XLXSBJDMX_XLGGID AND XLXSCLQD_XLBZID = XLXSBJDMX_XLBZID AND isnull(XLXSCLQD_DYDJID,' ') = isnull(XLXSBJDMX_DYDJID,' ') ");
|
||||
SQL.Add(" LEFT JOIN XLJGCZBLM ON XLJGCZBLM_JGCZBID = XLXSCLQD_JGCZBID and XLJGCZBLM_JGCZBBBID = XLXSCLQD_JGCZBBBID ");
|
||||
SQL.Add(" LEFT JOIN XLXSBJCL A on A.XLXSBJCL_BJCLID = XLJGCZBLM_BJCLID ");
|
||||
SQL.Add(" WHERE XLXSBJDMX_BJDID = :pBJDID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' and XLXSCLQD_WPID = 'ZZZZ' and (A.XLXSBJCL_BJCLID = B.XLXSBJCL_BJCLID or isnull(A.XLXSBJCL_JGYBJCLID,' ') = B.XLXSBJCL_BJCLID ) ");
|
||||
SQL.Add(" ) ");
|
||||
SQL.Add(" order by isnull(jgybjcl.PX0,1),XLXSBJCL_BJHQ,px,XLXSBJCL_BJCLID ");
|
||||
SQL.ParamByName("pBJRQ").Value = sBJRQ;
|
||||
SQL.ParamByName("pCurDate").Value = DateTime.Now.ToShortDateString();
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||||
SQL.ParamByName("pBJFLID").Value = sBJFLID;
|
||||
|
||||
string s = SQL.Text;
|
||||
return SQL;
|
||||
}
|
||||
|
||||
public override bool Querying(TSQL sql)
|
||||
{
|
||||
Entites.Columns.Clear();
|
||||
Entites.Clear();
|
||||
return base.Querying(sql);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 明细表
|
||||
|
||||
[EntityType(Db = "DBERP", Table = "XLXSBJD", IsWf = false, IsWhr = false,
|
||||
IsAttach = false)]
|
||||
public class XLXSBJCL_WLHQ : EntityObject
|
||||
{
|
||||
#region 字段属性
|
||||
|
||||
public string sBJDID = "";
|
||||
public string sBJRQ = "";
|
||||
//public string sBJCLID = "";
|
||||
public string sJGBID = "";
|
||||
#endregion
|
||||
|
||||
#region 模板继承事件
|
||||
|
||||
public override TSQL SetQuerySql()
|
||||
{
|
||||
TSQL SQL = base.SetQuerySql();
|
||||
SQL.Clear();
|
||||
SQL.Add("select XLXSBJCLWL_WLID as BJCLID,rtrim(isnull(WL_MC,' ')) || ' ' || rtrim(isnull(WL_GG,' ')) || ' ' || rtrim(isnull(WL_CL,' ')) as BJCLMC,'元/Kg' as BJJLDW, ");
|
||||
//报价单无税/含税价格
|
||||
SQL.Add(" case when XLXSBJDWLHQ_WLID is null then bjrqwlhq.CLJG else XLXSBJDWLHQ_WSJG end as BJDWSJG,");
|
||||
SQL.Add(" case when XLXSBJDWLHQ_WLID is null then bjrqwlhq.HSJG else XLXSBJDWLHQ_HSJG end as BJDHSJG,");
|
||||
//报价日期无税/含税价格
|
||||
SQL.Add("bjrqwlhq.CLJG as BJRQWSJG,bjrqwlhq.HSJG as BJRQHSJG, ");
|
||||
//报价单报价日行情
|
||||
SQL.Add(" case when isnull(bjrqwlhq.HSJG,0) = 0 then 0 else RoundFix(abs(XLXSBJDWLHQ_HSJG - bjrqwlhq.HSJG)/bjrqwlhq.HSJG*100,2) end as BJDBJRHQJCL ,");
|
||||
|
||||
//价格表无税/含税价格
|
||||
SQL.Add("jgbwlhq.CLJG as JGBWSJG,jgbwlhq.HSJG as JGBHSJG, ");
|
||||
//今日价----当下时间
|
||||
SQL.Add("CurDatewlhq.CLJG as JRJWSJG,CurDatewlhq.HSJG as JRJHSJG, ");
|
||||
SQL.Add("CurDatewlhq.WHR as JRJWHR,CurDatewlhq.WHSJ as JRJWHSJ, ");
|
||||
|
||||
//排序
|
||||
SQL.Add("case when XLXSBJDWLHQ_WLID is null then (case when bjrqwlhq.HSJG = 0 then 0 else 1 end ) else (case when XLXSBJDWLHQ_HSJG = 0 then 0 else 1 end) end as px ");
|
||||
|
||||
SQL.Add("from XLXSBJCLWL ");
|
||||
SQL.Add("left join XLXSBJDWLHQ on XLXSBJDWLHQ_BJDID=:pBJDID and XLXSBJDWLHQ_WLID=XLXSBJCLWL_WLID ");
|
||||
SQL.Add("left join ");
|
||||
SQL.Add("( ");
|
||||
/*报价物料之报价日行情*/
|
||||
SQL.Add(" select WLID,XLXSWLHQ_WSJG as CLJG,XLXSWLHQ_HSJG as HSJG ");
|
||||
SQL.Add(" from XLXSWLHQ, ");
|
||||
SQL.Add(" ( ");
|
||||
SQL.Add(" select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS)as maxYXQS ");
|
||||
SQL.Add(" from XLXSWLHQ ");
|
||||
SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add(" and XLXSWLHQ_YXQS<=:pBJRQ and(XLXSWLHQ_YXQZ>=:pBJRQ or XLXSWLHQ_YXQZ is null) ");
|
||||
SQL.Add(" group by XLXSWLHQ_WLID ");
|
||||
SQL.Add(" ) a ");
|
||||
SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add(" and XLXSWLHQ_WLID=WLID ");
|
||||
SQL.Add(" and XLXSWLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(") bjrqwlhq on bjrqwlhq.WLID=XLXSBJCLWL_WLID ");
|
||||
|
||||
SQL.Add("left join ");
|
||||
SQL.Add("( ");
|
||||
/*报价物料之价格表行情*/
|
||||
SQL.Add(" select XLXSWLHQ_WLID as WLID,XLXSWLHQ_WSJG as CLJG,XLXSWLHQ_HSJG as HSJG ");
|
||||
SQL.Add(" from XLXSWLHQ ");
|
||||
SQL.Add(" where XLXSWLHQ_JGBID<>' ' and XLXSWLHQ_JGBID=:pJGBID ");
|
||||
SQL.Add(") jgbwlhq on jgbwlhq.WLID=XLXSBJCLWL_WLID ");
|
||||
|
||||
/*报价物料之当下时间*/
|
||||
SQL.Add("left join ");
|
||||
SQL.Add("( ");
|
||||
SQL.Add(" select WLID,XLXSWLHQ_WSJG as CLJG,XLXSWLHQ_HSJG as HSJG,XLXSWLHQ_WHR as WHR,XLXSWLHQ_WHSJ as WHSJ ");
|
||||
SQL.Add(" from XLXSWLHQ, ");
|
||||
SQL.Add(" ( ");
|
||||
SQL.Add(" select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS)as maxYXQS ");
|
||||
SQL.Add(" from XLXSWLHQ ");
|
||||
SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add(" and XLXSWLHQ_YXQS<=:pCurDate and(XLXSWLHQ_YXQZ>=:pCurDate or XLXSWLHQ_YXQZ is null) ");
|
||||
SQL.Add(" group by XLXSWLHQ_WLID ");
|
||||
SQL.Add(" ) a ");
|
||||
SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
|
||||
SQL.Add(" and XLXSWLHQ_WLID=WLID ");
|
||||
SQL.Add(" and XLXSWLHQ_YXQS=maxYXQS ");
|
||||
SQL.Add(") CurDatewlhq on CurDatewlhq.WLID=XLXSBJCLWL_WLID ");
|
||||
|
||||
SQL.Add("left join WL on WL_WLID=XLXSBJCLWL_WLID ");
|
||||
SQL.Add("where 1=1 ");
|
||||
|
||||
//只显示报价单明细用到的物料
|
||||
SQL.Add(" and XLXSBJCLWL_WLID in ");
|
||||
SQL.Add(" (");
|
||||
SQL.Add(" select distinct case XLJGCZBLM_CLQDL ");
|
||||
for (int i = 1; i <= 80; i++)
|
||||
SQL.Add(string.Format("when '{0}' then XLXSCLQDWL_WLID{1}", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
|
||||
SQL.Add(" else ' ' end as WLID ");
|
||||
SQL.Add(" from XLXSBJDMX");
|
||||
SQL.Add(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSBJDMX_XLXHID and XLXSCLQD_XLGGID=XLXSBJDMX_XLGGID and XLXSCLQD_XLBZID=XLXSBJDMX_XLBZID and XLXSCLQD_DYDJID=isnull(XLXSBJDMX_DYDJID,' ')");
|
||||
SQL.Add(" left join XLJGCZBLM on XLJGCZBLM_JGCZBID=XLXSCLQD_JGCZBID and XLJGCZBLM_JGCZBBBID=XLXSCLQD_JGCZBBBID");
|
||||
SQL.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID");
|
||||
SQL.Add(" left join XLXSCLQDWL on XLXSCLQDWL_JGCZBID=XLXSCLQD_JGCZBID and XLXSCLQDWL_JGCZBBBID=XLXSCLQD_JGCZBBBID and XLXSCLQDWL_JGCZBXH=XLXSCLQD_JGCZBXH and XLXSCLQDWL_DRHH=XLXSCLQD_DRHH");
|
||||
SQL.Add(" where XLXSBJDMX_BJDID=:pBJDID");
|
||||
SQL.Add(" and isnull(XLJGCZBLM_CLQDL,' ')<>' '");
|
||||
SQL.Add(" and XLXSCLQD_WPID='ZZZZ'");
|
||||
SQL.Add(" and XLXSBJCL_BJHQ='2'");
|
||||
SQL.Add(" ) ");
|
||||
|
||||
SQL.Add("order by px,XLXSBJCLWL_WLID ");
|
||||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||||
SQL.ParamByName("pBJRQ").Value = sBJRQ;
|
||||
SQL.ParamByName("pCurDate").Value = DateTime.Now.ToShortDateString();
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
return SQL;
|
||||
}
|
||||
|
||||
public override bool Querying(TSQL sql)
|
||||
{
|
||||
Entites.Columns.Clear();
|
||||
Entites.Clear();
|
||||
return base.Querying(sql);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
Reference in New Issue
Block a user