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

361 lines
16 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_CONTROL;
using GThinking.N_PUBLIC;
using GThinking.N_MISPRO.Caching;
using GThinking.N_MISPRO.Utility;
using System.Collections.Generic;
using GThinking.N_PUBLIC2;
namespace GThinking.N_XLXSBJ
{
[TableMap(DB = "DBERP", DbTableName = "XLWBBJDMX", Umid = 100860043, IsWorkFlow = false)]
public class CXBJD_WLTZ : EntityManager
{
}
public partial class CXBJD_WLTZInfo : SingleCardBase
{
CXBJD_WLTZ entity = new CXBJD_WLTZ();
#region Page_Load
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860046;
this.UMName = "线缆销售报价反馈";
base.CurMaster = Master;
base.CurEntity = entity;
this.PageHeight = 400;
this.PageWidth = 500;
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 string CodeClass(string ComponentID)
{
string SQL = base.CodeClass(ComponentID);
if (ComponentID.ToUpper().Equals("TXTWLID"))
{
SQL += "!!select WL_WLID as CODE, WL_MC as MESSAGE from WL where 1 = 1 "
+ " and isnull(WL_TYBZ,'N')<>'Y'order by CODE ";
}
return SQL;
}
#endregion
#region 自定义函数
private void InitControl()
{
if (!PageParam.GetRTrimString("WLID").Equals(""))
{
txtWLID.Text = PageParam.GetRTrimString("WLID");
txtWLID_OnTextChanged(null, null);
}
}
private string GetWLIDbyXDWL(string sXLXHID, string sXLGGID, string sXLBZID, string sDYDJID, string sXLYSID, bool ExistsBJCPYS)
{
string sWLID = "";
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add(" select XLXSBJXDWL_WLID from XLXSBJXDWL ");
SQL.Add(" where XLXSBJXDWL_XLXHID = :pXLXHID and XLXSBJXDWL_XLGGID = :pXLGGID and XLXSBJXDWL_XLBZID = :pXLBZID and XLXSBJXDWL_DYDJID = :pDYDJID ");
SQL.ParamByName("pXLXHID").Value = sXLXHID;
SQL.ParamByName("pXLGGID").Value = sXLGGID;
SQL.ParamByName("pXLBZID").Value = sXLBZID;
SQL.ParamByName("pDYDJID").Value = sDYDJID;
if(ExistsBJCPYS)
{
SQL.Add(" and XLXSBJXDWL_XLYSID = :pXLYSID ");
SQL.ParamByName("pXLYSID").Value = sXLYSID;
}
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
sWLID = ds.Tables[0].Rows[0]["XLXSBJXDWL_WLID"].ToString().Trim();
}
return sWLID;
}
private string GetWLXX(string sWLID)
{
string sWLXX = "";
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add("select WL_WLID,WL_MC,WL_GG,WL_CL,WL_TZ from WL ");
SQL.Add("where 1=1 and WL_WLID=:pWLID ");
SQL.ParamByName("pWLID").Value = sWLID;
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
sWLXX = ds.Tables[0].Rows[0]["WL_WLID"].ToString().Trim() + "|" + ds.Tables[0].Rows[0]["WL_MC"].ToString().Trim() + " " + ds.Tables[0].Rows[0]["WL_GG"].ToString().Trim() + " " + ds.Tables[0].Rows[0]["WL_TZ"].ToString().Trim()
+ " " + ds.Tables[0].Rows[0]["WL_CL"].ToString().Trim();
sWLXX = sWLXX.Trim();
}
return sWLXX;
}
protected void txtWLID_OnTextChanged(object sender, EventArgs e)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL SQL = new TSQL(dberp);
SQL.Clear();
SQL.Add("select WL_WLID,WL_MC,WL_GG,WL_CL,WL_TZ from WL ");
SQL.Add("where 1=1 and WL_WLID=:pWLID ");
SQL.ParamByName("pWLID").Value = txtWLID.Text.Trim();
DataSet ds = dberp.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
txtWLMC.Text = ds.Tables[0].Rows[0]["WL_MC"].ToString().Trim();
txtGGXH.Text = ds.Tables[0].Rows[0]["WL_GG"].ToString().Trim();
txtTH.Text = ds.Tables[0].Rows[0]["WL_TZ"].ToString().Trim();
txtCZ.Text = ds.Tables[0].Rows[0]["WL_CL"].ToString().Trim();
}
else
{
txtWLMC.Text = "";
txtGGXH.Text = "";
txtTH.Text = "";
txtCZ.Text = "";
}
}
#endregion
#region 自定义按钮
protected void btnOK_Click(object sender, EventArgs e)
{
if (!txtWLID.Text.Trim().Equals(""))
{
if (txtWLMC.Text.Trim().Equals(""))
{
ShowMessage("物料不存在!");
return;
}
if (CMISproDataBase.ExistsRecord("DBERP", "select 1 from WL where WL_WLID = '" + txtWLID.Text.Trim() + "' and isnull(WL_TYBZ,'N') = 'Y'"))
{
ShowMessage("物料已停用!");
return;
}
}
string sBJDID = PageParam.GetRTrimString("BJDID");
string sBJDXH = PageParam.GetRTrimString("BJDXH");
string sCFXH = PageParam.GetRTrimString("CFXH");
string sXLXHID = "";
string sXLGGID = "";
string sXLBZID = "";
string sDYDJID = "";
string sXLYSID = "";
bool ExistsBJCPYS = false;//是否设置了报价产品颜色
if (CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLXSBJCPYS_CPYT from XLXSBJCPYS where 1=1"))
{
ExistsBJCPYS = true;
}
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sSQL = new TSQL(dberp);
sSQL.Clear();
sSQL.Add(" select XLXSBJDMX_XDXLXHID,XLXSBJXLGGTHB_XLGGIDCH as XLGGID,XLXSBJDMX_XLBZID,XLXSBJDMX_DYDJID,XLXSBJDMX_XLYSID ");
sSQL.Add(" from XLXSBJDMX ");
sSQL.Add(" left join XLYSB on XLYSB_XLYSID=XLXSBJDMX_XLYSID");
sSQL.Add(" left join XLBZ on XLBZ_XLBZID=XLXSBJDMX_XLBZID");
sSQL.Add(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSBJDMX_XLGGID");
sSQL.Add(" where 1=1 ");
sSQL.Add(" and XLXSBJDMX_BJDID =:pBJDID ");
sSQL.Add(" and XLXSBJDMX_XH =:pXH ");
sSQL.ParamByName("pBJDID").Value = sBJDID;
sSQL.ParamByName("pXH").Value = CMISproConvert.StrToFloat(sBJDXH);
DataSet ds = dberp.OpenDataSet(sSQL);
if (ds.Tables[0].Rows.Count > 0)
{
sXLXHID = ds.Tables[0].Rows[0]["XLXSBJDMX_XDXLXHID"].ToString().Trim();
sXLGGID = ds.Tables[0].Rows[0]["XLGGID"].ToString().Trim();
sXLBZID = ds.Tables[0].Rows[0]["XLXSBJDMX_XLBZID"].ToString().Trim();
sDYDJID = ds.Tables[0].Rows[0]["XLXSBJDMX_DYDJID"].ToString().Trim();
sXLYSID = ds.Tables[0].Rows[0]["XLXSBJDMX_XLYSID"].ToString().Trim();
}
if (!txtWLID.Text.Trim().Equals(""))
{
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860046);
if (pzxx.XLXSBJPZ_GXXSBJXDWL.Equals("Y"))
{
string sWLID = GetWLIDbyXDWL(sXLXHID, sXLGGID, sXLBZID, sDYDJID, sXLYSID, ExistsBJCPYS);
if (!sWLID.Equals(""))
{
if (!sWLID.Equals(txtWLID.Text.Trim()))
{
string sWLXX = GetWLXX(sWLID);
if (Confirm.GetValue("ask").Trim().Equals("N"))
{
Confirm.Clear();
return;
}
else if (Confirm.GetValue("ask").Trim().Equals("Y"))
{
Confirm.Clear();
try
{
dberp.BeginTrans();
sSQL.Clear();
sSQL.Add(" update XLXSBJXDWL ");
sSQL.Add(" set XLXSBJXDWL_WLID =:pWLID, ");
sSQL.Add(" XLXSBJXDWL_WHR=:XLXSBJXDWL_WHR, ");
sSQL.Add(" XLXSBJXDWL_WHRID=:XLXSBJXDWL_WHRID, ");
sSQL.Add(" XLXSBJXDWL_WHSJ=:XLXSBJXDWL_WHSJ ");
sSQL.Add(" where 1=1 ");
sSQL.Add(" and XLXSBJXDWL_XLXHID=:pXLXHID and XLXSBJXDWL_XLGGID = :pXLGGID and XLXSBJXDWL_XLBZID = :pXLBZID and XLXSBJXDWL_DYDJID = :pDYDJID ");
if (ExistsBJCPYS)
{
sSQL.Add(" and XLXSBJXDWL_XLYSID = :pXLYSID ");
sSQL.ParamByName("pXLYSID").Value = sXLYSID;
}
sSQL.ParamByName("pXLXHID").Value = sXLXHID;
sSQL.ParamByName("pXLGGID").Value = sXLGGID;
sSQL.ParamByName("pXLBZID").Value = sXLBZID;
sSQL.ParamByName("pDYDJID").Value = sDYDJID;
sSQL.ParamByName("pWLID").Value = txtWLID.Text.Trim();
sSQL.ParamByName("XLXSBJXDWL_WHR").Value = tSession.UserName;
sSQL.ParamByName("XLXSBJXDWL_WHRID").Value = tSession.UserId;
sSQL.ParamByName("XLXSBJXDWL_WHSJ").Value = DateTime.Now;
dberp.ExecSQL(sSQL);
dberp.CommitTrans();
}
catch (Exception ex)
{
ShowMessage(ex.Message);
dberp.RollbackTrans();
return;
}
}
else
{
Confirm.Register("ask", "当前报价产品已对应物料【" + sWLXX + "】,与您选择的物料不一致,是否继续并对应到所选物料上?");
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
if (Confirm.GetValue("ask").Trim().Equals(""))
{
Confirm.Ask("ask");
return;
}
}
}
}
else
{
try
{
dberp.BeginTrans();
sSQL.Clear();
sSQL.Add(" insert into XLXSBJXDWL(XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID,XLXSBJXDWL_XLYSID,XLXSBJXDWL_WLID,");
sSQL.Add(" XLXSBJXDWL_WHR,XLXSBJXDWL_WHRID,XLXSBJXDWL_WHSJ) ");
sSQL.Add(" values(:pXLXHID,:pXLGGID,:pXLBZID,:pDYDJID,:pXLYSID,:pWLID,:XLXSBJXDWL_WHR,:XLXSBJXDWL_WHRID,:XLXSBJXDWL_WHSJ ) ");
sSQL.ParamByName("pXLXHID").Value = sXLXHID;
sSQL.ParamByName("pXLGGID").Value = sXLGGID;
sSQL.ParamByName("pXLBZID").Value = sXLBZID;
sSQL.ParamByName("pDYDJID").Value = sDYDJID;
sSQL.ParamByName("pXLYSID").Value = sXLYSID;
sSQL.ParamByName("pWLID").Value = txtWLID.Text.Trim();
sSQL.ParamByName("XLXSBJXDWL_WHR").Value = tSession.UserName;
sSQL.ParamByName("XLXSBJXDWL_WHRID").Value = tSession.UserId;
sSQL.ParamByName("XLXSBJXDWL_WHSJ").Value = DateTime.Now;
dberp.ExecSQL(sSQL);
dberp.CommitTrans();
}
catch (Exception ex)
{
ShowMessage(ex.Message);
dberp.RollbackTrans();
return;
}
}
}
}
TSQL SQL = new TSQL(dberp);
try
{
dberp.BeginTrans();
SQL.Clear();
SQL.Add(" update XLXSBJDMX ");
SQL.Add(" set XLXSBJDMX_WLID =:pWLID, ");
SQL.Add(" XLXSBJDMX_WLZDR=:XLXSBJDMX_WLZDR, ");
SQL.Add(" XLXSBJDMX_WLZDRGH=:XLXSBJDMX_WLZDRGH, ");
SQL.Add(" XLXSBJDMX_WLZDSJ=:XLXSBJDMX_WLZDSJ ");
SQL.Add("where 1=1 ");
SQL.Add(" and XLXSBJDMX_BJDID =:pBJDID ");
SQL.Add(" and XLXSBJDMX_XH =:pXH ");
SQL.ParamByName("pWLID").Value = txtWLID.Text.Trim();
SQL.ParamByName("XLXSBJDMX_WLZDR").Value = tSession.UserName;
SQL.ParamByName("XLXSBJDMX_WLZDRGH").Value = tSession.UserId;
SQL.ParamByName("XLXSBJDMX_WLZDSJ").Value = DateTime.Now;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pXH").Value = CMISproConvert.StrToFloat(sBJDXH);
dberp.ExecSQL(SQL);
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_ZCCF.Trim().Equals("Y"))
{
SQL.Clear();
SQL.Add(" update XLXSBJFKCFMX ");
SQL.Add(" set XLXSBJFKCFMX_WLID =:pWLID ");
SQL.Add("where 1=1 ");
SQL.Add(" and XLXSBJFKCFMX_BJDID =:pBJDID ");
SQL.Add(" and XLXSBJFKCFMX_BJDXH =:pXH ");
SQL.Add(" and XLXSBJFKCFMX_CFXH =:pCFXH ");
SQL.ParamByName("pWLID").Value = txtWLID.Text.Trim();
SQL.ParamByName("pCFXH").Value = sCFXH;
SQL.ParamByName("pBJDID").Value = sBJDID;
SQL.ParamByName("pXH").Value = CMISproConvert.StrToFloat(sBJDXH);
dberp.ExecSQL(SQL);
}
dberp.CommitTrans();
}
catch (Exception ex)
{
ShowMessage(ex.Message);
dberp.RollbackTrans();
return;
}
DialogOperationScript dos = new DialogOperationScript(this);
dos.ClickOwnerButton(PageParam.GetRTrimString("RefreshCtrlID"));
dos.CloseSelf();
dos.Execute();
}
protected void btnQX_Click(object sender, EventArgs e)
{
CloseWindow();
}
#endregion
}
}