2026821
This commit is contained in:
@@ -0,0 +1,338 @@
|
||||
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_MODEL.Page;
|
||||
using GThinking.N_MISPRO.Data;
|
||||
using GThinking.N_MISPRO;
|
||||
using GThinking.N_MISPRO.Utility;
|
||||
using System.Text;
|
||||
using System.Collections.Generic;
|
||||
using GThinking.N_MISPRO.Caching;
|
||||
|
||||
namespace GThinking.N_XLXSBJ
|
||||
{
|
||||
public partial class JGBPZ_HQFZJGBList : SingleGridBase
|
||||
{
|
||||
JGBPZ_HQFZJGB entity = new JGBPZ_HQFZJGB();
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.UMID = 100860036;
|
||||
this.UMName = "线缆销售报价价格目录配置";
|
||||
this.CurMaster = Master;
|
||||
this.ModuleGV = grdJGB;
|
||||
this.CurEntity = entity;
|
||||
this.PageHeight = 600;
|
||||
this.PageWidth = 750;
|
||||
|
||||
base.DataKeyNames = new string[] { "XLXSJGB_JGBID", "XLXSJGB_JGBMC", "XLXSJGB_BJLY" };
|
||||
|
||||
Master.EnableQueryBtn = false;
|
||||
Master.EnableNewBtn = false;
|
||||
Master.EnableCopyBtn = false;
|
||||
Master.EnableEditBtn = false;
|
||||
Master.EnableViewBtn = false;
|
||||
Master.EnableDeleteBtn = false;
|
||||
|
||||
base.InitPage();
|
||||
|
||||
this.ModuleGV.OnClientDblClick = "return false;";
|
||||
|
||||
if (!IsPostBack)
|
||||
{
|
||||
Master_OnStandardQuery(null, null);
|
||||
}
|
||||
}
|
||||
|
||||
#region 模板事件
|
||||
protected override void Master_OnStandardQuery(object sender, EventArgs e)
|
||||
{
|
||||
entity.EntityTable.QuerySelSql = GetSql();
|
||||
base.Master_OnStandardQuery(sender, e);
|
||||
entity.GridDataBind(grdJGB, tSession);
|
||||
}
|
||||
|
||||
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
|
||||
{
|
||||
entity.EntityTable.QuerySelSql = GetSql();
|
||||
base.moduleGV_PageIndexChanging(sender, e);
|
||||
grdJGB.SelectedIndex = -1;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 自定义函数
|
||||
|
||||
private string GetSql()
|
||||
{
|
||||
string sSQL = " select XLXSJGB_JGBID, XLXSJGB_JGBMC, XLXSJGB_YXQS, XLXSJGB_YXQZ, XLXSJGB_BZ, \r\n"
|
||||
+ " XLXSJGB_WHR, XLXSJGB_WHRID, XLXSJGB_WHSJ,XLXSJGB_BJLY \r\n"
|
||||
+ " from XLXSJGB where isnull(XLXSJGB_CPMLID,' ')=' ' \r\n";
|
||||
sSQL += " and XLXSJGB_MXBH=:pMXBH ";
|
||||
entity.Param.Add("pMXBH", PageParam.GetRTrimString("MXBH"));
|
||||
sSQL += " and XLXSJGB_TJYS=:pTJYS ";
|
||||
entity.Param.Add("pTJYS", PageParam.GetRTrimString("TJYS"));
|
||||
|
||||
|
||||
|
||||
return sSQL + " order by XLXSJGB_JGBID ";
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
protected void grdJGB_RowDoubleClick(object sender, GThinking.N_CONTROL.RowDoubleClickEventArgs e)
|
||||
{
|
||||
//从派生价格表传过来可能需要被替换掉的价格表ID:价格表A
|
||||
string sGetJGBID = PageParam.GetRTrimString("JGBID");
|
||||
string sGetJGBMC = PageParam.GetRTrimString("JGBMC");
|
||||
if (sGetJGBID.Equals(""))
|
||||
{
|
||||
//同之前的操作包含两层含义:
|
||||
//1、单一价格表的引用
|
||||
//2、组合价格表的引用
|
||||
Confirm.Register("IsQD", "被选中的价格表现为非产品目录价格表,将被设置材料行情范围成为产品目录价格表,是否继续?");
|
||||
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
|
||||
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();
|
||||
}
|
||||
|
||||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||||
TSQL SQL = new TSQL(dberp);
|
||||
try
|
||||
{
|
||||
dberp.BeginTrans();
|
||||
|
||||
#region 如果是组合产品目录,先进行判断,构建出JGCIDS
|
||||
|
||||
string sJGCIDs = "";
|
||||
if (PageParam.GetRTrimString("CPMLLX").Equals("Y"))//组合产品目录
|
||||
{
|
||||
string sErrorMsg = "";
|
||||
sJGCIDs = JGBPZ.GetJGCIDS(dberp, SQL, PageParam.GetRTrimString("JGBPZDH"), PageParam.GetRTrimString("CLHQZH"),
|
||||
PageParam.GetRTrimString("CPMLIDS"), PageParam.GetRTrimString("BJCLIDS"), ref sErrorMsg);
|
||||
if (!sErrorMsg.Equals(""))
|
||||
{
|
||||
ShowMessage(sErrorMsg);
|
||||
dberp.CommitTrans();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
string sJGBID = grdJGB.DataKeys[grdJGB.SelectedIndex]["XLXSJGB_JGBID"].ToString().Trim();
|
||||
string sJGBMC = grdJGB.DataKeys[grdJGB.SelectedIndex]["XLXSJGB_JGBMC"].ToString().Trim();
|
||||
string sBJLY = grdJGB.DataKeys[grdJGB.SelectedIndex]["XLXSJGB_BJLY"].ToString().Trim();
|
||||
SQL.Clear();
|
||||
if (PageParam.GetRTrimString("CPMLLX").Equals("Y"))//组合产品目录
|
||||
{
|
||||
SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=:pCPMLID,XLXSJGB_JGCIDS=:pJGCIDS,XLXSJGB_BJLY='C' where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
}
|
||||
else
|
||||
{
|
||||
if (sBJLY.Equals("C"))
|
||||
{
|
||||
SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=:pCPMLID,XLXSJGB_JGCIDS=:pJGCIDS,XLXSJGB_BJLY='J' where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
}
|
||||
else
|
||||
{
|
||||
SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=:pCPMLID,XLXSJGB_JGCIDS=:pJGCIDS where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
}
|
||||
}
|
||||
SQL.ParamByName("pCPMLID").Value = PageParam.GetRTrimString("CPMLID");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGCIDS").Value = sJGCIDs;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("update XLXSJGBPZJGB set XLXSJGBPZJGB_JGBID=:pJGBID,XLXSJGBPZJGB_JGBMC=:pJGBMC where XLXSJGBPZJGB_JGBPZDH=:pJGBPZDH and XLXSJGBPZJGB_CLHQZH=:pCLHQZH ");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pJGBMC").Value = sJGBMC;
|
||||
SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
SQL.ParamByName("pCLHQZH").Value = PageParam.GetRTrimString("CLHQZH");
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("delete from XLXSJGBCLHQFD where XLXSJGBCLHQFD_MXBH=:pMXBH and XLXSJGBCLHQFD_JGBID=:pJGBID");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSJGBCLHQFD(XLXSJGBCLHQFD_MXBH,XLXSJGBCLHQFD_JGBID,XLXSJGBCLHQFD_BJCLID,XLXSJGBCLHQFD_HSJGS,XLXSJGBCLHQFD_HSJGZ,XLXSJGBCLHQFD_CLJGS,XLXSJGBCLHQFD_CLJGZ,XLXSJGBCLHQFD_WHRID,XLXSJGBCLHQFD_WHR,XLXSJGBCLHQFD_WHSJ) ");
|
||||
SQL.Add("select :pMXBH,:pJGBID,XLXSCLHQFD_BJCLID,XLXSCLHQFD_HSJGS,XLXSCLHQFD_HSJGZ,XLXSCLHQFD_CLJGS,XLXSCLHQFD_CLJGZ,:pWHRID,:pWHR,:pWHSJ");
|
||||
SQL.Add(" from XLXSJGBPZCLHQFD,XLXSCLHQFD");
|
||||
SQL.Add(" where XLXSJGBPZCLHQFD_JGBPZDH=:pJGBPZDH");
|
||||
SQL.Add(" and XLXSJGBPZCLHQFD_CLHQZH=:pCLHQZH");
|
||||
SQL.Add(" and XLXSCLHQFD_BJCLID=XLXSJGBPZCLHQFD_BJCLID");
|
||||
SQL.Add(" and XLXSCLHQFD_CLHQDH=XLXSJGBPZCLHQFD_CLHQDH");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
SQL.ParamByName("pCLHQZH").Value = PageParam.GetRTrimString("CLHQZH");
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
dberp.CommitTrans();
|
||||
ShowMessage("引用完成!");
|
||||
CacheNotify.TableIsUpdated("DBERP", "XLXSJGB");
|
||||
DialogOperationScript dos = new DialogOperationScript(this);
|
||||
dos.ClickOwnerButton(PageParam.GetRTrimString("btnRefresh1CID"));
|
||||
dos.CloseSelf();
|
||||
dos.Execute();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowMessage(ex.Message);
|
||||
dberp.RollbackTrans();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//选择一条非产品目录价格表记录B,双击进行价格表更换操作:
|
||||
//(1)先询问“将用价格表B替换价格表A,是否继续?”,是则继续,否则终止操作;
|
||||
//(2)价格表B替换价格表A,依次执行如下语句:
|
||||
//选中用来替换的价格表:价格表B
|
||||
string sJGBID = grdJGB.DataKeys[grdJGB.SelectedIndex]["XLXSJGB_JGBID"].ToString().Trim();
|
||||
string sJGBMC = grdJGB.DataKeys[grdJGB.SelectedIndex]["XLXSJGB_JGBMC"].ToString().Trim();
|
||||
string sBJLY = grdJGB.DataKeys[grdJGB.SelectedIndex]["XLXSJGB_BJLY"].ToString().Trim();
|
||||
string sWarnMsg = "";
|
||||
sWarnMsg = "将用价格表【" + sJGBID + "|" + sJGBMC + "】替换价格表【" + sGetJGBID + "|" + sGetJGBMC + "】,是否继续?";
|
||||
Confirm.Register("IsQD", sWarnMsg);
|
||||
Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No;
|
||||
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();
|
||||
}
|
||||
|
||||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||||
TSQL SQL = new TSQL(dberp);
|
||||
try
|
||||
{
|
||||
dberp.BeginTrans();
|
||||
//此处,处理的都是单一产品目录,传入的时候已经对组合目录进行了限制。
|
||||
string sJGCIDs = " ";
|
||||
SQL.Clear();
|
||||
|
||||
#region 处理替换的价格表B
|
||||
if (sBJLY.Equals("C"))//单一产品目录此分支走不到
|
||||
{
|
||||
SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=:pCPMLID,XLXSJGB_JGCIDS=:pJGCIDS,XLXSJGB_BJLY='J' where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
}
|
||||
else
|
||||
{
|
||||
SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=:pCPMLID,XLXSJGB_JGCIDS=:pJGCIDS where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
}
|
||||
|
||||
SQL.ParamByName("pCPMLID").Value = PageParam.GetRTrimString("CPMLID");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGCIDS").Value = sJGCIDs;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
//当前配置单号
|
||||
SQL.Clear();
|
||||
SQL.Add("update XLXSJGBPZJGB set XLXSJGBPZJGB_JGBID=:pJGBID,XLXSJGBPZJGB_JGBMC=:pJGBMC where XLXSJGBPZJGB_JGBPZDH=:pJGBPZDH and XLXSJGBPZJGB_JGBID = :pOLDJGBID ");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pJGBMC").Value = sJGBMC;
|
||||
SQL.ParamByName("pJGBPZDH").Value = PageParam.GetRTrimString("JGBPZDH");
|
||||
SQL.ParamByName("pOLDJGBID").Value = sGetJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("delete from XLXSJGBCLHQFD where XLXSJGBCLHQFD_MXBH=:pMXBH and XLXSJGBCLHQFD_JGBID=:pJGBID");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGBID").Value = sJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("insert into XLXSJGBCLHQFD(XLXSJGBCLHQFD_MXBH,XLXSJGBCLHQFD_JGBID,XLXSJGBCLHQFD_BJCLID,XLXSJGBCLHQFD_HSJGS,XLXSJGBCLHQFD_HSJGZ,XLXSJGBCLHQFD_CLJGS,XLXSJGBCLHQFD_CLJGZ,XLXSJGBCLHQFD_WHRID,XLXSJGBCLHQFD_WHR,XLXSJGBCLHQFD_WHSJ) ");
|
||||
SQL.Add("select XLXSJGBCLHQFD_MXBH,:pNEWJGBID,XLXSJGBCLHQFD_BJCLID,XLXSJGBCLHQFD_HSJGS,XLXSJGBCLHQFD_HSJGZ,XLXSJGBCLHQFD_CLJGS,XLXSJGBCLHQFD_CLJGZ,:pWHRID,:pWHR,:pWHSJ");
|
||||
SQL.Add(" from XLXSJGBCLHQFD");
|
||||
SQL.Add(" where XLXSJGBCLHQFD_MXBH=:pMXBH");
|
||||
SQL.Add(" and XLXSJGBCLHQFD_JGBID=:pOLDJGBID");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pOLDJGBID").Value = sGetJGBID;
|
||||
SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
||||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||||
dberp.ExecSQL(SQL);
|
||||
#endregion
|
||||
|
||||
#region 处理被替换的--价格表A
|
||||
SQL.Clear();
|
||||
SQL.Add("delete from XLXSJGBCLHQFD where XLXSJGBCLHQFD_MXBH=:pMXBH and XLXSJGBCLHQFD_JGBID=:pJGBID");
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGBID").Value = sGetJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("update XLXSJGB set XLXSJGB_CPMLID=null,XLXSJGB_JGCIDS=:pJGCIDS where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID");
|
||||
SQL.ParamByName("pCPMLID").Value = PageParam.GetRTrimString("CPMLID");
|
||||
SQL.ParamByName("pJGBID").Value = sGetJGBID;
|
||||
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
||||
SQL.ParamByName("pJGCIDS").Value = sJGCIDs;
|
||||
dberp.ExecSQL(SQL);
|
||||
|
||||
#endregion
|
||||
|
||||
#region 完成组合价格表XLXSJGB_JGCIDS的替换
|
||||
SQL.Clear();
|
||||
SQL.Add(" update XLXSJGB set XLXSJGB_JGCIDS = REPLACE(XLXSJGB_JGCIDS,:pOLDJGBID,:pNEWJGBID)");
|
||||
SQL.Add(" where XLXSJGB_JGCIDS like '%'||:pOLDJGBID||'%' and XLXSJGB_MXBH='JGB' ");
|
||||
SQL.ParamByName("pOLDJGBID").Value = sGetJGBID;
|
||||
SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
||||
dberp.ExecSQL(SQL);
|
||||
#endregion
|
||||
|
||||
dberp.CommitTrans();
|
||||
ShowMessage("替换完成!");
|
||||
CacheNotify.TableIsUpdated("DBERP", "XLXSJGB");
|
||||
DialogOperationScript dos = new DialogOperationScript(this);
|
||||
dos.ClickOwnerButton(PageParam.GetRTrimString("btnRefresh1CID"));
|
||||
dos.CloseSelf();
|
||||
dos.Execute();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ShowMessage(ex.Message);
|
||||
dberp.RollbackTrans();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user