This commit is contained in:
2026-08-21 17:03:02 +08:00
commit f065129b20
2292 changed files with 666241 additions and 0 deletions
+548
View File
@@ -0,0 +1,548 @@
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_PUBLIC;
using System.Collections.Generic;
namespace GThinking.N_XLXSBJ
{
public partial class XLBJD_TLJInfo : SingleCardBase
{
[TableMap(DB = "DBERP", DbTableName = "XLXSBJD", Umid = 100860000, IsWorkFlow = false, IsAttach = false, UseWhr = false)]
public class XLBJD_TLJ : EntityManager
{
}
XLBJD_TLJ entity = new XLBJD_TLJ();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860000;
this.UMName = "线缆销售报价单";
this.CurMaster = Master;
this.CurEntity = entity;
this.PageHeight = 200;
this.PageWidth = 420;
Master.EnableAttachBtn = false;
Master.EnableCancelBtn = false;
Master.EnableCopyBtn = false;
Master.EnableDeleteBtn = false;
Master.EnableEditBtn = false;
Master.EnableInsertBtn = false;
Master.EnablePrintBtn = false;
Master.EnableRefreshBtn = false;
Master.EnableSaveBtn = false;
base.InitPage();
if (!IsPostBack)
{
InitControl();
}
}
protected override void SetControlState()
{
base.SetControlState();
txtTodayTJ.Enabled = false;
txtTodayLJ.Enabled = false;
txtTJWHSJ.Enabled = false;
txtLJWHSJ.Enabled = false;
}
#region 自定义函数
private void InitControl()
{
datLJRQ.Text = DateTime.Now.ToShortDateString();
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add("select XLXSBJD_TLJTZRQ from XLXSBJD where XLXSBJD_BJDID=:pBJDID");
SQL.ParamByName("pBJDID").Value = PageParam.GetRTrimString("BJDID");
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
if (!ds.Tables[0].Rows[0][0].ToString().Trim().Equals(""))
{
datLJRQ.Text = ds.Tables[0].Rows[0][0].ToString().Trim();
lblTodayTJ.Text = "铜价:";
chkQTCLQZXJ.Text = "其他材料取日期价";
lblGetToday.Text = "取日期铜铝价";
}
}
txtTJ.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtLJ.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtTodayTJ.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtTodayLJ.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtTJ.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("TJ"));
txtLJ.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("LJ"));
Dictionary<string, string> dicTLJG = XLBJDInfo.GetTLJByRQ(datLJRQ.Text, PageParam.GetRTrimString("BJFLID"), PageParam.GetRTrimString("HSBZ").Equals("Y"));
txtTodayTJ.Value = CMISproConvert.StrToFloat(dicTLJG["TJ"], 0);
txtTodayLJ.Value = CMISproConvert.StrToFloat(dicTLJG["LJ"], 0);
txtTJWHSJ.Text = dicTLJG["TJWHSJ"];
txtLJWHSJ.Text = dicTLJG["LJWHSJ"];
if (PageParam.GetRTrimString("MXBH").Equals("JGE"))
{
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSBJFL where XLXSBJFL_TLJTZGXQTCL ='Y' and XLXSBJFL_BJFLID ='{0}'", PageParam.GetRTrimString("BJFLID"))))
{
chkQTCLQZXJ.Checked = true;
}else
chkQTCLQZXJ.Checked = false;
chkQTCLQZXJ.Visible = true;
}
else
{
chkQTCLQZXJ.Checked = false;
chkQTCLQZXJ.Visible = false;
}
SQL.Clear();
SQL.Add("select isnull(XLXSBJD_TLJZD,'N') as TLJZD from XLXSBJD where XLXSBJD_BJDID='" + PageParam.GetRTrimString("BJDID") + "'");
ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
string sTLJZD = ds.Tables[0].Rows[0][0].ToString().Trim();
if (sTLJZD.Equals("Y"))
{
chkZDTJ.Checked=true;
chkZDLJ.Checked=true;
}
else if (sTLJZD.Equals("T"))
{
chkZDTJ.Checked = true;
}
else if (sTLJZD.Equals("L"))
{
chkZDLJ.Checked = true;
}
}
}
#endregion
private void InsertXLXSBJDWLHQ(TDatabase dberp, TSQL SQL, string sBJDID, string sWLIDList)
{
SQL.Clear();
SQL.Add("merge into XLXSBJDWLHQ ");
SQL.Add("using ");
SQL.Add("( ");
SQL.Add("select :pBJDID as BJDID,XLXSBJCLWL_WLID as WLID, ");
SQL.Add("isnull(XLXSWLHQ_WSJG,0) as WSJG, ");
SQL.Add("isnull(XLXSWLHQ_HSJG,0) as HSJG ");
SQL.Add("from XLXSBJCLWL ");
SQL.Add("left join ");
SQL.Add(" (select XLXSWLHQ_WLID,XLXSWLHQ_WSJG,XLXSWLHQ_HSJG");
SQL.Add(" from XLXSWLHQ,");
SQL.Add(" (");
SQL.Add(" select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS) as maxYXQS");
SQL.Add(" from XLXSWLHQ");
SQL.Add(" where XLXSWLHQ_JGBID=' '");
SQL.Add(" and XLXSWLHQ_YXQS<=:pBJRQ and(XLXSWLHQ_YXQZ>=:pBJRQ or XLXSWLHQ_YXQZ is null)");
SQL.Add(" group by XLXSWLHQ_WLID");
SQL.Add(" ) a ");
SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
SQL.Add(" and XLXSWLHQ_WLID=WLID ");
SQL.Add(" and XLXSWLHQ_YXQS=maxYXQS ");
SQL.Add(" ) c on XLXSWLHQ_WLID=XLXSBJCLWL_WLID ");
SQL.Add("where " + CMISproDataBase.GetWhereEqual("XLXSBJCLWL_WLID", sWLIDList));
SQL.Add(") B on (XLXSBJDWLHQ_BJDID=B.BJDID and XLXSBJDWLHQ_WLID=B.WLID) ");
SQL.Add("when matched then ");
SQL.Add("update set XLXSBJDWLHQ_WSJG=B.WSJG,XLXSBJDWLHQ_HSJG=B.HSJG, ");
SQL.Add(" XLXSBJDWLHQ_WHR=:pWHR,XLXSBJDWLHQ_WHRID=:pWHRID,XLXSBJDWLHQ_WHSJ=:pWHSJ ");
SQL.Add("when not matched then ");
SQL.Add("insert (XLXSBJDWLHQ_BJDID,XLXSBJDWLHQ_WLID,XLXSBJDWLHQ_WSJG,XLXSBJDWLHQ_HSJG,XLXSBJDWLHQ_WSJGF,XLXSBJDWLHQ_HSJGF,XLXSBJDWLHQ_WHR,XLXSBJDWLHQ_WHRID,XLXSBJDWLHQ_WHSJ) ");
SQL.Add("values (B.BJDID,B.WLID,B.WSJG,B.HSJG,0,0,:pWHR,:pWHRID,:pWHSJ) ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pBJRQ").Value = datLJRQ.Text;
SQL.ParamByName("pWHR").Value = tSession.UserName;
SQL.ParamByName("pWHRID").Value = tSession.UserId;
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
dberp.ExecSQL(SQL);
}
private string GetWLIDList(TDatabase dberp, TSQL SQL,string sBJDID,string sBJRQ)
{
string sWLIDList="";
SQL.Clear();
SQL.Add("select XLXSBJCLWL_WLID,rtrim(isnull(WL_MC,' ')) || ' ' || rtrim(isnull(WL_GG,' ')) || ' ' || rtrim(isnull(WL_CL,' ')) as WLMC, ");
SQL.Add("case when XLXSBJDWLHQ_WLID is null then bjrwlhq.WSJGF else XLXSBJDWLHQ_WSJGF end as WSJGF, ");
SQL.Add("case when XLXSBJDWLHQ_WLID is null then bjrwlhq.CLJG else XLXSBJDWLHQ_WSJG end as WSJG, ");
SQL.Add("a.XLXSBJCL_ZZSL, ");
SQL.Add("case when XLXSBJDWLHQ_WLID is null then bjrwlhq.HSJGF else XLXSBJDWLHQ_HSJGF end as HSJGF, ");
SQL.Add("case when XLXSBJDWLHQ_WLID is null then bjrwlhq.HSJG else XLXSBJDWLHQ_HSJG end as HSJG, ");
SQL.Add(" case when isnull(a.XLXSBJCL_JGYBJCLID,' ') = ' ' then ' ' else rtrim(a.XLXSBJCL_JGYBJCLID) ||'|'|| rtrim(b.XLXSBJCL_BJCLMC) end as JGYBJCLXX,");
SQL.Add(" case when isnull(a.XLXSBJCL_JGYBJCLID,' ') = ' ' then 0.0 else XLXSBJDCLHQ_WSJG end as JGYBJCLID_WSJG,");
SQL.Add(" case when isnull(a.XLXSBJCL_JGYBJCLID,' ') = ' ' then 0.0 else XLXSBJDCLHQ_HSJG end as JGYBJCLID_HSJG,");
SQL.Add("XLXSBJDWLHQ_WHR,XLXSBJDWLHQ_WHRID,XLXSBJDWLHQ_WHSJ ");
SQL.Add("from XLXSBJCLWL ");
//先使用物料与材料关系取到材料
SQL.Add("left join XLXSBJCL a on a.XLXSBJCL_BJCLID=XLXSBJCLWL_BJCLID ");
//取到材料后取到报价原材料
SQL.Add("left join XLXSBJCL b on b.XLXSBJCL_BJCLID = a.XLXSBJCL_JGYBJCLID ");
//关联报价单的材料行情----显示的是报价原材料的价格,所以使用报价原材料关联
SQL.Add("left join XLXSBJDCLHQ on XLXSBJDCLHQ_BJDID=:pBJDID and XLXSBJDCLHQ_BJCLID=isnull( a.XLXSBJCL_JGYBJCLID, ' ') ");
//关联报价单的物料行情----只有报价材料才有物料行情,此处直接关联
SQL.Add("left join XLXSBJDWLHQ on XLXSBJDWLHQ_BJDID=:pBJDID and XLXSBJDWLHQ_WLID=XLXSBJCLWL_WLID ");
SQL.Add("left join ");
SQL.Add("( ");
/*报价物料之报价日行情*/
SQL.Add("select WLID,XLXSWLHQ_WSJG as CLJG,XLXSWLHQ_HSJG as HSJG, ");
SQL.Add(" XLXSWLHQ_WSJGF as WSJGF,XLXSWLHQ_HSJGF as HSJGF ");
SQL.Add("from XLXSWLHQ, ");
SQL.Add("( ");
SQL.Add("select XLXSWLHQ_WLID as WLID,max(XLXSWLHQ_YXQS)as maxYXQS ");
SQL.Add("from XLXSWLHQ ");
SQL.Add("where XLXSWLHQ_JGBID=' ' ");
SQL.Add("and XLXSWLHQ_YXQS<=:pBJRQ and(XLXSWLHQ_YXQZ>=:pBJRQ or XLXSWLHQ_YXQZ is null) ");
SQL.Add("group by XLXSWLHQ_WLID ");
SQL.Add(") a ");
SQL.Add("where XLXSWLHQ_JGBID=' ' ");
SQL.Add("and XLXSWLHQ_WLID=WLID ");
SQL.Add("and XLXSWLHQ_YXQS=maxYXQS ");
SQL.Add(") bjrwlhq on bjrwlhq.WLID=XLXSBJCLWL_WLID ");
SQL.Add("left join WL on WL_WLID=XLXSBJCLWL_WLID ");
//SQL.Add("where XLXSBJCLWL_BJCLID=:pBJCLID ");
SQL.Add("where 1 = 1 ");
//只显示报价单明细用到的物料
SQL.Add(" and XLXSBJCLWL_WLID in ");
SQL.Add(" (");
SQL.Add(" select distinct case XLJGCZBLM_CLQDL ");
for (int i = 1; i <= 80; i++)
SQL.Add(string.Format("when '{0}' then XLXSCLQDWL_WLID{1}", "第" + i.ToString().PadLeft(2, '0') + "列", i.ToString().PadLeft(2, '0')));
SQL.Add(" else ' ' end as WLID ");
SQL.Add(" from XLXSBJDMX");
SQL.Add(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSBJDMX_XLXHID and XLXSCLQD_XLGGID=XLXSBJDMX_XLGGID and XLXSCLQD_XLBZID=XLXSBJDMX_XLBZID and XLXSCLQD_DYDJID=isnull(XLXSBJDMX_DYDJID,' ')");
SQL.Add(" left join XLJGCZBLM on XLJGCZBLM_JGCZBID=XLXSCLQD_JGCZBID and XLJGCZBLM_JGCZBBBID=XLXSCLQD_JGCZBBBID");
SQL.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLJGCZBLM_BJCLID");
SQL.Add(" left join XLXSCLQDWL on XLXSCLQDWL_JGCZBID=XLXSCLQD_JGCZBID and XLXSCLQDWL_JGCZBBBID=XLXSCLQD_JGCZBBBID and XLXSCLQDWL_JGCZBXH=XLXSCLQD_JGCZBXH and XLXSCLQDWL_DRHH=XLXSCLQD_DRHH");
SQL.Add(" where XLXSBJDMX_BJDID=:pBJDID");
SQL.Add(" and isnull(XLJGCZBLM_CLQDL,' ')<>' '");
SQL.Add(" and XLXSCLQD_WPID='ZZZZ'");
SQL.Add(" and XLXSBJCL_BJHQ='2'");
SQL.Add(" ) ");
SQL.Add("order by XLXSBJCLWL_BJCLID,XLXSBJCLWL_WLID ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pBJRQ").Value = sBJRQ;
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
if (ds.Tables[0].Rows[i]["JGYBJCLXX"].ToString().Trim().Equals(""))
sWLIDList += ds.Tables[0].Rows[i]["XLXSBJCLWL_WLID"].ToString().Trim() + ",";
}
}
return sWLIDList.TrimEnd(',');
}
#region 控件事件
protected void lblGetToday_Click(object sender, EventArgs e)
{
txtTJ.Value = txtTodayTJ.Value;
txtLJ.Value = txtTodayLJ.Value;
}
protected void btnQR_Click(object sender, EventArgs e)
{
string sTBJLCID = PageParam.GetRTrimString("TBJCLID").Trim();
string sLBJCLID = PageParam.GetRTrimString("LBJCLID").Trim();
string sTLJMsg = "";
if (!sTBJLCID.Equals(""))
{
if (txtTJ.Value == 0)
sTLJMsg += "铜价";
}
if (!sLBJCLID.Equals(""))
{
if (txtLJ.Value == 0)
{
if (!sTLJMsg.Equals(""))
sTLJMsg += "、";
sTLJMsg += "铝价";
}
}
if (!sTLJMsg.Equals(""))
{
ShowMessage(sTLJMsg + "不允许为0!");
return;
}
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
if (chkQTCLQZXJ.Checked)
{
try
{
dberp.BeginTrans();
XLBJDUtils.InsertXLXSBJDCLHQ_WLHQ(dberp, SQL, PageParam.GetRTrimString("BJDHQLY"), PageParam.GetRTrimString("BJDID"), datLJRQ.Text, PageParam.GetRTrimString("HSBZ").Equals("Y"),
sTBJLCID, sLBJCLID,
CMISproConvert.StrToFloat(PageParam.GetRTrimString("TJ")), CMISproConvert.StrToFloat(PageParam.GetRTrimString("LJ")),
tSession.UserName, tSession.UserId, PageParam.GetRTrimString("JGBID"));
string sWLIDList = GetWLIDList(dberp, SQL, PageParam.GetRTrimString("BJDID"), datLJRQ.Text);
InsertXLXSBJDWLHQ(dberp, SQL, PageParam.GetRTrimString("BJDID"), sWLIDList);
dberp.CommitTrans();
}
catch (Exception ex)
{
dberp.RollbackTrans();
ShowMessage(ex.Message);
return;
}
}
string sErrMsg = "";
try
{
dberp.BeginTrans();
string sZDTLJ = "N";
if (chkZDTJ.Checked&&chkZDLJ.Checked)
sZDTLJ = "Y";
else if(chkZDTJ.Checked)
sZDTLJ = "T";
else if (chkZDLJ.Checked)
sZDTLJ = "L";
SQL.Clear();
SQL.Add("update XLXSBJD set XLXSBJD_TJ=:pTJ,XLXSBJD_LJ=:pLJ,XLXSBJD_TLJTZRQ=:pRQ,XLXSBJD_TLJZD=:pZDTLJ ");
SQL.Add(" where XLXSBJD_BJDID=:pBJDID");
SQL.ParamByName("pTJ").Value = txtTJ.Value;
SQL.ParamByName("pLJ").Value = txtLJ.Value;
SQL.ParamByName("pZDTLJ").Value = sZDTLJ;
if (!datLJRQ.Text.Equals(""))
SQL.ParamByName("pRQ").Value = CMISproConvert.StrToDateTime(datLJRQ.Text);
else
SQL.ParamByName("pRQ").Value = null;
SQL.ParamByName("pBJDID").Value = PageParam.GetRTrimString("BJDID");
dberp.ExecSQL(SQL);
if (chkQTCLQZXJ.Checked)
XLBJDUtils.UpdateBJDHQJGFByTLJ(dberp, SQL, PageParam.GetRTrimString("BJDID"), PageParam.GetRTrimString("TBJCLID"), PageParam.GetRTrimString("LBJCLID"),
datLJRQ.Text, tSession.UserId, tSession.UserName);
XLBJDUtils.UpdateBJDHQByTLJ(dberp, SQL, PageParam.GetRTrimString("BJDID"), PageParam.GetRTrimString("TBJCLID"), PageParam.GetRTrimString("LBJCLID"),
txtTJ.Value, txtLJ.Value, PageParam.GetRTrimString("HSBZ").Equals("Y"), tSession.UserId, tSession.UserName);
string sMSG = "";
if (PageParam.GetRTrimString("MXBH").Equals("JGE") || (PageParam.GetRTrimString("MXBH").Equals("JGB") && PageParam.GetRTrimString("JGBTJYS").Equals("3")))
{
XLBJDCalcUtils.CalcAfterBJDHQChange(dberp, SQL, PageParam.GetRTrimString("BJDID"), 1, GetOption("BJU002"), GetOption("BJU003"), GetOption("BJU018"), tSession.UserId, tSession.UserName,CalcAction.ReCalc, ref sErrMsg, datLJRQ.Text,chkQTCLQZXJ.Checked);
sMSG = "已重新完成报价计算!";
}
else
{
XLBJDCalcUtils.CalcBJDHQCLCB(dberp, SQL, PageParam.GetRTrimString("BJDID"), 1, PageParam.GetRTrimString("HSBZ").Equals("Y"), PageParam.GetRTrimString("JGBID"), PageParam.GetRTrimString("JGBIDS"), PageParam.GetRTrimString("JSBLFS"),
GetOption("BJU002"), GetOption("BJU003"), GetOption("BJU018"), tSession.UserId, tSession.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")
{
string sBJDID = PageParam.GetRTrimString("BJDID");
#region 配置信息
SQL.Clear();
SQL.Add("select XLXSBJD_JGBID,XLXSJGB_MXBH,XLXSJGB_JGBIDS,XLXSJGB_JGCIDS,XLXSJGB_BJLY,XLXSJGB_TJYS,XLXSJGB_JSBLFS, ");
SQL.Add(" XLXSBJD_BJFLID,XLXSBJFL_BJDHQLY,XLXSBJFL_TZCLHQ,XLXSBJFL_JGBTJYSS,XLXSBJFL_BJJCLLX,XLXSBJFL_LJJCLLX,XLXSBJFL_CPBJMRXSWS,");
SQL.Add(" XLXSBJFL_ZDXJJCLLX,XLXSBJFL_JYF,XLXSBJFL_YFWLID,XLXSBJFL_BJHYF,XLXSBJFL_ZDXJGS,XLXSBJFL_JSJGS,");
SQL.Add(" XLXSBJD_JZBJHS,XLXSBJD_BJRQ");
SQL.Add(" from XLXSBJD ");
SQL.Add(" left join XLXSJGB on XLXSJGB_JGBID=XLXSBJD_JGBID ");
SQL.Add(" left join XLXSBJFL on XLXSBJFL_BJFLID=XLXSBJD_BJFLID");
SQL.Add(" where XLXSBJD_BJDID=:pBJDID");
SQL.ParamByName("pBJDID").Value = sBJDID;
DataSet dsBJD = dberp.OpenDataSet(SQL);
if (dsBJD.Tables[0].Rows.Count == 0)
{
return;
}
string sBJU002 = GetOption("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, SQL, TControlState.ctsEdit, sBJDID, sJGBID, sBJRQ, tSession.UserId, tSession.UserName, GetOption("BJU003"), bHSBZ);
XLBJDUtils.UpdateBJDMX(dberp, SQL, 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, SQL, sBJDID, sBJFLID, sBJU002, "", 1);
bZDXJTZ = true;
}
if (sJSJGS.Contains("CLCB") || sJSJGS.Contains("JGBJJ") || sJSJGS.Contains("JGBBJ") || sJSJGS.Contains("CPBJ") || bZDXJTZ)
{
XLBJDUtils.UpdateJSJGS(dberp, SQL, sBJDID, sBJFLID, sBJU002, "", 1);
}
}
else
{
XLBJD_CLHQTZList.UpdateLJJCL(dberp, SQL, PageParam.GetRTrimString("BJDID"), PageParam.GetRTrimString("JCLLX"), PageParam.GetRTrimString("LJJCLLX"), PageParam.GetRTrimString("CPBJMRXSWS"), GetOption("BJU002"));
XLBJD_CLHQTZList.UpdateBJLJJCL(dberp, SQL, PageParam.GetRTrimString("BJDID"), PageParam.GetRTrimString("BJLJJCLLX"));
//只有最低限价公式中包含CPBJ,才需要触发计算最低限价
SQL.Clear();
SQL.Add("select XLXSBJFL_ZDXJGS,XLXSBJFL_JSJGS from XLXSBJFL where XLXSBJFL_BJFLID=:pBJFLID");
SQL.ParamByName("pBJFLID").Value = PageParam.GetRTrimString("BJFLID");
DataSet dsFL = dberp.OpenDataSet(SQL);
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, SQL, PageParam.GetRTrimString("BJDID"), PageParam.GetRTrimString("BJFLID"), GetOption("BJU002"), "", 1);
bZDXJTZ = true;
}
if (dsFL.Tables[0].Rows[0]["XLXSBJFL_JSJGS"].ToString().Trim().Contains("CPBJ") || bZDXJTZ)
{
XLBJDUtils.UpdateJSJGS(dberp, SQL, PageParam.GetRTrimString("BJDID"), PageParam.GetRTrimString("BJFLID"), GetOption("BJU002"), "", 1);
}
}
}
XLBJDUtils.UpdateXLXSBJD(dberp, SQL, PageParam.GetRTrimString("BJDID"), PageParam.GetRTrimString("JCLLX"), PageParam.GetRTrimString("LJJCLLX"), PageParam.GetRTrimString("ZDXJJCLLX"), PageParam.GetRTrimString("JYF"), PageParam.GetRTrimString("YSJDID"),
PageParam.GetRTrimString("GYSID"), PageParam.GetRTrimString("YFWLID"), PageParam.GetRTrimString("BJHYF"));
sMSG = "已重新完成报价单行情料价计算!";
}
dberp.CommitTrans();
string sNewBJDID = string.Empty;
string sBMYSLIST = XLBJDUtils.GetBMYSLIST(100860000);
if (sBMYSLIST.Contains("TJ"))
{
double dTJ = NumberUtils.RoundX(txtTJ.Value, 1) * 10;
string sYBJDID = PageParam.GetRTrimString("BJDID");
sNewBJDID = sYBJDID.Substring(0, sYBJDID.Length - 3) + XLBJDUtils.getTJTZM(dTJ);
if (sNewBJDID.Length > 20)
sNewBJDID = sNewBJDID.Substring(0, 20);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJD", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDMX", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDYZZ0", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDMXFD", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDMXZP", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDCLCB", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDJJYZ", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDCLHQ", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDWLHQ", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDBDMX", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLWBBJDML", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLWBBJDLM", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLWBBJDNR", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLWBBJDMX", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDYZZC", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJZDCZ", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJKZXX", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJDGYJD", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJYLZD", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJFKCFMX", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("BJDCLYLBL", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("CLYLZDFP", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJAIWDJXRW", sNewBJDID, sYBJDID);
XLBJDInfo.UpdateSQL_BJDID("XLXSBJAIWD", sNewBJDID, sYBJDID);
}
DialogOperationScript dos = new DialogOperationScript(this);
dos.SetOwnerControlValue(PageParam.GetRTrimString("txtNEWBJDID"), sNewBJDID);
dos.ClickOwnerButton(PageParam.GetRTrimString("btnRefreshCLHQTZ"));
dos.ShowMessage(sMSG);
dos.CloseSelf();
dos.Execute();
}
catch (Exception ex)
{
ShowMessage(sErrMsg + " " + ex.Message);
dberp.RollbackTrans();
}
}
protected void btnQX_Click(object sender, EventArgs e)
{
CloseWindow();
}
protected void datLJRQ_TextChanged(object sender, EventArgs e)
{
Dictionary<string, string> dicTLJG = XLBJDInfo.GetTLJByRQ(datLJRQ.Text, PageParam.GetRTrimString("BJFLID"), PageParam.GetRTrimString("HSBZ").Equals("Y"));
txtTodayTJ.Value = CMISproConvert.StrToFloat(dicTLJG["TJ"], 0);
txtTodayLJ.Value = CMISproConvert.StrToFloat(dicTLJG["LJ"], 0);
txtTJWHSJ.Text = dicTLJG["TJWHSJ"];
txtLJWHSJ.Text = dicTLJG["LJWHSJ"];
Dictionary<string, string> dicNOWTLJG = XLBJDInfo.GetTLJByRQ(DateTime.Now.ToShortDateString(), PageParam.GetRTrimString("BJFLID"), PageParam.GetRTrimString("HSBZ").Equals("Y"));
if (dicNOWTLJG["TJ"].Equals(dicTLJG["TJ"]) &&dicNOWTLJG["LJ"].Equals(dicTLJG["LJ"]))
{
lblTodayTJ.Text = "【最新】铜价:";
chkQTCLQZXJ.Text = "其他材料取最新价";
lblGetToday.Text = "取最新铜铝价";
}
else
{
lblTodayTJ.Text = "铜价:";
chkQTCLQZXJ.Text = "其他材料取日期价";
lblGetToday.Text = "取日期铜铝价";
}
}
#endregion
}
}