385 lines
17 KiB
C#
385 lines
17 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_MISPRO.Utility;
|
|
using GThinking.N_PUBLIC;
|
|
using GThinking.N_MISPRO.Caching;
|
|
|
|
namespace GThinking.N_XLXSBJ
|
|
{
|
|
public partial class JGBML_SelJGBInfo : SingleCardBase
|
|
{
|
|
JGBML_SelJGB entity = new JGBML_SelJGB();
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
this.UMID = 100860018;
|
|
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;
|
|
|
|
base.InitPage();
|
|
|
|
if (PageParam.GetRTrimString("LX").Equals("JGCIDS"))
|
|
{
|
|
cbxJJ.Enabled = false;
|
|
lblJJ.Text = "基价:";
|
|
btnQR.Visible = false;
|
|
btnQX.Visible = false;
|
|
}
|
|
|
|
if (!IsPostBack)
|
|
{
|
|
cbxJJ.Width = Unit.Pixel(PageWidth - 85 - 15);
|
|
}
|
|
|
|
if (!IsPostBack)
|
|
{
|
|
InitControl();
|
|
}
|
|
}
|
|
|
|
#region 模板继承事件
|
|
|
|
#endregion
|
|
|
|
#region 自定义函数
|
|
|
|
private void InitControl()
|
|
{
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL SQL = new TSQL(dberp);
|
|
SQL.Clear();
|
|
if (PageParam.GetRTrimString("LX").Equals("JGCIDS"))
|
|
{
|
|
SQL.Add("select XLXSJGB_JGBID,XLXSJGB_YXQS,XLXSJGB_YXQZ,XLXSJGB_JGBMC,XLXSJGB_JGBIDS from XLXSJGB where XLXSJGB_MXBH='JGC' ");
|
|
if (!GetOption("BJU016").Equals(""))
|
|
{
|
|
SQL.Add( " and (isnull(XLXSJGB_CPMLID,' ')=' ' or " + CMISproDataBase.GetWhereEqual("XLXSJGB_CPMLID", GetOption("BJU016")) + ") ");
|
|
}
|
|
SQL.Add("order by XLXSJGB_JGBID");
|
|
}
|
|
else
|
|
{
|
|
SQL.Add(string.Format("select XLXSJGB_JGBID,XLXSJGB_YXQS,XLXSJGB_YXQZ,XLXSJGB_JGBMC,XLXSJGB_JGBIDS from XLXSJGB where XLXSJGB_MXBH='JGB' " +
|
|
" and isnull(XLXSJGB_JGBIDS,' ') = ' ' and XLXSJGB_TJYS='1' and XLXSJGB_JGBID<>'{0}' ", PageParam.GetRTrimString("JGBID")));
|
|
|
|
if (!GetOption("BJU016").Equals(""))
|
|
{
|
|
SQL.Add(" and (isnull(XLXSJGB_CPMLID,' ')=' ' or " + CMISproDataBase.GetWhereEqual("XLXSJGB_CPMLID", GetOption("BJU016")) + ") ");
|
|
}
|
|
SQL.Add("order by XLXSJGB_YXQS desc,XLXSJGB_JGBID ");
|
|
|
|
}
|
|
DataSet ds = dberp.OpenDataSet(SQL);
|
|
cbxJJ.ClearItems();
|
|
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
|
{
|
|
string sJGBID = ds.Tables[0].Rows[i]["XLXSJGB_JGBID"].ToString().Trim();
|
|
string sYXQS = ds.Tables[0].Rows[i]["XLXSJGB_YXQS"].ToString().Trim();
|
|
string sYXQZ = ds.Tables[0].Rows[i]["XLXSJGB_YXQZ"].ToString().Trim();
|
|
string sJGBMC = ds.Tables[0].Rows[i]["XLXSJGB_JGBMC"].ToString().Trim();
|
|
if (sYXQS.Equals(""))
|
|
sYXQS = "--";
|
|
else
|
|
sYXQS = CMISproConvert.ConvertDate(sYXQS);
|
|
if (sYXQZ.Equals(""))
|
|
sYXQZ = "--";
|
|
else
|
|
sYXQZ = CMISproConvert.ConvertDate(sYXQZ);
|
|
if (sJGBMC.Equals(""))
|
|
cbxJJ.Items.Add(new ListItem(sJGBID + "|" + sYXQS + "至" + sYXQZ, sJGBID));
|
|
else
|
|
cbxJJ.Items.Add(new ListItem(sJGBID + "|" + sYXQS + "至" + sYXQZ + "|" + sJGBMC, sJGBID));
|
|
}
|
|
SQL.Clear();
|
|
ds.Clear();
|
|
if (PageParam.GetRTrimString("LX").Equals("JGCIDS"))
|
|
{
|
|
SQL.Add("select XLXSJGB_JGCIDS as IDS from XLXSJGB where XLXSJGB_JGBID= :pJGBID and XLXSJGB_MXBH= :pMXBH");
|
|
}
|
|
else
|
|
{
|
|
SQL.Add("select XLXSJGB_JGBIDS as IDS from XLXSJGB where XLXSJGB_JGBID= :pJGBID and XLXSJGB_MXBH= :pMXBH");
|
|
}
|
|
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
|
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
|
ds = dberp.OpenDataSet(SQL);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
cbxJJ.SelectedValue = ds.Tables[0].Rows[0]["IDS"].ToString().Trim(); ;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 按出厂价价格表行情更新现行价价格表行情
|
|
/// </summary>
|
|
/// <param name="sOLDJGBID">被单选的,因素为1的价格表ID</param>
|
|
private void UpdateXLXSCLHQ_Copy(string sOLDJGBID)
|
|
{
|
|
//因素为3的价格表ID
|
|
string sJGBID = PageParam.GetRTrimString("JGBID");
|
|
string sMXBH = PageParam.GetRTrimString("MXBH");
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL SQL = new TSQL(dberp);
|
|
SQL.Clear();
|
|
SQL.Add("delete from XLXSCLHQ where XLXSCLHQ_JGBID =:pNEWJGBID ");
|
|
SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
|
dberp.ExecSQL(SQL);
|
|
|
|
|
|
SQL.Clear();
|
|
SQL.Add(" insert into XLXSCLHQ( ");
|
|
SQL.Add(" XLXSCLHQ_JGBID,XLXSCLHQ_BJCLID,XLXSCLHQ_YXQS,XLXSCLHQ_YXQZ, ");
|
|
SQL.Add(" XLXSCLHQ_HSJG,XLXSCLHQ_HSJGF,XLXSCLHQ_HSCGJG, ");
|
|
SQL.Add(" XLXSCLHQ_WSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_WSCGJG, ");
|
|
SQL.Add(" XLXSCLHQ_JGYBJCLID1,XLXSCLHQ_HSJG1,XLXSCLHQ_WSJG1,XLXSCLHQ_JGBL1, ");
|
|
SQL.Add(" XLXSCLHQ_BZ,XLXSCLHQ_WHR,XLXSCLHQ_WHRID,XLXSCLHQ_WHSJ");
|
|
SQL.Add(" ) ");
|
|
SQL.Add(" select ");
|
|
SQL.Add(" :pNEWJGBID,XLXSCLHQ_BJCLID,XLXSCLHQ_YXQS,XLXSCLHQ_YXQZ, ");
|
|
SQL.Add(" XLXSCLHQ_HSJG,XLXSCLHQ_HSJGF,XLXSCLHQ_HSCGJG, ");
|
|
SQL.Add(" XLXSCLHQ_WSJG,XLXSCLHQ_WSJGF,XLXSCLHQ_WSCGJG, ");
|
|
SQL.Add(" XLXSCLHQ_JGYBJCLID1,XLXSCLHQ_HSJG1,XLXSCLHQ_WSJG1,XLXSCLHQ_JGBL1, ");
|
|
SQL.Add(" XLXSCLHQ_BZ,:pWHR,:pWHRID,:pWHSJ");
|
|
SQL.Add(" from XLXSCLHQ ");
|
|
SQL.Add(" where 1 = 1 and XLXSCLHQ_JGBID= :pOLDJGBID ");
|
|
SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
|
SQL.ParamByName("pOLDJGBID").Value = sOLDJGBID;
|
|
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
|
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
|
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
|
dberp.ExecSQL(SQL);
|
|
|
|
//因素为3的价格表无需记录物料行情,因为物料行情不支持修改,材料价价差只会体现在材料行情的价差上面
|
|
//if (XLJGB_CLJGTZList.NeedJGBJJFP())
|
|
//{
|
|
// SQL.Clear();
|
|
// SQL.Add("delete from XLXSWLHQ where XLXSWLHQ_JGBID =:pNEWJGBID ");
|
|
// SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
|
// dberp.ExecSQL(SQL);
|
|
|
|
// SQL.Clear();
|
|
// SQL.Add(" insert into XLXSWLHQ( ");
|
|
// SQL.Add(" XLXSWLHQ_JGBID,XLXSWLHQ_WLID,XLXSWLHQ_YXQS,XLXSWLHQ_YXQZ, ");
|
|
// SQL.Add(" XLXSWLHQ_HSJG,XLXSWLHQ_WSJG,XLXSWLHQ_HSJGF,XLXSWLHQ_WSJGF,XLXSWLHQ_HSCGJG,XLXSWLHQ_WSCGJG, ");
|
|
// SQL.Add(" XLXSWLHQ_BZ,XLXSWLHQ_WHR,XLXSWLHQ_WHRID,XLXSWLHQ_WHSJ");
|
|
// SQL.Add(" ) ");
|
|
// SQL.Add(" select ");
|
|
// SQL.Add(" :pNEWJGBID,XLXSWLHQ_WLID,XLXSWLHQ_YXQS,XLXSWLHQ_YXQZ, ");
|
|
// SQL.Add(" XLXSWLHQ_HSJG,XLXSWLHQ_WSJG,XLXSWLHQ_HSJGF,XLXSWLHQ_WSJGF,XLXSWLHQ_HSCGJG,XLXSWLHQ_WSCGJG, ");
|
|
// SQL.Add(" XLXSWLHQ_BZ,:pWHR,:pWHRID,:pWHSJ");
|
|
// SQL.Add(" from XLXSWLHQ ");
|
|
// SQL.Add(" where 1 = 1 and XLXSWLHQ_JGBID= :pOLDJGBID ");
|
|
// SQL.ParamByName("pNEWJGBID").Value = sJGBID;
|
|
// SQL.ParamByName("pOLDJGBID").Value = sOLDJGBID;
|
|
// SQL.ParamByName("pWHR").Value = tSession.UserName;
|
|
// SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
|
// SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
|
// dberp.ExecSQL(SQL);
|
|
//}
|
|
}
|
|
#endregion
|
|
|
|
#region 控件事件
|
|
protected void btnQR_Click(object sender, EventArgs e)
|
|
{
|
|
string sTJYS = PageParam.GetRTrimString("TJYS");
|
|
//加载XLXSJGB_MXBH='JGB'&XLXSJGB_TJYS='1'的XLXSJGB记录,多选记录后点确认,更新字段XLXSJGB_JGBIDS
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL SQL = new TSQL(dberp);
|
|
if (sTJYS.Equals("3"))
|
|
{
|
|
if (cbxJJ.SelectedValue.Trim().Equals(""))
|
|
{
|
|
ShowMessage("调价因素为3的记录必须选择一张价格表!");
|
|
return;
|
|
}
|
|
if (cbxJJ.SelectedValue.Trim().IndexOf(',') >= 0)
|
|
{
|
|
ShowMessage("调价因素为3的记录仅允许选择一张价格表!");
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
string sMsg = "";
|
|
sMsg = "主辅材是否按所依价格表行情更新?";
|
|
Confirm.Register("IsQD", sMsg);
|
|
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();
|
|
}
|
|
else if (Confirm.GetValue("IsQD").Trim().Equals("Y"))
|
|
{
|
|
//表示进行了提示并选择了确认
|
|
Confirm.Clear();
|
|
UpdateXLXSCLHQ_Copy(cbxJJ.SelectedValue.Trim());
|
|
}
|
|
try
|
|
{
|
|
dberp.BeginTrans();
|
|
SQL.Clear();
|
|
SQL.Add("update XLXSJGB set XLXSJGB_JGBIDS= :pJGBIDS ");
|
|
SQL.Add(" where XLXSJGB_JGBID= :pJGBID ");
|
|
SQL.Add(" and XLXSJGB_MXBH= :pMXBH ");
|
|
SQL.ParamByName("pJGBIDS").Value = cbxJJ.SelectedValue.Trim();
|
|
SQL.ParamByName("pJGBID").Value = PageParam.GetRTrimString("JGBID");
|
|
SQL.ParamByName("pMXBH").Value = PageParam.GetRTrimString("MXBH");
|
|
dberp.ExecSQL(SQL);
|
|
dberp.CommitTrans();
|
|
CacheNotify.TableIsUpdated("DBERP", "XLXSJGB");
|
|
ShowMessage("调整成功!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ShowMessage("调整基价出错,请联系系统管理员!错误原因:" + ex);
|
|
dberp.RollbackTrans();
|
|
}
|
|
}
|
|
}
|
|
else if (sTJYS.Equals("2"))
|
|
{
|
|
if (cbxJJ.SelectedValue.Trim().Equals(""))
|
|
{
|
|
ShowMessage("调价因素为2的记录必须选择一张价格表!");
|
|
return;
|
|
}
|
|
if (cbxJJ.SelectedValue.Trim().IndexOf(',') >= 0)
|
|
{
|
|
ShowMessage("调价因素为2的记录仅允许选择一张价格表!");
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
try
|
|
{
|
|
dberp.BeginTrans();
|
|
|
|
string sMXBH = PageParam.GetRTrimString("MXBH");
|
|
string sJGBID = PageParam.GetRTrimString("JGBID");
|
|
|
|
SQL.Clear();
|
|
SQL.Add("update XLXSJGB set XLXSJGB_JGBIDS= :pJGBIDS ");
|
|
SQL.Add(" where XLXSJGB_JGBID= :pJGBID ");
|
|
SQL.Add(" and XLXSJGB_MXBH= :pMXBH ");
|
|
SQL.ParamByName("pJGBIDS").Value = cbxJJ.SelectedValue.Trim();
|
|
SQL.ParamByName("pJGBID").Value = sJGBID;
|
|
SQL.ParamByName("pMXBH").Value = sMXBH;
|
|
dberp.ExecSQL(SQL);
|
|
|
|
|
|
bool bDR = false;
|
|
SQL.Clear();
|
|
SQL.Add("select 1 from XLXSJGBMX where XLXSJGBMX_JGBID=:pJGBID ");
|
|
SQL.ParamByName("pJGBID").Value = sJGBID;
|
|
DataSet ds = dberp.OpenDataSet(SQL);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
string sMsg = "已有数据将清空,按所依出厂价重新导入,是否继续?";
|
|
|
|
Confirm.Register("IsQD", sMsg);
|
|
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();
|
|
}
|
|
bDR = true;
|
|
string sBJU003 = GetOption(100860000, "BJU003");
|
|
int iXSWS = string.IsNullOrEmpty(GetOption(100860001, "BJU002")) ? 5 : CMISproConvert.StrToInt(GetOption(100860001, "BJU002"));
|
|
string sJSBLFS = "";
|
|
SQL.Clear();
|
|
ds.Clear();
|
|
SQL.Add("select XLXSJGB_TJYS,XLXSJGB_JGBIDS,XLXSJGB_JSBLFS as JSBLFS,XLXSJGB_JJLY from XLXSJGB where XLXSJGB_MXBH=:pMXBH and XLXSJGB_JGBID=:pJGBID ");
|
|
SQL.ParamByName("pMXBH").Value = sMXBH;
|
|
SQL.ParamByName("pJGBID").Value = sJGBID;
|
|
ds = dberp.OpenDataSet(SQL);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
sJSBLFS = ds.Tables[0].Rows[0]["JSBLFS"].ToString().Trim();
|
|
}
|
|
|
|
dberp.ExecSQL(string.Format("delete from XLXSJGBMX where XLXSJGBMX_JGBID='{0}'", PageParam.GetRTrimString("JGBID")));
|
|
|
|
dberp.ExecSQL(string.Format("delete from XLXSJGBYZZ0 where XLXSJGBYZZ0_JGBID='{0}'", PageParam.GetRTrimString("JGBID")));
|
|
|
|
XLJGB_JGBMXList.InsertCLCB_CCJasJJ(dberp, tSession, PageParam.GetRTrimString("JGBID"), cbxJJ.SelectedValue.Trim());
|
|
|
|
XLJGB_CLJGTZList.DoCPJJ(dberp, PageParam.GetRTrimString("MXBH"), PageParam.GetRTrimString("JGBID"), true, iXSWS, sJSBLFS, tSession.UserId, tSession.UserName,sBJU003);
|
|
}
|
|
dberp.CommitTrans();
|
|
CacheNotify.TableIsUpdated("DBERP", "XLXSJGB");
|
|
if (bDR)
|
|
ShowMessage("调整成功!并按所依出厂价重新导入价格表明细!");
|
|
else
|
|
ShowMessage("调整成功!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ShowMessage("调整基价出错,请联系系统管理员!错误原因:" + ex);
|
|
dberp.RollbackTrans();
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
ShowMessage(" 传入的调价因素有误,请关闭页面重试!");
|
|
}
|
|
//使用脚本给父页面的隐藏控件赋值,调用父页面的控件事件
|
|
DialogOperationScript dos = new DialogOperationScript(this);
|
|
//dos.ClickOwnerButton(PageParam.GetRTrimString("RefreshCtrlID"));
|
|
dos.CloseSelf();
|
|
dos.Execute();
|
|
}
|
|
|
|
protected void btnQX_Click(object sender, EventArgs e)
|
|
{
|
|
CloseWindow();
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|