Files
N_XLXSBJ----MX/CLYL_CLYL.cs
T
2026-08-21 17:03:02 +08:00

153 lines
7.0 KiB
C#

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
{
[EntityType(Db = "DBERP", Table = "XLXSCLQD", IsWf = false, IsWhr = false, IsAttach = false)]
public class CLYL_CLYL : EntityObject
{
public string sXLXHID = "";
public string sXLGGID = "";
public string sXLBZID = "";
public string sDYDJID = "";
public string sJGCZBID = "";
public string sJGCZBBBID = "";
//MUL----乘以1000 DIV----除以1000 FIX----保持不变
public string sHSFS = "FIX";
public override TSQL SetQuerySql()
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL tSQL = new TSQL(dberp);
tSQL.Clear();
tSQL.Add("select XLXSCLQD_JGCZBXH,XLXSCLQD_DRHH from XLXSCLQD where XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID");
tSQL.ParamByName("pXLXHID").Value = sXLXHID;
tSQL.ParamByName("pXLGGID").Value = sXLGGID;
tSQL.ParamByName("pXLBZID").Value = sXLBZID;
tSQL.ParamByName("pDYDJID").Value = sDYDJID.Trim().Equals("") ? " " : sDYDJID.Trim();
DataSet ds = dberp.OpenDataSet(tSQL);
double fJGCZBXH = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSCLQD_JGCZBXH"].ToString());
double fDRHH = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSCLQD_DRHH"].ToString());
tSQL.Clear();
tSQL.Add("select XLXSCLQDWL_JGCZBID");
for (int i = 1; i <= 80; i++)
{
tSQL.Add(string.Format(",XLXSCLQDWL_WLID{0}", i.ToString().PadLeft(2, '0')));
}
tSQL.Add(" from XLXSCLQDWL ");
tSQL.Add("where XLXSCLQDWL_JGCZBID=:pJGCZBID");
tSQL.Add(" and XLXSCLQDWL_JGCZBBBID=:pJGCZBBBID");
tSQL.Add(" and XLXSCLQDWL_JGCZBXH=:pJGCZBXH");
tSQL.Add(" and XLXSCLQDWL_DRHH=:pDRHH");
tSQL.ParamByName("pJGCZBID").Value = sJGCZBID;
tSQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
tSQL.ParamByName("pJGCZBXH").Value = fJGCZBXH;
tSQL.ParamByName("pDRHH").Value = fDRHH;
DataSet dsWL = dberp.OpenDataSet(tSQL);
TSQL SQL = base.SetQuerySql();
SQL.Add(" select XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC,BJHQ, ");
SQL.Add(" case when isnull(CLWLID,' ')<>' ' then rtrim(CLWLID)||'|'||rtrim(rtrim(rtrim(rtrim(isnull(WL_MC,' '))||' '||rtrim(isnull(WL_GG,' ')))||' '||rtrim(isnull(WL_TZ,' ')))||' '||rtrim(isnull(WL_CL,' '))) else ' ' end as CLWL, ");
SQL.Add(" CZBYL,SL,CLJGBL,SHL,XLJGCZBLM_CLQDL");
SQL.Add(" from");
SQL.Add(" (");
SQL.Add(" select XLXSBJCL_BJCLID, ");
SQL.Add(" case when isnull(XLXSBJCL_BJCLID,' ')=' ' then XLJGCZBLM_CZBLMMC else XLXSBJCL_BJCLMC end as XLXSBJCL_BJCLMC,");
SQL.Add(" case XLXSBJCL_BJHQ when '1' then '1|材料行情' when '2' then '2|物料行情' else XLXSBJCL_BJHQ end as BJHQ,");
if (dsWL.Tables[0].Rows.Count > 0)
{
SQL.Add("case XLJGCZBLM_CLQDL ");
for (int i = 1; i <= 80; i++)
{
SQL.Add(string.Format("when '{0}' then '{1}' ", "第" + i.ToString().PadLeft(2, '0') + "列", dsWL.Tables[0].Rows[0][string.Format("XLXSCLQDWL_WLID{0}", i.ToString().PadLeft(2, '0'))].ToString().Trim()));
}
SQL.Add("else ' ' end as CLWLID, ");
}
else
SQL.Add(" ' ' as CLWLID, ");
SQL.Add("case XLJGCZBLM_CLQDL ");
if (sHSFS.Equals("FIX"))
{
for (int i = 1; i <= 80; i++)
{
SQL.Add(string.Format("when '{0}' then XLXSCLQD_SL{1} ", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
}
SQL.Add("else 0.0 end as CZBYL, ");
}
else if (sHSFS.Equals("MUL"))
{
for (int i = 1; i <= 80; i++)
{
SQL.Add(string.Format("when '{0}' then XLXSCLQD_SL{1}*1000 ", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
}
SQL.Add("else 0.0 end as CZBYL, ");
}
else if (sHSFS.Equals("DIV"))
{
for (int i = 1; i <= 80; i++)
{
SQL.Add(string.Format("when '{0}' then XLXSCLQD_SL{1}/1000 ", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
}
SQL.Add("else 0.0 end as CZBYL, ");
}
SQL.Add("case XLJGCZBLM_CLQDL ");
for (int i = 1; i <= 80; i++)
{
SQL.Add(string.Format("when '{0}' then XLXSCLQD_SL{1} ", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
}
SQL.Add("else 0.0 end as SL, ");
SQL.Add("case XLJGCZBLM_CLQDL ");
for (int i = 1; i <= 80; i++)
{
SQL.Add(string.Format("when '{0}' then XLXSCLQD_CLJGBL{1} ", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
}
SQL.Add("else 0.0 end as CLJGBL, ");
SQL.Add("case XLJGCZBLM_CLQDL ");
for (int i = 1; i <= 80; i++)
{
SQL.Add(string.Format("when '{0}' then XLXSCLQD_SHL{1} ", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
}
SQL.Add("else 0.0 end as SHL,XLJGCZBLM_CLQDL ");
SQL.Add(" from XLXSCLQD,XLJGCZBLM ");
SQL.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID");
SQL.Add(" where XLJGCZBLM_JGCZBID=:pJGCZBID and XLJGCZBLM_JGCZBBBID=:pJGCZBBBID and isnull(XLJGCZBLM_CLQDL,' ')<>' '");
SQL.Add(" and XLXSCLQD_XLXHID=:pXLXHID and XLXSCLQD_XLGGID=:pXLGGID and XLXSCLQD_XLBZID=:pXLBZID and XLXSCLQD_DYDJID=:pDYDJID ");
SQL.Add(" ) a ");
SQL.Add(" left join WL on WL_WLID=CLWLID");
SQL.Add(" order by XLJGCZBLM_CLQDL ");
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
SQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
SQL.ParamByName("pXLXHID").Value = sXLXHID;
SQL.ParamByName("pXLGGID").Value = sXLGGID;
SQL.ParamByName("pXLBZID").Value = sXLBZID;
SQL.ParamByName("pDYDJID").Value = sDYDJID.Trim().Equals("") ? " " : sDYDJID.Trim();
return SQL;
}
public override bool Querying(TSQL sql)
{
Entites.Columns.Clear();
Entites.Clear();
return base.Querying(sql);
}
}
}