2579 lines
148 KiB
C#
2579 lines
148 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_MODEL.Page;
|
||
using GThinking.N_MISPRO.Data;
|
||
using GThinking.N_PUBLIC;
|
||
using System.Text;
|
||
using GThinking.N_MISPRO.Utility;
|
||
using GThinking.N_MISPRO.TableCache;
|
||
using GThinking.N_WORKFLOW;
|
||
using GThinking.N_CONTROL;
|
||
using GThinking.N_MISPRO.MISPROAS;
|
||
using System.Collections.Generic;
|
||
|
||
namespace GThinking.N_XLXSBJ
|
||
{
|
||
public partial class CXBJDList : SingleGridBase
|
||
{
|
||
CXBJD entity = new CXBJD();
|
||
CXBJD_M qryEntity = new CXBJD_M();
|
||
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
this.UMID = 100860046;
|
||
this.UMName = "线缆销售报价反馈";
|
||
this.CurMaster = Master;
|
||
this.ModuleGV = grdContentGrid;
|
||
this.CurEntity = entity;
|
||
this.CurQueryEntity = qryEntity;
|
||
this.sURLTarget = "XLBJDInfo.aspx";
|
||
this.sQueryURLTarget = "CXBJDQuery.aspx";
|
||
this.PageHeight = 600;
|
||
this.PageWidth = 750;
|
||
Master.EnableNewBtn = false;
|
||
Master.EnableEditBtn = false;
|
||
Master.EnableCopyBtn = false;
|
||
Master.EnableDeleteBtn = false;
|
||
Master.EnableViewBtn = false;
|
||
base.DataKeyNames = new string[] { "ColorXH", "XLXSBJDMX_BJDID", "XLXSBJDMX_XH", "ZBSL", "XLXSBJDMX_XLXHID", "XLXSBJDMX_XDXLXHID", "XLXSBJDMX_XDXLBZID", "XLXSBJDMX_XLGGID", "XLXSBJDMX_XLBZID", "XLXSBJDMX_DYDJID", "XLXSBJDMX_BJSL", "XLXSBJD_WFID", "XLXSBJD_WFINST", "XLXSBJD_WFAWAITER", "WLID", "XLXSBJFKCFMX_CFXH", "XLXSBJD_XSBMID", "XLXSBJD_XSQYID" };
|
||
|
||
if (!IsPostBack)
|
||
{
|
||
CurQueryEntity.FieldByName("BJRQFW").Value = "1";
|
||
CurQueryEntity.FieldByName("CXFW").Value = "WQR";
|
||
CurQueryEntity.FieldByName("PXFS").Value = "报价日期正序↑";
|
||
CurQueryEntity.FieldByName("XLXHIDJQPP").Value = "True";
|
||
CurQueryEntity.FieldByName("XLGGIDJQPP").Value = "True";
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用,屏蔽双击操作
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
CurQueryEntity.FieldByName("SFBDY").Value = "Y";
|
||
else
|
||
{
|
||
CurQueryEntity.FieldByName("SFBDY").Value = "N";
|
||
CurQueryEntity.FieldByName("CXZBDWPPWL").Value = "True";
|
||
CurQueryEntity.FieldByName("BXSTRFZCP").Value = "True";
|
||
}
|
||
|
||
//物料缺失
|
||
if (PageParam.GetRTrimString("WLQS") == "Y")
|
||
{
|
||
CurQueryEntity.FieldByName("CXZBDWPPWL").Value = "True";
|
||
CurQueryEntity.FieldByName("BXSTRFZCP").Value = "True";
|
||
|
||
}
|
||
if (!PageParam.GetRTrimString("BJBM").Equals(""))
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJDMX_CPBJ").HeaderText = PageParam.GetRTrimString("BJBM");
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJDMX_BJJE").HeaderText = PageParam.GetRTrimString("BJBM")+"金额";
|
||
}
|
||
|
||
}
|
||
|
||
string sBJU002 = GetOption(100860000, "BJU002");
|
||
int iXSWS = string.IsNullOrEmpty(sBJU002) ? 5 : CMISproConvert.StrToInt(sBJU002);
|
||
if (iXSWS < 0)
|
||
iXSWS = 0;
|
||
else if (iXSWS > 8)
|
||
iXSWS = 8;
|
||
grdContentGrid.FindColumnExByFieldName("XLXSBJDMX_CPBJ").NumberDecimalPlace = iXSWS;
|
||
|
||
if (DSActiveModule.IsActiveModule(100956005))
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XMD").Visible = true;
|
||
}
|
||
else
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XMD").Visible = false;
|
||
}
|
||
|
||
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860046);
|
||
|
||
|
||
if (pzxx.XLXSBJPZ_TBFKZ3BB == "Y")
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJDMX_BJWS").Visible = false;
|
||
}
|
||
else
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJDMX_BJWS").Visible = true;
|
||
|
||
}
|
||
|
||
lblXSBM.Visible = false;
|
||
txtXSBM.Visible = false;
|
||
lblXSQY.Visible = false;
|
||
txtXSQY.Visible = false;
|
||
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用,控制“查询”按钮不可见
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJDMX_BJDID").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_BJRQ").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_WPID").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_TXY").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_KH").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XMD").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_XMMC").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_XSBMID").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_XSQYID").Visible = false;
|
||
lblXSBM.Visible = true;
|
||
txtXSBM.Visible = true;
|
||
lblXSQY.Visible = true;
|
||
txtXSQY.Visible = true;
|
||
string sWfAwaiter = GetBJDDCLR(PageParam.GetRTrimString("BJDID"));
|
||
if (sWfAwaiter.Contains("," + tSession.UserId + ","))
|
||
{
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from BJD where BJD_BJDID='{0}'", PageParam.GetRTrimString("BJDID"))) || txtZJFK.Value=="Y")
|
||
{
|
||
grdContentGrid.CheckBox = true;
|
||
btnPLSZ.Visible = true;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
btnBJDQR.Enabled = false;
|
||
}
|
||
|
||
bool bCanFK = GetBJDFKZT(PageParam.GetRTrimString("BJDID"));
|
||
if (!bCanFK)
|
||
{
|
||
btnPLSZ.Enabled = false;
|
||
btnBJDQR.Enabled = false;
|
||
}
|
||
}
|
||
|
||
btnCF.Visible = false;
|
||
btnQXCF.Visible = false;
|
||
if (!PageParam.GetRTrimString("BJDID").Equals("")&&pzxx.XLXSBJPZ_ZCCF == "Y")
|
||
{
|
||
btnCF.Visible = true;
|
||
btnQXCF.Visible = true;
|
||
}
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from BJD where BJD_BJDID='{0}'", PageParam.GetRTrimString("BJDID"))) && txtZJFK.Value != "Y")
|
||
{
|
||
btnCF.Enabled = false;
|
||
btnQXCF.Enabled = false;
|
||
}
|
||
|
||
|
||
if (DSActiveModule.IsActiveModule(102577006))
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XDXLBZ").Visible = true;
|
||
}
|
||
else
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XDXLBZ").Visible = false;
|
||
}
|
||
|
||
base.InitPage();
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用,屏蔽双击操作
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
this.ModuleGV.OnClientDblClick = "return false;";
|
||
}
|
||
|
||
if (!IsPostBack)
|
||
{
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用,直接查询
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
Master_OnStandardQuery(null, null);
|
||
}
|
||
else
|
||
{
|
||
if (base.IsDefaultExecute)
|
||
{
|
||
Master_OnStandardQuery(null, null);
|
||
}
|
||
}
|
||
|
||
txtNeedQR.Value = "N";
|
||
}
|
||
|
||
TGtGridView.SetGrdColItems("DBERP", grdContentGrid.FindColumnExByFieldName("XLXSBJD_XSBMID"), "select BM_BMID,BM_MC as Name from BM ");
|
||
}
|
||
|
||
#region 模板事件继承
|
||
protected override void Master_OnStandardQuery(object sender, EventArgs e)
|
||
{
|
||
base.InitEntityByCondition();
|
||
entity.EntityTable.QuerySelSql = GetSQL();
|
||
base.Master_OnStandardQuery(sender, e);
|
||
entity.GridDataBind(grdContentGrid, tSession);
|
||
}
|
||
|
||
protected override void moduleGV_RowDataBound(object sender, GridViewRowEventArgs e)
|
||
{
|
||
if (e.Row.RowType == DataControlRowType.DataRow)
|
||
{
|
||
TWorkflow awf1 = new TWorkflow(tSession, null);
|
||
int indexWPID = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XLXSBJD_WPID"));
|
||
e.Row.Cells[indexWPID].Text = awf1.GetWPName(grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_WFID"].ToString().Trim(), e.Row.Cells[indexWPID].Text);
|
||
|
||
//偶数报价单增加颜色
|
||
if (CMISproConvert.StrToFloat(grdContentGrid.DataKeys[e.Row.RowIndex]["ColorXH"].ToString()) % 2 == 0)
|
||
{
|
||
e.Row.BackColor = System.Drawing.Color.LightBlue;
|
||
}
|
||
|
||
int indexXDXH = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XLXSBJDMX_XDXLXHID"));
|
||
int indexXDBZ = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XDXLBZ"));
|
||
int indexZB = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XLXSBJDMX_ZB"));
|
||
int indexZBSL = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("ZBSL"));
|
||
int indexZBJE = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("ZBJE"));
|
||
int indexYS = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("YS"));
|
||
int indexWLID = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("WLID"));
|
||
int indexDZSC = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XLXSBJDMX_DZSC"));
|
||
bool bIsAwatier = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_WFAWAITER"].ToString().Trim().Contains("," + tSession.UserId + ",");
|
||
bool bCanClick = false;
|
||
if (!PageParam.GetRTrimString("BJDID").Equals("") && (PageParam.GetRTrimString("WLQS") != "Y"))
|
||
bCanClick = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_WFAWAITER"].ToString().Trim().Contains("," + tSession.UserId + ",");
|
||
else
|
||
bCanClick = CanClcikLink(grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(), grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim());
|
||
|
||
if (bCanClick)
|
||
{
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
indexXDXH++;
|
||
indexXDBZ++;
|
||
indexZB++;
|
||
indexZBSL++;
|
||
indexZBJE++;
|
||
indexYS++;
|
||
indexWLID++;
|
||
indexDZSC++;
|
||
}
|
||
string sBJDID = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim();
|
||
string sCFXH = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJFKCFMX_CFXH"].ToString().Trim();
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from BJD where BJD_BJDID='{0}'", sBJDID)) || txtZJFK.Value == "Y")
|
||
{
|
||
string sXDXLXHID = e.Row.Cells[indexXDXH].Text.Trim();
|
||
if (sXDXLXHID.Equals(""))
|
||
{
|
||
sXDXLXHID = " ";
|
||
}
|
||
string sXDXLBZID = e.Row.Cells[indexXDBZ].Text.Trim();
|
||
if (sXDXLBZID.Equals(""))
|
||
{
|
||
sXDXLBZID = " ";
|
||
}
|
||
e.Row.Cells[indexXDXH].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"CellClick('XDXH','{0}','{1}') \"><U>" + sXDXLXHID + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim());
|
||
e.Row.Cells[indexXDBZ].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"CellClick('XDBZ','{0}','{1}') \"><U>" + sXDXLBZID + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim());
|
||
e.Row.Cells[indexDZSC].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"CellClick('DZSC','{0}','{1}') \"><U>" + e.Row.Cells[indexDZSC].Text.Trim() + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim());
|
||
e.Row.Cells[indexZB].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"CellClickZB('ZB','{0}','{1}','{2}') \"><U>" + e.Row.Cells[indexZB].Text.Trim() + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim(),
|
||
sCFXH);
|
||
e.Row.Cells[indexZBSL].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"CellClickZB('ZBSL','{0}','{1}','{2}') \"><U>" + XLBJDUtils.strPadRight(e.Row.Cells[indexZBSL].Text.Trim(), 3) + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim(),
|
||
sCFXH);
|
||
e.Row.Cells[indexZBJE].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"CellClickZB('ZBJE','{0}','{1}','{2}') \"><U>" + XLBJDUtils.strPadRight(e.Row.Cells[indexZBJE].Text.Trim(), 2) + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim(),
|
||
sCFXH);
|
||
if (sCFXH.Equals("") || sCFXH.Equals("0"))
|
||
{
|
||
e.Row.Cells[indexYS].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"CellClick('YS','{0}','{1}') \"><U>" + e.Row.Cells[indexYS].Text.Trim() + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim());
|
||
}
|
||
string sWLID = e.Row.Cells[indexWLID].Text.Trim();
|
||
if (sWLID.Equals(""))
|
||
{
|
||
sWLID = " ";
|
||
}
|
||
e.Row.Cells[indexWLID].Text = string.Format("<A href='#' style=\"color:blue;\" onclick=\"WLTZClick('WLID','{0}','{1}','{2}','{3}') \"><U>" + sWLID + "</U></A>",
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_XH"].ToString().Trim(),
|
||
grdContentGrid.DataKeys[e.Row.RowIndex]["WLID"].ToString().Trim(),
|
||
sCFXH);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
e.Row.Cells[indexZBSL].Text = XLBJDUtils.strPadRight(e.Row.Cells[indexZBSL].Text.Trim(), 3);
|
||
e.Row.Cells[indexZBJE].Text = XLBJDUtils.strPadRight(e.Row.Cells[indexZBJE].Text.Trim(), 2);
|
||
}
|
||
|
||
try
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
string sXSQYBMGZ = "";
|
||
string sXSQYMC = "";
|
||
int indexXSQY = grdContentGrid.Columns.IndexOf(grdContentGrid.FindColumnByFieldName("XLXSBJD_XSQYID"));
|
||
string sXSQYID = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_XSQYID"].ToString().Trim();
|
||
int iQYCJ = 0;
|
||
int len = sXSQYID.Length;
|
||
|
||
if (sXSQYID.Equals(""))
|
||
{
|
||
e.Row.Cells[indexXSQY].Text = "";
|
||
}
|
||
else
|
||
{
|
||
if (GetOption("XSKHS001").Equals(""))
|
||
sXSQYBMGZ = "2-2-2-2-2";
|
||
else
|
||
sXSQYBMGZ = GetOption("XSKHS001").Trim();
|
||
|
||
string[] array = sXSQYBMGZ.Split('-');
|
||
List<string> lstXSQYBMGZ = new List<string>(array);
|
||
|
||
for (int i = 0; i < lstXSQYBMGZ.Count; i++)
|
||
{
|
||
if (CMISproConvert.StrToInt(lstXSQYBMGZ[i]) == len)
|
||
{
|
||
iQYCJ = i + 1;
|
||
break;
|
||
}
|
||
else
|
||
{
|
||
len = len - CMISproConvert.StrToInt(lstXSQYBMGZ[i]);
|
||
}
|
||
}
|
||
|
||
if (iQYCJ == 0)
|
||
{
|
||
e.Row.Cells[indexXSQY].Text = "";
|
||
}
|
||
else
|
||
{
|
||
int lenJQ = sXSQYID.Length;
|
||
string sQYID = "";
|
||
for (int j = iQYCJ; j > 0; j--)
|
||
{
|
||
sQYID = sXSQYID.Substring(0, lenJQ);
|
||
SQL.Clear();
|
||
SQL.Add("select XSQY_XSQYMC from XSQY where XSQY_XSQYID =:pXSQYID ");
|
||
SQL.ParamByName("pXSQYID").Value = sQYID;
|
||
DataSet dsQY = dberp.OpenDataSet(SQL);
|
||
if (dsQY.Tables[0].Rows.Count > 0)
|
||
{
|
||
if (sXSQYMC == "")
|
||
{
|
||
sXSQYMC = dsQY.Tables[0].Rows[0]["XSQY_XSQYMC"].ToString().Trim();
|
||
}
|
||
else
|
||
{
|
||
sXSQYMC = dsQY.Tables[0].Rows[0]["XSQY_XSQYMC"].ToString().Trim() + "-" + sXSQYMC;
|
||
}
|
||
}
|
||
lenJQ = lenJQ - CMISproConvert.StrToInt(lstXSQYBMGZ[j - 1]);
|
||
}
|
||
e.Row.Cells[indexXSQY].Text = sXSQYMC;
|
||
}
|
||
}
|
||
}
|
||
catch { }
|
||
|
||
LinkPageParam.UMID = 100860000;
|
||
LinkPageParam.AddString("WFID", grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_WFID"].ToString().Trim());
|
||
LinkPageParam.AddString("WFINST", grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_WFINST"].ToString().Trim());
|
||
LinkPageParam.AddString("XLXSBJD_BJDID", grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJDMX_BJDID"].ToString().Trim());
|
||
}
|
||
|
||
base.moduleGV_RowDataBound(sender, e);
|
||
}
|
||
|
||
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
|
||
{
|
||
base.InitEntityByCondition();
|
||
entity.EntityTable.QuerySelSql = GetSQL();
|
||
grdContentGrid.SelectedIndex = -1;
|
||
|
||
base.moduleGV_PageIndexChanging(sender, e);
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 自定义函数
|
||
|
||
//判断模块是否存在并且是否有权限
|
||
private bool CheckModule(int iUMID)
|
||
{
|
||
UserRight UR = OpRightUtils.GetUserRight(tSession.UserId, iUMID);
|
||
return (DSActiveModule.IsActiveModule(iUMID) && UR.Open);
|
||
}
|
||
|
||
private string GetSQL()
|
||
{
|
||
string sYXQBJWL = XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_YXQCPWL.Trim();
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLXHID").Value.Trim())
|
||
|| !string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLGGID").Value.Trim())
|
||
|| !string.IsNullOrEmpty(CurQueryEntity.FieldByName("DYDJID").Value.Trim())
|
||
|| !string.IsNullOrEmpty(CurQueryEntity.FieldByName("ST").Value.Trim()))
|
||
{
|
||
btnBJDQR.Visible = false;
|
||
}
|
||
else
|
||
btnBJDQR.Visible = true;
|
||
|
||
bool ExistsBJCPYS = false;//是否设置了报价产品颜色
|
||
if (CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLXSBJCPYS_CPYT from XLXSBJCPYS where 1=1"))
|
||
{
|
||
ExistsBJCPYS = true;
|
||
}
|
||
|
||
StringBuilder sSQL = new StringBuilder();
|
||
sSQL.AppendLine("select ColorXH,XLXSBJDMX_BJDID,XLXSBJDMX_XH,XLXSBJDMX_XSSX,XLXSBJDMX_XLXHID,XLXSBJDMX_XLGGID,XLXSBJDMX_XLBZID,XLXSBJDMX_DYDJID,YS,");
|
||
sSQL.AppendLine(" XLXSBJDMX_BJCP,XLXSBJDMX_JLDW,XLXSBJDMX_BJSL,XLXSBJDMX_CPBJ,XLXSBJDMX_BJJE,XLJGCZBML_FZR,XLXSBJDMX_WLZDR,XLXSBJDMX_WLZDSJ,XLXSBJDMX_BZ,XLXSBJDMX_WHR,XLXSBJDMX_WHSJ,");
|
||
sSQL.AppendLine(" case when isnull(XLXSBJDMX_DZSC,'N') = 'Y' then '定制生产' else '非定制生产' end as XLXSBJDMX_DZSC,XLXSBJDMX_BJWS,XLXSBJDMX_ZB,ZBSL,ZBJE,");
|
||
sSQL.AppendLine(" XLXSBJD_BJRQ,XLXSBJD_TXY,XLXSBJD_KH,XLXSBJD_XMMC,XLXSBJD_WFID,XLXSBJD_WPID,XLXSBJD_WFINST,XLXSBJD_WFAWAITER,XMD,");
|
||
if (sYXQBJWL == "Y" || sYXQBJWL == "X")
|
||
{
|
||
sSQL.AppendLine(" case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(c.minWLID,' ') <> ' ' then c.minWLID else a.minWLID end as WLID,");
|
||
sSQL.AppendLine(" case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then ");
|
||
sSQL.AppendLine(" rtrim(rtrim(rtrim(rtrim(isnull(wlb.WL_MC,' '))||' '||rtrim(isnull(wlb.WL_GG,' ')))||' '||rtrim(isnull(wlb.WL_TZ,' ')))||' '||rtrim(isnull(wlb.WL_CL,' '))) ");
|
||
sSQL.AppendLine(" when isnull(c.minWLID,' ') <> ' ' then ");
|
||
sSQL.AppendLine(" rtrim(rtrim(rtrim(rtrim(isnull(wlc.WL_MC,' '))||' '||rtrim(isnull(wlc.WL_GG,' ')))||' '||rtrim(isnull(wlc.WL_TZ,' ')))||' '||rtrim(isnull(wlc.WL_CL,' '))) ");
|
||
sSQL.AppendLine(" else ");
|
||
sSQL.AppendLine(" rtrim(rtrim(rtrim(rtrim(isnull(wla.WL_MC,' '))||' '||rtrim(isnull(wla.WL_GG,' ')))||' '||rtrim(isnull(wla.WL_TZ,' ')))||' '||rtrim(isnull(wla.WL_CL,' '))) ");
|
||
sSQL.AppendLine(" end as WLXX, ");
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(a.minWLID,' ') <> ' ' then a.minWLID else c.minWLID end as WLID,");
|
||
sSQL.AppendLine(" case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then ");
|
||
sSQL.AppendLine(" rtrim(rtrim(rtrim(rtrim(isnull(wlb.WL_MC,' '))||' '||rtrim(isnull(wlb.WL_GG,' ')))||' '||rtrim(isnull(wlb.WL_TZ,' ')))||' '||rtrim(isnull(wlb.WL_CL,' '))) ");
|
||
sSQL.AppendLine(" when isnull(a.minWLID,' ') <> ' ' then ");
|
||
sSQL.AppendLine(" rtrim(rtrim(rtrim(rtrim(isnull(wla.WL_MC,' '))||' '||rtrim(isnull(wla.WL_GG,' ')))||' '||rtrim(isnull(wla.WL_TZ,' ')))||' '||rtrim(isnull(wla.WL_CL,' '))) ");
|
||
sSQL.AppendLine(" else ");
|
||
sSQL.AppendLine(" rtrim(rtrim(rtrim(rtrim(isnull(wlc.WL_MC,' '))||' '||rtrim(isnull(wlc.WL_GG,' ')))||' '||rtrim(isnull(wlc.WL_TZ,' ')))||' '||rtrim(isnull(wlc.WL_CL,' '))) ");
|
||
sSQL.AppendLine(" end as WLXX, ");
|
||
}
|
||
sSQL.AppendLine(" XLBZ,XLXSBJDMX_XDXLXHID,XLXSBJDMX_XDXLBZID,XDXLBZ, ");
|
||
sSQL.AppendLine(" case when isnull(HT_HTBH,' ') = ' ' or isnull(HT_WPID,' ') <> 'ZZZZ' then ' ' else HT_HTBH end as HT_HTBH, ");
|
||
sSQL.AppendLine(" case when isnull(SO_SOID,' ') = ' ' or isnull(SO_WPID,' ') <> 'ZZZZ' then ' ' else SO_SOID end as SO_SOID, ");
|
||
sSQL.AppendLine(" case when isnull(SOTH_THDID,' ') = ' ' or isnull(SOTH_WPID,' ') <> 'ZZZZ' then ' ' else SOTH_THDID end as SOTH_THDID, ");
|
||
sSQL.AppendLine(" XLXSBJD_XSBMID,XLXSBJD_XSQYID ");
|
||
|
||
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_ZCCF.Trim().Equals("Y"))
|
||
{
|
||
sSQL.AppendLine(" ,isnull(XLXSBJFKCFMX_CFXH,0) as XLXSBJFKCFMX_CFXH ");
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" ,0 as XLXSBJFKCFMX_CFXH ");
|
||
}
|
||
|
||
sSQL.AppendLine("from ");
|
||
sSQL.AppendLine("(");
|
||
sSQL.AppendLine(" select ");
|
||
if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价单号"))
|
||
{
|
||
sSQL.AppendLine(" row_number() over(order by XLXSBJD_BJDID) as ColorXH, ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价日期倒序↓"))
|
||
{
|
||
sSQL.AppendLine(" row_number() over(order by XLXSBJD_BJRQ DESC,XLXSBJD_BJDID) as ColorXH, ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价日期正序↑"))
|
||
{
|
||
sSQL.AppendLine(" row_number() over(order by XLXSBJD_BJRQ,XLXSBJD_BJDID) as ColorXH, ");
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" row_number() over(order by XLXSBJD_BJRQ,XLXSBJD_BJDID) as ColorXH, ");
|
||
}
|
||
sSQL.AppendLine(" XLXSBJD_BJDID,XLXSBJD_BJRQ,XLXSBJD_TXY,XLXSBJD_KH,XLXSBJD_XMMC,XLXSBJD_WFID,XLXSBJD_WPID,XLXSBJD_WFINST,XLXSBJD_WFAWAITER, ");
|
||
sSQL.AppendLine(" case when isnull(xmd1.XZQH_FID,' ')='86' then isnull(xmd1.XZQH_PROVINCE,' ') else rtrim(isnull(xmd2.XZQH_PROVINCE,' '))||rtrim(isnull(xmd1.XZQH_CITY,' ')) end as XMD,XLXSBJD_XSBMID,XLXSBJD_XSQYID ");
|
||
sSQL.AppendLine(" from XLXSBJD ");
|
||
sSQL.AppendLine(" left join XZQH xmd1 on xmd1.XZQH_XZQHID=XLXSBJD_XZQHID");
|
||
sSQL.AppendLine(" left join XZQH xmd2 on xmd2.XZQH_XZQHID=xmd1.XZQH_FID");
|
||
sSQL.AppendLine(" where 1=1 ");
|
||
sSQL.AppendLine(" and isnull(XLXSBJD_YWLX,' ') = ' ' ");
|
||
if (btnBJDQR.Visible && !PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
TWorkflow awf1 = new TWorkflow(tSession, null);
|
||
awf1.UMID = 100860000;
|
||
awf1.CurUserID = tSession.UserId;
|
||
string sWFID = awf1.GetWFID("XLXSBJ_BJD");
|
||
string sYWSW = TWorkflow.Utils.WFGetYHSWID(sWFID, "0030");//0030|反馈
|
||
|
||
sSQL.AppendLine(" and (isnull(XLXSBJD_WPID,' ')='ZZZZ' ");
|
||
sSQL.AppendLine(" or " + CMISproDataBase.GetWhereEqual("XLXSBJD_WPID", sYWSW));
|
||
sSQL.AppendLine(" ) ");
|
||
}
|
||
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用,各查询条件不生效
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_BJDID = :pBJDID ");
|
||
entity.Param.Add("pBJDID", PageParam.GetRTrimString("BJDID"));
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" and exists(select 1 from XLXSBJDMX where XLXSBJDMX_BJDID=XLXSBJD_BJDID)");//存在明细记录
|
||
#region 查询条件
|
||
if (CurQueryEntity.FieldByName("BJRQFW").Value.Trim().Equals("1"))//本周
|
||
{
|
||
DateTime dt = DateTime.Now; //当前时间
|
||
DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一
|
||
DateTime endWeek = startWeek.AddDays(6); //本周周日
|
||
|
||
sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("XLXSBJD_BJRQ",
|
||
startWeek.ToShortDateString(),
|
||
endWeek.ToShortDateString(),
|
||
DateTimeType.dtDate, DateTimeType.dtDate));
|
||
}
|
||
else if (CurQueryEntity.FieldByName("BJRQFW").Value.Trim().Equals("2"))//本月
|
||
{
|
||
DateTime dt = DateTime.Now; //当前时间
|
||
DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初
|
||
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1); //本月月末
|
||
|
||
sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("XLXSBJD_BJRQ",
|
||
startMonth.ToShortDateString(),
|
||
endMonth.ToShortDateString(),
|
||
DateTimeType.dtDate, DateTimeType.dtDate));
|
||
}
|
||
else if (CurQueryEntity.FieldByName("BJRQFW").Value.Trim().Equals("3"))//三个月内
|
||
{
|
||
DateTime dt = DateTime.Now; //当前时间
|
||
DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初
|
||
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1); //本月月末
|
||
|
||
sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("XLXSBJD_BJRQ",
|
||
startMonth.AddMonths(-2).ToShortDateString(),
|
||
endMonth.ToShortDateString(),
|
||
DateTimeType.dtDate, DateTimeType.dtDate));
|
||
}
|
||
else if (CurQueryEntity.FieldByName("BJRQFW").Value.Trim().Equals("4"))//六个月内
|
||
{
|
||
DateTime dt = DateTime.Now; //当前时间
|
||
DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初
|
||
DateTime endMonth = startMonth.AddMonths(1).AddDays(-1); //本月月末
|
||
|
||
sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("XLXSBJD_BJRQ",
|
||
startMonth.AddMonths(-5).ToShortDateString(),
|
||
endMonth.ToShortDateString(),
|
||
DateTimeType.dtDate, DateTimeType.dtDate));
|
||
}
|
||
else if (CurQueryEntity.FieldByName("BJRQFW").Value.Trim().Equals("ALL"))//全部
|
||
{
|
||
sSQL.AppendLine(" and 1=1");
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" and 1<>1");
|
||
}
|
||
|
||
if (CurQueryEntity.FieldByName("CXFW").Value.Trim().Equals("WQR"))//未反馈报价单
|
||
{
|
||
sSQL.AppendLine(" and not exists(select 1 from BJD where BJD_BJDID=XLXSBJD_BJDID) ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("CXFW").Value.Trim().Equals("YQR"))//已反馈报价单
|
||
{
|
||
sSQL.AppendLine(" and exists(select 1 from BJD where BJD_BJDID=XLXSBJD_BJDID) ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("CXFW").Value.Trim().Equals("ALL"))//全部
|
||
{
|
||
sSQL.AppendLine(" and 1=1 ");
|
||
}
|
||
|
||
if (!CurQueryEntity.FieldByName("BJDID").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_BJDID like :pBJDID ");
|
||
entity.Param.Add("pBJDID", "%" + CurQueryEntity.FieldByName("BJDID").Value.Trim() + "%");
|
||
}
|
||
sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("XLXSBJD_BJRQ",
|
||
CurQueryEntity.FieldByName("BJRQS").Value.ToString().Trim(),
|
||
CurQueryEntity.FieldByName("BJRQZ").Value.ToString().Trim(),
|
||
DateTimeType.dtDate, DateTimeType.dtDate));
|
||
if (!CurQueryEntity.FieldByName("TXY").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_TXY=:pTXY ");
|
||
entity.Param.Add("pTXY", CurQueryEntity.FieldByName("TXY").Value.Trim());
|
||
}
|
||
if (!CurQueryEntity.FieldByName("KH").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_KH like :pKH ");
|
||
entity.Param.Add("pKH", "%" + CurQueryEntity.FieldByName("KH").Value.Trim() + "%");
|
||
}
|
||
if (!CurQueryEntity.FieldByName("XM").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_XMMC like :pXM ");
|
||
entity.Param.Add("pXM", "%" + CurQueryEntity.FieldByName("XM").Value.Trim() + "%");
|
||
}
|
||
if (!CurQueryEntity.FieldByName("BMID").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_XSBMID", CurQueryEntity.FieldByName("BMID").Value.Trim()));
|
||
}
|
||
if (!CurQueryEntity.FieldByName("XSQY").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and " + CMISproDataBase.GetWhereLead("XLXSBJD_XSQYID", CurQueryEntity.FieldByName("XSQY").Value.Trim()));
|
||
}
|
||
#endregion
|
||
}
|
||
|
||
sSQL.AppendLine(") BJD,");
|
||
sSQL.AppendLine(" ( ");
|
||
sSQL.AppendLine("select XLXSBJDMX_BJDID,XLXSBJDMX_XH,XLXSBJDMX_XSSX,XLXSBJDMX_XLXHID,XLXSBJDMX_XLGGID,XLXSBJDMX_XLBZID,XLXSBJDMX_DYDJID,XLXSBJDMX_DZSC,");
|
||
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_ZCCF.Trim().Equals("Y"))
|
||
{
|
||
sSQL.AppendLine(" XLXSBJFKCFMX_CFXH,CASE WHEN ISNULL(XLXSBJFKCFMX_XLYSID,' ')=' ' THEN XLXSBJDMX_XLYSID ELSE XLXSBJFKCFMX_XLYSID END AS XLXSBJDMX_XLYSID, ");
|
||
sSQL.AppendLine(" CASE WHEN ISNULL(XLXSBJFKCFMX_WLID,' ')=' ' THEN XLXSBJDMX_WLID ELSE XLXSBJFKCFMX_WLID END AS XLXSBJDMX_WLID, ");
|
||
sSQL.AppendLine(" case when isnull(CASE WHEN ISNULL(XLXSBJFKCFMX_XLYSID,' ')=' ' THEN XLXSBJDMX_XLYSID ELSE XLXSBJFKCFMX_XLYSID END,' ') = ' ' then ' ' else XLYSB_XLYSMC end as YS, ");
|
||
sSQL.AppendLine(" CASE WHEN ISNULL(XLXSBJFKCFMX_ZBSL,-1)=-1 THEN XLXSBJDMX_ZBSL ELSE XLXSBJFKCFMX_ZBSL END as ZBSL,");
|
||
sSQL.AppendLine(" CASE WHEN ISNULL(XLXSBJFKCFMX_ZBJE,-1)=-1 THEN XLXSBJDMX_ZBJE ELSE XLXSBJFKCFMX_ZBJE END as ZBJE, ");
|
||
sSQL.AppendLine(" CASE WHEN ISNULL(XLXSBJFKCFMX_CFSL,-1)=-1 THEN XLXSBJDMX_BJSL ELSE XLXSBJFKCFMX_CFSL END AS XLXSBJDMX_BJSL,");
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" XLXSBJDMX_XLYSID,XLXSBJDMX_WLID,case when isnull(XLXSBJDMX_XLYSID,' ') = ' ' then ' ' else XLYSB_XLYSMC end as YS,XLXSBJDMX_ZBSL as ZBSL,XLXSBJDMX_ZBJE as ZBJE,XLXSBJDMX_BJSL,");
|
||
}
|
||
sSQL.AppendLine(" XLXSBJDMX_BJCP,XLXSBJDMX_JLDW,XLXSBJDMX_CPBJ,XLXSBJDMX_BJJE,isnull(XLJGCZBML_FZR,' ') as XLJGCZBML_FZR,XLXSBJDMX_WLZDR,XLXSBJDMX_WLZDSJ,XLXSBJDMX_BZ,XLXSBJDMX_WHR,XLXSBJDMX_WHSJ,");
|
||
sSQL.AppendLine(" XLXSBJDMX_BJWS,case isnull(XLXSBJDMX_ZB,' ') when 'Y' then '全部中标' when 'P' then '部分中标' when 'N' then '未中标' when 'F' then '废标' when 'Q' then '弃标' else ' ' end as XLXSBJDMX_ZB,");
|
||
sSQL.AppendLine(" case isnull(XLXSBJDMX_XLBZID,' ') when ' ' then ' ' else rtrim(XLXSBJDMX_XLBZID)||'|'||A.XLBZ_XLBZLXMC end as XLBZ, ");
|
||
sSQL.AppendLine(" XLXSBJDMX_XDXLXHID,XLXSBJDMX_XDXLBZID,case isnull(XLXSBJDMX_XDXLBZID,' ') when ' ' then ' ' else rtrim(XLXSBJDMX_XDXLBZID)||'|'||B.XLBZ_XLBZLXMC end as XDXLBZ ");
|
||
sSQL.AppendLine(" from XLXSBJDMX ");
|
||
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_ZCCF.Trim().Equals("Y"))
|
||
{
|
||
sSQL.AppendLine("left join XLXSBJFKCFMX on XLXSBJFKCFMX_BJDID= XLXSBJDMX_BJDID AND XLXSBJFKCFMX_BJDXH= XLXSBJDMX_XH ");
|
||
}
|
||
sSQL.AppendLine("left join XLBZ A on A.XLBZ_XLBZID= XLXSBJDMX_XLBZID ");
|
||
sSQL.AppendLine("left join XLBZ B on B.XLBZ_XLBZID= XLXSBJDMX_XDXLBZID ");
|
||
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_ZCCF.Trim().Equals("Y"))
|
||
sSQL.AppendLine("left join XLYSB on XLYSB_XLYSID=CASE WHEN ISNULL(XLXSBJFKCFMX_XLYSID,' ')=' ' THEN XLXSBJDMX_XLYSID ELSE XLXSBJFKCFMX_XLYSID END ");
|
||
else
|
||
sSQL.AppendLine("left join XLYSB on XLYSB_XLYSID=XLXSBJDMX_XLYSID ");
|
||
sSQL.AppendLine("left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSBJDMX_XLXHID and XLXSCLQD_XLGGID=XLXSBJDMX_XLGGID and XLXSCLQD_XLBZID=XLXSBJDMX_XLBZID and XLXSCLQD_DYDJID=XLXSBJDMX_DYDJID and XLXSCLQD_WPID='ZZZZ' ");
|
||
sSQL.AppendLine("left join XLJGCZBML on XLJGCZBML_JGCZBID=XLXSCLQD_JGCZBID ");
|
||
sSQL.AppendLine(" ) tmpMX");
|
||
sSQL.AppendLine("left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSBJDMX_XLGGID ");
|
||
if (sYXQBJWL == "Z" || sYXQBJWL == "X")
|
||
{
|
||
sSQL.AppendLine("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_DYDJID as DYDJID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
sSQL.AppendLine(" from XLXSBJXDWL");
|
||
sSQL.AppendLine(" where 1=1");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sSQL.AppendLine(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_DYDJID");
|
||
sSQL.AppendLine(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.DYDJID=XLXSBJDMX_DYDJID ");
|
||
|
||
sSQL.AppendLine("left join (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_DYDJID as DYDJID, minWLID ");
|
||
sSQL.AppendLine(" from ( ");
|
||
sSQL.AppendLine(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_DYDJID,min(XLXLB_WLID)as minWLID ");
|
||
sSQL.AppendLine(" from XLXLB ");
|
||
sSQL.AppendLine(" where 1=1 ");
|
||
sSQL.AppendLine(" and isnull(XLXLB_TYBZ,' ')<> 'Y' ");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sSQL.AppendLine(" and exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID )");
|
||
sSQL.AppendLine(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_DYDJID ");
|
||
sSQL.AppendLine(" ) tmpXL left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
|
||
sSQL.AppendLine(" union all ");
|
||
sSQL.AppendLine(" select XLXLB_XLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_DYDJID as DYDJID,min(XLXLB_WLID)as minWLID ");
|
||
sSQL.AppendLine(" from XLXLB ");
|
||
sSQL.AppendLine(" where isnull(XLXLB_TYBZ,' ')<>'Y' ");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y') ");
|
||
sSQL.AppendLine(" and not exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID ) ");
|
||
sSQL.AppendLine(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_DYDJID ");
|
||
sSQL.AppendLine(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.DYDJID=XLXSBJDMX_DYDJID ");
|
||
}
|
||
else
|
||
{
|
||
if (ExistsBJCPYS)
|
||
{
|
||
sSQL.AppendLine("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_XLBZID as XLBZID,XLXSBJXDWL_DYDJID as DYDJID,XLXSBJXDWL_XLYSID as XLYSID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
sSQL.AppendLine(" from XLXSBJXDWL");
|
||
sSQL.AppendLine(" where 1=1");
|
||
//sSQL.AppendLine(" and isnull(XLXSBJXDWL_TYBZ,' ')<> 'Y' ");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sSQL.AppendLine(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID,XLXSBJXDWL_XLYSID");
|
||
sSQL.AppendLine(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.XLBZID=XLXSBJDMX_XDXLBZID and c.DYDJID=XLXSBJDMX_DYDJID and c.XLYSID=XLXSBJDMX_XLYSID ");
|
||
|
||
sSQL.AppendLine("left join (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID,XLXLB_XLYSID as XLYSID,minWLID ");
|
||
sSQL.AppendLine(" from ( ");
|
||
sSQL.AppendLine(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID,min(XLXLB_WLID)as minWLID ");
|
||
sSQL.AppendLine(" from XLXLB ");
|
||
sSQL.AppendLine(" where 1=1 ");
|
||
sSQL.AppendLine(" and isnull(XLXLB_TYBZ,' ')<> 'Y' ");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sSQL.AppendLine(" and exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID)");
|
||
sSQL.AppendLine(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID");
|
||
sSQL.AppendLine(" ) tmpXL left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
|
||
sSQL.AppendLine(" union all");
|
||
sSQL.AppendLine(" 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 ");
|
||
sSQL.AppendLine(" from XLXLB ");
|
||
sSQL.AppendLine(" where isnull(XLXLB_TYBZ,' ')<>'Y' ");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y') ");
|
||
sSQL.AppendLine(" and not exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID ) ");
|
||
sSQL.AppendLine(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID ");
|
||
sSQL.AppendLine(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.XLBZID=XLXSBJDMX_XDXLBZID and a.DYDJID=XLXSBJDMX_DYDJID and a.XLYSID=XLXSBJDMX_XLYSID ");
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_XLBZID as XLBZID,XLXSBJXDWL_DYDJID as DYDJID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
sSQL.AppendLine(" from XLXSBJXDWL");
|
||
sSQL.AppendLine(" where 1=1");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sSQL.AppendLine(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID");
|
||
sSQL.AppendLine(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.XLBZID=XLXSBJDMX_XDXLBZID and c.DYDJID=XLXSBJDMX_DYDJID ");
|
||
|
||
sSQL.AppendLine("left join (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID, minWLID ");
|
||
sSQL.AppendLine(" from ( ");
|
||
sSQL.AppendLine(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,min(XLXLB_WLID)as minWLID ");
|
||
sSQL.AppendLine(" from XLXLB ");
|
||
sSQL.AppendLine(" where 1=1 ");
|
||
sSQL.AppendLine(" and isnull(XLXLB_TYBZ,' ')<> 'Y' ");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sSQL.AppendLine(" and exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID )");
|
||
sSQL.AppendLine(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID ");
|
||
sSQL.AppendLine(" ) tmpXL left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID ");
|
||
sSQL.AppendLine(" union all ");
|
||
sSQL.AppendLine(" select XLXLB_XLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID,min(XLXLB_WLID)as minWLID ");
|
||
sSQL.AppendLine(" from XLXLB ");
|
||
sSQL.AppendLine(" where isnull(XLXLB_TYBZ,' ')<>'Y' ");
|
||
sSQL.AppendLine(" and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y') ");
|
||
sSQL.AppendLine(" and not exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID ) ");
|
||
sSQL.AppendLine(" group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID ");
|
||
sSQL.AppendLine(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.XLBZID=XLXSBJDMX_XDXLBZID and a.DYDJID=XLXSBJDMX_DYDJID ");
|
||
}
|
||
}
|
||
|
||
sSQL.AppendLine("left join WL wla on wla.WL_WLID=a.minWLID ");
|
||
sSQL.AppendLine("left join WL wlb on wlb.WL_WLID=XLXSBJDMX_WLID ");
|
||
sSQL.AppendLine("left join WL wlc on wlc.WL_WLID=c.minWLID ");
|
||
|
||
sSQL.AppendLine("left join HT on HT_BJDID = XLXSBJDMX_BJDID ");
|
||
sSQL.AppendLine("left join SO on SO_HTBH = HT_HTBH ");
|
||
sSQL.AppendLine("left join SOTH on SOTH_HTBH = HT_HTBH ");
|
||
sSQL.AppendLine("where XLXSBJD_BJDID=XLXSBJDMX_BJDID ");
|
||
if (txtZJFK.Value == "Y")
|
||
{
|
||
sSQL.AppendLine(" and not exists(select 1 from BJDMX where BJDMX_BJDID=XLXSBJDMX_BJDID and BJDMX_BJDXH=XLXSBJDMX_XH and BJDMX_ZBSL<>0 ) ");
|
||
}
|
||
//型号模糊
|
||
if (!CurQueryEntity.FieldByName("XLXHIDJQPP").Value.ToString().Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLXHID").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine(" \r\n and XLXSBJDMX_XLXHID like :pXLXHID ");
|
||
entity.Param.Add("pXLXHID", "%" + CurQueryEntity.FieldByName("XLXHID").Value.Trim() + "%");
|
||
}
|
||
}
|
||
else
|
||
{
|
||
string sXLXHID = CurQueryEntity.FieldByName("XLXHID").Value.Trim();
|
||
if (!string.IsNullOrEmpty(sXLXHID))
|
||
{
|
||
string[] sTemp = sXLXHID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
|
||
if (sTemp.Length >= 2)
|
||
{
|
||
sSQL.AppendLine(" \r\n and " + CMISproDataBase.GetWhereEqual("XLXSBJDMX_XLXHID", sXLXHID));
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" \r\n and XLXSBJDMX_XLXHID = :pXLXHID ");
|
||
entity.Param.Add("pXLXHID", sXLXHID);
|
||
}
|
||
}
|
||
}
|
||
//规格模糊
|
||
if (!CurQueryEntity.FieldByName("XLGGIDJQPP").Value.ToString().Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLGGID").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJXLGGTHB_XLGGIDCH like :pXLGGID ");
|
||
entity.Param.Add("pXLGGID", "%" + CurQueryEntity.FieldByName("XLGGID").Value.Trim().Replace("*", "×") + "%");
|
||
}
|
||
}
|
||
else
|
||
{
|
||
string sXLGGID = CurQueryEntity.FieldByName("XLGGID").Value.Trim();
|
||
if (!string.IsNullOrEmpty(sXLGGID))
|
||
{
|
||
string[] sTemp = sXLGGID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
|
||
if (sTemp.Length >= 2)
|
||
{
|
||
sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual(" XLXSBJXLGGTHB_XLGGIDCH", sXLGGID.Replace('*', '×')));
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID ");
|
||
entity.Param.Add("pXLGGID", CurQueryEntity.FieldByName("XLGGID").Value.Trim().Replace("*", "×"));
|
||
}
|
||
}
|
||
}
|
||
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("ST").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine("\r\n and XLXSBJDMX_XLBZID = :pST ");
|
||
entity.Param.Add("pST", CurQueryEntity.FieldByName("ST").Value.Trim());
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("DYDJID").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJDMX_DYDJID", CurQueryEntity.FieldByName("DYDJID").Value.Trim()));
|
||
}
|
||
if (CurQueryEntity.FieldByName("CXXHYBJCPBYZ").Value.Trim().Equals("True"))
|
||
{
|
||
sSQL.AppendLine(" AND XLXSBJDMX_BJCP not like '%'||ltrim(rtrim(tmpMX.XLXSBJDMX_XDXLXHID))||'%' ");
|
||
}
|
||
if (CurQueryEntity.FieldByName("BXSTRFZCP").Value.Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
sSQL.AppendLine(" AND (isnull(XLJGCZBML_FZR,' ')=' ' or XLJGCZBML_FZR=:pFZR ) ");
|
||
entity.Param.Add("pFZR", tSession.UserName);
|
||
}
|
||
|
||
if (CurQueryEntity.FieldByName("CXZBDWPPWL").Value.Trim().Equals("True"))
|
||
{
|
||
if (sYXQBJWL == "Y" || sYXQBJWL == "X")
|
||
sSQL.AppendLine(" AND (case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(c.minWLID,' ') <> ' ' then c.minWLID else isnull(a.minWLID,' ') end )= ' ' AND XLXSBJDMX_ZB in ('全部中标','部分中标') ");
|
||
else
|
||
sSQL.AppendLine(" AND (case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(a.minWLID,' ') <> ' ' then a.minWLID else isnull(c.minWLID,' ') end )= ' ' AND XLXSBJDMX_ZB in ('全部中标','部分中标') ");
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("BJCP").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine(" AND XLXSBJDMX_BJCP like :pBJCP ");
|
||
entity.Param.Add("pBJCP", "%" + CurQueryEntity.FieldByName("BJCP").Value.Trim() + "%");
|
||
}
|
||
if (CurQueryEntity.FieldByName("SFZB").Value.Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
sSQL.AppendLine(" AND XLXSBJDMX_ZB in ('全部中标','部分中标') ");
|
||
}
|
||
if (CurQueryEntity.FieldByName("SFQDHT").Value.Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
sSQL.AppendLine(" AND isnull(HT_HTBH,' ') <> ' ' and isnull(HT_WPID,' ') = 'ZZZZ' and isnull(HT_GD,' ') = 'Y' ");
|
||
}
|
||
if (CurQueryEntity.FieldByName("SFXDD").Value.Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
sSQL.AppendLine(" AND isnull(SO_SOID,' ') <> ' ' and isnull(SO_WPID,' ') = 'ZZZZ' ");
|
||
}
|
||
if (CurQueryEntity.FieldByName("SFFH").Value.Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
sSQL.AppendLine(" AND isnull(SOTH_THDID,' ') <> ' ' and isnull(SOTH_WPID,' ') = 'ZZZZ' ");
|
||
}
|
||
|
||
if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价单号"))
|
||
{
|
||
sSQL.AppendLine(" order by XLXSBJDMX_BJDID,XLXSBJDMX_XSSX ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价日期倒序↓"))
|
||
{
|
||
sSQL.AppendLine(" order by XLXSBJD_BJRQ DESC, XLXSBJDMX_BJDID,XLXSBJDMX_XSSX ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("报价日期正序↑"))
|
||
{
|
||
sSQL.AppendLine(" order by XLXSBJD_BJRQ, XLXSBJDMX_BJDID,XLXSBJDMX_XSSX ");
|
||
}
|
||
else
|
||
{
|
||
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_ZCCF.Trim().Equals("Y"))
|
||
{
|
||
sSQL.AppendLine(" order by XLXSBJD_BJRQ, XLXSBJDMX_BJDID,XLXSBJDMX_XSSX,XLXSBJFKCFMX_CFXH ");
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" order by XLXSBJD_BJRQ, XLXSBJDMX_BJDID,XLXSBJDMX_XSSX ");
|
||
}
|
||
}
|
||
|
||
txtXSBM.Text = "";
|
||
txtXSQY.Text = "";
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" select ");
|
||
SQL.Add(" case when isnull(XLXSBJD_XSBMID,' ') = ' ' then ' ' else rtrim(isnull(XLXSBJD_XSBMID,' ')) || '|' || rtrim(isnull(BM_MC,' ')) end as XSBM, ");
|
||
SQL.Add(" case when isnull(XLXSBJD_XSQYID,' ') = ' ' then ' ' else rtrim(isnull(XLXSBJD_XSQYID,' ')) || '|' || rtrim(isnull(XSQY_XSQYMC,' ')) end as XSQY ");
|
||
SQL.Add(" from XLXSBJD ");
|
||
SQL.Add(" left join BM on BM_BMID = XLXSBJD_XSBMID ");
|
||
SQL.Add(" left join XSQY on XSQY_XSQYID = XLXSBJD_XSQYID ");
|
||
SQL.Add(" where XLXSBJD_BJDID =:XLXSBJD_BJDID ");
|
||
SQL.ParamByName("XLXSBJD_BJDID").Value = PageParam.GetRTrimString("BJDID").Trim();
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
txtXSBM.Text = ds.Tables[0].Rows[0]["XSBM"].ToString().Trim();
|
||
txtXSQY.Text = ds.Tables[0].Rows[0]["XSQY"].ToString().Trim();
|
||
}
|
||
}
|
||
|
||
return sSQL.ToString();
|
||
}
|
||
|
||
private string GetBJDDCLR(string sBJDID)
|
||
{
|
||
if (sBJDID.Equals(""))
|
||
return "";
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL sql = new TSQL(dberp);
|
||
sql.Add(" select XLXSBJD_WFAWAITER from XLXSBJD where XLXSBJD_BJDID = :pBJDID ");
|
||
sql.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet ds = dberp.OpenDataSet(sql);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
return ds.Tables[0].Rows[0]["XLXSBJD_WFAWAITER"].ToString().Trim();
|
||
}
|
||
return "";
|
||
}
|
||
|
||
public static DataSet GetBJCP_XLWL(string sBJDID)
|
||
{
|
||
return GetBJCP_XLWL(sBJDID,"N");
|
||
}
|
||
|
||
public static DataSet GetBJCP_XLWL(string sBJDID,string sZJFK)
|
||
{
|
||
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 sql = new TSQL(dberp);
|
||
//校验同一份报价单上的报价单明细的WLID匹配是否齐全
|
||
string sYXQBJWL = XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_YXQCPWL.Trim();
|
||
|
||
sql.Clear();
|
||
if (sYXQBJWL == "Y" || sYXQBJWL == "X")
|
||
sql.Add("select XLXSBJDMX_XH,XLXSBJDMX_XSSX,ISNULL(XLXSBJDMX_ZB,' ') as ZBZT,case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(c.minWLID,' ') <> ' ' then c.minWLID else a.minWLID end as WLID,isnull(XLJGCZBML_FZR,' ') as XLJGCZBML_FZR ");
|
||
else
|
||
sql.Add("select XLXSBJDMX_XH,XLXSBJDMX_XSSX,ISNULL(XLXSBJDMX_ZB,' ') as ZBZT,case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(a.minWLID,' ') <> ' ' then a.minWLID else c.minWLID end as WLID,isnull(XLJGCZBML_FZR,' ') as XLJGCZBML_FZR ");
|
||
sql.Add(" from XLXSBJDMX");
|
||
sql.Add(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSBJDMX_XLXHID and XLXSCLQD_XLGGID=XLXSBJDMX_XLGGID and XLXSCLQD_XLBZID=XLXSBJDMX_XLBZID and XLXSCLQD_DYDJID=XLXSBJDMX_DYDJID and XLXSCLQD_WPID='ZZZZ' ");
|
||
sql.Add(" left join XLJGCZBML on XLJGCZBML_JGCZBID = XLXSCLQD_JGCZBID ");
|
||
sql.Add(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSBJDMX_XLGGID ");
|
||
if (sYXQBJWL == "Z" || sYXQBJWL == "X")
|
||
{
|
||
sql.Add("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_DYDJID as DYDJID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
sql.Add(" from XLXSBJXDWL");
|
||
sql.Add(" where 1=1");
|
||
//sql.Add(" and isnull(XLXSBJXDWL_TYBZ,' ')<> 'Y' ");
|
||
sql.Add(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sql.Add(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_DYDJID");
|
||
sql.Add(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.DYDJID=XLXSBJDMX_DYDJID ");
|
||
|
||
sql.Add(" left join (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_DYDJID as DYDJID, minWLID ");
|
||
sql.Add(" from ( ");
|
||
sql.Add(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_DYDJID,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_DYDJID");
|
||
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_DYDJID as DYDJID,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_DYDJID ");
|
||
sql.Add(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.DYDJID=XLXSBJDMX_DYDJID ");
|
||
}
|
||
else
|
||
{
|
||
if (ExistsBJCPYS)
|
||
{
|
||
sql.Add("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_XLBZID as XLBZID,XLXSBJXDWL_DYDJID as DYDJID,XLXSBJXDWL_XLYSID as XLYSID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
sql.Add(" from XLXSBJXDWL");
|
||
sql.Add(" where 1=1");
|
||
//sql.Add(" and isnull(XLXSBJXDWL_TYBZ,' ')<> 'Y' ");
|
||
sql.Add(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sql.Add(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID,XLXSBJXDWL_XLYSID");
|
||
sql.Add(" ) c on c.XLXHID= XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.XLBZID=XLXSBJDMX_XDXLBZID and c.DYDJID=XLXSBJDMX_DYDJID and c.XLYSID=XLXSBJDMX_XLYSID ");
|
||
|
||
sql.Add(" left join (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(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.XLBZID=XLXSBJDMX_XDXLBZID and a.DYDJID=XLXSBJDMX_DYDJID and a.XLYSID=XLXSBJDMX_XLYSID ");
|
||
}
|
||
else
|
||
{
|
||
sql.Add("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_XLBZID as XLBZID,XLXSBJXDWL_DYDJID as DYDJID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
sql.Add(" from XLXSBJXDWL");
|
||
sql.Add(" where 1=1");
|
||
//sql.Add(" and isnull(XLXSBJXDWL_TYBZ,' ')<> 'Y' ");
|
||
sql.Add(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
sql.Add(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID");
|
||
sql.Add(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.XLBZID=XLXSBJDMX_XDXLBZID and c.DYDJID=XLXSBJDMX_DYDJID ");
|
||
|
||
sql.Add(" left join (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID, minWLID ");
|
||
sql.Add(" from ( ");
|
||
sql.Add(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,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");
|
||
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,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 ");
|
||
sql.Add(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.XLBZID= XLXSBJDMX_XDXLBZID and a.DYDJID=XLXSBJDMX_DYDJID ");
|
||
}
|
||
}
|
||
|
||
sql.Add(" where XLXSBJDMX_BJDID=:pBJDID");
|
||
if (sZJFK == "Y")
|
||
{
|
||
sql.Add(" and not exists(select 1 from BJDMX where BJDMX_BJDID=XLXSBJDMX_BJDID and BJDMX_BJDXH=XLXSBJDMX_XH and BJDMX_ZBSL<>0 ) ");
|
||
}
|
||
sql.Add(" order by XLXSBJDMX_XSSX,XLXSBJDMX_XH");
|
||
sql.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet ds = dberp.OpenDataSet(sql);
|
||
return ds;
|
||
}
|
||
|
||
private bool GetBJDFKZT(string sBJDID)
|
||
{
|
||
if (sBJDID.Equals(""))
|
||
return false;
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL sql = new TSQL(dberp);
|
||
sql.Add(" select XLXSBJD_WFID,XLXSBJD_WPID from XLXSBJD where XLXSBJD_BJDID = :pBJDID ");
|
||
sql.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet ds = dberp.OpenDataSet(sql);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
string sWFID = ds.Tables[0].Rows[0]["XLXSBJD_WFID"].ToString().Trim();
|
||
string sWPID = ds.Tables[0].Rows[0]["XLXSBJD_WPID"].ToString().Trim();
|
||
TWorkflow awf = new TWorkflow(tSession, null);
|
||
awf.UMID = 100860000;
|
||
awf.CurUserID = tSession.UserId;
|
||
string sBZWPID = TWorkflow.Utils.WFGetBZSWID(sWFID, sWPID);
|
||
if (sBZWPID.Equals("0030"))
|
||
return true;
|
||
return false;
|
||
}
|
||
return false;
|
||
}
|
||
|
||
private double GetBJD_DOCGRPID(string sBJDID)
|
||
{
|
||
double dDOCRPID = 0;
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL sql = new TSQL(dberp);
|
||
sql.Add(" select BJD_DOCGRPID from BJD where BJD_BJDID = :pBJDID ");
|
||
sql.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet ds = dberp.OpenDataSet(sql);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
dDOCRPID = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["BJD_DOCGRPID"].ToString().Trim());
|
||
}
|
||
return dDOCRPID;
|
||
}
|
||
|
||
private bool CanClcikLink(string sBJDID, string sBJDXH)
|
||
{
|
||
if (!GetBJDFKZT(sBJDID))
|
||
return false;
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL sql = new TSQL(dberp);
|
||
sql.Clear();
|
||
sql.Add(@"select XLJGCZBML_FZR from XLXSBJDMX
|
||
left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSBJDMX_XLXHID and XLXSCLQD_XLGGID=XLXSBJDMX_XLGGID
|
||
and XLXSCLQD_XLBZID=XLXSBJDMX_XLBZID and XLXSCLQD_DYDJID=XLXSBJDMX_DYDJID and XLXSCLQD_WPID='ZZZZ'
|
||
left join XLJGCZBML on XLJGCZBML_JGCZBID = XLXSCLQD_JGCZBID
|
||
where XLXSBJDMX_BJDID=:pBJDID and XLXSBJDMX_XH=:pXH ");
|
||
sql.ParamByName("pBJDID").Value = sBJDID;
|
||
sql.ParamByName("pXH").Value = CMISproConvert.StrToInt(sBJDXH);
|
||
DataSet ds = dberp.OpenDataSet(sql);
|
||
if (ds.Tables[0].Rows.Count <= 0)
|
||
return true;
|
||
string sFZR = ds.Tables[0].Rows[0][0].ToString().Trim();
|
||
if (string.IsNullOrEmpty(sFZR))
|
||
return true;
|
||
if (sFZR.Equals(tSession.UserName))
|
||
return true;
|
||
return false;
|
||
}
|
||
|
||
private void ZJFK(string sBJDID)
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860046);
|
||
|
||
|
||
string sHBID = "";
|
||
double fHL = 0;
|
||
SQL.Clear();
|
||
SQL.Add("select HB_HBID,HB_HL from HB where HB_BWB='Y'");//获取本位币
|
||
DataSet dsHB = dberp.OpenDataSet(SQL);
|
||
if (dsHB.Tables[0].Rows.Count > 0)
|
||
{
|
||
sHBID = dsHB.Tables[0].Rows[0]["HB_HBID"].ToString().Trim();
|
||
fHL = CMISproConvert.StrToFloat(dsHB.Tables[0].Rows[0]["HB_HL"].ToString());
|
||
}
|
||
else
|
||
{
|
||
ShowMessage("未设置本位币,请至【100734003|货币维护】功能维护!");
|
||
return;
|
||
}
|
||
|
||
bool ExistsBJCPYS = false;//是否设置了报价产品颜色
|
||
if (CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLXSBJCPYS_CPYT from XLXSBJCPYS where 1=1"))
|
||
{
|
||
ExistsBJCPYS = true;
|
||
}
|
||
string sYXQBJWL = XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_YXQCPWL.Trim();
|
||
|
||
SQL.Clear();
|
||
SQL.Add("select XLXSBJDMX_XH,XLXSBJDMX_XSSX,XLXSBJDMX_BJCP,XLXSBJDMX_JLDW,XLXSBJDMX_BJSL,XLXSBJDMX_BJDHQCLCB,XLXSBJDMX_CPBJ,XLXSBJDMX_BJJE,XLXSBJDMX_BZ,XLXSBJDMX_ZDXJ, ");
|
||
SQL.Add(" XLXSBJDMX_XLXHID,XLXSBJDMX_XLGGID,XLXSBJDMX_DYDJID,case isnull(XLXSBJDMX_XLBZID,' ') when ' ' then ' ' else rtrim(XLXSBJDMX_XLBZID)||'|'||XLBZ_XLBZLXMC end as XLBZ,XLXSBJDMX_DZSC,XLXSBJDMX_BJWS,XLXSBJDMX_ZB,XLXSBJDMX_ZBSL,XLXSBJDMX_ZBJE,");
|
||
if (sYXQBJWL == "Y" || sYXQBJWL == "X")
|
||
SQL.Add(" case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(c.minWLID,' ') <> ' ' then c.minWLID else a.minWLID end as WLID,WL_MC,WL_GG,WL_JLDW ");
|
||
else
|
||
SQL.Add(" case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(a.minWLID,' ') <> ' ' then a.minWLID else c.minWLID end as WLID,WL_MC,WL_GG,WL_JLDW ");
|
||
SQL.Add(" from XLXSBJDMX ");
|
||
SQL.Add(" left join XLBZ on XLBZ_XLBZID = XLXSBJDMX_XLBZID ");
|
||
SQL.Add(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSBJDMX_XLGGID ");
|
||
if (sYXQBJWL == "Z" || sYXQBJWL == "X")
|
||
{
|
||
SQL.Add("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_DYDJID as DYDJID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
SQL.Add(" from XLXSBJXDWL");
|
||
SQL.Add(" where 1=1");
|
||
SQL.Add(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
SQL.Add(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_DYDJID");
|
||
SQL.Add(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.DYDJID=XLXSBJDMX_DYDJID ");
|
||
|
||
SQL.Add(" left join (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_DYDJID as DYDJID, minWLID ");
|
||
SQL.Add(" from ( ");
|
||
SQL.Add(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_DYDJID,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_DYDJID");
|
||
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_DYDJID as DYDJID,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_DYDJID ");
|
||
SQL.Add(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.DYDJID=XLXSBJDMX_DYDJID ");
|
||
}
|
||
else
|
||
{
|
||
if (ExistsBJCPYS)
|
||
{
|
||
SQL.Add("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_XLBZID as XLBZID,XLXSBJXDWL_DYDJID as DYDJID,XLXSBJXDWL_XLYSID as XLYSID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
SQL.Add(" from XLXSBJXDWL");
|
||
SQL.Add(" where 1=1");
|
||
SQL.Add(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
SQL.Add(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID,XLXSBJXDWL_XLYSID");
|
||
SQL.Add(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.XLBZID=XLXSBJDMX_XDXLBZID and c.DYDJID=XLXSBJDMX_DYDJID and c.XLYSID=XLXSBJDMX_XLYSID ");
|
||
|
||
SQL.Add(" left join (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(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.XLBZID=XLXSBJDMX_XDXLBZID and a.DYDJID=XLXSBJDMX_DYDJID and a.XLYSID=XLXSBJDMX_XLYSID ");
|
||
}
|
||
else
|
||
{
|
||
SQL.Add("left join (select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_XLBZID as XLBZID,XLXSBJXDWL_DYDJID as DYDJID,min(XLXSBJXDWL_WLID) as minWLID ");
|
||
SQL.Add(" from XLXSBJXDWL");
|
||
SQL.Add(" where 1=1");
|
||
SQL.Add(" and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')");
|
||
SQL.Add(" group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID");
|
||
SQL.Add(" ) c on c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and c.XLBZID=XLXSBJDMX_XDXLBZID and c.DYDJID=XLXSBJDMX_DYDJID ");
|
||
|
||
SQL.Add(" left join (select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID, minWLID ");
|
||
SQL.Add(" from ( ");
|
||
SQL.Add(" select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,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");
|
||
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,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 ");
|
||
SQL.Add(" ) a on a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=XLXSBJXLGGTHB_XLGGIDCH and a.XLBZID=XLXSBJDMX_XDXLBZID and a.DYDJID=XLXSBJDMX_DYDJID ");
|
||
}
|
||
}
|
||
|
||
if (sYXQBJWL == "Y" || sYXQBJWL == "X")
|
||
SQL.Add(" left join WL on WL_WLID=(case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(c.minWLID,' ') <> ' ' then c.minWLID else a.minWLID end)");
|
||
else
|
||
SQL.Add(" left join WL on WL_WLID=(case when isnull(XLXSBJDMX_WLID,' ') <> ' ' then XLXSBJDMX_WLID when isnull(a.minWLID,' ') <> ' ' then a.minWLID else c.minWLID end)");
|
||
|
||
//SQL.Add(" left join JLDWTD b on upper(b.JLDWTD_JLDW)=:pJLDW and upper(b.JLDWTD_TDJLDW)=:pTDJLDW and isnull(b.JLDWTD_WLID,' ')=' ' ");
|
||
//SQL.Add(" left join JLDWTD c on upper(c.JLDWTD_JLDW)=:pTDJLDW and upper(c.JLDWTD_TDJLDW)=:pJLDW and isnull(c.JLDWTD_WLID,' ')=' ' ");
|
||
SQL.Add(" where XLXSBJDMX_BJDID=:pBJDID");
|
||
SQL.Add(" and not exists(select 1 from BJDMX where BJDMX_BJDID=XLXSBJDMX_BJDID and BJDMX_BJDXH=XLXSBJDMX_XH and BJDMX_ZBSL<>0 ) ");
|
||
|
||
//仅下达能关联到物料编码的记录
|
||
//SQL.Add(" and isnull(a.minWLID,' ')<>' '");
|
||
SQL.Add(" order by XLXSBJDMX_XSSX");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet dsMX = dberp.OpenDataSet(SQL);
|
||
//记录报价产品计量单位与对应线缆物料计量单位的换算系数
|
||
Dictionary<string, double> dicHSXS = new Dictionary<string, double>();
|
||
Dictionary<string, string> dicDRXH = new Dictionary<string, string>();
|
||
for (int i = 0; i < dsMX.Tables[0].Rows.Count; i++)
|
||
{
|
||
string sXH = dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim();
|
||
if (!dicDRXH.ContainsKey(sXH))
|
||
dicDRXH.Add(sXH, "1");
|
||
else
|
||
{
|
||
string sSYS = dsMX.Tables[0].Rows[i]["XLXSBJDMX_XLXHID"].ToString().Trim() + " " + dsMX.Tables[0].Rows[i]["XLXSBJDMX_XLGGID"].ToString().Trim() + " " + dsMX.Tables[0].Rows[i]["XLXSBJDMX_DYDJID"].ToString().Trim() + " " + dsMX.Tables[0].Rows[i]["XLBZ"].ToString().Trim();
|
||
ShowMessage(string.Format("将导入重复明细【{0}】【{1}】,请检查是否存在相同产品对应多个物料!", sXH, sSYS));
|
||
return;
|
||
}
|
||
string sWLID = dsMX.Tables[0].Rows[i]["WLID"].ToString().Trim();
|
||
if (sWLID.Equals(""))
|
||
continue;
|
||
string sBJCPJLDW = dsMX.Tables[0].Rows[i]["XLXSBJDMX_JLDW"].ToString().Trim();
|
||
string sWLJLDW = dsMX.Tables[0].Rows[i]["WL_JLDW"].ToString().Trim();
|
||
|
||
if (sWLJLDW.Equals("") || sBJCPJLDW.ToUpper().Equals(sWLJLDW.ToUpper()))
|
||
{
|
||
dicHSXS.Add(dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim(), 1);
|
||
}
|
||
else
|
||
{
|
||
Dictionary<string, double> dicJLWD = new Dictionary<string, double>();
|
||
CXBJD_QRInfo.GetJLDWList(dicJLWD, sWLID, sWLJLDW);
|
||
if (!dicJLWD.ContainsKey(sBJCPJLDW))
|
||
{
|
||
ShowMessage(string.Format("报价计量单位【{0}】与物料计量单位【{1}】未维护替代关系,请至【100812012|替代计量单位维护】模块维护!", sBJCPJLDW, sWLJLDW));
|
||
return;
|
||
}
|
||
else
|
||
{
|
||
dicHSXS.Add(dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim(), dicJLWD[sBJCPJLDW]);
|
||
}
|
||
}
|
||
}
|
||
|
||
try
|
||
{
|
||
dberp.BeginTrans();
|
||
#region 插入明细
|
||
|
||
for (int i = 0; i < dsMX.Tables[0].Rows.Count; i++)
|
||
{
|
||
if (dsMX.Tables[0].Rows[i]["WLID"].ToString().Trim().Equals(""))
|
||
continue;
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select top 1 BJDMX_BJDID from BJDMX where BJDMX_BJDID='{0}' and BJDMX_BJDXH={1} ", sBJDID, dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim())))
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add("update BJDMX set BJDMX_WLID=:WLID, ");
|
||
SQL.Add(" BJDMX_JG=:XLXSBJDMX_CPBJ, ");
|
||
SQL.Add(" BJDMX_CB=:XLXSBJDMX_BJDHQCLCB, ");
|
||
SQL.Add(" BJDMX_JLDW=:XLXSBJDMX_JLDW, ");
|
||
SQL.Add(" BJDMX_HSXS=:HSXS, ");
|
||
SQL.Add(" BJDMX_BJSL=:XLXSBJDMX_BJSL, ");
|
||
SQL.Add(" BJDMX_ZBJSL=:ZBJSL, ");
|
||
SQL.Add(" BJDMX_BZ=:XLXSBJDMX_BZ, ");
|
||
SQL.Add(" BJDMX_JE=:XLXSBJDMX_BJJE, ");
|
||
SQL.Add(" BJDMX_KHWLMC=:XLXSBJDMX_BJCP, ");
|
||
SQL.Add(" BJDMX_WLMCGG=:WLMCGG, ");
|
||
SQL.Add(" BJDMX_KHJG=:KHJG, ");
|
||
SQL.Add(" BJDMX_KHJE=:KHJE, ");
|
||
SQL.Add(" BJDMX_DZSC=:DZSC, ");
|
||
SQL.Add(" BJDMX_BJWS=:BJWS ");
|
||
SQL.Add(" where BJDMX_BJDID=:XLXSBJDMX_BJDID and BJDMX_BJDXH=:XLXSBJDMX_XH and BJDMX_XLXSBJXSSX=:XLXSBJDMX_XSSX ");
|
||
}
|
||
else
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add("insert into BJDMX(BJDMX_BJDID,BJDMX_BJDXH,BJDMX_XLXSBJXSSX,BJDMX_WLID,BJDMX_JG,BJDMX_CB,BJDMX_JLDW,BJDMX_HSXS,");
|
||
SQL.Add(" BJDMX_BJSL,BJDMX_ZBJSL,BJDMX_PZ,BJDMX_BZ,BJDMX_CBCG,BJDMX_JE,BJDMX_KHWLMC,BJDMX_WLMCGG, ");
|
||
SQL.Add(" BJDMX_KHJG,BJDMX_KHJE,BJDMX_DZSC,BJDMX_BJWS) ");
|
||
SQL.Add(" values(:XLXSBJDMX_BJDID,:XLXSBJDMX_XH,:XLXSBJDMX_XSSX,:WLID,:XLXSBJDMX_CPBJ,:XLXSBJDMX_BJDHQCLCB,:XLXSBJDMX_JLDW,:HSXS,");
|
||
SQL.Add(" :XLXSBJDMX_BJSL,:ZBJSL,'N',:XLXSBJDMX_BZ,'N',:XLXSBJDMX_BJJE,:XLXSBJDMX_BJCP,:WLMCGG, ");
|
||
SQL.Add(" :KHJG,:KHJE,:DZSC,:BJWS) ");
|
||
}
|
||
|
||
SQL.ParamByName("XLXSBJDMX_BJDID").Value = sBJDID;
|
||
SQL.ParamByName("XLXSBJDMX_XH").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_XSSX").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_XSSX"].ToString().Trim();
|
||
SQL.ParamByName("WLID").Value = dsMX.Tables[0].Rows[i]["WLID"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_CPBJ").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_CPBJ"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_BJDHQCLCB").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJDHQCLCB"].ToString().Trim();
|
||
|
||
if (dsMX.Tables[0].Rows[i]["XLXSBJDMX_JLDW"].ToString().Trim().ToUpper() == dsMX.Tables[0].Rows[i]["WL_JLDW"].ToString().Trim().ToUpper())
|
||
SQL.ParamByName("XLXSBJDMX_JLDW").Value = dsMX.Tables[0].Rows[i]["WL_JLDW"].ToString().Trim();
|
||
else
|
||
SQL.ParamByName("XLXSBJDMX_JLDW").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_JLDW"].ToString().Trim();
|
||
|
||
SQL.ParamByName("HSXS").Value = dicHSXS[dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim()];
|
||
SQL.ParamByName("XLXSBJDMX_BJSL").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJSL"].ToString().Trim();
|
||
SQL.ParamByName("ZBJSL").Value = CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJSL"].ToString().Trim()) * dicHSXS[dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim()];
|
||
SQL.ParamByName("XLXSBJDMX_BZ").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BZ"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_BJJE").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJJE"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_BJCP").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJCP"].ToString().Trim();
|
||
|
||
if (dsMX.Tables[0].Rows[i]["WL_GG"].ToString().Trim().Equals(""))
|
||
SQL.ParamByName("WLMCGG").Value = dsMX.Tables[0].Rows[i]["WL_MC"].ToString().Trim();
|
||
else
|
||
SQL.ParamByName("WLMCGG").Value = dsMX.Tables[0].Rows[i]["WL_MC"].ToString().Trim() + " " + dsMX.Tables[0].Rows[i]["WL_GG"].ToString().Trim();
|
||
SQL.ParamByName("KHJG").Value = NumberUtils.RoundX(CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_ZDXJ"].ToString().Trim()), 4);
|
||
SQL.ParamByName("KHJE").Value = NumberUtils.RoundX(NumberUtils.RoundX(CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_ZDXJ"].ToString().Trim()), 4) * CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJSL"].ToString().Trim()), 2);
|
||
SQL.ParamByName("DZSC").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_DZSC"].ToString().Trim();
|
||
SQL.ParamByName("BJWS").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJWS"].ToString().Trim();
|
||
dberp.ExecSQL(SQL);
|
||
}
|
||
|
||
#endregion
|
||
|
||
|
||
#region 回填XLXSBJDMX_WLID
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" merge into XLXSBJDMX tar ");
|
||
SQL.Add(" using ( ");
|
||
SQL.Add(" select BJDMX_BJDID,BJDMX_BJDXH,BJDMX_WLID from BJDMX ");
|
||
SQL.Add(" where BJDMX_BJDID = :pBJDID ");
|
||
SQL.Add(" ) sor ");
|
||
SQL.Add(" on ( ");
|
||
SQL.Add(" sor.BJDMX_BJDID = XLXSBJDMX_BJDID ");
|
||
SQL.Add(" and sor.BJDMX_BJDXH = XLXSBJDMX_XH ");
|
||
SQL.Add(" and XLXSBJDMX_BJDID = :pBJDID ");
|
||
SQL.Add(" ) ");
|
||
SQL.Add(" when matched then update set ");
|
||
SQL.Add(" XLXSBJDMX_WLID = sor.BJDMX_WLID ");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
#endregion
|
||
|
||
#region 发送消息提醒
|
||
if (!string.IsNullOrEmpty(XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_JGPSTZRGHS))
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(@"select XLXHJGCZBML_XLXHID,XLXHJGCZBML_DYDJID,XLXHJGCZBML_XLBZID,isnull(XLJGCZBML_FZR,' ') as XLJGCZBML_FZR,
|
||
XLXSCLQD_JGCZBID,XLXSCLQD_JGCZBBBID,XLXSCLQD_JGCZBXH,XLXSCLQD_DRHH,XLXSBJDMX_BJDID,max(XLXSBJDMX_XH) as XLXSBJDMX_XH
|
||
from XLXSBJDMX
|
||
left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSBJDMX_XLXHID and XLXSCLQD_XLGGID=XLXSBJDMX_XLGGID and XLXSCLQD_XLBZID=XLXSBJDMX_XLBZID and XLXSCLQD_DYDJID=XLXSBJDMX_DYDJID
|
||
left join XLXHJGCZBML on XLXHJGCZBML_JGCZBID = XLXSCLQD_JGCZBID and XLXHJGCZBML_JGCZBXH = XLXSCLQD_JGCZBXH
|
||
left join XLJGCZBML on XLJGCZBML_JGCZBID = XLXSCLQD_JGCZBID
|
||
left join
|
||
(select min(XLGYBOM_PSSJ) as PSSJ,XLGYBOM_WLID,XLGYBOM_GYFLBM from XLGYBOM
|
||
where exists(select 1 from XLXSBJDMX where XLXSBJDMX_BJDID = :pBJDID and XLXSBJDMX_WLID = XLGYBOM_WLID)
|
||
group by XLGYBOM_WLID,XLGYBOM_GYFLBM) GYBOM
|
||
on GYBOM.XLGYBOM_WLID = XLXSBJDMX_WLID and GYBOM.XLGYBOM_GYFLBM = XLJGCZBML_GYFLBM
|
||
where XLXSBJDMX_BJDID = :pBJDID and XLXSBJDMX_ZB in('P','Y') and (XLJGCZBML_CZBLX = 'C' or XLJGCZBML_CZBLX = 'G')
|
||
and (isnull(PSSJ,' ') = ' ' or XLXSCLQD_WHSJ > PSSJ)
|
||
and not exists(select 1 from BJDMX where BJDMX_BJDID=XLXSBJDMX_BJDID and BJDMX_BJDXH=XLXSBJDMX_XH and BJDMX_ZBSL<>0 )
|
||
group by XLXHJGCZBML_XLXHID,XLXHJGCZBML_DYDJID,XLXHJGCZBML_XLBZID,XLXSCLQD_JGCZBID,XLXSCLQD_JGCZBBBID,XLXSCLQD_JGCZBXH,XLXSCLQD_DRHH,XLXSBJDMX_BJDID,isnull(XLJGCZBML_FZR,' ')
|
||
order by XLXSCLQD_JGCZBID,XLXSCLQD_JGCZBBBID,XLXHJGCZBML_XLXHID,XLXHJGCZBML_DYDJID,XLXHJGCZBML_XLBZID ");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
DataSet dsJGPS = dberp.OpenDataSet(SQL);
|
||
if (dsJGPS.Tables[0].Rows.Count > 0)
|
||
{
|
||
int VnewID = CMISproDataBase.GetMaxXH("DBERP", "V_BJCPJGPS", "V_BJCPJGPS_ID", "") + 1;
|
||
SQL.Clear();
|
||
SQL.Add(@"insert into V_BJCPJGPS
|
||
(V_BJCPJGPS_ID,V_BJCPJGPS_JGCZBID,V_BJCPJGPS_JGCZBBBID,V_BJCPJGPS_JGCZBXH,V_BJCPJGPS_DRHH,V_BJCPJGPS_TIMESTAMP,V_BJCPJGPS_BJDID,V_BJCPJGPS_BJDXH,V_BJCPJGPS_WHR,V_BJCPJGPS_WHRID,V_BJCPJGPS_WHSJ)
|
||
values(:ID,:JGCZBID,:JGCZBBBID,:JGCZBXH,:DRHH,:TIMESTAMP,:BJDID,:BJDXH,:WHR,:WHRID,:WHSJ)");
|
||
string sJGCZBIDLast = dsJGPS.Tables[0].Rows[0]["XLXSCLQD_JGCZBID"].ToString().Trim();
|
||
string sJGCZBBBIDLast = dsJGPS.Tables[0].Rows[0]["XLXSCLQD_JGCZBBBID"].ToString().Trim();
|
||
string sXLXHIDLast = dsJGPS.Tables[0].Rows[0]["XLXHJGCZBML_XLXHID"].ToString().Trim();
|
||
string sDYDJIDLast = dsJGPS.Tables[0].Rows[0]["XLXHJGCZBML_DYDJID"].ToString().Trim();
|
||
string sXLBZIDLast = dsJGPS.Tables[0].Rows[0]["XLXHJGCZBML_XLBZID"].ToString().Trim();
|
||
for (int i = 0; i < dsJGPS.Tables[0].Rows.Count; i++)
|
||
{
|
||
string sJGCZBID = dsJGPS.Tables[0].Rows[i]["XLXSCLQD_JGCZBID"].ToString().Trim();
|
||
string sJGCZBBBID = dsJGPS.Tables[0].Rows[i]["XLXSCLQD_JGCZBBBID"].ToString().Trim();
|
||
string sXLXHID = dsJGPS.Tables[0].Rows[i]["XLXHJGCZBML_XLXHID"].ToString().Trim();
|
||
string sDYDJID = dsJGPS.Tables[0].Rows[i]["XLXHJGCZBML_DYDJID"].ToString().Trim();
|
||
string sXLBZID = dsJGPS.Tables[0].Rows[i]["XLXHJGCZBML_XLBZID"].ToString().Trim();
|
||
if (!(sJGCZBIDLast.Equals(sJGCZBID) && sJGCZBBBIDLast.Equals(sJGCZBBBID) && sXLXHIDLast.Equals(sXLXHID) && sDYDJIDLast.Equals(sDYDJID) && sXLBZIDLast.Equals(sXLBZID)))
|
||
{
|
||
string sTZR = pzxx.XLXSBJPZ_JGPSTZRGHS;
|
||
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_YXTZCZBFZR == "Y")
|
||
{
|
||
string sCZBFZR = dsJGPS.Tables[0].Rows[i]["XLJGCZBML_FZR"].ToString().Trim();
|
||
string sCZBFZRGH = TRYXX.GetRYByRYMC(sCZBFZR).GH;
|
||
string sJGPSTZRGHS = "," + pzxx.XLXSBJPZ_JGPSTZRGHS + ",";
|
||
if (!sJGCZBID.Equals("") && (sJGPSTZRGHS.Contains("," + sCZBFZRGH + ",")))
|
||
{
|
||
sTZR = sCZBFZRGH;
|
||
}
|
||
}
|
||
|
||
TMsg msg = new TMsg();
|
||
msg.MsgClass = "BJFK_JGPS";
|
||
msg.UMID = "100860046";
|
||
msg.MsgContent = string.Format("{0}|{1}尺重表下{2}型号{3}电压{4}标准类型存在部分规格正在进行报价反馈,请检查结构工艺是否需要重新派生!", sJGCZBIDLast, sJGCZBBBIDLast, sXLXHIDLast, sDYDJIDLast, sXLBZIDLast);
|
||
msg.MsgUmid = 101202010;
|
||
msg.ReceiveUsers = sTZR;
|
||
msg.MsgYWID = "[BJCPJGPS_ID=" + VnewID.ToString().Trim() + "]";
|
||
msg.SendMsg(tSession, tSession.UserName);
|
||
sJGCZBIDLast = sJGCZBID;
|
||
sJGCZBBBIDLast = sJGCZBBBID;
|
||
sXLXHIDLast = sXLXHID;
|
||
sDYDJIDLast = sDYDJID;
|
||
sXLBZIDLast = sXLBZID;
|
||
}
|
||
int iJGCZBXH = CMISproConvert.StrToInt(dsJGPS.Tables[0].Rows[i]["XLXSCLQD_JGCZBXH"].ToString().Trim(), 0);
|
||
int iDRHH = CMISproConvert.StrToInt(dsJGPS.Tables[0].Rows[i]["XLXSCLQD_DRHH"].ToString().Trim(), 0);
|
||
int iXH = CMISproConvert.StrToInt(dsJGPS.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim());
|
||
SQL.ParamByName("ID").Value = VnewID;
|
||
SQL.ParamByName("JGCZBID").Value = sJGCZBID;
|
||
SQL.ParamByName("JGCZBBBID").Value = sJGCZBBBID;
|
||
SQL.ParamByName("JGCZBXH").Value = iJGCZBXH;
|
||
SQL.ParamByName("DRHH").Value = iDRHH;
|
||
SQL.ParamByName("TIMESTAMP").Value = MISproUtils.GetServerTime();
|
||
SQL.ParamByName("BJDID").Value = sBJDID;
|
||
SQL.ParamByName("BJDXH").Value = iXH;
|
||
SQL.ParamByName("WHR").Value = tSession.UserName;
|
||
SQL.ParamByName("WHRID").Value = tSession.UserId;
|
||
SQL.ParamByName("WHSJ").Value = DateTime.Now;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
}
|
||
TMsg msg2 = new TMsg();
|
||
msg2.MsgClass = "BJFK_JGPS";
|
||
msg2.UMID = "100860046";
|
||
msg2.MsgContent = string.Format("{0}|{1}尺重表下{2}型号{3}电压{4}标准类型存在部分规格正在进行报价反馈,请检查结构工艺是否需要重新派生!", sJGCZBIDLast, sJGCZBBBIDLast, sXLXHIDLast, sDYDJIDLast, sXLBZIDLast);
|
||
msg2.MsgUmid = 101202010;
|
||
msg2.MsgYWID = "[BJCPJGPS_ID=" + VnewID.ToString().Trim() + "]";
|
||
msg2.ReceiveUsers = pzxx.XLXSBJPZ_JGPSTZRGHS;
|
||
msg2.SendMsg(tSession, tSession.UserName);
|
||
|
||
}
|
||
}
|
||
|
||
|
||
|
||
#endregion
|
||
|
||
#region 同步生成CS投标报价反馈记录
|
||
|
||
int maxTBXH = CMISproDataBase.GetMaxXH("DBERP", "TBBJFKMX", "TBBJFKMX_XH", "TBBJFKMX_TBSID=' ' and TBBJFKMX_BJDID='" + sBJDID + "'");
|
||
|
||
SQL.Clear();
|
||
SQL.Add(@"merge into TBBJFKMX
|
||
using (
|
||
select BJDMX_BJDID,row_number() over(order by BJDMX_BJDXH)+:pMaxXH as XH,BJDMX_BJDXH,XLXSBJDMX_ZB,XLXSBJDMX_ZBSL,XLXSBJDMX_ZBJE
|
||
from BJDMX,XLXSBJDMX
|
||
where BJDMX_BJDID=:pBJDID and XLXSBJDMX_BJDID=:pBJDID and XLXSBJDMX_XH=BJDMX_BJDXH
|
||
and not exists(select 1 from BJDMX where BJDMX_BJDID=XLXSBJDMX_BJDID and BJDMX_BJDXH=XLXSBJDMX_XH and BJDMX_ZBSL<>0 )
|
||
)sor
|
||
on(
|
||
TBBJFKMX_TBSID=' '
|
||
and TBBJFKMX_BJDID=BJDMX_BJDID
|
||
and TBBJFKMX_BJDXH=BJDMX_BJDXH
|
||
)when matched then update set TBBJFKMX_ZB=XLXSBJDMX_ZB,TBBJFKMX_ZBSL=XLXSBJDMX_ZBSL,TBBJFKMX_ZBJE=XLXSBJDMX_ZBJE
|
||
when not matched then insert (TBBJFKMX_TBSID, TBBJFKMX_BJDID, TBBJFKMX_XH, TBBJFKMX_BJDXH, TBBJFKMX_ZB,TBBJFKMX_ZBSL, TBBJFKMX_ZBJE)
|
||
values(' ',BJDMX_BJDID,XH,BJDMX_BJDXH,XLXSBJDMX_ZB,XLXSBJDMX_ZBSL,XLXSBJDMX_ZBJE) ");
|
||
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL.ParamByName("pMaxXH").Value = maxTBXH;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
#endregion
|
||
|
||
dberp.CommitTrans();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
ShowMessage("反馈操作出错,错误原因:" + ex);
|
||
dberp.RollbackTrans();
|
||
}
|
||
if (pzxx.XLXSBJPZ_TBFKZ3BB == "Y")
|
||
{
|
||
#region 同步插入3版本BJD数据表
|
||
|
||
TDatabase dberp3 = TContextDatabases.GetDatabase("DBERP3");
|
||
TSQL SQL3 = new TSQL(dberp3);
|
||
try
|
||
{
|
||
dberp3.BeginTrans();
|
||
|
||
#region 插入明细
|
||
|
||
for (int i = 0; i < dsMX.Tables[0].Rows.Count; i++)
|
||
{
|
||
if (dsMX.Tables[0].Rows[i]["WLID"].ToString().Trim().Equals(""))
|
||
continue;
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select top 1 BJDMX_BJDID from BJDMX where BJDMX_BJDID='{0}' and BJDMX_BJDXH={1} ", sBJDID, dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim())))
|
||
{
|
||
SQL3.Clear();
|
||
SQL3.Add("update BJDMX set BJDMX_WLID=:WLID, ");
|
||
SQL3.Add(" BJDMX_JG=:XLXSBJDMX_CPBJ, ");
|
||
SQL3.Add(" BJDMX_CB=:XLXSBJDMX_BJDHQCLCB, ");
|
||
SQL3.Add(" BJDMX_JLDW=:XLXSBJDMX_JLDW, ");
|
||
SQL3.Add(" BJDMX_HSXS=:HSXS, ");
|
||
SQL3.Add(" BJDMX_BJSL=:XLXSBJDMX_BJSL, ");
|
||
SQL3.Add(" BJDMX_ZBJSL=:ZBJSL, ");
|
||
SQL3.Add(" BJDMX_BZ=:XLXSBJDMX_BZ, ");
|
||
SQL3.Add(" BJDMX_JE=:XLXSBJDMX_BJJE, ");
|
||
SQL3.Add(" BJDMX_KHWLMC=:XLXSBJDMX_BJCP, ");
|
||
SQL3.Add(" BJDMX_KHJG=:KHJG, ");
|
||
SQL3.Add(" BJDMX_KHJE=:KHJE, ");
|
||
SQL3.Add(" BJDMX_ZBDJ=:XLXSBJDMX_CPBJ ");
|
||
SQL3.Add(" where BJDMX_BJDID=:XLXSBJDMX_BJDID and BJDMX_BJDXH=:XLXSBJDMX_XH and BJDMX_XLXSBJXSSX=:XLXSBJDMX_XSSX ");
|
||
}
|
||
else
|
||
{
|
||
SQL3.Clear();
|
||
SQL3.Add("insert into BJDMX(BJDMX_BJDID,BJDMX_BJDXH,BJDMX_WLID,BJDMX_JG,BJDMX_CB,BJDMX_JLDW,BJDMX_HSXS,");
|
||
SQL3.Add(" BJDMX_BJSL,BJDMX_ZBJSL,BJDMX_PZ,BJDMX_BZ,BJDMX_CBCG,BJDMX_JE,BJDMX_KHWLMC, ");
|
||
SQL3.Add(" BJDMX_KHJG,BJDMX_KHJE,BJDMX_ZBDJ) ");
|
||
SQL3.Add(" values(:XLXSBJDMX_BJDID,:XLXSBJDMX_XH,:WLID,:XLXSBJDMX_CPBJ,:XLXSBJDMX_BJDHQCLCB,:XLXSBJDMX_JLDW,:HSXS,");
|
||
SQL3.Add(" :XLXSBJDMX_BJSL,:ZBJSL,'N',:XLXSBJDMX_BZ,'N',:XLXSBJDMX_BJJE,:XLXSBJDMX_BJCP, ");
|
||
SQL3.Add(" :KHJG,:KHJE,:XLXSBJDMX_CPBJ) ");
|
||
}
|
||
|
||
SQL3.ParamByName("XLXSBJDMX_BJDID").Value = sBJDID;
|
||
SQL3.ParamByName("XLXSBJDMX_XH").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim();
|
||
SQL3.ParamByName("WLID").Value = dsMX.Tables[0].Rows[i]["WLID"].ToString().Trim();
|
||
SQL3.ParamByName("XLXSBJDMX_CPBJ").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_CPBJ"].ToString().Trim();
|
||
SQL3.ParamByName("XLXSBJDMX_BJDHQCLCB").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJDHQCLCB"].ToString().Trim();
|
||
|
||
if (dsMX.Tables[0].Rows[i]["XLXSBJDMX_JLDW"].ToString().Trim().ToUpper() == dsMX.Tables[0].Rows[i]["WL_JLDW"].ToString().Trim().ToUpper())
|
||
SQL3.ParamByName("XLXSBJDMX_JLDW").Value = dsMX.Tables[0].Rows[i]["WL_JLDW"].ToString().Trim();
|
||
else
|
||
SQL3.ParamByName("XLXSBJDMX_JLDW").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_JLDW"].ToString().Trim();
|
||
|
||
SQL3.ParamByName("HSXS").Value = dicHSXS[dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim()];
|
||
SQL3.ParamByName("XLXSBJDMX_BJSL").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJSL"].ToString().Trim();
|
||
SQL3.ParamByName("ZBJSL").Value = CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJSL"].ToString().Trim()) * dicHSXS[dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim()];
|
||
SQL3.ParamByName("XLXSBJDMX_BZ").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BZ"].ToString().Trim();
|
||
SQL3.ParamByName("XLXSBJDMX_BJJE").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJJE"].ToString().Trim();
|
||
SQL3.ParamByName("XLXSBJDMX_BJCP").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJCP"].ToString().Trim();
|
||
SQL3.ParamByName("KHJG").Value = NumberUtils.RoundX(CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_ZDXJ"].ToString().Trim()), 4);
|
||
SQL3.ParamByName("KHJE").Value = NumberUtils.RoundX(NumberUtils.RoundX(CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_ZDXJ"].ToString().Trim()), 4) * CMISproConvert.StrToFloat(dsMX.Tables[0].Rows[i]["XLXSBJDMX_BJSL"].ToString().Trim()), 2);
|
||
dberp3.ExecSQL(SQL3);
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 同步生成CS投标报价反馈记录
|
||
|
||
|
||
|
||
for (int i = 0; i < dsMX.Tables[0].Rows.Count; i++)
|
||
{
|
||
if (dsMX.Tables[0].Rows[i]["WLID"].ToString().Trim().Equals(""))
|
||
continue;
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select top 1 TBBJFKMX_TBSID from TBBJFKMX where TBBJFKMX_BJDH='{0}' and TBBJFKMX_BJDXH={1} ", sBJDID, dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim())))
|
||
{
|
||
SQL3.Clear();
|
||
SQL3.Add("update TBBJFKMX set TBBJFKMX_ZB=:XLXSBJDMX_ZB, ");
|
||
SQL3.Add(" TBBJFKMX_ZBSL=:XLXSBJDMX_ZBSL, ");
|
||
SQL3.Add(" TBBJFKMX_ZBJE=:XLXSBJDMX_ZBJE, ");
|
||
SQL3.Add(" TBBJFKMX_ZBDJ=:TBBJFKMX_ZBDJ ");
|
||
|
||
SQL3.Add(" where TBBJFKMX_BJDH=:XLXSBJDMX_BJDID and TBBJFKMX_BJDXH=:XLXSBJDMX_XH and TBBJFKMX_XH=:XLXSBJDMX_XH ");
|
||
}
|
||
else
|
||
{
|
||
SQL3.Clear();
|
||
SQL3.Add("insert into TBBJFKMX(TBBJFKMX_TBSID, TBBJFKMX_BJDH, TBBJFKMX_XH, TBBJFKMX_BJDXH, TBBJFKMX_ZB,TBBJFKMX_ZBSL, TBBJFKMX_ZBJE,TBBJFKMX_ZBDJ) ");//TBBJFKMX_BJDH--TBBJFKMX_BJDID
|
||
SQL3.Add("values ( ' ',:pBJDID,:pXH,:BJDMX_BJDXH,:XLXSBJDMX_ZB,:XLXSBJDMX_ZBSL,:XLXSBJDMX_ZBJE,:TBBJFKMX_ZBDJ ) ");
|
||
}
|
||
SQL3.ParamByName("pBJDID").Value = sBJDID;
|
||
SQL3.ParamByName("pXH").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim();
|
||
SQL3.ParamByName("BJDMX_BJDXH").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_XH"].ToString().Trim();
|
||
SQL3.ParamByName("XLXSBJDMX_ZB").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_ZB"].ToString().Trim();
|
||
SQL3.ParamByName("XLXSBJDMX_ZBSL").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_ZBSL"].ToString().Trim();
|
||
SQL3.ParamByName("XLXSBJDMX_ZBJE").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_ZBJE"].ToString().Trim();
|
||
SQL3.ParamByName("TBBJFKMX_ZBDJ").Value = dsMX.Tables[0].Rows[i]["XLXSBJDMX_CPBJ"].ToString().Trim();
|
||
dberp3.ExecSQL(SQL3);
|
||
}
|
||
|
||
#endregion
|
||
|
||
dberp3.CommitTrans();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
ShowMessage("反馈操作出错,错误原因:" + ex);
|
||
dberp3.RollbackTrans();
|
||
}
|
||
|
||
#endregion
|
||
}
|
||
|
||
ShowMessage("追加反馈完成!");
|
||
btnRefresh_Click(null, null);
|
||
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 控件事件
|
||
protected void btnPLSZ_Click(object sender, EventArgs e)
|
||
{
|
||
string sBJDID = PageParam.GetRTrimString("BJDID").Trim();
|
||
if (sBJDID.Equals(""))
|
||
sBJDID = txtSelBJDID.Value.Trim();
|
||
string sXHList = "";
|
||
if (!string.IsNullOrEmpty(grdContentGrid.CheckedRowIndexs))
|
||
{
|
||
foreach (string sCheckedIndex in grdContentGrid.CheckedRowIndexs.Split(','))
|
||
{
|
||
string stmpXH = grdContentGrid.DataKeys[CMISproConvert.StrToInt(sCheckedIndex)]["XLXSBJDMX_XH"].ToString().Trim();
|
||
|
||
if (XLBJDUtils.GetXLXSBJPZXX(100860046).XLXSBJPZ_ZCCF.Trim().Equals("Y"))
|
||
{
|
||
string stmpCFXH = grdContentGrid.DataKeys[CMISproConvert.StrToInt(sCheckedIndex)]["XLXSBJFKCFMX_CFXH"].ToString().Trim();
|
||
stmpXH = stmpXH.Trim() + "|" + stmpCFXH.Trim();
|
||
|
||
}
|
||
if (!sXHList.Equals(""))
|
||
sXHList += ",";
|
||
sXHList += stmpXH;
|
||
}
|
||
}
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "CXBJD_PLBJFKInfo.aspx";
|
||
tpp.AddString("BJDID", sBJDID);
|
||
tpp.AddString("BJDXHList", sXHList);
|
||
if (sXHList.Equals(""))//整单操作
|
||
{
|
||
tpp.AddString("NeedQRCID", txtNeedQR.ClientID);
|
||
OpenDialogClickBtn(tpp, btnRefreshAndQR.ClientID);
|
||
}
|
||
else
|
||
{
|
||
tpp.AddString("RefreshCtrlID", btnRefresh.ClientID);
|
||
OpenDialog(tpp);
|
||
}
|
||
}
|
||
|
||
protected void btnPLSZXDXH_Click(string value)
|
||
{
|
||
string sBJDID = PageParam.GetRTrimString("BJDID").Trim();
|
||
if (sBJDID.Equals(""))
|
||
sBJDID = txtSelBJDID.Value.Trim();
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "CXBJD_PLSZXDXHInfo.aspx";
|
||
tpp.AddString("BJDID", sBJDID);
|
||
if (!string.IsNullOrEmpty(grdContentGrid.CheckedRowIndexs))
|
||
tpp.AddString("SZFW", "C");
|
||
else
|
||
tpp.AddString("SZFW", "A");
|
||
if (value.Equals("0"))
|
||
{
|
||
tpp.Title = "批量设置下单型号";
|
||
tpp.AddString("txtXLXHID", txtXLXHID.ClientID);
|
||
}
|
||
else if (value.Equals("2"))
|
||
{
|
||
tpp.Title = "批量设置下单标准";
|
||
tpp.AddString("txtXLBZID", txtXLBZID.ClientID);
|
||
}
|
||
else if (value.Equals("3"))
|
||
{
|
||
tpp.Title = "批量设置生产类型";
|
||
tpp.AddString("txtDZSC", txtDZSC.ClientID);
|
||
}
|
||
OpenDialogClickBtn(tpp, btnXDXLXHSZ.ClientID);
|
||
}
|
||
|
||
protected void btnPLSZYS_Click()
|
||
{
|
||
string sBJDID = PageParam.GetRTrimString("BJDID").Trim();
|
||
if (sBJDID.Equals(""))
|
||
sBJDID = txtSelBJDID.Value.Trim();
|
||
|
||
string sXHList = "";
|
||
if (!string.IsNullOrEmpty(grdContentGrid.CheckedRowIndexs))
|
||
{
|
||
foreach (string sCheckedIndex in grdContentGrid.CheckedRowIndexs.Split(','))
|
||
{
|
||
string stmpXH = grdContentGrid.DataKeys[CMISproConvert.StrToInt(sCheckedIndex)]["XLXSBJDMX_XH"].ToString().Trim();
|
||
if (!sXHList.Equals(""))
|
||
sXHList += ",";
|
||
sXHList += stmpXH;
|
||
}
|
||
}
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "CXBJD_YSTZInfo.aspx";
|
||
tpp.AddString("BJDID", sBJDID);
|
||
if (!string.IsNullOrEmpty(grdContentGrid.CheckedRowIndexs))
|
||
tpp.AddString("SZFW", "C");
|
||
else
|
||
tpp.AddString("SZFW", "A");
|
||
tpp.AddString("BJDXHList", sXHList);
|
||
tpp.AddString("RefreshCtrlID", btnRefresh.ClientID);
|
||
OpenDialog(tpp);
|
||
}
|
||
|
||
protected void btnBJDQR_Click(object sender, EventArgs e)
|
||
{
|
||
string sBJDID = "";
|
||
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
sBJDID = PageParam.GetRTrimString("BJDID");
|
||
}
|
||
else
|
||
{
|
||
if (grdContentGrid.SelectedIndex < 0)
|
||
{
|
||
ShowMessage("请选择处理记录!");
|
||
return;
|
||
}
|
||
sBJDID = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_BJDID"].ToString().Trim();
|
||
}
|
||
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLXSBJDMX_BJDID from XLXSBJDMX where XLXSBJDMX_BJDID='" + sBJDID + "'"))
|
||
{
|
||
ShowMessage("当前报价单无明细记录,不允许反馈!");
|
||
return;
|
||
}
|
||
if (txtZJFK.Value != "Y")
|
||
{
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLXSBJDMX_BJDID from XLXSBJDMX where (XLXSBJDMX_ZB='Y' or XLXSBJDMX_ZB='P') and XLXSBJDMX_BJDID='" + sBJDID + "'"))
|
||
{
|
||
ShowMessage("当前报价单的明细产品全部未中标,请手动提交报价单至结束!");
|
||
return;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
string sSQL = "select top 1 XLXSBJDMX_BJDID from XLXSBJDMX where (XLXSBJDMX_ZB='Y' or XLXSBJDMX_ZB='P') and XLXSBJDMX_BJDID='" + sBJDID + "'"
|
||
+" and not exists(select 1 from BJDMX where BJDMX_BJDID=XLXSBJDMX_BJDID and BJDMX_BJDXH=XLXSBJDMX_XH and BJDMX_ZBSL<>0 ) ";
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||
{
|
||
ShowMessage("当前报价单的明细产品全部未中标,不允许反馈!");
|
||
return;
|
||
}
|
||
}
|
||
|
||
|
||
|
||
string sWfAwaiter = GetBJDDCLR(sBJDID);
|
||
if (!sWfAwaiter.Contains("," + tSession.UserId + ","))
|
||
{
|
||
ShowMessage("当前用户不属于报价单待处理人,不允许反馈!");
|
||
return;
|
||
|
||
}
|
||
|
||
//if (TWorkflow.Utils.QYWFByWFVID("XS_BJDSP"))//XS_BJDSP|销售报价单评审流程
|
||
//{
|
||
// ShowMessage("【100384006|销售报价单维护】模块不允许启用工作流!");
|
||
// return;
|
||
//}
|
||
|
||
if (!GetOption(100384006, "XSU100").Equals("N"))
|
||
{
|
||
ShowMessage("【100384006|销售报价单维护】模块参数“XSU100|按什么物料进行销售报价”的值必须设置为“N|按正式物料进行销售报价”!");
|
||
return;
|
||
}
|
||
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from BJD where BJD_BJDID='{0}'", sBJDID)) && txtZJFK.Value != "Y")
|
||
{
|
||
ShowMessage("所选报价单已反馈,不允许重复反馈!");
|
||
return;
|
||
}
|
||
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860046);
|
||
|
||
DataSet ds = GetBJCP_XLWL(sBJDID,txtZJFK.Value);
|
||
string sNoWLIDXSSXList = "";
|
||
string sCZBFZRGHList = "";
|
||
string sZBZT = "";
|
||
List<string> CZBFZRGHList = new List<string>();
|
||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||
{
|
||
if (ds.Tables[0].Rows[i]["WLID"].ToString().Trim().Equals(""))
|
||
{
|
||
if (ds.Tables[0].Rows[i]["ZBZT"].ToString().Trim().Equals("Y") || ds.Tables[0].Rows[i]["ZBZT"].ToString().Trim().Equals("P"))
|
||
{
|
||
sNoWLIDXSSXList += ds.Tables[0].Rows[i]["XLXSBJDMX_XSSX"].ToString().Trim() + ",";
|
||
if (pzxx.XLXSBJPZ_YXTZCZBFZR == "Y")
|
||
{
|
||
string sCZBFZRGH = TRYXX.GetRYByRYMC(ds.Tables[0].Rows[i]["XLJGCZBML_FZR"].ToString().Trim()).GH;
|
||
string sWLQSTZRGHS = "," + pzxx.XLXSBJPZ_WLQSTZRGHS + ",";
|
||
if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_WLQSTZRGHS) && (sWLQSTZRGHS.Contains("," + sCZBFZRGH + ",")) && !CZBFZRGHList.Contains(sCZBFZRGH))
|
||
{
|
||
sCZBFZRGHList += sCZBFZRGH + ",";
|
||
CZBFZRGHList.Add(sCZBFZRGH);
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
}
|
||
if (!ds.Tables[0].Rows[i]["ZBZT"].ToString().Trim().Equals(""))
|
||
{
|
||
sZBZT += ds.Tables[0].Rows[i]["XLXSBJDMX_XSSX"].ToString().Trim() + ",";
|
||
}
|
||
}
|
||
sNoWLIDXSSXList = sNoWLIDXSSXList.TrimEnd(',');
|
||
sCZBFZRGHList = sCZBFZRGHList.TrimEnd(',');
|
||
if (!sNoWLIDXSSXList.Equals(""))
|
||
{
|
||
if (string.IsNullOrEmpty(pzxx.XLXSBJPZ_WLQSTZRGHS))
|
||
{
|
||
ShowMessage("当前报价单的明细中标产品部分没有设置对应的物料,不能执行报价单反馈操作!");
|
||
return;
|
||
}
|
||
else
|
||
{
|
||
string sWarning = "当前报价单的明细中标产品部分没有设置对应的物料,不能执行报价单反馈操作!是否通知相关人员增补物料?";
|
||
Confirm.Register("IsQD", sWarning);
|
||
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"))
|
||
{
|
||
string sTZR = pzxx.XLXSBJPZ_WLQSTZRGHS;
|
||
if (!sCZBFZRGHList.Equals(""))
|
||
sTZR = sCZBFZRGHList;
|
||
|
||
//表示进行了提示并选择了确认
|
||
Confirm.Clear();
|
||
TMsg msg = new TMsg();
|
||
msg.MsgClass = "BJFK_WLQS";
|
||
msg.UMID = "100860046";
|
||
msg.MsgNumid = 100860046;
|
||
msg.MsgYWID = "[BJDID=" + sBJDID + "][WLQS=Y]";
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.CallAction = TPageCallAction.pcaBrowse;
|
||
tpp.UrlPath = "../components/N_XLXSBJ/CXBJDList.aspx";
|
||
tpp.AddString("BJDID", sBJDID);
|
||
tpp.AddString("WLQS", "Y");
|
||
msg.MsgContent = sBJDID+"报价单中标产品缺少对应物料,无法完成反馈!";
|
||
msg.MsgURL = Utils.GetEncodedUrl(100860046, tpp);
|
||
msg.ReceiveUsers = sTZR;
|
||
msg.SendMsg(tSession, tSession.UserName);
|
||
ShowMessage("消息通知成功!");
|
||
return;
|
||
|
||
}
|
||
}
|
||
|
||
}
|
||
else
|
||
{
|
||
if (sZBZT.Equals(""))
|
||
{
|
||
ShowMessage("当前报价单的明细产品均没有设置中标状态,不能执行报价单反馈操作!");
|
||
return;
|
||
}
|
||
if (txtZJFK.Value != "Y")
|
||
{
|
||
TPageParams param = new TPageParams();
|
||
param.UrlPath = "CXBJD_QRInfo.aspx";
|
||
param.AddString("BJDID", sBJDID);
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
param.AddString("FromXLXSBJD", "Y");
|
||
param.AddString("RefreshCtrlID", btnRefreshZT.ClientID);
|
||
OpenDialog(param);
|
||
}
|
||
else
|
||
OpenDialogClickBtn(param, btnRefreshZT.ClientID);
|
||
}
|
||
else
|
||
{
|
||
string sWarning = "将在已反馈的报价单明细追加中标明细,是否确认?";
|
||
Confirm.Register("IsQD", sWarning);
|
||
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();
|
||
ZJFK(sBJDID);
|
||
}
|
||
|
||
}
|
||
|
||
}
|
||
}
|
||
|
||
protected void btnBJDQR_OnDropDown(object sender, EventArgs e)
|
||
{
|
||
btnBJDQR.Nodes.Clear();
|
||
|
||
btnBJDQR.Nodes.Add(new gtTreeNode("1", "追加反馈"));
|
||
btnBJDQR.Nodes.Add(new gtTreeNode("0", "取消反馈"));
|
||
|
||
|
||
MenuAreaUpdate();
|
||
}
|
||
protected void btnPLSZ_OnDropDown(object sender, EventArgs e)
|
||
{
|
||
btnPLSZ.Nodes.Clear();
|
||
btnPLSZ.Nodes.Add(new gtTreeNode("0", "批量设置下单型号"));
|
||
if (DSActiveModule.IsActiveModule(102577006))
|
||
{
|
||
btnPLSZ.Nodes.Add(new gtTreeNode("2", "批量设置下单标准"));
|
||
}
|
||
btnPLSZ.Nodes.Add(new gtTreeNode("3", "批量设置生产类型"));
|
||
btnPLSZ.Nodes.Add(new gtTreeNode("1", "批量设置颜色"));
|
||
MenuAreaUpdate();
|
||
}
|
||
|
||
protected void btnBJDQR_MenuItemClick(object sender, string value)
|
||
{
|
||
if (value.Equals("0"))
|
||
{
|
||
string sBJDID = "";
|
||
string sSQL = "";
|
||
string sWarning = "";
|
||
//100860000|线缆销售报价单”、“100860061|销售员报价申请”模块调用
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
sBJDID = PageParam.GetRTrimString("BJDID");
|
||
}
|
||
else
|
||
{
|
||
if (grdContentGrid.SelectedIndex < 0)
|
||
{
|
||
ShowMessage("请选择处理记录!");
|
||
return;
|
||
}
|
||
sBJDID = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_BJDID"].ToString().Trim();
|
||
}
|
||
string sWfAwaiter = GetBJDDCLR(sBJDID);
|
||
if (!sWfAwaiter.Contains("," + tSession.UserId + ","))
|
||
{
|
||
ShowMessage("当前用户不属于报价单待处理人,不允许取消反馈!");
|
||
return;
|
||
|
||
}
|
||
sSQL = string.Format("select 1 from HT where HT_BJDID = '{0}'", sBJDID);
|
||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||
{
|
||
ShowMessage("当前报价单已生成合同,不允许取消反馈!");
|
||
return;
|
||
}
|
||
|
||
sSQL = string.Format("select 1 from BJD where BJD_BJDID='{0}'", sBJDID);
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||
{
|
||
ShowMessage("所选报价单未反馈,不允许取消反馈!");
|
||
return;
|
||
}
|
||
|
||
sSQL = string.Format("select 1 from BJD where BJD_BJDID='{0}' and BJD_XDRQ is not null ", sBJDID);
|
||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||
{
|
||
ShowMessage("当前报价单已下达销售订单,不允许取消反馈!");
|
||
return;
|
||
}
|
||
bool bFK3BB = false;
|
||
|
||
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860046);
|
||
|
||
if (pzxx.XLXSBJPZ_TBFKZ3BB == "Y")
|
||
bFK3BB = true;
|
||
if (bFK3BB)
|
||
{
|
||
TDatabase dberp3 = TContextDatabases.GetDatabase("DBERP3");
|
||
TSQL SQL3 = new TSQL(dberp3);
|
||
sSQL = string.Format("select 1 from BJD where BJD_BJDID='{0}' and BJD_XDRQ is not null ", sBJDID);
|
||
SQL3.Clear();
|
||
SQL3.Add(sSQL);
|
||
DataSet ds3 = dberp3.OpenDataSet(SQL3);
|
||
if (ds3.Tables[0].Rows.Count > 0)
|
||
{
|
||
ShowMessage("当前3版本报价单已下达销售订单,不允许取消反馈!");
|
||
return;
|
||
}
|
||
}
|
||
sSQL = string.Format("select 1 from TBBJFK where TBBJFK_BJDID='{0}' ", sBJDID);
|
||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||
{
|
||
sWarning = "取消反馈的同时将同步删除反馈过去的记录,是否继续?";
|
||
Confirm.Register("IsQD", sWarning);
|
||
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();
|
||
}
|
||
}
|
||
else
|
||
{
|
||
sWarning = "将取消反馈,是否继续?";
|
||
Confirm.Register("IsQD", sWarning);
|
||
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();
|
||
SQL.Clear();
|
||
SQL.Add("delete from TBBJFKMX where TBBJFKMX_BJDID = :pBJDID");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add("delete from TBBJFK where TBBJFK_BJDID = :pBJDID");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
SQL.Clear();
|
||
SQL.Add("delete from BJDMX where BJDMX_BJDID = :pBJDID");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
double dDOCGRPID = GetBJD_DOCGRPID(sBJDID);
|
||
|
||
SQL.Clear();
|
||
SQL.Add("delete from BJD where BJD_BJDID = :pBJDID");
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
|
||
if (dDOCGRPID > 0)
|
||
FileService.DeleteGroup(dDOCGRPID);
|
||
|
||
dberp.CommitTrans();
|
||
ShowMessage("取消反馈完成!");
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
dberp.RollbackTrans();
|
||
ShowMessage("取消反馈失败:" + ex.ToString().Trim());
|
||
return;
|
||
}
|
||
if (bFK3BB)
|
||
{
|
||
TDatabase dberp3 = TContextDatabases.GetDatabase("DBERP3");
|
||
TSQL SQL3 = new TSQL(dberp3);
|
||
try
|
||
{
|
||
dberp3.BeginTrans();
|
||
SQL3.Clear();
|
||
SQL3.Add("delete from TBBJFKMX where TBBJFKMX_BJDH = :pBJDID");//TBBJFKMX_BJDH--TBBJFKMX_BJDID
|
||
SQL3.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp3.ExecSQL(SQL3);
|
||
|
||
SQL3.Clear();
|
||
SQL3.Add("delete from TBBJFK where TBBJFK_BJDH = :pBJDID");//TBBJFK_BJDH--TBBJFK_BJDID
|
||
SQL3.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp3.ExecSQL(SQL3);
|
||
|
||
SQL3.Clear();
|
||
SQL3.Add("delete from BJDMX where BJDMX_BJDID = :pBJDID");
|
||
SQL3.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp3.ExecSQL(SQL3);
|
||
|
||
SQL3.Clear();
|
||
SQL3.Add("delete from BJD where BJD_BJDID = :pBJDID");
|
||
SQL3.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp3.ExecSQL(SQL3);
|
||
dberp3.CommitTrans();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
ShowMessage("3版本反馈操作出错,错误原因:" + ex);
|
||
dberp3.RollbackTrans();
|
||
return;
|
||
}
|
||
}
|
||
btnRefreshZT_Click(null, null);
|
||
}
|
||
else if (value.Equals("1"))
|
||
{
|
||
if (txtZJFK.Value != "Y")
|
||
{
|
||
string sBJDID = "";
|
||
string sSQL = "";
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
sBJDID = PageParam.GetRTrimString("BJDID");
|
||
}
|
||
else
|
||
{
|
||
if (grdContentGrid.SelectedIndex < 0)
|
||
{
|
||
ShowMessage("请选择处理记录!");
|
||
return;
|
||
}
|
||
sBJDID = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_BJDID"].ToString().Trim();
|
||
}
|
||
string sWfAwaiter = GetBJDDCLR(sBJDID);
|
||
if (!sWfAwaiter.Contains("," + tSession.UserId + ","))
|
||
{
|
||
ShowMessage("当前用户不属于报价单待处理人,不允许追加反馈!");
|
||
return;
|
||
|
||
}
|
||
sSQL = string.Format("select 1 from BJD where BJD_BJDID='{0}'", sBJDID);
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||
{
|
||
ShowMessage("所选报价单未反馈,不允许追加反馈!");
|
||
return;
|
||
}
|
||
}
|
||
|
||
|
||
txtZJFK.Value = txtZJFK.Value =="Y" ? "N" :"Y";
|
||
btnRefreshZT_Click(null, null);
|
||
}
|
||
}
|
||
|
||
protected void btnPLSZ_MenuItemClick(object sender, string value)
|
||
{
|
||
if (value.Equals("0") || value.Equals("2") || value.Equals("3"))
|
||
{
|
||
btnPLSZXDXH_Click(value);
|
||
}
|
||
else if (value.Equals("1"))
|
||
{
|
||
btnPLSZYS_Click();
|
||
}
|
||
}
|
||
|
||
protected void btnXDXH_Click(object sender, EventArgs e)
|
||
{
|
||
if (!txtSelBJDID.Value.Trim().Equals("") && !txtSelBJDXH.Value.Trim().Equals(""))
|
||
{
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.Title = "设置下单型号";
|
||
tpp.UrlPath = "CXBJD_PLSZXDXHInfo.aspx";
|
||
tpp.AddString("BJDID", txtSelBJDID.Value);
|
||
tpp.AddString("BJDXH", txtSelBJDXH.Value);
|
||
tpp.AddString("SZFW", "S");
|
||
tpp.AddString("txtXLXHID", txtXLXHID.ClientID);
|
||
tpp.AddString("txtXDXHXH", txtXDXHXH.ClientID);
|
||
OpenDialogClickBtn(tpp, btnXDXLXHSZ.ClientID);
|
||
}
|
||
}
|
||
|
||
protected void btnXDBZ_Click(object sender, EventArgs e)
|
||
{
|
||
if (!txtSelBJDID.Value.Trim().Equals("") && !txtSelBJDXH.Value.Trim().Equals(""))
|
||
{
|
||
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.Title = "设置下单标准";
|
||
tpp.UrlPath = "CXBJD_PLSZXDXHInfo.aspx";
|
||
tpp.AddString("BJDID", txtSelBJDID.Value);
|
||
tpp.AddString("BJDXH", txtSelBJDXH.Value);
|
||
tpp.AddString("SZFW", "S");
|
||
tpp.AddString("txtXLBZID", txtXLBZID.ClientID);
|
||
tpp.AddString("txtXDXHXH", txtXDXHXH.ClientID);
|
||
OpenDialogClickBtn(tpp, btnXDXLXHSZ.ClientID);
|
||
}
|
||
}
|
||
|
||
protected void btnDZSC_Click(object sender, EventArgs e)
|
||
{
|
||
if (!txtSelBJDID.Value.Trim().Equals("") && !txtSelBJDXH.Value.Trim().Equals(""))
|
||
{
|
||
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.Title = "设置下单标准";
|
||
tpp.UrlPath = "CXBJD_PLSZXDXHInfo.aspx";
|
||
tpp.AddString("BJDID", txtSelBJDID.Value);
|
||
tpp.AddString("BJDXH", txtSelBJDXH.Value);
|
||
tpp.AddString("SZFW", "S");
|
||
tpp.AddString("txtDZSC", txtDZSC.ClientID);
|
||
tpp.AddString("txtXDXHXH", txtXDXHXH.ClientID);
|
||
OpenDialogClickBtn(tpp, btnXDXLXHSZ.ClientID);
|
||
}
|
||
}
|
||
|
||
protected void btnBJFK_Click(object sender, EventArgs e)
|
||
{
|
||
if (!txtSelBJDID.Value.Trim().Equals("") && !txtSelBJDXH.Value.Trim().Equals(""))
|
||
{
|
||
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "CXBJD_BJFKInfo.aspx";
|
||
tpp.AddString("BJDID", txtSelBJDID.Value);
|
||
tpp.AddString("BJDXH", txtSelBJDXH.Value);
|
||
tpp.AddString("CFXH", txtSelCFXH.Value);
|
||
tpp.AddString("RefreshCtrlID", btnRefresh.ClientID);
|
||
OpenDialog(tpp);
|
||
}
|
||
}
|
||
|
||
protected void btnCF_Click(object sender, EventArgs e)
|
||
{
|
||
if (grdContentGrid.SelectedIndex < 0)
|
||
{
|
||
ShowMessage("请选择处理记录!");
|
||
return;
|
||
}
|
||
if (grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["ZBSL"].ToString().Trim().Equals("")
|
||
|| grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["ZBSL"].ToString().Trim().Equals("0"))
|
||
{
|
||
ShowMessage("中标数量为0,不允许拆分!");
|
||
return;
|
||
}
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "CXBJD_CFList.aspx";
|
||
tpp.AddString("BJDID", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_BJDID"].ToString().Trim());
|
||
tpp.AddString("BJDXH", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_XH"].ToString().Trim());
|
||
tpp.AddString("XLXHID", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_XDXLXHID"].ToString().Trim());
|
||
tpp.AddString("XLGGID", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_XLGGID"].ToString().Trim());
|
||
tpp.AddString("XLBZID", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_XDXLBZID"].ToString().Trim());
|
||
tpp.AddString("DYDJID", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_DYDJID"].ToString().Trim());
|
||
tpp.AddString("BJSL", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["ZBSL"].ToString().Trim());
|
||
tpp.AddString("RefreshCtrlID", btnRefresh.ClientID);
|
||
OpenDialog(tpp);
|
||
}
|
||
|
||
protected void btnQXCF_Click(object sender, EventArgs e)
|
||
{
|
||
if (grdContentGrid.SelectedIndex < 0)
|
||
{
|
||
ShowMessage("请选择处理记录!");
|
||
return;
|
||
}
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
SQL.Clear();
|
||
SQL.Add(" DELETE FROM XLXSBJFKCFMX WHERE XLXSBJFKCFMX_BJDID=:pBJDID AND XLXSBJFKCFMX_BJDXH=:pBJDXH ");
|
||
SQL.ParamByName("pBJDID").Value = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_BJDID"].ToString().Trim();
|
||
SQL.ParamByName("pBJDXH").Value = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDMX_XH"].ToString().Trim();
|
||
dberp.ExecSQL(SQL);
|
||
ShowMessage("取消拆分成功!");
|
||
moduleGV_PageIndexChanging(null, null);
|
||
|
||
|
||
}
|
||
|
||
|
||
protected void btnYSTZ_Click(object sender, EventArgs e)
|
||
{
|
||
if (!txtSelBJDID.Value.Trim().Equals("") && !txtSelBJDXH.Value.Trim().Equals(""))
|
||
{
|
||
|
||
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "CXBJD_YSTZInfo.aspx";
|
||
tpp.AddString("BJDID", txtSelBJDID.Value);
|
||
tpp.AddString("BJDXH", txtSelBJDXH.Value);
|
||
tpp.AddString("RefreshCtrlID", btnRefresh.ClientID);
|
||
OpenDialog(tpp);
|
||
}
|
||
}
|
||
|
||
protected void btnWLTZ_Click(object sender, EventArgs e)
|
||
{
|
||
if (!txtSelBJDID.Value.Trim().Equals("") && !txtSelBJDXH.Value.Trim().Equals(""))
|
||
{
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "CXBJD_WLTZInfo.aspx";
|
||
tpp.AddString("BJDID", txtSelBJDID.Value);
|
||
tpp.AddString("BJDXH", txtSelBJDXH.Value);
|
||
tpp.AddString("WLID", txtSelWLID.Value);
|
||
tpp.AddString("RefreshCtrlID", btnRefresh.ClientID);
|
||
OpenDialog(tpp);
|
||
}
|
||
}
|
||
|
||
protected void btnRefresh_Click(object sender, EventArgs e)
|
||
{
|
||
int dex = grdContentGrid.SelectedIndex;
|
||
moduleGV_PageIndexChanging(null, null);
|
||
grdContentGrid.SelectedIndex = dex;
|
||
}
|
||
|
||
protected void btnRefreshZT_Click(object sender, EventArgs e)
|
||
{
|
||
if (!PageParam.GetRTrimString("BJDID").Equals(""))
|
||
{
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJDMX_BJDID").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_BJRQ").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_WPID").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_TXY").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_KH").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XMD").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_XMMC").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_XSBMID").Visible = false;
|
||
grdContentGrid.FindColumnByFieldName("XLXSBJD_XSQYID").Visible = false;
|
||
lblXSBM.Visible = true;
|
||
txtXSBM.Visible = true;
|
||
lblXSQY.Visible = true;
|
||
txtXSQY.Visible = true;
|
||
string sWfAwaiter = GetBJDDCLR(PageParam.GetRTrimString("BJDID"));
|
||
if (sWfAwaiter.Contains("," + tSession.UserId + ","))
|
||
{
|
||
if (!CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from BJD where BJD_BJDID='{0}'", PageParam.GetRTrimString("BJDID"))) || txtZJFK.Value == "Y")
|
||
{
|
||
grdContentGrid.CheckBox = true;
|
||
btnPLSZ.Visible = true;
|
||
}
|
||
else
|
||
{
|
||
grdContentGrid.CheckBox = false;
|
||
btnPLSZ.Visible = false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
grdContentGrid.CheckBox = false;
|
||
btnPLSZ.Visible = false;
|
||
}
|
||
}
|
||
MenuAreaUpdate();
|
||
btnRefresh_Click(null, null);
|
||
}
|
||
|
||
protected void btnRefreshAndQR_Click(object sender, EventArgs e)
|
||
{
|
||
btnRefresh_Click(null, null);
|
||
if (txtNeedQR.Value.Equals("Y"))
|
||
{
|
||
btnBJDQR_Click(null, null);
|
||
}
|
||
}
|
||
|
||
protected void btnXDXLXHSZ_Click(object sender, EventArgs e)
|
||
{
|
||
string sBJDID = PageParam.GetRTrimString("BJDID").Trim();
|
||
if (sBJDID.Equals(""))
|
||
sBJDID = txtSelBJDID.Value.Trim();
|
||
|
||
base.InitEntityByCondition();
|
||
if (txtXLXHID.Value.Trim().Equals("") && txtXLBZID.Value.Trim().Equals("") && txtDZSC.Value.Trim().Equals(""))
|
||
return;
|
||
string sXHList = "";
|
||
if (!string.IsNullOrEmpty(grdContentGrid.CheckedRowIndexs))
|
||
{
|
||
foreach (string sCheckedIndex in grdContentGrid.CheckedRowIndexs.Split(','))
|
||
{
|
||
string stmpXH = grdContentGrid.DataKeys[CMISproConvert.StrToInt(sCheckedIndex)]["XLXSBJDMX_XH"].ToString().Trim();
|
||
if (!sXHList.Equals(""))
|
||
sXHList += ",";
|
||
sXHList += stmpXH;
|
||
}
|
||
}
|
||
if (!txtXDXHXH.Value.Trim().Equals(""))
|
||
{
|
||
sXHList = txtXDXHXH.Value;
|
||
txtXDXHXH.Value = "";
|
||
}
|
||
|
||
//更新下单型号或下单标准或生产标志
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
try
|
||
{
|
||
dberp.BeginTrans();
|
||
SQL.Clear();
|
||
SQL.Add(" update XLXSBJDMX set ");
|
||
if (!txtXLXHID.Value.Trim().Equals("") )
|
||
{
|
||
SQL.Add(" XLXSBJDMX_XDXLXHID=:pXHID ");
|
||
}
|
||
else if (!txtXLBZID.Value.Trim().Equals("") )
|
||
{
|
||
SQL.Add(" XLXSBJDMX_XDXLBZID=:pBZID ");
|
||
}
|
||
else if (!txtDZSC.Value.Trim().Equals(""))
|
||
{
|
||
SQL.Add(" XLXSBJDMX_DZSC=:pDZSC ");
|
||
}
|
||
SQL.Add(" WHERE XLXSBJDMX_BJDID = :pBJDID ");
|
||
if (!sXHList.Trim().Equals(""))
|
||
SQL.Add(" AND " + CMISproDataBase.GetWhereEqual("XLXSBJDMX_XH",sXHList));
|
||
else
|
||
{
|
||
//型号模糊
|
||
if (!CurQueryEntity.FieldByName("XLXHIDJQPP").Value.ToString().Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLXHID").Value.Trim()))
|
||
{
|
||
SQL.Add(" and XLXSBJDMX_XLXHID like :pXLXHID ");
|
||
SQL.ParamByName("pXLXHID").Value = "%" + CurQueryEntity.FieldByName("XLXHID").Value.Trim() + "%";
|
||
}
|
||
}
|
||
else
|
||
{
|
||
string sXLXHID = CurQueryEntity.FieldByName("XLXHID").Value.Trim();
|
||
if (!string.IsNullOrEmpty(sXLXHID))
|
||
{
|
||
string[] sTemp = sXLXHID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
|
||
if (sTemp.Length >= 2)
|
||
{
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJDMX_XLXHID", sXLXHID));
|
||
}
|
||
else
|
||
{
|
||
SQL.Add(" and XLXSBJDMX_XLXHID = :pXLXHID ");
|
||
SQL.ParamByName("pXLXHID").Value = sXLXHID;
|
||
}
|
||
}
|
||
}
|
||
if (CurQueryEntity.FieldByName("CXXHYBJCPBYZ").Value.Trim().Equals("True"))
|
||
{
|
||
SQL.Add(" AND XLXSBJDMX_BJCP not like '%'||ltrim(rtrim(XLXSBJDMX_XDXLXHID))||'%' ");
|
||
}
|
||
if (CurQueryEntity.FieldByName("CXZBDWPPWL").Value.Trim().Equals("True"))
|
||
{
|
||
SQL.Add(@" and not exists(select 1 from
|
||
(select XLXSBJXDWL_XLXHID as XLXHID,XLXSBJXDWL_XLGGID as XLGGID,XLXSBJXDWL_XLBZID as XLBZID,XLXSBJXDWL_DYDJID as DYDJID,min(XLXSBJXDWL_WLID) as minWLID
|
||
from XLXSBJXDWL
|
||
where 1=1
|
||
and exists(select 1 from WL where WL_WLID=XLXSBJXDWL_WLID and isnull(WL_TYBZ,' ')<>'Y')
|
||
group by XLXSBJXDWL_XLXHID,XLXSBJXDWL_XLGGID,XLXSBJXDWL_XLBZID,XLXSBJXDWL_DYDJID) c
|
||
where c.XLXHID=XLXSBJDMX_XDXLXHID and c.XLGGID=replace(XLXSBJDMX_XLGGID,'*','×') and c.XLBZID=XLXSBJDMX_XDXLBZID and c.DYDJID=XLXSBJDMX_DYDJID
|
||
)
|
||
|
||
and not exists (select 1 from
|
||
(select XSBJXHTH_BJXLXHID as XLXHID,XLXLB_XLGGID as XLGGID,XLXLB_XLBZID as XLBZID,XLXLB_DYDJID as DYDJID,XLXLB_XLYSID as XLYSID,minWLID
|
||
from (
|
||
select XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID,min(XLXLB_WLID)as minWLID
|
||
from XLXLB
|
||
where 1=1
|
||
and isnull(XLXLB_TYBZ,' ')<> 'Y'
|
||
and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y')
|
||
and exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID)
|
||
group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID
|
||
) tmpXL left join XSBJXHTH on XSBJXHTH_XLXHID=XLXLB_XLXHID
|
||
union all
|
||
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
|
||
from XLXLB
|
||
where isnull(XLXLB_TYBZ,' ')<>'Y'
|
||
and exists(select 1 from WL where WL_WLID=XLXLB_WLID and isnull(WL_TYBZ,' ')<>'Y')
|
||
and not exists(select 1 from XSBJXHTH where XSBJXHTH_XLXHID = XLXLB_XLXHID )
|
||
group by XLXLB_XLXHID,XLXLB_XLGGID,XLXLB_XLBZID,XLXLB_DYDJID,XLXLB_XLYSID
|
||
) a where a.XLXHID=XLXSBJDMX_XDXLXHID and a.XLGGID=replace(XLXSBJDMX_XLGGID,'*','×') and a.XLBZID=XLXSBJDMX_XDXLBZID and a.DYDJID=XLXSBJDMX_DYDJID and a.XLYSID=XLXSBJDMX_XLYSID
|
||
)
|
||
|
||
and isnull(XLXSBJDMX_WLID,' ') = ' ' and XLXSBJDMX_ZB in ('Y','P') ");
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("BJCP").Value.Trim()))
|
||
{
|
||
SQL.Add(" AND XLXSBJDMX_BJCP like :pBJCP ");
|
||
SQL.ParamByName("pBJCP").Value = "%" + CurQueryEntity.FieldByName("BJCP").Value.Trim() + "%";
|
||
}
|
||
}
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
if (!txtXLXHID.Value.Trim().Equals(""))
|
||
{
|
||
SQL.ParamByName("pXHID").Value = txtXLXHID.Value.Trim();
|
||
}
|
||
else if (!txtXLBZID.Value.Trim().Equals(""))
|
||
{
|
||
SQL.ParamByName("pBZID").Value = txtXLBZID.Value.Trim();
|
||
}
|
||
else if (!txtDZSC.Value.Trim().Equals(""))
|
||
{
|
||
SQL.ParamByName("pDZSC").Value = txtDZSC.Value.Trim();
|
||
}
|
||
dberp.ExecSQL(SQL);
|
||
dberp.CommitTrans();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
ShowMessage(ex.Message);
|
||
dberp.RollbackTrans();
|
||
return;
|
||
}
|
||
btnRefresh_Click(null, null);
|
||
txtXLXHID.Value = "";
|
||
txtXLBZID.Value = "";
|
||
txtDZSC.Value = "";
|
||
}
|
||
#endregion
|
||
}
|
||
}
|