Files
U20261363_N_XLXSBJ/XLBJD_JGFLDInfo.aspx.cs
2026-10-09 10:25:33 +08:00

704 lines
43 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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 GThinking.N_MODEL.Dialog;
using GThinking.N_WORKFLOW;
using System.Collections.Generic;
using GThinking.N_CONTROL;
using System.Text;
namespace GThinking.U20261363_N_XLXSBJ
{
[TableMap(DB = "DBERP", DbTableName = "XLXSJGBMX", Umid = 100860174, IsWorkFlow = false, IsAttach = false, UseWhr = true,
QuerySelSql = " ",
EntitySelSql = " ",
UpdateSql = " ",
InsertSql = " ",
DeleteSql = " ")]
public class XLBJD_JGFLD : EntityManager
{
}
public partial class XLBJD_JGFLDInfo : SingleCardBase
{
XLBJD_JGFLD entity = new XLBJD_JGFLD();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860174;
this.UMName = "线缆销售报价单";
this.CurMaster = Master;
this.CurEntity = entity;
this.PageHeight = 180;
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;
txtJCCLJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtJCHSJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtJGLWSJGF.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtJGLHSJGF.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtJGLCLJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtJGLHSJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtJGYLCLJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
txtJGYLHSJG.DecimalPlaces = XLBJDUtils.BJCLPriceDecimal;
base.InitPage();
if (!this.IsPostBack)
{
InitControls();
}
}
#region 模板事件继承
#endregion
#region 自定义函数
private void InitControls()
{
int flag = 0;
DataSet dsBJCL = null;
string sBJCLID = PageParam.GetRTrimString("BJCLID");
string sJGBID = PageParam.GetRTrimString("JGBID");
string sBJDID = PageParam.GetRTrimString("BJDID");
string sBJDHQLY = PageParam.GetRTrimString("BJDHQLY");
string sBJLY = PageParam.GetRTrimString("BJLY");
string sBJFLID = PageParam.GetRTrimString("BJFLID");
string sBJRQ = PageParam.GetRTrimString("BJRQ");
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
if (!sBJCLID.Equals(""))
{
SQL.Clear();
SQL.Add(" select XLXSBJCL_JGYBJCLID,XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where (XLXSBJCL_BJCLID = :pBJCLID or XLXSBJCL_JGYBJCLID = :pBJCLID) order by XLXSBJCL_JGYBJCLID ");
SQL.ParamByName("pBJCLID").Value = sBJCLID;
dsBJCL = dberp.OpenDataSet(SQL);
if (dsBJCL.Tables[0].Rows.Count > 0)
{
//判断 加工原料 铜
for (int i = 0; i < dsBJCL.Tables[0].Rows.Count; i++)
{
if (dsBJCL.Tables[0].Rows[i]["XLXSBJCL_JGYBJCLID"].ToString().Trim().Equals(""))
{
flag = 1;
}
}
}
else
{
flag = 2;
}
}
//加工料----table2
//加工原料----table3
//铜丝
if (0 == flag)
{
table2.Style["display"] = "block";
table3.Style["display"] = "none";
txtJGLZZSL.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("ZZSL"));
txtJGLCLJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("CLJG"));
txtJGLHSJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("HSJG"));
txtJGLWSJGF.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("WSJGF"));
txtJGLHSJGF.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("HSJGF"));
//加工原料-铜
string sJGYBJCLID = dsBJCL.Tables[0].Rows[0]["XLXSBJCL_JGYBJCLID"].ToString().Trim();
TComboBox.SetComboBox("DBERP", cbxJGYLID, "select XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where 1=1 order by XLXSBJCL_BJCLID", false);
TComboBox.SetComboBox("DBERP", cbxJGLID, "select XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where 1=1 order by XLXSBJCL_BJCLID", false);
cbxJGYLID.SelectedValue = dsBJCL.Tables[0].Rows[0]["XLXSBJCL_JGYBJCLID"].ToString().Trim();
cbxJGLID.SelectedValue = sBJCLID;
txtJCCLJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JCCLJG"));
txtJCHSJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JCHSJG"));
}
//铜
else if (1 == flag)
{
table2.Style["display"] = "none";
table3.Style["display"] = "block";
txtJGYLZZSL.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("ZZSL"));
txtJGYLCLJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("CLJG"));
txtJGYLHSJG.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("HSJG"));
}
else
{
table2.Style["display"] = "none";
table3.Style["display"] = "none";
}
}
#endregion
#region 控件事件
protected void btnQR_Click(object sender, EventArgs e)
{
int flag = 0;
DataSet dsBJCL = null;
string sBJCLID = PageParam.GetRTrimString("BJCLID");
string sJGBID = PageParam.GetRTrimString("JGBID");
string sBJDID = PageParam.GetRTrimString("BJDID");
string sWLVID = PageParam.GetRTrimString("WLVID");
string sCLVID = PageParam.GetRTrimString("CLVID");
string sBJDHQLY = PageParam.GetRTrimString("BJDHQLY");
string sBJLY = PageParam.GetRTrimString("BJLY");
string sBJFLID = PageParam.GetRTrimString("BJFLID");
string sBJRQ = PageParam.GetRTrimString("BJRQ");
string sJGYBJCLID1 = PageParam.GetRTrimString("JGYBJCLID1");
double fJGBL1 = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JGBL1"));
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
if (!sBJCLID.Equals(""))
{
SQL.Clear();
SQL.Add(" select XLXSBJCL_JGYBJCLID,XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC from XLXSBJCL where (XLXSBJCL_BJCLID = :pBJCLID or XLXSBJCL_JGYBJCLID = :pBJCLID) order by XLXSBJCL_JGYBJCLID ");
SQL.ParamByName("pBJCLID").Value = sBJCLID;
dsBJCL = dberp.OpenDataSet(SQL);
if (dsBJCL.Tables[0].Rows.Count > 0)
{
//判断 加工原料 铜
for (int i = 0; i < dsBJCL.Tables[0].Rows.Count; i++)
{
if (dsBJCL.Tables[0].Rows[i]["XLXSBJCL_JGYBJCLID"].ToString().Trim().Equals(""))
{
flag = 1;
}
}
}
else
{
flag = 2;
}
}
try
{
SQL.Clear();
SQL.Add(" select V_XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_BJCLID = :pBJCLID and V_XLXSBJDCLHQ_BJDID = :pBJDID ");
SQL.Add(" and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID ");
SQL.ParamByName("pBJCLID").Value = sBJCLID;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
DataSet dsBJDCLHQ = dberp.OpenDataSet(SQL);
//铜丝
if (0 == flag)
{
//加工料
//if (txtJGLWSJGF.Value < 0)
//{
// ShowMessage("无税加工费不允许小于0!");
// return;
//}
//if (txtJGLHSJGF.Value < 0)
//{
// ShowMessage("含税加工费不允许小于0!");
// return;
//}
if (txtJGLCLJG.Value < 0)
{
ShowMessage("无税材料价格不允许小于0!");
return;
}
if (txtJGLHSJG.Value < 0)
{
ShowMessage("含税材料价格不允许小于0!");
return;
}
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,V_XLXSBJDCLHQ_WSJGF= :XLXSBJDCLHQ_WSJGF, V_XLXSBJDCLHQ_HSJGF=:XLXSBJDCLHQ_HSJGF, ");
SQL.Add(" V_XLXSBJDCLHQ_WSJG1=:V_XLXSBJDCLHQ_WSJG1,V_XLXSBJDCLHQ_HSJG1=:V_XLXSBJDCLHQ_HSJG1,V_XLXSBJDCLHQ_JGBL1=:V_XLXSBJDCLHQ_JGBL1, ");
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 = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID ");
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGLCLJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGLHSJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_WSJGF").Value = txtJGLWSJGF.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJGF").Value = txtJGLHSJGF.Value;
SQL.ParamByName("V_XLXSBJDCLHQ_WSJG1").Value = txtJGYLCLJG.Value;
SQL.ParamByName("V_XLXSBJDCLHQ_HSJG1").Value = txtJGYLHSJG.Value;
SQL.ParamByName("V_XLXSBJDCLHQ_JGBL1").Value = fJGBL1;
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now.ToString();
SQL.ParamByName("pBJCLID").Value = sBJCLID;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
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_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_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(" :V_XLXSBJDCLHQ_JGYBJCLID1,:V_XLXSBJDCLHQ_WSJG1,:V_XLXSBJDCLHQ_HSJG1,:V_XLXSBJDCLHQ_JGBL1, ");
SQL.Add(" :pCLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP, :XLXSBJDCLHQ_WHRID, :XLXSBJDCLHQ_WHR, :XLXSBJDCLHQ_WHSJ )");
SQL.ParamByName("XLXSBJDCLHQ_BJCLID").Value = sBJCLID;
SQL.ParamByName("XLXSBJDCLHQ_BJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pRYGH").Value = tSession.UserId;
SQL.ParamByName("pRYMC").Value = tSession.UserName;
SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime();
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGLCLJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGLHSJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_WSJGF").Value = txtJGLWSJGF.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJGF").Value = txtJGLHSJGF.Value;
SQL.ParamByName("V_XLXSBJDCLHQ_JGYBJCLID1").Value = sJGYBJCLID1;
SQL.ParamByName("V_XLXSBJDCLHQ_WSJG1").Value = txtJGYLCLJG.Value;
SQL.ParamByName("V_XLXSBJDCLHQ_HSJG1").Value = txtJGYLHSJG.Value;
SQL.ParamByName("V_XLXSBJDCLHQ_JGBL1").Value = fJGBL1;
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now;
dberp.ExecSQL(SQL);
}
}
//铜
else if (1 == flag)
{
//加工原料
if (txtJGYLCLJG.Value < 0)
{
ShowMessage("无税材料价格不允许小于0!");
return;
}
if (txtJGYLHSJG.Value < 0)
{
ShowMessage("含税材料价格不允许小于0!");
return;
}
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 = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID ");
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now;
SQL.ParamByName("pBJCLID").Value = sBJCLID;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
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, ");
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,");
SQL.Add(" :pCLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP, :XLXSBJDCLHQ_WHRID, :XLXSBJDCLHQ_WHR, :XLXSBJDCLHQ_WHSJ )");
SQL.ParamByName("XLXSBJDCLHQ_BJCLID").Value = sBJCLID;
SQL.ParamByName("XLXSBJDCLHQ_BJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pRYGH").Value = tSession.UserId;
SQL.ParamByName("pRYMC").Value = tSession.UserName;
SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime();
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now;
dberp.ExecSQL(SQL);
}
//处理 因为铜导致的--铜丝,铜带等数据的变更;2020.09.21【LF】铜带细分的物料价格变更
string sJGLBJCL = "";
string sJGLWLBJCL = "";
string sJGLBJCLID = "";
double JGLWSJGF = 0.0;
double JGLHSJGF = 0.0;
if (dsBJCL.Tables[0].Rows.Count > 0)
{
//判断 加工原料 铜
for (int i = 0; i < dsBJCL.Tables[0].Rows.Count; i++)
{
JGLWSJGF = 0.0;
JGLHSJGF = 0.0;
sJGLBJCLID = dsBJCL.Tables[0].Rows[i]["XLXSBJCL_BJCLID"].ToString().Trim();
if (!dsBJCL.Tables[0].Rows[i]["XLXSBJCL_JGYBJCLID"].ToString().Trim().Equals(""))
{
sJGLBJCL = sJGLBJCL + dsBJCL.Tables[0].Rows[i]["XLXSBJCL_BJCLMC"].ToString().Trim() + "、";
SQL.Clear();
//查询是否存在记录
SQL.Add("select 1 from V_XLXSBJDCLHQ where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID ");
SQL.Add(" and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pBJCLID").Value = sJGLBJCLID;
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
SQL.Clear();
SQL.Add(" update V_XLXSBJDCLHQ ");
SQL.Add(" set V_XLXSBJDCLHQ_WSJG1 = :XLXSBJDCLHQ_WSJG,V_XLXSBJDCLHQ_HSJG1=: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_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID ");
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now;
SQL.ParamByName("pBJCLID").Value = sJGLBJCLID;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
dberp.ExecSQL(SQL);
}
else
{
string sJGYBJCLID = string.Empty;
//'ZZZZZZZZ'
SQL.Clear();
SQL.Add(" select XLXSCLHQ_WSJGF,XLXSCLHQ_HSJGF,XLXSCLHQ_JGYBJCLID1 ");
SQL.Add(" from XLXSCLHQ ");
SQL.Add(" where XLXSCLHQ_JGBID= :pJGBID ");
SQL.Add(" and XLXSCLHQ_BJCLID=:pBJCLID ");
SQL.Add(" and XLXSCLHQ_YXQS=");
SQL.Add(" (");
SQL.Add(" select max(XLXSCLHQ_YXQS) as maxYXQS");
SQL.Add(" from XLXSCLHQ");
SQL.Add(" where XLXSCLHQ_JGBID= :pJGBID ");
SQL.Add(" and XLXSCLHQ_BJCLID=:pBJCLID");
SQL.Add(" and XLXSCLHQ_YXQS<=:pYXQS");
SQL.Add(" )");
//1-价格表行情 2-报价日行情
string tSQL = string.Format(" select 1 from XLXSBJFLBJRHQCL "
+ " where XLXSBJFLBJRHQCL_BJCLID = '{0}' and XLXSBJFLBJRHQCL_BJFLID = '{1}' ", sBJCLID, sBJFLID);
if (CMISproDataBase.ExistsRecord("DBERP", tSQL) || sBJDHQLY.Equals("2"))
{
SQL.ParamByName("pJGBID").Value = "ZZZZZZZZ";
SQL.ParamByName("pBJCLID").Value = sJGLBJCLID;
SQL.ParamByName("pYXQS").Value = sBJRQ;
DataSet dsBJRCLHQ = dberp.OpenDataSet(SQL);
if (dsBJRCLHQ.Tables[0].Rows.Count > 0)
{
JGLHSJGF = CMISproConvert.StrToFloat(dsBJRCLHQ.Tables[0].Rows[0]["XLXSCLHQ_HSJGF"].ToString().Trim());
JGLWSJGF = CMISproConvert.StrToFloat(dsBJRCLHQ.Tables[0].Rows[0]["XLXSCLHQ_WSJGF"].ToString().Trim());
sJGYBJCLID = dsBJRCLHQ.Tables[0].Rows[0]["XLXSCLHQ_JGYBJCLID1"].ToString().Trim();
}
}
else
{
SQL.ParamByName("pJGBID").Value = sJGBID;
SQL.ParamByName("pBJCLID").Value = sJGLBJCLID;
SQL.ParamByName("pYXQS").Value = sBJRQ;
DataSet dsJGBCLHQ = dberp.OpenDataSet(SQL);
if (dsJGBCLHQ.Tables[0].Rows.Count > 0)
{
JGLHSJGF = CMISproConvert.StrToFloat(dsJGBCLHQ.Tables[0].Rows[0]["XLXSCLHQ_HSJGF"].ToString().Trim());
JGLWSJGF = CMISproConvert.StrToFloat(dsJGBCLHQ.Tables[0].Rows[0]["XLXSCLHQ_WSJGF"].ToString().Trim());
sJGYBJCLID = dsJGBCLHQ.Tables[0].Rows[0]["XLXSCLHQ_JGYBJCLID1"].ToString().Trim();
}
}
SQL.Clear();
SQL.Add(" insert into V_XLXSBJDCLHQ( ");
SQL.Add(" V_XLXSBJDCLHQ_BJCLID,V_XLXSBJDCLHQ_BJDID, V_XLXSBJDCLHQ_WSJG1,V_XLXSBJDCLHQ_HSJG1,V_XLXSBJDCLHQ_WSJGF,V_XLXSBJDCLHQ_HSJGF,");
SQL.Add(" V_XLXSBJDCLHQ_JGYBJCLID1,V_XLXSBJDCLHQ_JGBL1,");
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(:pBJCLID,:pBJDID, :XLXSBJDCLHQ_WSJG,:XLXSBJDCLHQ_HSJG, ");
SQL.Add(" isnull(:XLXSBJDCLHQ_WSJGF,0),isnull(:XLXSBJDCLHQ_HSJGF,0), ");
SQL.Add(" :XLXSBJDCLHQ_JGYBJCLID1, isnull(:XLXSBJDCLHQ_JGBL1,0), ");
SQL.Add(" :pCLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP,:XLXSBJDCLHQ_WHRID, :XLXSBJDCLHQ_WHR, :XLXSBJDCLHQ_WHSJ)");
SQL.ParamByName("XLXSBJDCLHQ_WSJG").Value = txtJGYLCLJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_HSJG").Value = txtJGYLHSJG.Value;
SQL.ParamByName("XLXSBJDCLHQ_WSJGF").Value = JGLWSJGF;
SQL.ParamByName("XLXSBJDCLHQ_HSJGF").Value = JGLHSJGF;
SQL.ParamByName("XLXSBJDCLHQ_JGYBJCLID1").Value = sJGYBJCLID;
SQL.ParamByName("XLXSBJDCLHQ_JGBL1").Value = 1;
SQL.ParamByName("XLXSBJDCLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDCLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDCLHQ_WHSJ").Value = DateTime.Now;
SQL.ParamByName("pBJCLID").Value = sJGLBJCLID;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pRYGH").Value = tSession.UserId;
SQL.ParamByName("pRYMC").Value = tSession.UserName;
SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime();
dberp.ExecSQL(SQL);
}
//更新或插入后处理加工料的HSJG、WSJG
SQL.Clear();
SQL.Add(" update V_XLXSBJDCLHQ set V_XLXSBJDCLHQ_WSJG=V_XLXSBJDCLHQ_WSJG1*V_XLXSBJDCLHQ_JGBL1+V_XLXSBJDCLHQ_WSJGF, ");
SQL.Add(" V_XLXSBJDCLHQ_HSJG=V_XLXSBJDCLHQ_HSJG1*V_XLXSBJDCLHQ_JGBL1+V_XLXSBJDCLHQ_HSJGF ");
SQL.Add(" where V_XLXSBJDCLHQ_BJDID =:pBJDID and V_XLXSBJDCLHQ_ID = :pCLVID and V_XLXSBJDCLHQ_TZRYID = :pRYID and V_XLXSBJDCLHQ_BJCLID = :pBJCLID ");
SQL.ParamByName("pBJCLID").Value = sJGLBJCLID;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pCLVID").Value = sCLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
dberp.ExecSQL(SQL);
//#region 更新XLXSBJD_TJ,XLXSBJD_LJ---不用更新,调整材料行情确定时会更新
//if (!PageParam.GetRTrimString("TBJCLID").Equals(""))
//{
// SQL.Clear();
// SQL.Add("update XLXSBJD set XLXSBJD_TJ=(select ");
// if (PageParam.GetRTrimString("HSBZ").Equals("Y"))
// SQL.Add("XLXSBJDCLHQ_HSJG ");
// else
// SQL.Add("XLXSBJDCLHQ_WSJG ");
// SQL.Add(" from XLXSBJDCLHQ ");
// SQL.Add("where XLXSBJDCLHQ_BJDID=:pBJDID");
// SQL.Add(" and XLXSBJDCLHQ_BJCLID=:pTBJCLID");
// SQL.Add(") ");
// SQL.Add("where XLXSBJD_BJDID=:pBJDID");
// SQL.ParamByName("pBJDID").Value = sBJDID;
// SQL.ParamByName("pTBJCLID").Value = PageParam.GetRTrimString("TBJCLID");
// dberp.ExecSQL(SQL);
//}
//if (!PageParam.GetRTrimString("LBJCLID").Equals(""))
//{
// SQL.Clear();
// SQL.Add("update XLXSBJD set XLXSBJD_LJ=(select ");
// if (PageParam.GetRTrimString("HSBZ").Equals("Y"))
// SQL.Add("XLXSBJDCLHQ_HSJG ");
// else
// SQL.Add("XLXSBJDCLHQ_WSJG ");
// SQL.Add(" from XLXSBJDCLHQ ");
// SQL.Add("where XLXSBJDCLHQ_BJDID=:pBJDID");
// SQL.Add(" and XLXSBJDCLHQ_BJCLID=:pLBJCLID");
// SQL.Add(") ");
// SQL.Add("where XLXSBJD_BJDID=:pBJDID");
// SQL.ParamByName("pBJDID").Value = sBJDID;
// SQL.ParamByName("pLBJCLID").Value = PageParam.GetRTrimString("LBJCLID");
// dberp.ExecSQL(SQL);
//}
//#endregion
#region 补充----同步调整对应的物料行情
SQL.Clear();
SQL.Add(" SELECT XLXSBJCLWL_WLID,XLXSBJCLWL_BJCLID,XLXSBJCL_BJCLMC FROM XLXSBJCLWL ");
SQL.Add(" left join XLXSBJCL on XLXSBJCL_BJCLID=XLXSBJCLWL_BJCLID ");
SQL.Add(" WHERE XLXSBJCL_BJHQ = '2' and isnull(XLXSBJCL_JGYBJCLID,' ') <> ' ' ");
DataSet dsBJCLWL = dberp.OpenDataSet(SQL);
if (dsBJCLWL.Tables[0].Rows.Count > 0)
{
for (int j = 0; j < dsBJCLWL.Tables[0].Rows.Count; j++)
{
if (dsBJCLWL.Tables[0].Rows[j]["XLXSBJCLWL_BJCLID"].ToString().Trim().Equals(sJGLBJCLID))
{
if (!sJGLWLBJCL.Contains(dsBJCLWL.Tables[0].Rows[j]["XLXSBJCL_BJCLMC"].ToString().Trim()))
{
sJGLWLBJCL = sJGLWLBJCL + dsBJCLWL.Tables[0].Rows[j]["XLXSBJCL_BJCLMC"].ToString().Trim() + "、";
}
string sWLID = dsBJCLWL.Tables[0].Rows[j]["XLXSBJCLWL_WLID"].ToString().Trim();
SQL.Clear();
//查询是否存在插入记录
SQL.Add("select 1 from V_XLXSBJDWLHQ where V_XLXSBJDWLHQ_BJDID=:pBJDID and V_XLXSBJDWLHQ_WLID=:pWLID ");
SQL.Add(" and V_XLXSBJDWLHQ_ID = :pWLVID and V_XLXSBJDWLHQ_TZRYID = :pRYID ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pWLVID").Value = sWLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pWLID").Value = sWLID;
DataSet dsWLHQ = dberp.OpenDataSet(SQL);
if (dsWLHQ.Tables[0].Rows.Count > 0)
{
SQL.Clear();
SQL.Add(" update V_XLXSBJDWLHQ ");
SQL.Add(" set V_XLXSBJDWLHQ_WSJG1 = :XLXSBJDWLHQ_WSJG,V_XLXSBJDWLHQ_HSJG1=:XLXSBJDWLHQ_HSJG, ");
SQL.Add(" V_XLXSBJDWLHQ_WHRID = :XLXSBJDWLHQ_WHRID, V_XLXSBJDWLHQ_WHR = :XLXSBJDWLHQ_WHR, V_XLXSBJDWLHQ_WHSJ = :XLXSBJDWLHQ_WHSJ");
SQL.Add(" where V_XLXSBJDWLHQ_BJDID=:pBJDID and V_XLXSBJDWLHQ_ID = :pWLVID and V_XLXSBJDWLHQ_TZRYID = :pRYID and V_XLXSBJDWLHQ_WLID=:pWLID ");
SQL.ParamByName("XLXSBJDWLHQ_WSJG").Value = txtJGYLCLJG.Value;
SQL.ParamByName("XLXSBJDWLHQ_HSJG").Value = txtJGYLHSJG.Value;
SQL.ParamByName("XLXSBJDWLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDWLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDWLHQ_WHSJ").Value = DateTime.Now;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pWLVID").Value = sWLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pWLID").Value = sWLID;
dberp.ExecSQL(SQL);
}
else
{
SQL.Clear();
SQL.Add(" insert into V_XLXSBJDWLHQ( ");
SQL.Add(" V_XLXSBJDWLHQ_BJDID,V_XLXSBJDWLHQ_WLID, V_XLXSBJDWLHQ_WSJG1,V_XLXSBJDWLHQ_HSJG1, V_XLXSBJDWLHQ_WSJGF,V_XLXSBJDWLHQ_HSJGF,");
SQL.Add(" V_XLXSBJDWLHQ_JGYBJCLID1,V_XLXSBJDWLHQ_JGBL1, ");
SQL.Add(" V_XLXSBJDWLHQ_ID,V_XLXSBJDWLHQ_TZRYID,V_XLXSBJDWLHQ_TZRYGH,V_XLXSBJDWLHQ_TZRYMC,V_XLXSBJDWLHQ_TIMESTAMP,V_XLXSBJDWLHQ_WHRID, V_XLXSBJDWLHQ_WHR, V_XLXSBJDWLHQ_WHSJ)");
SQL.Add(" SELECT ");
SQL.Add(" :XLXSBJDWLHQ_BJDID,:pWLID,:XLXSBJDWLHQ_WSJG,:XLXSBJDWLHQ_HSJG,");
SQL.Add(" isnull(XLXSWLHQ_WSJGF,0),isnull(XLXSWLHQ_HSJGF,0), ");
SQL.Add(" isnull(XLXSWLHQ_JGYBJCLID1,' '),isnull(XLXSWLHQ_JGBL1,0), ");
SQL.Add(" :pWLVID,:pRYID,:pRYGH,:pRYMC,:pTIMESTAMP,:XLXSBJDWLHQ_WHRID, :XLXSBJDWLHQ_WHR, :XLXSBJDWLHQ_WHSJ ");
SQL.Add(" from XLXSWLHQ ");
SQL.Add(" where XLXSWLHQ_JGBID=' '");
SQL.Add(" and XLXSWLHQ_WLID=:pWLID");
SQL.Add(" and XLXSWLHQ_YXQS=");
SQL.Add(" (");
SQL.Add(" select max(XLXSWLHQ_YXQS) as maxYXQS");
SQL.Add(" from XLXSWLHQ");
SQL.Add(" where XLXSWLHQ_JGBID=' ' ");
SQL.Add(" and XLXSWLHQ_WLID=:pWLID");
SQL.Add(" and XLXSWLHQ_YXQS<=:pBJRQ ");
SQL.Add(" and (XLXSWLHQ_YXQZ>=:pBJRQ or XLXSWLHQ_YXQZ is null)");
SQL.Add(" )");
//SQL.Add(" and XLXSWLHQ_YXQZ is null ");
SQL.ParamByName("XLXSBJDWLHQ_BJDID").Value = sBJDID;
SQL.ParamByName("pWLVID").Value = sWLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pRYGH").Value = tSession.UserId;
SQL.ParamByName("pRYMC").Value = tSession.UserName;
SQL.ParamByName("pTIMESTAMP").Value = MISproUtils.GetServerTime();
SQL.ParamByName("pWLID").Value = sWLID;
SQL.ParamByName("XLXSBJDWLHQ_WSJG").Value = txtJGYLCLJG.Value;
SQL.ParamByName("XLXSBJDWLHQ_HSJG").Value = txtJGYLHSJG.Value;
SQL.ParamByName("XLXSBJDWLHQ_WHR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDWLHQ_WHRID").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDWLHQ_WHSJ").Value = DateTime.Now;
SQL.ParamByName("pBJRQ").Value = sBJRQ;
dberp.ExecSQL(SQL);
}
//更新/插入后处理加工料的HSJG、WSJG
SQL.Clear();
SQL.Add(" update V_XLXSBJDWLHQ set V_XLXSBJDWLHQ_WSJG=V_XLXSBJDWLHQ_WSJG1*V_XLXSBJDWLHQ_JGBL1+V_XLXSBJDWLHQ_WSJGF, ");
SQL.Add(" V_XLXSBJDWLHQ_HSJG=V_XLXSBJDWLHQ_HSJG1*V_XLXSBJDWLHQ_JGBL1+V_XLXSBJDWLHQ_HSJGF ");
SQL.Add(" where V_XLXSBJDWLHQ_BJDID=:pBJDID and V_XLXSBJDWLHQ_ID = :pWLVID and V_XLXSBJDWLHQ_TZRYID = :pRYID and V_XLXSBJDWLHQ_WLID=:pWLID ");
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pWLVID").Value = sWLVID;
SQL.ParamByName("pRYID").Value = tSession.RYID;
SQL.ParamByName("pWLID").Value = sWLID;
dberp.ExecSQL(SQL);
}
}
}
#endregion
}
}
sJGLBJCL = sJGLBJCL.TrimEnd('、');
sJGLWLBJCL = sJGLWLBJCL.TrimEnd('、');
if (!sJGLBJCL.Equals("") && !sJGLWLBJCL.Equals(""))
{
ShowMessage("已同步调整 " + sJGLBJCL + " 的材料价格!" + "\r\n" + "已同步调整 " + sJGLWLBJCL + " 的对应物料价格!");
}
else if (!sJGLBJCL.Equals(""))
{
ShowMessage("已同步调整 " + sJGLBJCL + " 的材料价格!");
}
else if (!sJGLWLBJCL.Equals(""))
{
ShowMessage("已同步调整 " + sJGLWLBJCL + " 的对应物料价格!");
}
}
}
else
{
//不处理
}
}
catch (Exception ex)
{
ShowMessage("调整出现错误,请联系系统管理员!" + ex);
}
//使用脚本给父页面的隐藏控件赋值,调用父页面的控件事件
DialogOperationScript dos = new DialogOperationScript(this);
dos.ClickOwnerButton(PageParam.GetRTrimString("CallBackCtrlID"));
dos.CloseSelf();
dos.Execute();
}
protected void btnQX_Click(object sender, EventArgs e)
{
CloseWindow();
}
//加工费
protected void txtJGLWSJGF_OnTextChanged(object sender, EventArgs e)
{
double dJGBL1 = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JGBL1"));
txtJGLCLJG.Value = NumberUtils.RoundX(txtJGLWSJGF.Value + txtJCCLJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal);
txtJGLHSJGF.Value = NumberUtils.RoundX(txtJGLWSJGF.Value * (1 + txtJGLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal);
txtJGLHSJG.Value = NumberUtils.RoundX(txtJGLHSJGF.Value + txtJCHSJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal);
}
protected void txtJGLHSJGF_OnTextChanged(object sender, EventArgs e)
{
double dJGBL1 = CMISproConvert.StrToFloat(PageParam.GetRTrimString("JGBL1"));
txtJGLHSJG.Value = NumberUtils.RoundX(txtJGLHSJGF.Value + txtJCHSJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal);
txtJGLWSJGF.Value = NumberUtils.RoundX(txtJGLHSJGF.Value / (1 + txtJGLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal);
txtJGLCLJG.Value = NumberUtils.RoundX(txtJGLWSJGF.Value + txtJCCLJG.Value * dJGBL1, XLBJDUtils.BJCLPriceDecimal);
}
//材料价格
protected void txtJGYLCLJG_OnTextChanged(object sender, EventArgs e)
{
txtJGYLHSJG.Value = NumberUtils.RoundX(txtJGYLCLJG.Value * (1 + txtJGYLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal);
}
protected void txtJGYLHSJG_OnTextChanged(object sender, EventArgs e)
{
txtJGYLCLJG.Value = NumberUtils.RoundX(txtJGYLHSJG.Value / (1 + txtJGYLZZSL.Value / 100.0), XLBJDUtils.BJCLPriceDecimal);
}
#endregion
}
}