328 lines
15 KiB
C#
328 lines
15 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;
|
||
|
||
namespace GThinking.N_XLXSBJ
|
||
{
|
||
public partial class XLBJD_WBBJDMX_HTBDInfo : SingleCardBase
|
||
{
|
||
XLBJD_WBBJDMX_HTBD entity = new XLBJD_WBBJDMX_HTBD();
|
||
|
||
string sWBBJDID = "";
|
||
string sXLBJDID = "";
|
||
#region Page_Load
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
this.UMID = 100860043;
|
||
this.UMName = "外部线缆产品导入";
|
||
base.CurMaster = Master;
|
||
base.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;
|
||
|
||
sWBBJDID = PageParam.GetRTrimString("WBBJDID");
|
||
sXLBJDID = PageParam.GetRTrimString("SELBJDID").Equals("") ? " " : PageParam.GetRTrimString("SELBJDID");
|
||
base.InitPage();
|
||
|
||
if (!IsPostBack)
|
||
{
|
||
InitControl();
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 自定义函数
|
||
|
||
private void InitControl()
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
DataSet ds = new DataSet();
|
||
SQL.Clear();
|
||
SQL.Add(" select case when isnull(HTGD_HTBH,' ')=' ' then HT_HTBH else HTGD_HTBH end as HTBH, case when isnull(HTGD_HTBH,' ')=' ' then HT_MC else HTGD_MC end as HTMC ");
|
||
SQL.Add(" from XLWBBJDML ");
|
||
SQL.Add(" left join HTGD on HTGD_HTBH=XLWBBJDML_HTBH ");
|
||
SQL.Add(" left join HT on HT_HTBH=XLWBBJDML_HTBH and isnull(HT_HTBG,'N')='N' ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" and XLWBBJDML_WBBJDID =:pWBBJDID ");
|
||
SQL.Add(" and XLWBBJDML_BJDID = ' ' ");
|
||
SQL.ParamByName("pWBBJDID").Value = sWBBJDID;
|
||
ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
txtHTBH.Text = ds.Tables[0].Rows[0]["HTBH"].ToString().Trim();
|
||
txtHTMC.Text = ds.Tables[0].Rows[0]["HTMC"].ToString().Trim();
|
||
}
|
||
|
||
if (txtHTBH.Text.Trim().Equals(""))
|
||
{
|
||
if (!string.IsNullOrEmpty(PageParam.GetRTrimString("HTBH")))
|
||
{
|
||
txtHTBH.Text = PageParam.GetRTrimString("HTBH");
|
||
txtHTBH_TextChanged(null, null);
|
||
}
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 自定义按钮
|
||
protected void btnOK_Click(object sender, EventArgs e)
|
||
{
|
||
string sHTBH = txtHTBH.Text.Trim();
|
||
if (txtHTMC.Text.Trim().Equals(""))
|
||
{
|
||
ShowMessage("合同信息不合法,不允许导入!");
|
||
return;
|
||
}
|
||
//合同相关校验
|
||
//string sWFID = "XSHT_HTZX";
|
||
//string sWPID = "";
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
DataSet ds = new DataSet();
|
||
|
||
//
|
||
SQL.Clear();
|
||
SQL.Add(" select 1 from HT ");
|
||
SQL.Add(" where HT_HTBH=:pHTBH ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count <= 0)
|
||
{
|
||
ShowMessage("合同信息不存在,不允许导入!");
|
||
return;
|
||
}
|
||
int iMaxXH = 0;
|
||
SQL.Clear();
|
||
SQL.Add(" select max(XSHTBDXL_XH) as MaxXH from XSHTBDXL where XSHTBDXL_HTBH=:pHTBH ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
if (!ds.Tables[0].Rows[0]["MaxXH"].ToString().Trim().Equals(""))
|
||
{
|
||
iMaxXH = CMISproConvert.StrToInt(ds.Tables[0].Rows[0]["MaxXH"].ToString().Trim());
|
||
}
|
||
}
|
||
|
||
try
|
||
{
|
||
dberp.BeginTrans();
|
||
//插入数据
|
||
SQL.Clear();
|
||
SQL.Add(" insert into XSHTBDXL( ");
|
||
SQL.Add(" XSHTBDXL_HTBH,XSHTBDXL_XH, ");
|
||
SQL.Add(" XSHTBDXL_LMNR01,XSHTBDXL_LMNR02,XSHTBDXL_LMNR03,XSHTBDXL_LMNR04, ");
|
||
SQL.Add(" XSHTBDXL_LMNR05, ");
|
||
SQL.Add(" XSHTBDXL_LMNR06,XSHTBDXL_LMNR07,XSHTBDXL_LMNR08, ");
|
||
SQL.Add(" XSHTBDXL_BZ,XSHTBDXL_WHR,XSHTBDXL_WHRID,XSHTBDXL_WHSJ ");
|
||
SQL.Add(" ) ");
|
||
SQL.Add(" select :pHTBH as HTBH,:maxXH+row_number() over(order by XLWBBJDMX_DRHH) as XH, ");
|
||
SQL.Add(" XLWBBJDMX_XLXHID,XLWBBJDMX_XLGGID,XLWBBJDMX_DYDJID,XLWBBJDMX_XLBZID, ");
|
||
SQL.Add(" XLWBBJDMX_XLYSID, ");
|
||
SQL.Add(" XLWBBJDMX_JLDW,ltrim(CONVERT(CHAR(60),STR(XLWBBJDMX_BJSL,20,6))) as BJSL,ltrim(CONVERT(CHAR(60),STR(XLWBBJDMX_CPBJ,20,6))) as CPBJ, ");
|
||
SQL.Add(" XLWBBJDMX_BZ,:pWHR,:pWHRID,:pWHSJ ");
|
||
SQL.Add(" from XLWBBJDMX ");
|
||
SQL.Add(" where XLWBBJDMX_WBBJDID=:pWBBJDID and XLWBBJDMX_BJDID=' ' ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
SQL.ParamByName("maxXH").Value = iMaxXH;
|
||
SQL.ParamByName("pWBBJDID").Value = sWBBJDID;
|
||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
//更新颜色
|
||
SQL.Clear();
|
||
SQL.Add("update XSHTBDXL set XSHTBDXL_LMNR05=");
|
||
SQL.Add(" isnull((select XLXSBJCPYS_XLYSID from XLXSBJCPYS");
|
||
SQL.Add(" where exists(select 1 from XLXHB where XLXHB_XLXHID=XSHTBDXL_LMNR01 and XLXHB_CPYT=XLXSBJCPYS_CPYT) ");
|
||
SQL.Add(" and XLXSBJCPYS_XLJBXHID=' ' and XLXSBJCPYS_XXJGID=' '");
|
||
SQL.Add(" ),XSHTBDXL_LMNR05) ");
|
||
SQL.Add(" where XSHTBDXL_HTBH=:pHTBH ");
|
||
SQL.Add(" and XSHTBDXL_XH>:maxXH and isnull(XSHTBDXL_LMNR05,' ')=' ' ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
SQL.ParamByName("maxXH").Value = iMaxXH;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add("update XSHTBDXL set XSHTBDXL_LMNR05=");
|
||
SQL.Add(" isnull((select XLXSBJCPYS_XLYSID from XLXSBJCPYS");
|
||
SQL.Add(" where exists(select 1 from XLXHB where XLXHB_XLXHID=XSHTBDXL_LMNR01 and XLXHB_CPYT=XLXSBJCPYS_CPYT) ");
|
||
SQL.Add(" and exists(select 1 from XLXHB where XLXHB_XLXHID=XSHTBDXL_LMNR01 and XLXHB_XLJBXHID=XLXSBJCPYS_XLJBXHID)");
|
||
SQL.Add(" and XLXSBJCPYS_XLJBXHID<>' ' and XLXSBJCPYS_XXJGID=' '");
|
||
SQL.Add(" ),XSHTBDXL_LMNR05) ");
|
||
SQL.Add(" where XSHTBDXL_HTBH=:pHTBH ");
|
||
SQL.Add(" and XSHTBDXL_XH>:maxXH and isnull(XSHTBDXL_LMNR05,' ')=' ' ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
SQL.ParamByName("maxXH").Value = iMaxXH;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add("update XSHTBDXL set XSHTBDXL_LMNR05=");
|
||
SQL.Add(" isnull((select XLXSBJCPYS_XLYSID from XLXSBJCPYS");
|
||
SQL.Add(" where exists(select 1 from XLXHB where XLXHB_XLXHID=XSHTBDXL_LMNR01 and XLXHB_CPYT=XLXSBJCPYS_CPYT) ");
|
||
SQL.Add(" and exists(select 1 from XLXHB where XLXHB_XLXHID=XSHTBDXL_LMNR01 and XLXHB_XLJBXHID=XLXSBJCPYS_XLJBXHID)");
|
||
SQL.Add(" and XLXSBJCPYS_XLJBXHID<>' ' and XLXSBJCPYS_XXJGID<>' '");
|
||
SQL.Add(" and exists(select 1 from XLGGB where XLGGB_XLGGID=replace(XSHTBDXL_LMNR02,'*','×') and XLGGB_XXJGID=XLXSBJCPYS_XXJGID)");
|
||
SQL.Add(" ),XSHTBDXL_LMNR05) ");
|
||
SQL.Add(" where XSHTBDXL_HTBH=:pHTBH ");
|
||
SQL.Add(" and XSHTBDXL_XH>:maxXH and isnull(XSHTBDXL_LMNR05,' ')=' ' ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
SQL.ParamByName("maxXH").Value = iMaxXH;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
//默认赋值黑色
|
||
SQL.Clear();
|
||
SQL.Add("update XSHTBDXL set XSHTBDXL_LMNR05='BK' ");
|
||
SQL.Add(" where XSHTBDXL_HTBH=:pHTBH ");
|
||
SQL.Add(" and XSHTBDXL_XH>:maxXH and isnull(XSHTBDXL_LMNR05,' ')=' ' ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
SQL.ParamByName("maxXH").Value = iMaxXH;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
//更新数据
|
||
SQL.Clear();
|
||
SQL.Add(" update XSHTBDXL set ");
|
||
SQL.Add(" XSHTBDXL_XLXHID=XSHTBDXL_LMNR01,XSHTBDXL_XLGGID=XSHTBDXL_LMNR02,");
|
||
SQL.Add(" XSHTBDXL_DYDJID=XSHTBDXL_LMNR03,XSHTBDXL_XLBZID=XSHTBDXL_LMNR04, ");
|
||
SQL.Add(" XSHTBDXL_XLYSID=XSHTBDXL_LMNR05, ");
|
||
//SQL.Add(" XSHTBDXL_LMNR10=(select XLXLB_WLID from XLXLB left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
|
||
//SQL.Add(" where case when isnull(XSBJXHTH_BJXLXHID,' ') = ' ' then XLXLB_XLXHID else XSBJXHTH_BJXLXHID end=XSHTBDXL_LMNR01 and XLXLB_XLGGID=replace(XSHTBDXL_LMNR02,'*','×') ");
|
||
//SQL.Add(" and XLXLB_DYDJID=XSHTBDXL_LMNR03 and isnull(XLXLB_XLBZID,' ')=XSHTBDXL_LMNR04 and isnull(XLXLB_XLYSID,' ')=XSHTBDXL_LMNR05), ");
|
||
SQL.Add(" XSHTBDXL_LMNR10 = ( ");
|
||
SQL.Add(" select minWLID from ");
|
||
SQL.Add(" (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID,XLXLB_XLYSID as XLYSID, minWLID ");
|
||
SQL.Add(" from ( ");
|
||
SQL.Add(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID,min(XLXLB_WLID)as minWLID ");
|
||
SQL.Add(" from XLXLB ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" and isnull(XLXLB_TYBZ,' ')<> 'Y' ");
|
||
SQL.Add(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y') ");
|
||
SQL.Add(" and exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID ) ");
|
||
SQL.Add(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID ");
|
||
SQL.Add(" ) tmpXL left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
|
||
SQL.Add(" union all ");
|
||
SQL.Add(" select XLXLB_XLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID,XLXLB_XLYSID as XLYSID,min(XLXLB_WLID)as minWLID ");
|
||
SQL.Add(" from XLXLB ");
|
||
SQL.Add(" where isnull(XLXLB_TYBZ,' ')<>'Y' ");
|
||
SQL.Add(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y') ");
|
||
SQL.Add(" and not exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID ) ");
|
||
SQL.Add(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID ");
|
||
SQL.Add(" ) ");
|
||
SQL.Add(" a where a.XLXHID= XSHTBDXL_LMNR01 and a.XLGGID=replace(XSHTBDXL_LMNR02,'*','×') ");
|
||
SQL.Add(" and a.DYDJID=XSHTBDXL_LMNR03 and isnull(a.XLBZID,' ')= XSHTBDXL_LMNR04 and isnull(a.XLYSID,' ') = XSHTBDXL_LMNR05 ");
|
||
SQL.Add(" ), ");
|
||
SQL.Add(" XSHTBDXL_WHR=:pWHR,XSHTBDXL_WHRID=:pWHRID, XSHTBDXL_WHSJ = :pWHSJ ");
|
||
SQL.Add(" where XSHTBDXL_HTBH=:pHTBH ");
|
||
SQL.Add(" and XSHTBDXL_XH>:maxXH ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
SQL.ParamByName("maxXH").Value = iMaxXH;
|
||
SQL.ParamByName("pWHR").Value = tSession.UserName;
|
||
SQL.ParamByName("pWHRID").Value = tSession.UserId;
|
||
SQL.ParamByName("pWHSJ").Value = DateTime.Now;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
|
||
SQL.Clear();
|
||
SQL.Add("update XLWBBJDML set");
|
||
SQL.Add(" XLWBBJDML_HTBH=:pHTBH");
|
||
SQL.Add(" where XLWBBJDML_WBBJDID=:pWBBJDID ");
|
||
SQL.Add(" and XLWBBJDML_BJDID=' ' ");
|
||
SQL.ParamByName("pHTBH").Value = sHTBH;
|
||
SQL.ParamByName("pWBBJDID").Value = sWBBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
dberp.CommitTrans();
|
||
|
||
ShowMessage("导入销售合同线缆标的成功!");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
dberp.RollbackTrans();
|
||
ShowMessage("导入销售合同线缆标的出现异常!错误信息:" + ex.ToString().Trim());
|
||
return;
|
||
}
|
||
DialogOperationScript dos = new DialogOperationScript(this);
|
||
//{
|
||
// dos.SetOwnerControlValue(PageParam.GetRTrimString("txtRetDYDJID"), cbxDefault.SelectedValue.Trim());
|
||
// dos.ClickOwnerButton(PageParam.GetRTrimString("btnRefreshDYDJID"));
|
||
//}
|
||
dos.CloseSelf();
|
||
dos.Execute();
|
||
}
|
||
|
||
protected void btnQX_Click(object sender, EventArgs e)
|
||
{
|
||
CloseWindow();
|
||
}
|
||
|
||
protected void txtHTBH_TextChanged(object sender, EventArgs e)
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL sSQL = new TSQL(dberp);
|
||
DataSet ds = new DataSet();
|
||
string sHTBH = txtHTBH.Text.Trim();
|
||
try
|
||
{
|
||
sSQL.Clear();
|
||
sSQL.Add("select HTGD_MC from HTGD where HTGD_HTBH = :pHTBH");
|
||
sSQL.ParamByName("pHTBH").Value = sHTBH;
|
||
ds = dberp.OpenDataSet(sSQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
txtHTMC.Text = ds.Tables[0].Rows[0][0].ToString().Trim();
|
||
}
|
||
else
|
||
{
|
||
sSQL.Clear();
|
||
sSQL.Add("select HT_MC from HT where HT_HTBH = :pHTBH");
|
||
sSQL.ParamByName("pHTBH").Value = sHTBH;
|
||
ds = dberp.OpenDataSet(sSQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
txtHTMC.Text = ds.Tables[0].Rows[0][0].ToString().Trim();
|
||
}
|
||
else
|
||
{
|
||
txtHTMC.Text = "";
|
||
}
|
||
|
||
}
|
||
}
|
||
catch
|
||
{
|
||
txtHTMC.Text = "";
|
||
ShowMessage("数据库连接失败,请联系系统管理员!"); ;
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
}
|
||
}
|