1707 lines
106 KiB
C#
1707 lines
106 KiB
C#
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 System.Collections.Generic;
|
||
using System.Text;
|
||
|
||
namespace GThinking.U20261363_N_XLXSBJ
|
||
{
|
||
[EntityType(Db = "DBERP", Table = "XLXSBJDCLHQ", IsWf = false, IsWhr = true, IsAttach = false)]
|
||
|
||
public class XLBJD_CLHQTZ : EntityObject
|
||
{
|
||
public string sBJDID = "";
|
||
public string sVID = "";
|
||
public string sRYID = "";
|
||
public string sBJRQ = "";
|
||
public string sBJFLID = "";
|
||
public string sJGBID = "";
|
||
public string sJGBIDS = "";
|
||
public string sBJDHQLY = "";
|
||
|
||
public bool bHSBZ = true;
|
||
public string sTBJCLID = "";
|
||
public string sLBJCLID = "";
|
||
public string sTJ = "";
|
||
public string sLJ = "";
|
||
public string sBJU057 = "N";
|
||
|
||
public override TSQL SetQuerySql()
|
||
{
|
||
TSQL SQL = base.SetQuerySql();
|
||
if (!XLBJDUtils.IsJGEJGB(sJGBID))//表价实时计算价格表
|
||
{
|
||
if (sBJDHQLY.Equals("1"))
|
||
{
|
||
if (!sJGBIDS.Equals(""))
|
||
{
|
||
SQL.Add(GetBJDHQ_VSql(sJGBIDS).ToString());
|
||
if (sBJU057.Trim().Equals("Y"))
|
||
{
|
||
SQL.Add(" where isnull(BJCL_PX.XLJGCZBLM_BJCLID,' ') <> ' ' ");
|
||
}
|
||
SQL.Add(" order by px0,px,px1,isnull(XLXSBJCL_TYBZ,'N'),XLXSBJCL_BJCLID");
|
||
SQL.ParamByName("pJGBIDS").Value = sJGBIDS;
|
||
}
|
||
else
|
||
{
|
||
SQL.Add(GetBJDHQ_VSql().ToString());
|
||
if (sBJU057.Trim().Equals("Y"))
|
||
{
|
||
SQL.Add(" where isnull(BJCL_PX.XLJGCZBLM_BJCLID,' ') <> ' ' ");
|
||
}
|
||
SQL.Add(" order by px0,px,isnull(XLXSBJCL_TYBZ,'N'),XLXSBJCL_BJCLID");
|
||
}
|
||
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pVID").Value = sVID;
|
||
SQL.ParamByName("pRYID").Value = sRYID;
|
||
SQL.ParamByName("pBJRQ").Value = sBJRQ;
|
||
SQL.ParamByName("pBJFLID").Value = sBJFLID;
|
||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||
}
|
||
else
|
||
{
|
||
SQL.Add(GetBJRHQ_VSql().ToString());
|
||
if (sBJU057.Trim().Equals("Y"))
|
||
{
|
||
SQL.Add(" where isnull(BJCL_PX.XLJGCZBLM_BJCLID,' ') <> ' ' ");
|
||
}
|
||
SQL.Add(" order by px0,px,isnull(XLXSBJCL_TYBZ,'N'),XLXSBJCL_BJCLID");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pVID").Value = sVID;
|
||
SQL.ParamByName("pRYID").Value = sRYID;
|
||
SQL.ParamByName("pBJRQ").Value = sBJRQ;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
SQL.Add(GetJGEHQ_VSql(bHSBZ, sTBJCLID, sLBJCLID, sTJ, sLJ).ToString());
|
||
if (sBJU057.Trim().Equals("Y"))
|
||
{
|
||
SQL.Add(" where isnull(BJCL_PX.XLJGCZBLM_BJCLID,' ') <> ' ' ");
|
||
}
|
||
SQL.Add(" order by px0,px,isnull(XLXSBJCL_TYBZ,'N'),XLXSBJCL_BJCLID");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pVID").Value = sVID;
|
||
SQL.ParamByName("pRYID").Value = sRYID;
|
||
SQL.ParamByName("pBJRQ").Value = sBJRQ;
|
||
}
|
||
return SQL;
|
||
}
|
||
|
||
|
||
|
||
public override bool Querying(TSQL sql)
|
||
{
|
||
Entites.Columns.Clear();
|
||
Entites.Clear();
|
||
return base.Querying(sql);
|
||
}
|
||
|
||
/// <summary>
|
||
/// XLXSBJDCLHQ数据可能还没有的情况下,构建报价单行情sql
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
public static StringBuilder GetBJDHQSql()
|
||
{
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine("select case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 1 ELSE 0 end as px, case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 'N' ELSE 'Y' end as SYF, ");
|
||
strSQL.AppendLine(" XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC || case when isnull(XLXSBJCL_TYBZ,'N')= 'Y' then '(停用)' else ' ' end as XLXSBJCL_BJCLMC,XLXSBJCL_BJHQ,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJG else XLXSBJDCLHQ_WSJG end as CLJG,");
|
||
strSQL.AppendLine("XLXSBJCL_ZZSL,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJG else XLXSBJDCLHQ_HSJG end as HSJG,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJGF else XLXSBJDCLHQ_WSJGF end as WSJGF,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJGF else XLXSBJDCLHQ_HSJGF end as HSJGF,");
|
||
strSQL.AppendLine(" 0 as SYJGB_HSJG, 0 as px1, ");
|
||
strSQL.AppendLine("case when isnull(JGYLID, ' ') = ' ' then 1 else 0 end as px0, ");
|
||
strSQL.AppendLine("XLXSBJDCLHQ_WHR,XLXSBJDCLHQ_WHRID,XLXSBJDCLHQ_WHSJ, ");
|
||
strSQL.AppendLine(" (select top 1 XLXSBJCL_BJCLID from XLXSBJCL a where (a.XLXSBJCL_JGYBJCLID =XLXSBJCL.XLXSBJCL_BJCLID or (a.XLXSBJCL_JGYBJCLID=XLXSBJCL.XLXSBJCL_JGYBJCLID and isnull(XLXSBJCL.XLXSBJCL_JGYBJCLID,' ') <> ' '))) as XLXSBJCL_JGYBJCLID ");
|
||
strSQL.AppendLine(" from XLXSBJCL");
|
||
strSQL.AppendLine(" left join (select distinct XLXSBJCL_JGYBJCLID as JGYLID from XLXSBJCL where isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ') JGYL on JGYL.JGYLID = XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join XLXSBJDCLHQ on XLXSBJDCLHQ_BJDID=:pBJDID and XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID");
|
||
///---------------------------------------------------------------------------
|
||
strSQL.AppendLine(" left join ");
|
||
strSQL.AppendLine(" (");
|
||
//报价单报价日之材料行情
|
||
strSQL.AppendLine(" select BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
strSQL.AppendLine(" from XLXSCLHQ,");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,");
|
||
strSQL.AppendLine(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||
strSQL.AppendLine(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" and exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSBJCL_BJCLID)");//报价日行情之报价材料
|
||
strSQL.AppendLine(" group by XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" ) x");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_BJCLID=BJCLID");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS=maxYXQS");
|
||
|
||
strSQL.AppendLine(" union all ");
|
||
//报价单非报价日之材料行情
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID<>'ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_JGBID=:pJGBID");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" and not exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSBJCL_BJCLID)");//非报价日行情的报价材料
|
||
strSQL.AppendLine(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||
///---------------------------------------------------------------------------
|
||
//关联使用的材料,提上显示
|
||
strSQL.AppendLine(" LEFT JOIN");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" SELECT DISTINCT XLJGCZBLM_BJCLID FROM XLXSBJDMX");
|
||
strSQL.AppendLine(" 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,' ') ");
|
||
//利用版本限制
|
||
strSQL.AppendLine(" LEFT JOIN XLJGCZBLM ON XLJGCZBLM_JGCZBID = XLXSCLQD_JGCZBID and XLJGCZBLM_JGCZBBBID = XLXSCLQD_JGCZBBBID ");
|
||
strSQL.AppendLine(" WHERE XLXSBJDMX_BJDID = :pBJDID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' and XLXSCLQD_WPID = 'ZZZZ'");
|
||
strSQL.AppendLine(" ) BJCL_PX ON BJCL_PX.XLJGCZBLM_BJCLID = XLXSBJCL_BJCLID ");
|
||
|
||
//strSQL.AppendLine(" order by px,XLXSBJCL_BJCLID");
|
||
return strSQL;
|
||
}
|
||
|
||
public static StringBuilder GetBJDHQ_VSql()
|
||
{
|
||
return GetBJDHQ_VSql("");
|
||
}
|
||
|
||
public static StringBuilder GetBJDHQ_VSql(string sJGBIDS)
|
||
{
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine("select case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 1 ELSE 0 end as px, case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 'N' ELSE 'Y' end as SYF, ");
|
||
strSQL.AppendLine(" XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC || case when isnull(XLXSBJCL_TYBZ,'N')= 'Y' then '(停用)' else ' ' end as XLXSBJCL_BJCLMC,XLXSBJCL_BJHQ,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJG else V_XLXSBJDCLHQ_WSJG end as CLJG,");
|
||
strSQL.AppendLine("XLXSBJCL_ZZSL,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJG else V_XLXSBJDCLHQ_HSJG end as HSJG,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJGF else V_XLXSBJDCLHQ_WSJGF end as WSJGF,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJGF else V_XLXSBJDCLHQ_HSJGF end as HSJGF,");
|
||
if (!sJGBIDS.Equals(""))
|
||
{
|
||
strSQL.AppendLine(" isnull(e.XLXSCLHQ_HSJG,0.0) as SYJGB_HSJG, case when isnull(bjdclhq.XLXSCLHQ_HSJG,0.0) <> isnull(e.XLXSCLHQ_HSJG,0.0) then 0 else 1 end as px1, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" 0 as SYJGB_HSJG, 0 as px1, ");
|
||
}
|
||
strSQL.AppendLine("case when isnull(JGYLID, ' ') = ' ' then 1 else 0 end as px0, ");
|
||
strSQL.AppendLine("isnull(V_XLXSBJDCLHQ_JGYBJCLID1,' ') as V_XLXSBJDCLHQ_JGYBJCLID1, isnull(V_XLXSBJDCLHQ_JGBL1,0.0) as V_XLXSBJDCLHQ_JGBL1, ");
|
||
strSQL.AppendLine("V_XLXSBJDCLHQ_WHR,V_XLXSBJDCLHQ_WHRID,V_XLXSBJDCLHQ_WHSJ, ");
|
||
strSQL.AppendLine(" (select top 1 XLXSBJCL_BJCLID from XLXSBJCL a where (a.XLXSBJCL_JGYBJCLID =XLXSBJCL.XLXSBJCL_BJCLID or (a.XLXSBJCL_JGYBJCLID=XLXSBJCL.XLXSBJCL_JGYBJCLID and isnull(XLXSBJCL.XLXSBJCL_JGYBJCLID,' ') <> ' '))) as XLXSBJCL_JGYBJCLID ");
|
||
strSQL.AppendLine(" from XLXSBJCL");
|
||
strSQL.AppendLine(" left join (select distinct XLXSBJCL_JGYBJCLID as JGYLID from XLXSBJCL where isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ') JGYL on JGYL.JGYLID = XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join V_XLXSBJDCLHQ on V_XLXSBJDCLHQ_BJDID=:pBJDID and V_XLXSBJDCLHQ_ID=:pVID and V_XLXSBJDCLHQ_TZRYID=:pRYID and V_XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID ");
|
||
///---------------------------------------------------------------------------
|
||
strSQL.AppendLine(" left join ");
|
||
strSQL.AppendLine(" (");
|
||
//报价单报价日之材料行情
|
||
strSQL.AppendLine(" select BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
strSQL.AppendLine(" from XLXSCLHQ,");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,");
|
||
strSQL.AppendLine(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||
strSQL.AppendLine(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" and exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSBJCL_BJCLID)");//报价日行情之报价材料
|
||
strSQL.AppendLine(" group by XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" ) x");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_BJCLID=BJCLID");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS=maxYXQS");
|
||
|
||
strSQL.AppendLine(" union all ");
|
||
//报价单非报价日之材料行情
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID<>'ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_JGBID=:pJGBID");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" and not exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSBJCL_BJCLID)");//非报价日行情的报价材料
|
||
strSQL.AppendLine(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||
if (!sJGBIDS.Equals(""))
|
||
{
|
||
///---------------------------------------------------------------------------因素为1,'',''
|
||
strSQL.AppendLine(" left join ");
|
||
strSQL.AppendLine(" (");
|
||
//报价单报价日之材料行情
|
||
strSQL.AppendLine(" select BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
strSQL.AppendLine(" from XLXSCLHQ,");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,");
|
||
strSQL.AppendLine(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||
strSQL.AppendLine(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" and exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSBJCL_BJCLID)");//报价日行情之报价材料
|
||
strSQL.AppendLine(" group by XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" ) x");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_BJCLID=BJCLID");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS=maxYXQS");
|
||
|
||
strSQL.AppendLine(" union all ");
|
||
//报价单非报价日之材料行情
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID<>'ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_JGBID=:pJGBIDS");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" and not exists(select 1 from XLXSBJFLBJRHQCL where XLXSBJFLBJRHQCL_BJFLID=:pBJFLID and XLXSBJFLBJRHQCL_BJCLID=XLXSBJCL_BJCLID)");//非报价日行情的报价材料
|
||
strSQL.AppendLine(" ) e on e.BJCLID=XLXSBJCL_BJCLID");
|
||
|
||
}
|
||
///---------------------------------------------------------------------------
|
||
//关联使用的材料,提上显示
|
||
strSQL.AppendLine(" LEFT JOIN");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" SELECT DISTINCT XLJGCZBLM_BJCLID FROM XLXSBJDMX");
|
||
strSQL.AppendLine(" 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,' ') ");
|
||
//利用版本限制
|
||
strSQL.AppendLine(" LEFT JOIN XLJGCZBLM ON XLJGCZBLM_JGCZBID = XLXSCLQD_JGCZBID and XLJGCZBLM_JGCZBBBID = XLXSCLQD_JGCZBBBID ");
|
||
strSQL.AppendLine(" WHERE XLXSBJDMX_BJDID = :pBJDID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' and XLXSCLQD_WPID = 'ZZZZ'");
|
||
strSQL.AppendLine(" ) BJCL_PX ON BJCL_PX.XLJGCZBLM_BJCLID = XLXSBJCL_BJCLID ");
|
||
|
||
//strSQL.AppendLine(" order by px,XLXSBJCL_BJCLID");
|
||
return strSQL;
|
||
}
|
||
|
||
public static StringBuilder GetBJRHQSql()
|
||
{
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine("select case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 1 ELSE 0 end as px, case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 'N' ELSE 'Y' end as SYF, ");
|
||
strSQL.AppendLine(" XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC || case when isnull(XLXSBJCL_TYBZ,'N')= 'Y' then '(停用)' else ' ' end as XLXSBJCL_BJCLMC,XLXSBJCL_BJHQ,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJG else XLXSBJDCLHQ_WSJG end as CLJG,");
|
||
strSQL.AppendLine("XLXSBJCL_ZZSL,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJG else XLXSBJDCLHQ_HSJG end as HSJG,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJGF else XLXSBJDCLHQ_WSJGF end as WSJGF,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJGF else XLXSBJDCLHQ_HSJGF end as HSJGF,");
|
||
strSQL.AppendLine("0 as SYJGB_HSJG, 0 as px1,");
|
||
strSQL.AppendLine("case when isnull(JGYLID, ' ') = ' ' then 1 else 0 end as px0, ");
|
||
strSQL.AppendLine("XLXSBJDCLHQ_WHR,XLXSBJDCLHQ_WHRID,XLXSBJDCLHQ_WHSJ, ");
|
||
strSQL.AppendLine(" (select top 1 XLXSBJCL_BJCLID from XLXSBJCL a where (a.XLXSBJCL_JGYBJCLID =XLXSBJCL.XLXSBJCL_BJCLID or (a.XLXSBJCL_JGYBJCLID=XLXSBJCL.XLXSBJCL_JGYBJCLID and isnull(XLXSBJCL.XLXSBJCL_JGYBJCLID,' ') <> ' '))) as XLXSBJCL_JGYBJCLID ");
|
||
strSQL.AppendLine(" from XLXSBJCL");
|
||
strSQL.AppendLine(" left join (select distinct XLXSBJCL_JGYBJCLID as JGYLID from XLXSBJCL where isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ') JGYL on JGYL.JGYLID = XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join XLXSBJDCLHQ on XLXSBJDCLHQ_BJDID=:pBJDID and XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID");
|
||
strSQL.AppendLine(" left join ");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine("select BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF");
|
||
strSQL.AppendLine(" from XLXSCLHQ,");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,");
|
||
strSQL.AppendLine(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||
strSQL.AppendLine(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" group by XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" ) x");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_BJCLID=BJCLID");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS=maxYXQS");
|
||
strSQL.AppendLine(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||
//关联使用的材料,提上显示
|
||
strSQL.AppendLine(" LEFT JOIN");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" SELECT DISTINCT XLJGCZBLM_BJCLID FROM XLXSBJDMX");
|
||
strSQL.AppendLine(" 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,' ') ");
|
||
strSQL.AppendLine(" LEFT JOIN XLJGCZBLM ON XLJGCZBLM_JGCZBID = XLXSCLQD_JGCZBID and XLXSCLQD_JGCZBBBID = XLJGCZBLM_JGCZBBBID ");
|
||
strSQL.AppendLine(" WHERE XLXSBJDMX_BJDID = :pBJDID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' and XLXSCLQD_WPID = 'ZZZZ'");
|
||
strSQL.AppendLine(" ) BJCL_PX ON BJCL_PX.XLJGCZBLM_BJCLID = XLXSBJCL_BJCLID ");
|
||
//strSQL.AppendLine(" order by px,XLXSBJCL_BJCLID");
|
||
return strSQL;
|
||
}
|
||
|
||
public static StringBuilder GetBJRHQ_VSql()
|
||
{
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine("select case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 1 ELSE 0 end as px, case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 'N' ELSE 'Y' end as SYF, ");
|
||
strSQL.AppendLine(" XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC || case when isnull(XLXSBJCL_TYBZ,'N')= 'Y' then '(停用)' else ' ' end as XLXSBJCL_BJCLMC,XLXSBJCL_BJHQ,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJG else V_XLXSBJDCLHQ_WSJG end as CLJG,");
|
||
strSQL.AppendLine("XLXSBJCL_ZZSL,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJG else V_XLXSBJDCLHQ_HSJG end as HSJG,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJGF else V_XLXSBJDCLHQ_WSJGF end as WSJGF,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJGF else V_XLXSBJDCLHQ_HSJGF end as HSJGF,");
|
||
strSQL.AppendLine("0 as SYJGB_HSJG, 0 as px1,");
|
||
strSQL.AppendLine("case when isnull(JGYLID, ' ') = ' ' then 1 else 0 end as px0, ");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_JGYBJCLID1 else isnull(V_XLXSBJDCLHQ_JGYBJCLID1,' ') end as V_XLXSBJDCLHQ_JGYBJCLID1,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_JGBL1 else isnull(V_XLXSBJDCLHQ_JGBL1,0.0) end as V_XLXSBJDCLHQ_JGBL1,");
|
||
//strSQL.AppendLine("isnull(V_XLXSBJDCLHQ_JGYBJCLID1,' ') as V_XLXSBJDCLHQ_JGYBJCLID1, isnull(V_XLXSBJDCLHQ_JGBL1,0.0) as V_XLXSBJDCLHQ_JGBL1, ");
|
||
strSQL.AppendLine("V_XLXSBJDCLHQ_WHR,V_XLXSBJDCLHQ_WHRID,V_XLXSBJDCLHQ_WHSJ, ");
|
||
strSQL.AppendLine(" (select top 1 XLXSBJCL_BJCLID from XLXSBJCL a where (a.XLXSBJCL_JGYBJCLID =XLXSBJCL.XLXSBJCL_BJCLID or (a.XLXSBJCL_JGYBJCLID=XLXSBJCL.XLXSBJCL_JGYBJCLID and isnull(XLXSBJCL.XLXSBJCL_JGYBJCLID,' ') <> ' '))) as XLXSBJCL_JGYBJCLID ");
|
||
strSQL.AppendLine(" from XLXSBJCL");
|
||
strSQL.AppendLine(" left join (select distinct XLXSBJCL_JGYBJCLID as JGYLID from XLXSBJCL where isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ') JGYL on JGYL.JGYLID = XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join V_XLXSBJDCLHQ on V_XLXSBJDCLHQ_BJDID=:pBJDID and V_XLXSBJDCLHQ_ID=:pVID and V_XLXSBJDCLHQ_TZRYID=:pRYID and V_XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join ");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine("select BJCLID,XLXSCLHQ_WSJG,XLXSCLHQ_HSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF,XLXSCLHQ_JGYBJCLID1,XLXSCLHQ_JGBL1 ");
|
||
strSQL.AppendLine(" from XLXSCLHQ,");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,");
|
||
strSQL.AppendLine(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||
strSQL.AppendLine(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" group by XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" ) x");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_BJCLID=BJCLID");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS=maxYXQS");
|
||
strSQL.AppendLine(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||
//关联使用的材料,提上显示
|
||
strSQL.AppendLine(" LEFT JOIN");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" SELECT DISTINCT XLJGCZBLM_BJCLID FROM XLXSBJDMX");
|
||
strSQL.AppendLine(" 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,' ') ");
|
||
strSQL.AppendLine(" LEFT JOIN XLJGCZBLM ON XLJGCZBLM_JGCZBID = XLXSCLQD_JGCZBID and XLXSCLQD_JGCZBBBID = XLJGCZBLM_JGCZBBBID ");
|
||
strSQL.AppendLine(" WHERE XLXSBJDMX_BJDID = :pBJDID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' and XLXSCLQD_WPID = 'ZZZZ'");
|
||
strSQL.AppendLine(" ) BJCL_PX ON BJCL_PX.XLJGCZBLM_BJCLID = XLXSBJCL_BJCLID ");
|
||
//strSQL.AppendLine(" order by px,XLXSBJCL_BJCLID");
|
||
return strSQL;
|
||
}
|
||
|
||
public static StringBuilder GetJGEHQSql(bool bHSBZ, string sTBJCLID, string sLBJCLID, string sTJ, string sLJ)
|
||
{
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine("select case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 1 ELSE 0 end as px,case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 'N' ELSE 'Y' end as SYF,");
|
||
strSQL.AppendLine("XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC || case when isnull(XLXSBJCL_TYBZ,'N')= 'Y' then '(停用)' else ' ' end as XLXSBJCL_BJCLMC,XLXSBJCL_BJHQ,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJG else XLXSBJDCLHQ_WSJG end as CLJG,");
|
||
strSQL.AppendLine("XLXSBJCL_ZZSL,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJG else XLXSBJDCLHQ_HSJG end as HSJG,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJGF else XLXSBJDCLHQ_WSJGF end as WSJGF,");
|
||
strSQL.AppendLine("case when XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJGF else XLXSBJDCLHQ_HSJGF end as HSJGF,");
|
||
strSQL.AppendLine("0 as SYJGB_HSJG, 0 as px1,");
|
||
strSQL.AppendLine("case when isnull(JGYLID, ' ') = ' ' then 1 else 0 end as px0, ");
|
||
strSQL.AppendLine("XLXSBJDCLHQ_WHR,XLXSBJDCLHQ_WHRID,XLXSBJDCLHQ_WHSJ, ");
|
||
strSQL.AppendLine(" (select top 1 XLXSBJCL_BJCLID from XLXSBJCL a where (a.XLXSBJCL_JGYBJCLID =XLXSBJCL.XLXSBJCL_BJCLID or (a.XLXSBJCL_JGYBJCLID=XLXSBJCL.XLXSBJCL_JGYBJCLID and isnull(XLXSBJCL.XLXSBJCL_JGYBJCLID,' ') <> ' '))) as XLXSBJCL_JGYBJCLID ");
|
||
strSQL.AppendLine(" from XLXSBJCL");
|
||
strSQL.AppendLine(" left join (select distinct XLXSBJCL_JGYBJCLID as JGYLID from XLXSBJCL where isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ') JGYL on JGYL.JGYLID = XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join XLXSBJDCLHQ on XLXSBJDCLHQ_BJDID=:pBJDID and XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID");
|
||
strSQL.AppendLine(" left join ");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine("select BJCLID,");
|
||
if (bHSBZ)
|
||
{
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_HSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_HSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG, ");
|
||
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}/(1+ZZSL/100.0)", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}/(1+ZZSL/100.0)", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}/(1+ZZSL/100.0)+XLXSCLHQ_WSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}/(1+ZZSL/100.0)+XLXSCLHQ_WSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_WSJG end as XLXSCLHQ_WSJG, ");
|
||
|
||
strSQL.AppendLine(" XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_WSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_WSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_WSJG end as XLXSCLHQ_WSJG, ");
|
||
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}*(1+ZZSL/100.0)", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}*(1+ZZSL/100.0)", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}*(1+ZZSL/100.0)+XLXSCLHQ_HSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}*(1+ZZSL/100.0)+XLXSCLHQ_HSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG, ");
|
||
|
||
strSQL.AppendLine(" XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
}
|
||
strSQL.AppendLine(" from XLXSCLHQ,");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,XLXSBJCL_JGYBJCLID as JGYBJCLID,XLXSBJCL_ZZSL as ZZSL,");
|
||
strSQL.AppendLine(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||
strSQL.AppendLine(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" group by XLXSCLHQ_BJCLID,XLXSBJCL_JGYBJCLID,XLXSBJCL_ZZSL");
|
||
strSQL.AppendLine(" ) x");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_BJCLID=BJCLID");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS=maxYXQS");
|
||
strSQL.AppendLine(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||
//关联使用的材料,提上显示
|
||
strSQL.AppendLine(" LEFT JOIN");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" SELECT DISTINCT XLJGCZBLM_BJCLID FROM XLXSBJDMX");
|
||
strSQL.AppendLine(" 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,' ') ");
|
||
strSQL.AppendLine(" LEFT JOIN XLJGCZBLM ON XLJGCZBLM_JGCZBID = XLXSCLQD_JGCZBID and XLXSCLQD_JGCZBBBID = XLJGCZBLM_JGCZBBBID ");
|
||
strSQL.AppendLine(" WHERE XLXSBJDMX_BJDID = :pBJDID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' and XLXSCLQD_WPID = 'ZZZZ'");
|
||
strSQL.AppendLine(" ) BJCL_PX ON BJCL_PX.XLJGCZBLM_BJCLID = XLXSBJCL_BJCLID ");
|
||
//strSQL.AppendLine(" order by px,XLXSBJCL_BJCLID");
|
||
return strSQL;
|
||
}
|
||
|
||
public static StringBuilder GetJGEHQ_VSql(bool bHSBZ, string sTBJCLID, string sLBJCLID, string sTJ, string sLJ)
|
||
{
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.AppendLine("select case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 1 ELSE 0 end as px,case when BJCL_PX.XLJGCZBLM_BJCLID is null THEN 'N' ELSE 'Y' end as SYF,");
|
||
strSQL.AppendLine("XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC || case when isnull(XLXSBJCL_TYBZ,'N')= 'Y' then '(停用)' else ' ' end as XLXSBJCL_BJCLMC,XLXSBJCL_BJHQ,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJG else V_XLXSBJDCLHQ_WSJG end as CLJG,");
|
||
strSQL.AppendLine("XLXSBJCL_ZZSL,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJG else V_XLXSBJDCLHQ_HSJG end as HSJG,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_WSJGF else V_XLXSBJDCLHQ_WSJGF end as WSJGF,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_HSJGF else V_XLXSBJDCLHQ_HSJGF end as HSJGF,");
|
||
strSQL.AppendLine("0 as SYJGB_HSJG, 0 as px1,");
|
||
strSQL.AppendLine("case when isnull(JGYLID, ' ') = ' ' then 1 else 0 end as px0, ");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_JGYBJCLID1 else isnull(V_XLXSBJDCLHQ_JGYBJCLID1,' ') end as V_XLXSBJDCLHQ_JGYBJCLID1,");
|
||
strSQL.AppendLine("case when V_XLXSBJDCLHQ_BJCLID is null then bjdclhq.XLXSCLHQ_JGBL1 else isnull(V_XLXSBJDCLHQ_JGBL1,0.0) end as V_XLXSBJDCLHQ_JGBL1,");
|
||
//strSQL.AppendLine("isnull(V_XLXSBJDCLHQ_JGYBJCLID1,' ') as V_XLXSBJDCLHQ_JGYBJCLID1, isnull(V_XLXSBJDCLHQ_JGBL1,0.0) as V_XLXSBJDCLHQ_JGBL1, ");
|
||
strSQL.AppendLine("V_XLXSBJDCLHQ_WHR,V_XLXSBJDCLHQ_WHRID,V_XLXSBJDCLHQ_WHSJ, ");
|
||
strSQL.AppendLine(" (select top 1 XLXSBJCL_BJCLID from XLXSBJCL a where (a.XLXSBJCL_JGYBJCLID =XLXSBJCL.XLXSBJCL_BJCLID or (a.XLXSBJCL_JGYBJCLID=XLXSBJCL.XLXSBJCL_JGYBJCLID and isnull(XLXSBJCL.XLXSBJCL_JGYBJCLID,' ') <> ' '))) as XLXSBJCL_JGYBJCLID ");
|
||
strSQL.AppendLine(" from XLXSBJCL");
|
||
strSQL.AppendLine(" left join (select distinct XLXSBJCL_JGYBJCLID as JGYLID from XLXSBJCL where isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ') JGYL on JGYL.JGYLID = XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join V_XLXSBJDCLHQ on V_XLXSBJDCLHQ_BJDID=:pBJDID and V_XLXSBJDCLHQ_ID=:pVID and V_XLXSBJDCLHQ_TZRYID=:pRYID and V_XLXSBJDCLHQ_BJCLID=XLXSBJCL_BJCLID ");
|
||
strSQL.AppendLine(" left join ");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine("select BJCLID,XLXSCLHQ_JGYBJCLID1,XLXSCLHQ_JGBL1,");
|
||
if (bHSBZ)
|
||
{
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_HSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_HSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG, ");
|
||
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}/(1+ZZSL/100.0)", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}/(1+ZZSL/100.0)", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}/(1+ZZSL/100.0)+XLXSCLHQ_WSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}/(1+ZZSL/100.0)+XLXSCLHQ_WSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_WSJG end as XLXSCLHQ_WSJG, ");
|
||
|
||
strSQL.AppendLine(" XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_WSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}+XLXSCLHQ_WSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_WSJG end as XLXSCLHQ_WSJG, ");
|
||
|
||
strSQL.AppendLine(string.Format("case when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}*(1+ZZSL/100.0)", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(BJCLID,' ')<>' ' and BJCLID='{0}' then {1}*(1+ZZSL/100.0)", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}*(1+ZZSL/100.0)+XLXSCLHQ_HSJGF", sTBJCLID.Trim(), sTJ));
|
||
strSQL.AppendLine(string.Format(" when isnull(JGYBJCLID,' ')<>' ' and JGYBJCLID='{0}' then {1}*(1+ZZSL/100.0)+XLXSCLHQ_HSJGF", sLBJCLID.Trim(), sLJ));
|
||
strSQL.AppendLine(" else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG, ");
|
||
|
||
strSQL.AppendLine(" XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF ");
|
||
}
|
||
strSQL.AppendLine(" from XLXSCLHQ,");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" select XLXSCLHQ_BJCLID as BJCLID,XLXSBJCL_JGYBJCLID as JGYBJCLID,XLXSBJCL_ZZSL as ZZSL,");
|
||
strSQL.AppendLine(" max(XLXSCLHQ_YXQS)as maxYXQS");
|
||
strSQL.AppendLine(" from XLXSCLHQ,XLXSBJCL");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS<=:pBJRQ");
|
||
strSQL.AppendLine(" and (XLXSCLHQ_YXQZ>=:pBJRQ or XLXSCLHQ_YXQZ is null)");
|
||
strSQL.AppendLine(" and XLXSBJCL_BJCLID=XLXSCLHQ_BJCLID");
|
||
strSQL.AppendLine(" group by XLXSCLHQ_BJCLID,XLXSBJCL_JGYBJCLID,XLXSBJCL_ZZSL");
|
||
strSQL.AppendLine(" ) x");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID='ZZZZZZZZ'");
|
||
strSQL.AppendLine(" and XLXSCLHQ_BJCLID=BJCLID");
|
||
strSQL.AppendLine(" and XLXSCLHQ_YXQS=maxYXQS");
|
||
strSQL.AppendLine(" ) bjdclhq on bjdclhq.BJCLID=XLXSBJCL_BJCLID");
|
||
//关联使用的材料,提上显示
|
||
strSQL.AppendLine(" LEFT JOIN");
|
||
strSQL.AppendLine(" (");
|
||
strSQL.AppendLine(" SELECT DISTINCT XLJGCZBLM_BJCLID FROM XLXSBJDMX");
|
||
strSQL.AppendLine(" 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,' ') ");
|
||
strSQL.AppendLine(" LEFT JOIN XLJGCZBLM ON XLJGCZBLM_JGCZBID = XLXSCLQD_JGCZBID and XLXSCLQD_JGCZBBBID = XLJGCZBLM_JGCZBBBID ");
|
||
strSQL.AppendLine(" WHERE XLXSBJDMX_BJDID = :pBJDID and isnull(XLJGCZBLM_CLQDL,' ')<>' ' and XLXSCLQD_WPID = 'ZZZZ'");
|
||
strSQL.AppendLine(" ) BJCL_PX ON BJCL_PX.XLJGCZBLM_BJCLID = XLXSBJCL_BJCLID ");
|
||
//strSQL.AppendLine(" order by px,XLXSBJCL_BJCLID");
|
||
return strSQL;
|
||
}
|
||
|
||
}
|
||
public partial class XLBJD_CLHQTZList : OperationBase
|
||
{
|
||
XLBJD_CLHQTZ entity = new XLBJD_CLHQTZ();
|
||
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
this.UMID = 100860174;
|
||
this.UMName = "线缆销售报价单";
|
||
this.CurMaster = Master;
|
||
this.Tabs = Tab;
|
||
this.PageHeight = 600;
|
||
this.PageWidth = 850;
|
||
CurMaster.BtnQueryVisible = false;
|
||
CurMaster.BtnReportVisible = false;
|
||
AddListSetMap(new ListSet(pagSHD.ID, null, grdSHD, entity, UPSHD));
|
||
base.CustomPageSize = 1000;
|
||
|
||
base.InitPage();
|
||
|
||
if (!IsPostBack)
|
||
InsertVHQB(PageParam.GetRTrimString("BJDID"));
|
||
grdSHD.EnabledToolBar = false;
|
||
CurMaster.PnlBill.Visible = false;
|
||
CurMaster.PnlQuery.Visible = false;
|
||
|
||
if (PageParam.GetRTrimString("JGBIDS").Equals(""))
|
||
{
|
||
grdSHD.FindColumnByFieldName("SYJGB_HSJG").Visible = false;
|
||
}
|
||
if (!IsPostBack)
|
||
{
|
||
Master_OnQuery();
|
||
GridDataBind();
|
||
InitControl();
|
||
|
||
//料价追溯界面调用,默认选中BJCLID所在行
|
||
if (!PageParam.GetRTrimString("BJCLID").Equals(""))
|
||
{
|
||
for (int i = 0; i < grdSHD.Rows.Count; i++)
|
||
{
|
||
if (grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", i).Trim().Equals(PageParam.GetRTrimString("BJCLID")))
|
||
{
|
||
grdSHD.SelectedIndex = i;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
grdSHD.FindColumnByFieldName("CLJG").NumberDecimalPlace = XLBJDUtils.BJCLPriceDecimal;
|
||
grdSHD.FindColumnByFieldName("HSJG").NumberDecimalPlace = XLBJDUtils.BJCLPriceDecimal;
|
||
grdSHD.FindColumnByFieldName("WSJGF").NumberDecimalPlace = XLBJDUtils.BJCLPriceDecimal;
|
||
grdSHD.FindColumnByFieldName("HSJGF").NumberDecimalPlace = XLBJDUtils.BJCLPriceDecimal;
|
||
grdSHD.FindColumnByFieldName("SYJGB_HSJG").NumberDecimalPlace = XLBJDUtils.BJCLPriceDecimal;
|
||
}
|
||
|
||
#region 模板继承事件
|
||
|
||
protected override void Master_OnQuery()
|
||
{
|
||
entity.sBJDID = PageParam.GetRTrimString("BJDID");
|
||
entity.sVID = txtVCLHQID.Value;
|
||
entity.sRYID = CurSession.RYID;
|
||
entity.sBJRQ = PageParam.GetRTrimString("BJRQ");
|
||
entity.sBJFLID = PageParam.GetRTrimString("BJFLID");
|
||
entity.sJGBID = PageParam.GetRTrimString("JGBID");
|
||
entity.sJGBIDS = PageParam.GetRTrimString("JGBIDS");
|
||
entity.sBJDHQLY = PageParam.GetRTrimString("BJDHQLY");
|
||
|
||
entity.bHSBZ = PageParam.GetRTrimString("HSBZ").Equals("Y");
|
||
entity.sTBJCLID = PageParam.GetRTrimString("TBJCLID");
|
||
entity.sLBJCLID = PageParam.GetRTrimString("LBJCLID");
|
||
entity.sTJ = PageParam.GetRTrimString("TJ");
|
||
entity.sLJ = PageParam.GetRTrimString("LJ");
|
||
entity.sBJU057 = CurSession.GetOption(100860000, "BJU057");
|
||
base.Master_OnQuery();
|
||
grdSHD.SelectedIndex = -1;
|
||
}
|
||
|
||
protected override void GridDataBind()
|
||
{
|
||
base.GridDataBind();
|
||
}
|
||
|
||
protected override bool DataLogicValid()
|
||
{
|
||
|
||
return base.DataLogicValid();
|
||
}
|
||
|
||
protected override bool Master_OnOK()
|
||
{
|
||
bool bResult = base.Master_OnOK();
|
||
if (!bResult) return false;
|
||
string sJGBBJBM = string.IsNullOrEmpty(PageParam.GetRTrimString("JGBBJBM")) ? "表价" : PageParam.GetRTrimString("JGBBJBM");
|
||
string sBJBM = string.IsNullOrEmpty(PageParam.GetRTrimString("BJBM")) ? "报价" : PageParam.GetRTrimString("BJBM");
|
||
string sBJDHQLJBM = PageParam.GetRTrimString("BJBM");
|
||
|
||
string sTBJLCID = PageParam.GetRTrimString("TBJCLID").Trim();
|
||
string sLBJCLID = PageParam.GetRTrimString("LBJCLID").Trim();
|
||
if (!sTBJLCID.Trim().Equals("") || !sLBJCLID.Trim().Equals(""))
|
||
{
|
||
string sTLJMsg = "";
|
||
for (int i = 0; i < grdSHD.NewRows.Count; i++)
|
||
{
|
||
if (!sTBJLCID.Trim().Equals(""))
|
||
{
|
||
if (grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[i]).ToString().Trim() == sTBJLCID)
|
||
{
|
||
double dTJ = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("CLJG", grdSHD.NewRows[i]).ToString().Trim());
|
||
if (dTJ == 0)
|
||
{
|
||
string sTCLMC = grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[i]).ToString().Trim() + "|" + grdSHD.GetValueByFieldName("XLXSBJCL_BJCLMC", grdSHD.NewRows[i]).ToString().Trim();
|
||
if (!sTLJMsg.Equals(""))
|
||
sTLJMsg += "、";
|
||
sTLJMsg += sTCLMC;
|
||
}
|
||
}
|
||
}
|
||
if (!sLBJCLID.Trim().Equals(""))
|
||
{
|
||
if (grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[i]).ToString().Trim() == sLBJCLID)
|
||
{
|
||
double dLJ = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("CLJG", grdSHD.NewRows[i]).ToString().Trim());
|
||
if (dLJ == 0)
|
||
{
|
||
string sLCLMC = grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[i]).ToString().Trim() + "|" + grdSHD.GetValueByFieldName("XLXSBJCL_BJCLMC", grdSHD.NewRows[i]).ToString().Trim();
|
||
if (!sTLJMsg.Equals(""))
|
||
sTLJMsg += "、";
|
||
sTLJMsg += sLCLMC;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
if (!sTLJMsg.Equals(""))
|
||
{
|
||
ShowMessage(sTLJMsg + "价格不允许为0!");
|
||
return false;
|
||
}
|
||
}
|
||
string sMsg = "";
|
||
bool bCalcBJDHQCLCB_CLCB_JGBJJ_JGBBJ = false;
|
||
if (XLBJDUtils.IsJGEJGB(PageParam.GetRTrimString("JGBID")))//表价实时计算价格表
|
||
{
|
||
sMsg = "将使用调整后的材料行情重算" + sJGBBJBM + ",进而重算" + sBJBM + "。是否继续?";
|
||
bCalcBJDHQCLCB_CLCB_JGBJJ_JGBBJ = true;
|
||
}
|
||
else
|
||
{
|
||
if (PageParam.GetRTrimString("JGBTJYS").Equals("3"))
|
||
{
|
||
sMsg = "将使用调整后的材料行情重算" + sJGBBJBM + ",进而重算" + sBJBM + "。是否继续?";
|
||
bCalcBJDHQCLCB_CLCB_JGBJJ_JGBBJ = true;
|
||
}
|
||
else
|
||
{
|
||
if (PageParam.GetRTrimString("LJJCLLX").Equals("2"))
|
||
{
|
||
if (sBJDHQLJBM.Equals(""))
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算报价单行情料价,将重新计算的报价单行情料价代入公式“料价价差率=(报价-报价单行情料价)/报价*100”,重新计算料价价差率或报价。是否继续?";
|
||
else
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算" + sBJDHQLJBM + ",将重新计算的" + sBJDHQLJBM + "代入公式“" + sBJDHQLJBM + "价差率=(" + sBJBM + "-" + sBJDHQLJBM + ")/" + sBJBM + "*100”,重新计算" + sBJDHQLJBM + "价差率或" + sBJBM + "。是否继续?";
|
||
}
|
||
else if (PageParam.GetRTrimString("LJJCLLX").Equals("3"))
|
||
{
|
||
if (sBJDHQLJBM.Equals(""))
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算报价单行情料价,将重新计算的报价单行情料价代入公式“料价价差率=(报价-报价单行情料价)/报价单行情料价*100”,重新计算料价价差率或报价。是否继续?";
|
||
else
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算" + sBJDHQLJBM + ",将重新计算的" + sBJDHQLJBM + "代入公式“" + sBJDHQLJBM + "价差率=(" + sBJBM + "-" + sBJDHQLJBM + ")/" + sBJDHQLJBM + "*100”,重新计算" + sBJDHQLJBM + "价差率或" + sBJBM + "。是否继续?";
|
||
}
|
||
else if (PageParam.GetRTrimString("LJJCLLX").Equals("4"))
|
||
{
|
||
if (sBJDHQLJBM.Equals(""))
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算报价单行情料价,将重新计算的报价单行情料价代入公式“料价价差率=(报价单行情料价)/报价*100”,重新计算料价价差率或报价。是否继续?";
|
||
else
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算" + sBJDHQLJBM + ",将重新计算的" + sBJDHQLJBM + "代入公式“" + sBJDHQLJBM + "价差率=(" + sBJDHQLJBM + ")/" + sBJBM + "*100”,重新计算" + sBJDHQLJBM + "价差率或" + sBJBM + "。是否继续?";
|
||
}
|
||
else
|
||
{
|
||
if (sBJDHQLJBM.Equals(""))
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算报价单行情料价。是否继续?";
|
||
else
|
||
sMsg = "将材料行情代入公式“sum(材料价格*材料用量)”,重新计算" + sBJDHQLJBM + "。是否继续?";
|
||
}
|
||
}
|
||
}
|
||
|
||
Confirm.Register("IsQD", sMsg);
|
||
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
|
||
if (Confirm.GetValue("IsQD").Trim().Equals(""))
|
||
{
|
||
Confirm.Ask("IsQD");
|
||
return false;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
|
||
{
|
||
Confirm.Clear();
|
||
return false;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
|
||
{
|
||
Confirm.Clear();
|
||
}
|
||
|
||
TDatabase DBERP = TContextDatabases.GetDatabase("DBERP");
|
||
string sBJDID = PageParam.GetRTrimString("BJDID");
|
||
if (!sBJDID.Equals(""))
|
||
{
|
||
string sErrMsg = "";
|
||
try
|
||
{
|
||
DBERP.BeginTrans();
|
||
//先删除材料行情、物料行情
|
||
DBERP.ExecSQL(string.Format("delete from XLXSBJDCLHQ where XLXSBJDCLHQ_BJDID='{0}'", sBJDID));
|
||
DBERP.ExecSQL(string.Format("delete from XLXSBJDWLHQ where XLXSBJDWLHQ_BJDID='{0}'", sBJDID));
|
||
|
||
TSQL tmpSQL = new TSQL(DBERP);
|
||
|
||
//此处,直接利用上方插入的XLXSBJDCLHQ记录作为加工原料的价格
|
||
XLBJDUtils.InsertXLXSBJDWLHQbyBJDCLHQ_V(DBERP, tmpSQL, sBJDID, txtVWLHQID.Value, txtVCLHQID.Value, CurSession, PageParam.GetRTrimString("JGBID"), PageParam.GetRTrimString("BJRQ"), CurSession.UserName, CurSession.UserId);
|
||
|
||
//将临时表内容更新至材料行情、物料行情
|
||
InsertHQB(DBERP, sBJDID, CurSession.RYID, txtVCLHQID.Value, txtVWLHQID.Value);
|
||
|
||
double fTJ = 0;
|
||
double fLJ = 0;
|
||
for (int i = 0; i < grdSHD.NewRows.Count; i++)
|
||
{
|
||
//循环更新报价单行情时,一并记录铜价、铝价
|
||
if (grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[i]).ToString().Trim() == PageParam.GetRTrimString("TBJCLID"))
|
||
{
|
||
if (PageParam.GetRTrimString("HSBZ").Equals("Y"))
|
||
fTJ = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("HSJG", grdSHD.NewRows[i]).ToString().Trim());
|
||
else
|
||
fTJ = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("CLJG", grdSHD.NewRows[i]).ToString().Trim());
|
||
}
|
||
else if (grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[i]).ToString().Trim() == PageParam.GetRTrimString("LBJCLID"))
|
||
{
|
||
if (PageParam.GetRTrimString("HSBZ").Equals("Y"))
|
||
fLJ = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("HSJG", grdSHD.NewRows[i]).ToString().Trim());
|
||
else
|
||
fLJ = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("CLJG", grdSHD.NewRows[i]).ToString().Trim());
|
||
}
|
||
}
|
||
|
||
//补充更新XLXSBJD_TJ、XLXSBJD_LJ
|
||
if (!PageParam.GetRTrimString("TBJCLID").Equals("") || !PageParam.GetRTrimString("LBJCLID").Equals(""))
|
||
{
|
||
tmpSQL.Clear();
|
||
tmpSQL.Add("update XLXSBJD set XLXSBJD_TJ=:pTJ,XLXSBJD_LJ=:pLJ");
|
||
tmpSQL.Add(" where XLXSBJD_BJDID=:pBJDID");
|
||
tmpSQL.ParamByName("pTJ").Value = fTJ;
|
||
tmpSQL.ParamByName("pLJ").Value = fLJ;
|
||
tmpSQL.ParamByName("pBJDID").Value = sBJDID;
|
||
DBERP.ExecSQL(tmpSQL);
|
||
}
|
||
|
||
if (bCalcBJDHQCLCB_CLCB_JGBJJ_JGBBJ)//根据最新报价单行情重算
|
||
{
|
||
XLBJDCalcUtils.CalcAfterBJDHQChange(DBERP, tmpSQL, sBJDID, 1, GetOption(100860000,"BJU002"), GetOption(100860000,"BJU003"), GetOption(100860000,"BJU018"), CurSession.UserId, CurSession.UserName, ref sErrMsg);
|
||
}
|
||
else//否则只更新报价单行情料价
|
||
{
|
||
XLBJDCalcUtils.CalcBJDHQCLCB(DBERP, tmpSQL, sBJDID, 1, PageParam.GetRTrimString("HSBZ").Equals("Y"), PageParam.GetRTrimString("JGBID"), PageParam.GetRTrimString("JGBIDS"), PageParam.GetRTrimString("JSBLFS"),
|
||
GetOption(100860000,"BJU002"), GetOption(100860000,"BJU003"), GetOption(100860000,"BJU018"), CurSession.UserId, CurSession.UserName, ref sErrMsg);
|
||
|
||
string sJGBJJLY = XLBJDUtils.GetXLXSJGBXXByJGBID(PageParam.GetRTrimString("JGBID")).XLXSJGB_JJLY;
|
||
string ABJDHQJSBJ = XLBJDUtils.GetBJFLXX(PageParam.GetRTrimString("BJFLID")).XLXSBJFL_ABJDHQJSBJ;
|
||
if (ABJDHQJSBJ == "Y" && sJGBJJLY == "A")
|
||
{
|
||
#region 配置信息
|
||
tmpSQL.Clear();
|
||
tmpSQL.Add("select XLXSBJD_JGBID,XLXSJGB_MXBH,XLXSJGB_JGBIDS,XLXSJGB_JGCIDS,XLXSJGB_BJLY,XLXSJGB_TJYS,XLXSJGB_JSBLFS, ");
|
||
tmpSQL.Add(" XLXSBJD_BJFLID,XLXSBJFL_BJDHQLY,XLXSBJFL_TZCLHQ,XLXSBJFL_JGBTJYSS,XLXSBJFL_BJJCLLX,XLXSBJFL_LJJCLLX,XLXSBJFL_CPBJMRXSWS,");
|
||
tmpSQL.Add(" XLXSBJFL_ZDXJJCLLX,XLXSBJFL_JYF,XLXSBJFL_YFWLID,XLXSBJFL_BJHYF,XLXSBJFL_ZDXJGS,XLXSBJFL_JSJGS,");
|
||
tmpSQL.Add(" XLXSBJD_JZBJHS,XLXSBJD_BJRQ");
|
||
tmpSQL.Add(" from XLXSBJD ");
|
||
tmpSQL.Add(" left join XLXSJGB on XLXSJGB_JGBID=XLXSBJD_JGBID ");
|
||
tmpSQL.Add(" left join XLXSBJFL on XLXSBJFL_BJFLID=XLXSBJD_BJFLID");
|
||
tmpSQL.Add(" where XLXSBJD_BJDID=:pBJDID");
|
||
tmpSQL.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet dsBJD = DBERP.OpenDataSet(tmpSQL);
|
||
if (dsBJD.Tables[0].Rows.Count == 0)
|
||
{
|
||
return false;
|
||
}
|
||
string sBJU002 = GetOption(100860000,"BJU002");
|
||
int iXSWS = string.IsNullOrEmpty(sBJU002) ? 5 : CMISproConvert.StrToInt(sBJU002);
|
||
if (iXSWS < 0)
|
||
iXSWS = 0;
|
||
else if (iXSWS > 8)
|
||
iXSWS = 8;
|
||
|
||
bool bHSBZ = dsBJD.Tables[0].Rows[0]["XLXSBJD_JZBJHS"].ToString().Trim().Equals("Y");
|
||
string sBJRQ = dsBJD.Tables[0].Rows[0]["XLXSBJD_BJRQ"].ToString().Trim();
|
||
|
||
string sJGBID = dsBJD.Tables[0].Rows[0]["XLXSBJD_JGBID"].ToString().Trim();
|
||
string sMXBH = dsBJD.Tables[0].Rows[0]["XLXSJGB_MXBH"].ToString().Trim();
|
||
string sJGBIDS = dsBJD.Tables[0].Rows[0]["XLXSJGB_JGBIDS"].ToString().Trim();
|
||
string sJGCIDS = dsBJD.Tables[0].Rows[0]["XLXSJGB_JGCIDS"].ToString().Trim();
|
||
string sBJLY = dsBJD.Tables[0].Rows[0]["XLXSJGB_BJLY"].ToString().Trim();
|
||
string sTJYS = dsBJD.Tables[0].Rows[0]["XLXSJGB_TJYS"].ToString().Trim();
|
||
string sJSBLFS = dsBJD.Tables[0].Rows[0]["XLXSJGB_JSBLFS"].ToString().Trim();
|
||
|
||
string sBJFLID = dsBJD.Tables[0].Rows[0]["XLXSBJD_BJFLID"].ToString().Trim();
|
||
string sBJDHQLY = dsBJD.Tables[0].Rows[0]["XLXSBJFL_BJDHQLY"].ToString().Trim();//1|价格表行情、2|报价日行情
|
||
string sTZCLHQ = dsBJD.Tables[0].Rows[0]["XLXSBJFL_TZCLHQ"].ToString().Trim();//允许调整材料行情
|
||
string sJGBTJYSS = dsBJD.Tables[0].Rows[0]["XLXSBJFL_JGBTJYSS"].ToString().Trim();//价格表调价因素
|
||
string sJCLLX = dsBJD.Tables[0].Rows[0]["XLXSBJFL_BJJCLLX"].ToString().Trim();
|
||
string sLJJCLLX = dsBJD.Tables[0].Rows[0]["XLXSBJFL_LJJCLLX"].ToString().Trim();
|
||
string sCPBJMRXSWS = dsBJD.Tables[0].Rows[0]["XLXSBJFL_CPBJMRXSWS"].ToString().Trim();
|
||
string sZDXJJCLLX = dsBJD.Tables[0].Rows[0]["XLXSBJFL_ZDXJJCLLX"].ToString().Trim();
|
||
string sJYF = dsBJD.Tables[0].Rows[0]["XLXSBJFL_JYF"].ToString().Trim();
|
||
string sYFWLID = dsBJD.Tables[0].Rows[0]["XLXSBJFL_YFWLID"].ToString().Trim();
|
||
string sBJHYF = dsBJD.Tables[0].Rows[0]["XLXSBJFL_BJHYF"].ToString().Trim();
|
||
string sZDXJGS = dsBJD.Tables[0].Rows[0]["XLXSBJFL_ZDXJGS"].ToString().Trim();
|
||
string sJSJGS = dsBJD.Tables[0].Rows[0]["XLXSBJFL_JSJGS"].ToString().Trim();
|
||
#endregion
|
||
|
||
//同步报价单明细记录插入XLXSBJDCLCB、XLXSBJDJJYZ
|
||
XLBJDInfo.InsertCLCBandJJYZ(DBERP, tmpSQL, TControlState.ctsEdit, sBJDID, sJGBID, sBJRQ, CurSession.UserId, CurSession.UserName, GetOption(100860000,"BJU003"), bHSBZ);
|
||
|
||
XLBJDUtils.UpdateBJDMX(DBERP, tmpSQL, sBJFLID, sBJDID, iXSWS, sJCLLX, sLJJCLLX, sCPBJMRXSWS, "", 1);
|
||
bool bZDXJTZ = false;
|
||
if (sZDXJGS.Contains("CLCB") || sZDXJGS.Contains("JGBJJ") || sZDXJGS.Contains("JGBBJ") || sZDXJGS.Contains("CPBJ"))
|
||
{
|
||
XLBJDUtils.UpdateZDXJGS(DBERP, tmpSQL, sBJDID, sBJFLID, sBJU002, "", 1);
|
||
bZDXJTZ = true;
|
||
|
||
}
|
||
if (sJSJGS.Contains("CLCB") || sJSJGS.Contains("JGBJJ") || sJSJGS.Contains("JGBBJ") || sJSJGS.Contains("CPBJ") || bZDXJTZ)
|
||
{
|
||
XLBJDUtils.UpdateJSJGS(DBERP, tmpSQL, sBJDID, sBJFLID, sBJU002, "", 1);
|
||
|
||
}
|
||
}
|
||
else
|
||
{
|
||
UpdateLJJCL(DBERP, tmpSQL, sBJDID, PageParam.GetRTrimString("JCLLX"), PageParam.GetRTrimString("LJJCLLX"), PageParam.GetRTrimString("CPBJMRXSWS"), GetOption(100860000,"BJU002"));
|
||
UpdateBJLJJCL(DBERP, tmpSQL, sBJDID, PageParam.GetRTrimString("BJLJJCLLX"));
|
||
//只有最低限价公式中包含CPBJ,才需要触发计算最低限价
|
||
tmpSQL.Clear();
|
||
tmpSQL.Add("select XLXSBJFL_ZDXJGS,XLXSBJFL_JSJGS from XLXSBJFL where XLXSBJFL_BJFLID=:pBJFLID");
|
||
tmpSQL.ParamByName("pBJFLID").Value = PageParam.GetRTrimString("BJFLID");
|
||
DataSet dsFL = DBERP.OpenDataSet(tmpSQL);
|
||
if (dsFL.Tables[0].Rows.Count > 0)
|
||
{
|
||
bool bZDXJTZ = false;
|
||
if (dsFL.Tables[0].Rows[0]["XLXSBJFL_ZDXJGS"].ToString().Trim().Contains("CPBJ"))
|
||
{
|
||
XLBJDUtils.UpdateZDXJGS(DBERP, tmpSQL, sBJDID, PageParam.GetRTrimString("BJFLID"), GetOption(100860000,"BJU002"), "", 1);
|
||
bZDXJTZ = true;
|
||
}
|
||
if (dsFL.Tables[0].Rows[0]["XLXSBJFL_JSJGS"].ToString().Trim().Contains("CPBJ") || bZDXJTZ)
|
||
{
|
||
XLBJDUtils.UpdateJSJGS(DBERP, tmpSQL, sBJDID, PageParam.GetRTrimString("BJFLID"), GetOption(100860000,"BJU002"), "", 1);
|
||
}
|
||
}
|
||
}
|
||
|
||
XLBJDUtils.UpdateXLXSBJD(DBERP, tmpSQL, sBJDID, PageParam.GetRTrimString("JCLLX"), PageParam.GetRTrimString("LJJCLLX"), PageParam.GetRTrimString("ZDXJJCLLX"), PageParam.GetRTrimString("JYF"), PageParam.GetRTrimString("YSJDID"),
|
||
PageParam.GetRTrimString("GYSID"), PageParam.GetRTrimString("YFWLID"), PageParam.GetRTrimString("BJHYF"));
|
||
}
|
||
|
||
DBERP.CommitTrans();
|
||
DialogOperationScript dos = new DialogOperationScript(this);
|
||
dos.ClickOwnerButton(PageParam.GetRTrimString("btnRefreshCID"));
|
||
dos.CloseSelf();
|
||
dos.Execute();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
ShowMessage(sErrMsg + " " + ex.Message);
|
||
DBERP.RollbackTrans();
|
||
return false;
|
||
}
|
||
}
|
||
|
||
return true;
|
||
|
||
}
|
||
|
||
protected override void Grid_RowDataBound(object sender, GridViewRowEventArgs e)
|
||
{
|
||
if (e.Row.RowType == DataControlRowType.DataRow)
|
||
{
|
||
if (grdSHD.GetCellByFieldName("XLXSBJCL_BJHQ", e.Row).Text.Trim().Equals("1"))
|
||
grdSHD.GetCellByFieldName("XLXSBJCL_BJHQ", e.Row).Text = "1|材料行情";
|
||
else if (grdSHD.GetCellByFieldName("XLXSBJCL_BJHQ", e.Row).Text.Trim().Equals("2"))
|
||
grdSHD.GetCellByFieldName("XLXSBJCL_BJHQ", e.Row).Text = "2|物料行情";
|
||
}
|
||
base.Grid_RowDataBound(sender, e);
|
||
}
|
||
|
||
protected void grdSHD_CalculateField(object sender, CalculateFieldEventArgs e)
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
string sBJDID = PageParam.GetRTrimString("BJDID");
|
||
string sVID = GetVID(sBJDID, CurSession.RYID);
|
||
string sRYID = CurSession.RYID;
|
||
string sBJCLID = e.RowData["XLXSBJCL_BJCLID"].ToString().Trim();
|
||
string sCLJG = e.RowData["CLJG"].ToString().Trim();
|
||
string sHSJG = e.RowData["HSJG"].ToString().Trim();
|
||
string sWSJGF = e.RowData["WSJGF"].ToString().Trim();
|
||
string sHSJGF = e.RowData["HSJGF"].ToString().Trim();
|
||
if (e.EventFieldName.Equals("CLJG"))
|
||
{
|
||
double dCLJG = NumberUtils.RoundX(CMISproConvert.StrToFloat(sCLJG), XLBJDUtils.BJCLPriceDecimal);
|
||
double dHSJG = NumberUtils.RoundX(CMISproConvert.StrToFloat(e.EventFieldValue) * (1 + CMISproConvert.StrToFloat(e.RowData["XLXSBJCL_ZZSL"].ToString().Trim(), 0) / 100), XLBJDUtils.BJCLPriceDecimal);
|
||
sCLJG = dCLJG.ToString();
|
||
sHSJG = dHSJG.ToString();
|
||
e.ResultPairs.Add("HSJG", dHSJG.ToString());
|
||
e.ResultPairs.Add("V_XLXSBJDCLHQ_WHR", CurSession.UserName);
|
||
e.ResultPairs.Add("V_XLXSBJDCLHQ_WHRID", CurSession.UserId);
|
||
e.ResultPairs.Add("V_XLXSBJDCLHQ_WHSJ", DateTime.Now.ToString().Trim());
|
||
}
|
||
else if (e.EventFieldName.Equals("HSJG"))
|
||
{
|
||
double dCLJG = NumberUtils.RoundX(CMISproConvert.StrToFloat(e.EventFieldValue) / (1 + CMISproConvert.StrToFloat(e.RowData["XLXSBJCL_ZZSL"].ToString().Trim(), 0) / 100), XLBJDUtils.BJCLPriceDecimal);
|
||
double dHSJG = NumberUtils.RoundX(CMISproConvert.StrToFloat(sHSJG), XLBJDUtils.BJCLPriceDecimal);
|
||
sCLJG = dCLJG.ToString();
|
||
sHSJG = dHSJG.ToString();
|
||
e.ResultPairs.Add("CLJG", dCLJG.ToString());
|
||
e.ResultPairs.Add("V_XLXSBJDCLHQ_WHR", CurSession.UserName);
|
||
e.ResultPairs.Add("V_XLXSBJDCLHQ_WHRID", CurSession.UserId);
|
||
e.ResultPairs.Add("V_XLXSBJDCLHQ_WHSJ", DateTime.Now.ToString().Trim());
|
||
}
|
||
else
|
||
{
|
||
double dCLJG = NumberUtils.RoundX(CMISproConvert.StrToFloat(sCLJG), XLBJDUtils.BJCLPriceDecimal);
|
||
double dHSJG = NumberUtils.RoundX(CMISproConvert.StrToFloat(sHSJG), XLBJDUtils.BJCLPriceDecimal);
|
||
sCLJG = dCLJG.ToString();
|
||
sHSJG = dHSJG.ToString();
|
||
}
|
||
|
||
//因“调整物料行情”时需要传递加工原料的价格,所以这里更新后台有必要,得保证前端和后台价格一致
|
||
SQL.Clear();
|
||
SQL.Add(" select 1 from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_BJCLID = :pBJCLID and V_XLXSBJDCLHQ_BJDID = :pBJDID and V_XLXSBJDCLHQ_ID = :pVID and V_XLXSBJDCLHQ_TZRYID = :pRYID ");
|
||
SQL.ParamByName("pBJCLID").Value = sBJCLID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pVID").Value = sVID;
|
||
SQL.ParamByName("pRYID").Value = sRYID;
|
||
DataSet dsBJDCLHQ = dberp.OpenDataSet(SQL);
|
||
if (dsBJDCLHQ.Tables[0].Rows.Count > 0)
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" update V_XLXSBJDCLHQ ");
|
||
SQL.Add(" set V_XLXSBJDCLHQ_WSJG = :XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG=:XLXSBJDCLHQ_HSJG, ");
|
||
SQL.Add(" V_XLXSBJDCLHQ_WHRID = :XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR = :XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ = :XLXSBJDCLHQ_WHSJ");
|
||
SQL.Add(" where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID and V_XLXSBJDCLHQ_ID = :pVID and V_XLXSBJDCLHQ_TZRYID = :pRYID ");
|
||
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = sCLJG;
|
||
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = sHSJG;
|
||
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = CurSession.UserName;
|
||
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = CurSession.UserId;
|
||
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now;
|
||
SQL.ParamByName("pBJCLID").Value = sBJCLID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pVID").Value = sVID;
|
||
SQL.ParamByName("pRYID").Value = sRYID;
|
||
dberp.ExecSQL(SQL);
|
||
}
|
||
else
|
||
{
|
||
//插入
|
||
SQL.Clear();
|
||
SQL.Add(" insert into V_XLXSBJDCLHQ( ");
|
||
SQL.Add(" V_XLXSBJDCLHQ_BJCLID,V_XLXSBJDCLHQ_BJDID, V_XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG, V_XLXSBJDCLHQ_WSJGF,V_XLXSBJDCLHQ_HSJGF, ");
|
||
SQL.Add(" V_XLXSBJDCLHQ_ID,V_XLXSBJDCLHQ_TZRYID,V_XLXSBJDCLHQ_TZRYGH,V_XLXSBJDCLHQ_TZRYMC,V_XLXSBJDCLHQ_TIMESTAMP,V_XLXSBJDCLHQ_WHRID, V_XLXSBJDCLHQ_WHR, V_XLXSBJDCLHQ_WHSJ )");
|
||
SQL.Add(" values(");
|
||
SQL.Add(" :XLXSBJDCLHQ_BJCLID, :XLXSBJDCLHQ_BJDID, :XLXSBJDCLHQ_WSJG,:XLXSBJDCLHQ_HSJG, :XLXSBJDCLHQ_WSJGF, :XLXSBJDCLHQ_HSJGF,");
|
||
SQL.Add(" :pVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP,:XLXSBJDCLHQ_WHRID, :XLXSBJDCLHQ_WHR, :XLXSBJDCLHQ_WHSJ )");
|
||
SQL.ParamByName("XLXSBJDCLHQ_BJCLID").Value = sBJCLID;
|
||
SQL.ParamByName("XLXSBJDCLHQ_BJDID").Value = sBJDID;
|
||
SQL.ParamByName("pVID").Value = sVID;
|
||
SQL.ParamByName("pRYID").Value = sRYID;
|
||
SQL.ParamByName("pRYGH").Value = CurSession.UserId;
|
||
SQL.ParamByName("pRYMC").Value = CurSession.UserName;
|
||
SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime();
|
||
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = sCLJG;
|
||
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = sHSJG;
|
||
SQL.ParamByName("XLXSBJDCLHQ_WSJGF").Value = sWSJGF;
|
||
SQL.ParamByName("XLXSBJDCLHQ_HSJGF").Value = sHSJGF;
|
||
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = CurSession.UserName;
|
||
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = CurSession.UserId;
|
||
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now;
|
||
dberp.ExecSQL(SQL);
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 自定义函数
|
||
|
||
private void InitControl()
|
||
{
|
||
//调整物料行情=Y
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSBJFL where XLXSBJFL_BJFLID='{0}' and XLXSBJFL_TZWLHQ='Y'", PageParam.GetRTrimString("BJFLID"))))
|
||
{
|
||
btnTZWLHQ.Visible = true;
|
||
btnWLHQ.Visible = false;
|
||
}
|
||
else
|
||
{
|
||
btnTZWLHQ.Visible = false;
|
||
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
SQL.Clear();
|
||
SQL.Add("select top 1 XLXSBJCL_BJHQ from XLXSBJCL where XLXSBJCL_BJHQ = '2' ");
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
btnWLHQ.Visible = true;
|
||
}
|
||
else
|
||
{
|
||
btnWLHQ.Visible = false;
|
||
}
|
||
}
|
||
}
|
||
|
||
private string GetBJCLMC(string sBJCLID)
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSBJCL_BJCLMC from XLXSBJCL ");
|
||
SQL.Add(" where XLXSBJCL_BJCLID = :XLXSBJCL_BJCLID ");
|
||
SQL.ParamByName("XLXSBJCL_BJCLID").Value = sBJCLID;
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
return ds.Tables[0].Rows[0]["XLXSBJCL_BJCLMC"].ToString().Trim();
|
||
}
|
||
return "";
|
||
}
|
||
|
||
//更新料价价差率
|
||
public static void UpdateLJJCL(TDatabase dberp, TSQL SQL, string sBJDID, string sJCLLX, string sLJJCLLX, string sCPBJMRXSWS, string sBJU002)
|
||
{
|
||
|
||
//按报价单行情重算表价、报价
|
||
int tmpXSWS = string.IsNullOrEmpty(sBJU002) ? 5 : CMISproConvert.StrToInt(sBJU002);
|
||
if (tmpXSWS < 0)
|
||
tmpXSWS = 0;
|
||
else if (tmpXSWS > 8)
|
||
tmpXSWS = 8;
|
||
|
||
#region 2|(调整后报价金额-报价单行情料价金额)/调整后报价金额*100,3|(调整后报价金额-报价单行情料价金额)/报价单行情料价金额*100
|
||
if (sLJJCLLX.Equals("2") || sLJJCLLX.Equals("3") || sLJJCLLX.Equals("4"))//2|(调整后报价金额-报价单行情料价金额)/调整后报价金额*100,3|(调整后报价金额-报价单行情料价金额)/报价单行情料价金额*100
|
||
{
|
||
//料价价差率未锁定的明细记录,更新料价价差率
|
||
SQL.Clear();
|
||
if (sLJJCLLX.Equals("2"))
|
||
SQL.Add("update XLXSBJDMX set XLXSBJDMX_CLCBJCL=RoundFix(case when XLXSBJDMX_BJJE=0 then 0 else 100*(XLXSBJDMX_BJJE-RoundFix(XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL,2))/XLXSBJDMX_BJJE end,2)");
|
||
else if (sLJJCLLX.Equals("3"))
|
||
SQL.Add("update XLXSBJDMX set XLXSBJDMX_CLCBJCL=RoundFix(case when XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL=0 then 0 else 100*(XLXSBJDMX_BJJE-RoundFix(XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL,2))/(XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL) end,2)");
|
||
else
|
||
SQL.Add("update XLXSBJDMX set XLXSBJDMX_CLCBJCL=RoundFix(case when XLXSBJDMX_BJJE=0 then 0 else 100*(RoundFix(XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL,2))/XLXSBJDMX_BJJE end,2)");
|
||
|
||
SQL.Add(" where XLXSBJDMX_BJDID=:pBJDID");
|
||
SQL.Add(" and XLXSBJDMX_CLCBJCLSDBZ<>'Y'");//料价价差率未锁定
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
#region 按料价价差率算报价的明细记录,更新报价
|
||
string sqlBJJE = "";
|
||
if (sLJJCLLX.Equals("2"))
|
||
sqlBJJE = "RoundFix(case WHEN XLXSBJDMX_CLCBJCL = 100 OR XLXSBJDMX_BJSL=0 THEN 0 else XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL/(1-XLXSBJDMX_CLCBJCL/100.0) END,2)";
|
||
else if (sLJJCLLX.Equals("3"))
|
||
sqlBJJE = "RoundFix(case WHEN XLXSBJDMX_BJSL=0 THEN 0 else XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL*(1+XLXSBJDMX_CLCBJCL/100.0) END,2)";
|
||
else
|
||
sqlBJJE = "RoundFix(case WHEN XLXSBJDMX_CLCBJCL = 0 THEN 0 else XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL/(XLXSBJDMX_CLCBJCL/100.0) END,2)";
|
||
SQL.Clear();
|
||
SQL.Add(" update XLXSBJDMX set ");
|
||
SQL.Add(" XLXSBJDMX_TZQBJJE=RoundFix(" + sqlBJJE + " - XLXSBJDMX_TZBJJE,2),");
|
||
SQL.Add(" XLXSBJDMX_CPBJ=case when XLXSBJDMX_BJSL = 0 then 0 else RoundFix((" + sqlBJJE + " - XLXSBJDMX_TZBJJE)/XLXSBJDMX_BJSL," + (CMISproConvert.StrToInt(sCPBJMRXSWS) > tmpXSWS ? CMISproConvert.StrToInt(sCPBJMRXSWS) : tmpXSWS) + " ) end, ");//保留精度高的
|
||
SQL.Add(" XLXSBJDMX_TZCPBJ=case when XLXSBJDMX_TZQCPBJ=0 or XLXSBJDMX_BJSL = 0 then 0 else 100*((" + sqlBJJE + " - XLXSBJDMX_TZBJJE)/XLXSBJDMX_BJSL-XLXSBJDMX_TZQCPBJ)/XLXSBJDMX_TZQCPBJ end,");
|
||
SQL.Add(" XLXSBJDMX_BJJE=" + sqlBJJE + ",");
|
||
//if (sBJLJJCLLX.Equals("1"))//表价料价价差率公式
|
||
//{
|
||
// SQL.Add("XLXSBJDMX_JGBBJLJJCL =case XLXSBJDMX_BJSL*XLXSBJDMX_JGBBJ when 0 then 0 else RoundFix((XLXSBJDMX_BJSL*XLXSBJDMX_JGBBJ - XLXSBJDMX_BJSL*XLXSBJDMX_BJDHQCLCB)/ (XLXSBJDMX_BJSL*XLXSBJDMX_JGBBJ) * 100,2) end,");
|
||
//}
|
||
//else
|
||
//{
|
||
// SQL.Add("XLXSBJDMX_JGBBJLJJCL=0,");
|
||
//}
|
||
if (sJCLLX.Equals("1"))//表价价差率公式
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when " + sqlBJJE + "=0.0 then 0.0 else RoundFix(100*(" + sqlBJJE + "-XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL)/(" + sqlBJJE + "),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =RoundFix(" + sqlBJJE + "-RoundFix(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL,2)," + tmpXSWS + ") ");
|
||
}
|
||
else if (sJCLLX.Equals("2"))
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL=0.0 then 0.0 else RoundFix(100*(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL-" + sqlBJJE + ")/(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =RoundFix(RoundFix(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL,2)-" + sqlBJJE + "," + tmpXSWS + ") ");
|
||
}
|
||
else if (sJCLLX.Equals("3"))
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when " + sqlBJJE + "=0.0 then 0.0 else RoundFix(100*(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL)/(" + sqlBJJE + "),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =0 ");
|
||
}
|
||
else if (sJCLLX.Equals("4"))
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL=0.0 then 0.0 else RoundFix(100*(" + sqlBJJE + " - XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL)/(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =RoundFix(" + sqlBJJE + " - RoundFix(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL,2)," + tmpXSWS + ") ");
|
||
}
|
||
else
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL=0,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE=0 ");
|
||
}
|
||
SQL.Add(" from ");
|
||
SQL.Add(" XLXSBJDMX");
|
||
SQL.Add(" where XLXSBJDMX_BJDID=:pBJDID ");
|
||
SQL.Add(" and XLXSBJDMX_BJSDBZ<>'Y'");//跳过报价锁定为Y的明细数据
|
||
SQL.Add(" and XLXSBJDMX_CLCBJCLSDBZ='Y'");//按料价价差率算报价
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
string sCPBJBLXSWS = Math.Pow(10, -1 * CMISproConvert.StrToFloat(sCPBJMRXSWS)).ToString("F9");
|
||
string sqlBJJE2 = string.Format("(RoundFix(RoundFix(XLXSBJDMX_CPBJ/{0},0)*{0}*XLXSBJDMX_BJSL,2)+XLXSBJDMX_TZBJJE)", sCPBJBLXSWS);
|
||
SQL.Clear();
|
||
SQL.Add(" update XLXSBJDMX set ");
|
||
SQL.Add(string.Format(" XLXSBJDMX_CPBJ=RoundFix(XLXSBJDMX_CPBJ/{0},0)*{0},", sCPBJBLXSWS));
|
||
SQL.Add(string.Format(" XLXSBJDMX_TZCPBJ=case when XLXSBJDMX_TZQCPBJ=0 then 0 else 100*(RoundFix(XLXSBJDMX_CPBJ/{0},0)*{0}-XLXSBJDMX_TZQCPBJ)/XLXSBJDMX_TZQCPBJ end,", sCPBJBLXSWS));
|
||
SQL.Add(string.Format(" XLXSBJDMX_TZQBJJE=RoundFix(RoundFix(XLXSBJDMX_CPBJ/{0},0)*{0}*XLXSBJDMX_BJSL,2),", sCPBJBLXSWS));
|
||
SQL.Add(" XLXSBJDMX_BJJE=" + sqlBJJE2 + ",");
|
||
if (sJCLLX.Equals("1"))//表价价差率公式
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when " + sqlBJJE2 + "=0.0 then 0.0 else RoundFix(100*(" + sqlBJJE2 + "-XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL)/(" + sqlBJJE2 + "),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =RoundFix(" + sqlBJJE2 + "-RoundFix(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL,2)," + tmpXSWS + "), ");
|
||
}
|
||
else if (sJCLLX.Equals("2"))
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL=0.0 then 0.0 else RoundFix(100*(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL-" + sqlBJJE2 + ")/(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =RoundFix(RoundFix(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL,2)-" + sqlBJJE2 + "," + tmpXSWS + "), ");
|
||
}
|
||
else if (sJCLLX.Equals("3"))
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when " + sqlBJJE2 + "=0.0 then 0.0 else RoundFix(100*(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL)/(" + sqlBJJE2 + "),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =0, ");
|
||
}
|
||
else if (sJCLLX.Equals("4"))
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL =case when XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL=0.0 then 0.0 else RoundFix(100*(" + sqlBJJE2 + " - XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL)/(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL),2) end,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE =RoundFix(" + sqlBJJE2 + " - RoundFix(XLXSBJDMX_JGBBJ*XLXSBJDMX_BJSL,2)," + tmpXSWS + "), ");
|
||
}
|
||
else
|
||
{
|
||
SQL.Add("XLXSBJDMX_JGBBJJCL=0,");
|
||
SQL.Add("XLXSBJDMX_JGBBJJCE=0,");
|
||
}
|
||
if (sLJJCLLX.Equals("2"))
|
||
SQL.Add("XLXSBJDMX_CLCBJCL =case when " + sqlBJJE2 + "=0.0 then 0.0 else RoundFix(100*(" + sqlBJJE2 + "-XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL)/(" + sqlBJJE2 + "),2) end");
|
||
else if (sLJJCLLX.Equals("3"))
|
||
SQL.Add("XLXSBJDMX_CLCBJCL =case when XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL=0.0 then 0.0 else RoundFix(100*(" + sqlBJJE2 + "-XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL)/(XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL),2) end");
|
||
else
|
||
SQL.Add("XLXSBJDMX_CLCBJCL =case when " + sqlBJJE2 + "=0.0 then 0.0 else RoundFix(100*(XLXSBJDMX_BJDHQCLCB*XLXSBJDMX_BJSL)/(" + sqlBJJE2 + "),2) end");
|
||
SQL.Add(" from XLXSBJDMX");
|
||
SQL.Add(" where XLXSBJDMX_BJDID=:pBJDID ");
|
||
SQL.Add(" and XLXSBJDMX_BJSDBZ<>'Y'");//跳过报价锁定为Y的明细数据
|
||
SQL.Add(" and XLXSBJDMX_CLCBJCLSDBZ='Y'");//按料价价差率算报价
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
#endregion
|
||
}
|
||
#endregion
|
||
}
|
||
|
||
//更新表价料价价差率
|
||
public static void UpdateBJLJJCL(TDatabase dberp, TSQL SQL, string sBJDID, string sBJLJJCLLX)
|
||
{
|
||
if (sBJLJJCLLX.Equals("1"))
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add("update XLXSBJDMX set XLXSBJDMX_JGBBJLJJCL =case XLXSBJDMX_BJSL*XLXSBJDMX_JGBBJ when 0 then 0 else RoundFix((XLXSBJDMX_BJSL*XLXSBJDMX_JGBBJ - XLXSBJDMX_BJSL*XLXSBJDMX_BJDHQCLCB)/ (XLXSBJDMX_BJSL*XLXSBJDMX_JGBBJ) * 100,2) end ");
|
||
SQL.Add(" where XLXSBJDMX_BJDID=:pBJDID ");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
}
|
||
}
|
||
|
||
//插入行情V表
|
||
private void InsertVHQB(string sBJDID)
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" delete from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_TZRYID = :pTZRYID and V_XLXSBJDCLHQ_BJDID = :pBJDID ");
|
||
SQL.ParamByName("pTZRYID").Value = CurSession.RYID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
int VnewCLHQID = CMISproDataBase.GetMaxXH("DBERP", "V_XLXSBJDCLHQ", "V_XLXSBJDCLHQ_ID", "") + 1;
|
||
txtVCLHQID.Value = VnewCLHQID.ToString().Trim();
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" insert into V_XLXSBJDCLHQ(V_XLXSBJDCLHQ_BJDID,V_XLXSBJDCLHQ_BJCLID,V_XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG,V_XLXSBJDCLHQ_WSJGF,V_XLXSBJDCLHQ_HSJGF, ");
|
||
SQL.Add(" V_XLXSBJDCLHQ_JGYBJCLID1,V_XLXSBJDCLHQ_WSJG1,V_XLXSBJDCLHQ_HSJG1,V_XLXSBJDCLHQ_JGBL1, ");
|
||
SQL.Add(" V_XLXSBJDCLHQ_ID,V_XLXSBJDCLHQ_TZRYID,V_XLXSBJDCLHQ_TZRYGH,V_XLXSBJDCLHQ_TZRYMC,V_XLXSBJDCLHQ_TIMESTAMP,V_XLXSBJDCLHQ_WHR,V_XLXSBJDCLHQ_WHRID,V_XLXSBJDCLHQ_WHSJ)");
|
||
SQL.Add(" select XLXSBJDCLHQ_BJDID,XLXSBJDCLHQ_BJCLID,XLXSBJDCLHQ_WSJG,XLXSBJDCLHQ_HSJG,XLXSBJDCLHQ_WSJGF,XLXSBJDCLHQ_HSJGF, ");
|
||
SQL.Add(" XLXSBJDCLHQ_JGYBJCLID1,XLXSBJDCLHQ_WSJG1,XLXSBJDCLHQ_HSJG1,XLXSBJDCLHQ_JGBL1, ");
|
||
SQL.Add(" :V_XLXSBJDCLHQ_ID,:V_XLXSBJDCLHQ_TZRYID,:V_XLXSBJDCLHQ_TZRYGH,:V_XLXSBJDCLHQ_TZRYMC,:V_XLXSBJDCLHQ_TIMESTAMP,XLXSBJDCLHQ_WHR,XLXSBJDCLHQ_WHRID,XLXSBJDCLHQ_WHSJ ");
|
||
SQL.Add(" from XLXSBJDCLHQ where XLXSBJDCLHQ_BJDID = :pBJDID ");
|
||
SQL.ParamByName("V_XLXSBJDCLHQ_ID").Value = txtVCLHQID.Value;
|
||
SQL.ParamByName("V_XLXSBJDCLHQ_TZRYID").Value = CurSession.RYID;
|
||
SQL.ParamByName("V_XLXSBJDCLHQ_TZRYGH").Value = CurSession.UserId;
|
||
SQL.ParamByName("V_XLXSBJDCLHQ_TZRYMC").Value = CurSession.UserName;
|
||
SQL.ParamByName("V_XLXSBJDCLHQ_TIMESTAMP").Value = MISproUtils.GetServerTime();
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" delete from V_XLXSBJDWLHQ where V_XLXSBJDWLHQ_TZRYID = :pTZRYID and V_XLXSBJDWLHQ_BJDID = :pBJDID ");
|
||
SQL.ParamByName("pTZRYID").Value = CurSession.RYID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
int VnewWLHQID = CMISproDataBase.GetMaxXH("DBERP", "V_XLXSBJDWLHQ", "V_XLXSBJDWLHQ_ID", "") + 1;
|
||
txtVWLHQID.Value = VnewWLHQID.ToString().Trim();
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" insert into V_XLXSBJDWLHQ(V_XLXSBJDWLHQ_BJDID,V_XLXSBJDWLHQ_WLID,V_XLXSBJDWLHQ_WSJG,V_XLXSBJDWLHQ_HSJG,V_XLXSBJDWLHQ_WSJGF,V_XLXSBJDWLHQ_HSJGF, ");
|
||
SQL.Add(" V_XLXSBJDWLHQ_JGYBJCLID1,V_XLXSBJDWLHQ_WSJG1,V_XLXSBJDWLHQ_HSJG1,V_XLXSBJDWLHQ_JGBL1, ");
|
||
SQL.Add(" V_XLXSBJDWLHQ_ID,V_XLXSBJDWLHQ_TZRYID,V_XLXSBJDWLHQ_TZRYGH,V_XLXSBJDWLHQ_TZRYMC,V_XLXSBJDWLHQ_TIMESTAMP,V_XLXSBJDWLHQ_WHR,V_XLXSBJDWLHQ_WHRID,V_XLXSBJDWLHQ_WHSJ)");
|
||
SQL.Add(" select XLXSBJDWLHQ_BJDID,XLXSBJDWLHQ_WLID,XLXSBJDWLHQ_WSJG,XLXSBJDWLHQ_HSJG,XLXSBJDWLHQ_WSJGF,XLXSBJDWLHQ_HSJGF, ");
|
||
SQL.Add(" XLXSBJDWLHQ_JGYBJCLID1,XLXSBJDWLHQ_WSJG1,XLXSBJDWLHQ_HSJG1,XLXSBJDWLHQ_JGBL1, ");
|
||
SQL.Add(" :V_XLXSBJDWLHQ_ID,:V_XLXSBJDWLHQ_TZRYID,:V_XLXSBJDWLHQ_TZRYGH,:V_XLXSBJDWLHQ_TZRYMC,:V_XLXSBJDWLHQ_TIMESTAMP,XLXSBJDWLHQ_WHR,XLXSBJDWLHQ_WHRID,XLXSBJDWLHQ_WHSJ ");
|
||
SQL.Add(" from XLXSBJDWLHQ where XLXSBJDWLHQ_BJDID = :pBJDID ");
|
||
SQL.ParamByName("V_XLXSBJDWLHQ_ID").Value = txtVWLHQID.Value;
|
||
SQL.ParamByName("V_XLXSBJDWLHQ_TZRYID").Value = CurSession.RYID;
|
||
SQL.ParamByName("V_XLXSBJDWLHQ_TZRYGH").Value = CurSession.UserId;
|
||
SQL.ParamByName("V_XLXSBJDWLHQ_TZRYMC").Value = CurSession.UserName;
|
||
SQL.ParamByName("V_XLXSBJDWLHQ_TIMESTAMP").Value = MISproUtils.GetServerTime();
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
}
|
||
|
||
//插入行情表
|
||
private void InsertHQB(TDatabase dberp, string sBJDID, string sTZRYID, string sCLVID, string sWLVID)
|
||
{
|
||
TSQL SQL = new TSQL(dberp);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" insert into XLXSBJDCLHQ(XLXSBJDCLHQ_BJDID,XLXSBJDCLHQ_BJCLID,XLXSBJDCLHQ_WSJG,XLXSBJDCLHQ_HSJG,XLXSBJDCLHQ_WSJGF,XLXSBJDCLHQ_HSJGF, ");
|
||
SQL.Add(" XLXSBJDCLHQ_JGYBJCLID1,XLXSBJDCLHQ_WSJG1,XLXSBJDCLHQ_HSJG1,XLXSBJDCLHQ_JGBL1, ");
|
||
SQL.Add(" XLXSBJDCLHQ_WHR,XLXSBJDCLHQ_WHRID,XLXSBJDCLHQ_WHSJ)");
|
||
SQL.Add(" select V_XLXSBJDCLHQ_BJDID,V_XLXSBJDCLHQ_BJCLID,V_XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG,V_XLXSBJDCLHQ_WSJGF,V_XLXSBJDCLHQ_HSJGF, ");
|
||
SQL.Add(" V_XLXSBJDCLHQ_JGYBJCLID1,V_XLXSBJDCLHQ_WSJG1,V_XLXSBJDCLHQ_HSJG1,V_XLXSBJDCLHQ_JGBL1, ");
|
||
SQL.Add(" V_XLXSBJDCLHQ_WHR,V_XLXSBJDCLHQ_WHRID,V_XLXSBJDCLHQ_WHSJ ");
|
||
SQL.Add(" from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_BJDID = :pBJDID and V_XLXSBJDCLHQ_TZRYID = :pTZRYID and V_XLXSBJDCLHQ_ID = :pCLVID ");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pTZRYID").Value = sTZRYID;
|
||
SQL.ParamByName("pCLVID").Value = sCLVID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" delete from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_TZRYID = :pTZRYID and V_XLXSBJDCLHQ_BJDID = :pBJDID and V_XLXSBJDCLHQ_ID = :pCLVID ");
|
||
SQL.ParamByName("pTZRYID").Value = sTZRYID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pCLVID").Value = sCLVID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" insert into XLXSBJDWLHQ(XLXSBJDWLHQ_BJDID,XLXSBJDWLHQ_WLID,XLXSBJDWLHQ_WSJG,XLXSBJDWLHQ_HSJG,XLXSBJDWLHQ_WSJGF,XLXSBJDWLHQ_HSJGF, ");
|
||
SQL.Add(" XLXSBJDWLHQ_JGYBJCLID1,XLXSBJDWLHQ_WSJG1,XLXSBJDWLHQ_HSJG1,XLXSBJDWLHQ_JGBL1, ");
|
||
SQL.Add(" XLXSBJDWLHQ_WHR,XLXSBJDWLHQ_WHRID,XLXSBJDWLHQ_WHSJ)");
|
||
SQL.Add(" select V_XLXSBJDWLHQ_BJDID,V_XLXSBJDWLHQ_WLID,V_XLXSBJDWLHQ_WSJG,V_XLXSBJDWLHQ_HSJG,V_XLXSBJDWLHQ_WSJGF,V_XLXSBJDWLHQ_HSJGF, ");
|
||
SQL.Add(" V_XLXSBJDWLHQ_JGYBJCLID1,V_XLXSBJDWLHQ_WSJG1,V_XLXSBJDWLHQ_HSJG1,V_XLXSBJDWLHQ_JGBL1, ");
|
||
SQL.Add(" V_XLXSBJDWLHQ_WHR,V_XLXSBJDWLHQ_WHRID,V_XLXSBJDWLHQ_WHSJ ");
|
||
SQL.Add(" from V_XLXSBJDWLHQ where V_XLXSBJDWLHQ_BJDID = :pBJDID and V_XLXSBJDWLHQ_TZRYID = :pTZRYID and V_XLXSBJDWLHQ_ID = :pWLVID ");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pTZRYID").Value = sTZRYID;
|
||
SQL.ParamByName("pWLVID").Value = sWLVID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" delete from V_XLXSBJDWLHQ where V_XLXSBJDWLHQ_TZRYID = :pTZRYID and V_XLXSBJDWLHQ_BJDID = :pBJDID and V_XLXSBJDWLHQ_ID = :pWLVID ");
|
||
SQL.ParamByName("pTZRYID").Value = CurSession.RYID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pWLVID").Value = sWLVID;
|
||
dberp.ExecSQL(SQL);
|
||
}
|
||
|
||
private string GetVID(string sBJDID, string sTZRYID)
|
||
{
|
||
string sVID = "";
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
SQL.Clear();
|
||
SQL.Add(" select V_XLXSBJDCLHQ_ID from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_TZRYID = :pTZRYID and V_XLXSBJDCLHQ_BJDID = :pBJDID ");
|
||
SQL.ParamByName("pTZRYID").Value = sTZRYID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
sVID = ds.Tables[0].Rows[0]["V_XLXSBJDCLHQ_ID"].ToString().Trim();
|
||
}
|
||
return sVID;
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 控件事件
|
||
|
||
protected void btnSZHQ_Click(object sender, EventArgs e)
|
||
{
|
||
if (grdSHD.SelectedIndex < 0)
|
||
{
|
||
ShowMessage("请选择需要处理的记录!");
|
||
return;
|
||
}
|
||
else if (grdSHD.GetValueByFieldName("XLXSBJCL_BJHQ", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim().Equals("2|物料行情"))
|
||
{
|
||
ShowMessage("仅能选择“报价行情”为“1|材料行情”的报价材料!");
|
||
return;
|
||
}
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
string sBJCLID = grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
string sCLJG = grdSHD.GetValueByFieldName("CLJG", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
string sHSJG = grdSHD.GetValueByFieldName("HSJG", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
string sZZSL = grdSHD.GetValueByFieldName("XLXSBJCL_ZZSL", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
|
||
string sWSJGF = grdSHD.GetValueByFieldName("WSJGF", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
string sHSJGF = grdSHD.GetValueByFieldName("HSJGF", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
|
||
//加工料对应加工原料 无税/含税价格
|
||
string sJGYBJCLID1 = grdSHD.GetValueByFieldName("V_XLXSBJDCLHQ_JGYBJCLID1", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
string sJGBL1 = "";
|
||
string sJCCLJG = "";
|
||
string sJCHSJG = "";
|
||
string sSQL = string.Format(" select 1 from XLXSBJCL "
|
||
+ " where XLXSBJCL_JGYBJCLID = '{0}' or (XLXSBJCL_BJCLID ='{0}' and isnull(XLXSBJCL_JGYBJCLID,' ') <>' ' ) ", sBJCLID);
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||
{
|
||
ShowMessage("当前报价材料非加工料或加工原料!");
|
||
return;
|
||
}
|
||
else
|
||
{
|
||
if (!sJGYBJCLID1.Trim().Equals(""))
|
||
{
|
||
sJGBL1 = grdSHD.GetValueByFieldName("V_XLXSBJDCLHQ_JGBL1", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
foreach (GridViewRow row in grdSHD.NewRows)
|
||
{
|
||
if (grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", row).ToString().Trim().Equals(sJGYBJCLID1.Trim()))
|
||
{
|
||
sJCCLJG = grdSHD.GetValueByFieldName("CLJG", row).ToString().Trim();
|
||
sJCHSJG = grdSHD.GetValueByFieldName("HSJG", row).ToString().Trim();
|
||
}
|
||
}
|
||
|
||
}
|
||
TPageParams pageParams = new TPageParams();
|
||
pageParams.UrlPath = "XLBJD_JGFLDInfo.aspx";
|
||
pageParams.Title = "设置加工料/加工原料行情";
|
||
pageParams.AddString("BJCLID", sBJCLID);
|
||
pageParams.AddString("CLJG", sCLJG);
|
||
pageParams.AddString("HSJG", sHSJG);
|
||
pageParams.AddString("ZZSL", sZZSL);
|
||
pageParams.AddString("WSJGF", sWSJGF);
|
||
pageParams.AddString("HSJGF", sHSJGF);
|
||
pageParams.AddString("JCCLJG", sJCCLJG);
|
||
pageParams.AddString("JCHSJG", sJCHSJG);
|
||
pageParams.AddString("JGYBJCLID1", sJGYBJCLID1);
|
||
pageParams.AddString("JGBL1", sJGBL1);
|
||
pageParams.AddString("JGBID", PageParam.GetRTrimString("JGBID"));
|
||
pageParams.AddString("BJDHQLY", PageParam.GetRTrimString("BJDHQLY"));
|
||
pageParams.AddString("BJLY", PageParam.GetRTrimString("BJLY"));
|
||
pageParams.AddString("BJRQ", PageParam.GetRTrimString("BJRQ"));
|
||
pageParams.AddString("BJFLID", PageParam.GetRTrimString("BJFLID"));
|
||
pageParams.AddString("BJDID", PageParam.GetRTrimString("BJDID"));
|
||
pageParams.AddString("CLVID", txtVCLHQID.Value);
|
||
pageParams.AddString("WLVID", txtVWLHQID.Value);
|
||
//pageParams.AddString("TBJCLID", PageParam.GetRTrimString("TBJCLID"));
|
||
//pageParams.AddString("LBJCLID", PageParam.GetRTrimString("LBJCLID"));
|
||
//pageParams.AddString("HSBZ", PageParam.GetRTrimString("HSBZ"));
|
||
pageParams.AddString("CallBackCtrlID", btnCallBack.ClientID.Trim());
|
||
OpenDialog(pageParams);
|
||
}
|
||
}
|
||
|
||
protected void btnWLHQ_Click(object sender, EventArgs e)
|
||
{
|
||
if (grdSHD.SelectedIndex < 0)
|
||
{
|
||
ShowMessage("请选择需要处理的记录!");
|
||
return;
|
||
}
|
||
|
||
string sBJCLID = grdSHD.GetValueByFieldName("XLXSBJCL_BJCLID", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
string sBJHQ = grdSHD.GetValueByFieldName("XLXSBJCL_BJHQ", grdSHD.NewRows[grdSHD.SelectedIndex]).Trim();
|
||
if (!sBJHQ.Split('|')[0].Equals("2"))
|
||
{
|
||
ShowMessage("仅能选择“报价行情”为“2|物料行情”的报价材料!");
|
||
return;
|
||
}
|
||
|
||
TPageParams pageParams = new TPageParams();
|
||
pageParams.UrlPath = "XLBJD_WLHQList.aspx";
|
||
pageParams.AddString("BJCLID", sBJCLID);
|
||
pageParams.AddString("JGBID", PageParam.GetRTrimString("JGBID"));
|
||
pageParams.AddString("BJDHQLY", PageParam.GetRTrimString("BJDHQLY"));
|
||
pageParams.AddString("BJLY", PageParam.GetRTrimString("BJLY"));
|
||
pageParams.AddString("BJRQ", PageParam.GetRTrimString("BJRQ"));
|
||
pageParams.AddString("BJFLID", PageParam.GetRTrimString("BJFLID"));
|
||
pageParams.AddString("BJDID", PageParam.GetRTrimString("BJDID"));
|
||
OpenDialog(pageParams);
|
||
}
|
||
|
||
protected void btnCallBack_Click(object sender, EventArgs e)
|
||
{
|
||
int index = grdSHD.SelectedIndex;
|
||
Master_OnQuery();
|
||
GridDataBind();
|
||
BillAreaUpdate();
|
||
FormAreaUpdate();
|
||
grdSHD.SelectedIndex = index;
|
||
}
|
||
|
||
//更新自材料行情(不取最新物料行情,仅根据更新后的材料行情更新加工物料的行情)
|
||
protected void btnUpdCLHQ_Click(object sender, EventArgs e)
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL sSQL = new TSQL(dberp);
|
||
|
||
string sBJDID = PageParam.GetRTrimString("BJDID");
|
||
if (sBJDID.Equals(""))
|
||
return;
|
||
|
||
string sTBJCLID = PageParam.GetRTrimString("TBJCLID");
|
||
string sLBJCLID = PageParam.GetRTrimString("LBJCLID");
|
||
string sTBJCLMC = GetBJCLMC(sTBJCLID);
|
||
string sLBJCLMC = GetBJCLMC(sLBJCLID);
|
||
|
||
//“铜价”和“铝价”都为空时,保持原先逻辑
|
||
if (sTBJCLMC.Equals("") && sLBJCLMC.Equals(""))
|
||
{
|
||
Confirm.Register("IsQD", "将使用今天最新的材料行情进行更新,是否继续?");
|
||
if (Confirm.GetValue("IsQD").Trim().Equals(""))
|
||
{
|
||
Confirm.Ask("IsQD");
|
||
return;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
|
||
{
|
||
Confirm.Clear();
|
||
return;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
|
||
{
|
||
Confirm.Clear();
|
||
try
|
||
{
|
||
dberp.BeginTrans();
|
||
XLBJDUtils.InsertXLXSBJDCLHQ_WLHQ_V(dberp, sSQL, PageParam.GetRTrimString("BJDHQLY"), sBJDID, txtVWLHQID.Value, txtVCLHQID.Value, CurSession, DateTime.Now.ToShortDateString(), PageParam.GetRTrimString("HSBZ").Equals("Y"),
|
||
sTBJCLID, sLBJCLID,
|
||
CMISproConvert.StrToFloat(PageParam.GetRTrimString("TJ")), CMISproConvert.StrToFloat(PageParam.GetRTrimString("LJ")),
|
||
CurSession.UserName, CurSession.UserId, PageParam.GetRTrimString("JGBID"));
|
||
dberp.CommitTrans();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
dberp.RollbackTrans();
|
||
ShowMessage(ex.Message);
|
||
return;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
//“铜价”不为空,“铝价”为空
|
||
if (!string.IsNullOrEmpty(sTBJCLMC) && string.IsNullOrEmpty(sLBJCLMC))
|
||
{
|
||
Confirm.Register("IsQD", string.Format("是否同步更新“{0}”?", sTBJCLMC));
|
||
}
|
||
//“铜价”为空,“铝价”不为空
|
||
else if (string.IsNullOrEmpty(sTBJCLMC) && !string.IsNullOrEmpty(sLBJCLMC))
|
||
{
|
||
Confirm.Register("IsQD", string.Format("是否同步更新“{0}”?", sLBJCLMC));
|
||
}
|
||
//“铜价”,“铝价”都不为空
|
||
else if (!string.IsNullOrEmpty(sTBJCLMC) && !string.IsNullOrEmpty(sLBJCLMC))
|
||
{
|
||
Confirm.Register("IsQD", string.Format("是否同步更新“{0}、{1}”?", sTBJCLMC, sLBJCLMC));
|
||
}
|
||
else
|
||
{
|
||
return;
|
||
}
|
||
|
||
if (Confirm.GetValue("IsQD").Trim().Equals(""))
|
||
{
|
||
Confirm.Ask("IsQD");
|
||
return;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
|
||
{
|
||
Confirm.Clear();
|
||
try
|
||
{
|
||
dberp.BeginTrans();
|
||
XLBJDUtils.InsertXLXSBJDCLHQ_WLHQ_V(dberp, sSQL, PageParam.GetRTrimString("BJDHQLY"), sBJDID, txtVWLHQID.Value, txtVCLHQID.Value, CurSession, DateTime.Now.ToShortDateString(), PageParam.GetRTrimString("HSBZ").Equals("Y"),
|
||
sTBJCLID, sLBJCLID,
|
||
CMISproConvert.StrToFloat(PageParam.GetRTrimString("TJ")), CMISproConvert.StrToFloat(PageParam.GetRTrimString("LJ")),
|
||
CurSession.UserName, CurSession.UserId, PageParam.GetRTrimString("JGBID"));
|
||
dberp.CommitTrans();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
dberp.RollbackTrans();
|
||
ShowMessage(ex.Message);
|
||
return;
|
||
}
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
|
||
{
|
||
Confirm.Clear();
|
||
try
|
||
{
|
||
dberp.BeginTrans();
|
||
XLBJDUtils.InsertXLXSBJDCLHQ_WLHQ_V(dberp, sSQL, PageParam.GetRTrimString("BJDHQLY"), sBJDID, txtVWLHQID.Value, txtVCLHQID.Value, CurSession, DateTime.Now.ToShortDateString(), PageParam.GetRTrimString("HSBZ").Equals("Y"),
|
||
"", "",
|
||
0, 0,
|
||
CurSession.UserName, CurSession.UserId, PageParam.GetRTrimString("JGBID"));
|
||
dberp.CommitTrans();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
dberp.RollbackTrans();
|
||
ShowMessage(ex.Message);
|
||
return;
|
||
}
|
||
}
|
||
}
|
||
|
||
//刷新
|
||
Master_OnQuery();
|
||
GridDataBind();
|
||
FormAreaUpdate();
|
||
ShowMessage("更新完成!");
|
||
}
|
||
|
||
|
||
|
||
protected void btnUpdCLHQ_MenuItemClick(object sender, string ItemIndex)
|
||
{
|
||
string sBJDID = PageParam.GetRTrimString("BJDID");
|
||
if (sBJDID.Equals(""))
|
||
return;
|
||
|
||
string sTBJCLID = PageParam.GetRTrimString("TBJCLID");
|
||
string sLBJCLID = PageParam.GetRTrimString("LBJCLID");
|
||
string sTBJCLMC = GetBJCLMC(sTBJCLID);
|
||
string sLBJCLMC = GetBJCLMC(sLBJCLID);
|
||
|
||
switch (ItemIndex)
|
||
{
|
||
case "CGHQ"://更新自采购行情
|
||
|
||
|
||
//“铜价”和“铝价”都为空时,保持原先逻辑
|
||
if (sTBJCLMC.Equals("") && sLBJCLMC.Equals(""))
|
||
{
|
||
Confirm.Register("IsQD", "将使用的采购行情进行更新,是否继续?");
|
||
if (Confirm.GetValue("IsQD").Trim().Equals(""))
|
||
{
|
||
Confirm.Ask("IsQD");
|
||
return;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
|
||
{
|
||
Confirm.Clear();
|
||
return;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
|
||
{
|
||
Confirm.Clear();
|
||
XLBJDUtils.InsertXLXSBJDCLHQ_WLHQ_WithCGHQ_V(PageParam.GetRTrimString("BJDID"), txtVWLHQID.Value, txtVCLHQID.Value, CurSession, DateTime.Now.ToShortDateString(), PageParam.GetRTrimString("HSBZ").Equals("Y"),
|
||
sTBJCLID, sLBJCLID,
|
||
CMISproConvert.StrToFloat(PageParam.GetRTrimString("TJ")), CMISproConvert.StrToFloat(PageParam.GetRTrimString("LJ")),
|
||
CurSession.UserName, CurSession.UserId, PageParam.GetRTrimString("JGBID"));
|
||
}
|
||
}
|
||
else
|
||
{
|
||
//“铜价”不为空,“铝价”为空
|
||
if (!string.IsNullOrEmpty(sTBJCLMC) && string.IsNullOrEmpty(sLBJCLMC))
|
||
{
|
||
Confirm.Register("IsQD", string.Format("是否同步更新“{0}”?", sTBJCLMC));
|
||
}
|
||
//“铜价”为空,“铝价”不为空
|
||
else if (string.IsNullOrEmpty(sTBJCLMC) && !string.IsNullOrEmpty(sLBJCLMC))
|
||
{
|
||
Confirm.Register("IsQD", string.Format("是否同步更新“{0}”?", sLBJCLMC));
|
||
}
|
||
//“铜价”,“铝价”都不为空
|
||
else if (!string.IsNullOrEmpty(sTBJCLMC) && !string.IsNullOrEmpty(sLBJCLMC))
|
||
{
|
||
Confirm.Register("IsQD", string.Format("是否同步更新“{0}、{1}”?", sTBJCLMC, sLBJCLMC));
|
||
}
|
||
else
|
||
{
|
||
return;
|
||
}
|
||
|
||
if (Confirm.GetValue("IsQD").Trim().Equals(""))
|
||
{
|
||
Confirm.Ask("IsQD");
|
||
return;
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("N"))
|
||
{
|
||
Confirm.Clear();
|
||
XLBJDUtils.InsertXLXSBJDCLHQ_WLHQ_WithCGHQ_V(PageParam.GetRTrimString("BJDID"), txtVWLHQID.Value, txtVCLHQID.Value, CurSession, DateTime.Now.ToShortDateString(), PageParam.GetRTrimString("HSBZ").Equals("Y"),
|
||
sTBJCLID, sLBJCLID,
|
||
CMISproConvert.StrToFloat(PageParam.GetRTrimString("TJ")), CMISproConvert.StrToFloat(PageParam.GetRTrimString("LJ")),
|
||
CurSession.UserName, CurSession.UserId, PageParam.GetRTrimString("JGBID"));
|
||
}
|
||
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
|
||
{
|
||
Confirm.Clear();
|
||
XLBJDUtils.InsertXLXSBJDCLHQ_WLHQ_WithCGHQ_V(PageParam.GetRTrimString("BJDID"), txtVWLHQID.Value, txtVCLHQID.Value, CurSession, DateTime.Now.ToShortDateString(), PageParam.GetRTrimString("HSBZ").Equals("Y"),
|
||
"", "",
|
||
0, 0,
|
||
CurSession.UserName, CurSession.UserId, PageParam.GetRTrimString("JGBID"));
|
||
}
|
||
}
|
||
|
||
|
||
//刷新
|
||
Master_OnQuery();
|
||
GridDataBind();
|
||
FormAreaUpdate();
|
||
ShowMessage("已完成'1|材料行情'类报价材料的更新!");
|
||
break;
|
||
}
|
||
}
|
||
|
||
//调整物料行情
|
||
protected void btnTZWLHQ_Click(object sender, EventArgs e)
|
||
{
|
||
TPageParams pageParams = new TPageParams();
|
||
pageParams.UrlPath = "XLBJD_WLHQTZList.aspx";
|
||
pageParams.AddString("BJRQ", PageParam.GetRTrimString("BJRQ"));
|
||
pageParams.AddString("BJDID", PageParam.GetRTrimString("BJDID"));
|
||
pageParams.AddString("WLVID", txtVWLHQID.Value);
|
||
pageParams.AddString("CLVID", txtVCLHQID.Value);
|
||
OpenDialog(pageParams);
|
||
}
|
||
#endregion
|
||
}
|
||
}
|