This commit is contained in:
2026-08-21 17:03:02 +08:00
commit f065129b20
2292 changed files with 666241 additions and 0 deletions
+399
View File
@@ -0,0 +1,399 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using GThinking.N_MODEL.Page;
using GThinking.N_MISPRO.Utility;
using GThinking.N_MISPRO.Data;
using GThinking.N_WORKFLOW;
using GThinking.N_PUBLIC;
using GThinking.N_MODEL.Dialog;
using GThinking.N_CONTROL;
using System.Text;
using System.Collections.Generic;
namespace GThinking.N_XLXSBJ
{
public partial class XLJGB_JGBMXQuery : SingleQueryBase
{
XLJGB_JGBMX_M queryentity = new XLJGB_JGBMX_M();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860001;
this.UMName = "线缆销售报价价格表";
this.CurMaster = Master;
this.CurQueryTable = QueryTalbe;
this.CurQueryEntity = queryentity;
if (!IsPostBack)
{
InitControl();
}
base.InitPage();
if (!IsPostBack)
{
if (PageParam.ContainsKey("FromJGBML"))
{
tbrJGB.Visible = false;
tbrFL.Visible = false;
cbxJGBID.SelectedValue = PageParam.GetRTrimString("JGBID");
}
}
}
protected override bool QueryLogicValid()
{
string sXLGGID = txtXLGGID.Text.Trim();
string[] sTempXLGGID = sXLGGID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (sTempXLGGID.Length >= 2 && chkXLGGIDJQPP.Checked == false)
{
ShowMessage("多规格查询时,规格精确匹配必须勾选!");
return false;
}
string sXLXHID = txtXLXHID.Text.Trim();
string[] sTempXLXHID = sXLXHID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (sTempXLXHID.Length >= 2 && chkXLXHIDJQPP.Checked == false)
{
ShowMessage("多型号查询时,型号精确匹配必须勾选!");
return false;
}
return base.QueryLogicValid();
}
protected override void SetComboxItems()
{
setCbxJGCZB();
}
#region 私有函数
private void InitControl()
{
cbxMXBH.ClearItems();
cbxMXBH.Items.Add(new ListItem("报价价格表", "JGB"));
cbxMXBH.Items.Add(new ListItem("基价价格表", "JGC"));
cbxMXBH.Items.Add(new ListItem("优先取价价格表", "JGF"));
cbxJGHC.ClearItems();
cbxJGHC.Items.Add(new ListItem("", ""));
cbxJGHC.Items.Add(new ListItem("表价<0", "1"));
cbxJGHC.Items.Add(new ListItem("表价<基价", "2"));
cbxJGHC.Items.Add(new ListItem("表价=基价", "3"));
cbxJGHC.Items.Add(new ListItem("表价>基价", "4"));
cbxWCLQD.ClearItems();
cbxWCLQD.Items.Add(new ListItem("", ""));
cbxWCLQD.Items.Add(new ListItem("有", "1"));
cbxWCLQD.Items.Add(new ListItem("无", "2"));
cbxWCLQD.ShowValue = false;
cbxWGCP.ClearItems();
cbxWGCP.Items.Add(new ListItem("", ""));
cbxWGCP.Items.Add(new ListItem("是", "1"));
cbxWGCP.Items.Add(new ListItem("否", "2"));
cbxWGCP.ShowValue = false;
cbxXLCP.ClearItems();
cbxXLCP.Items.Add(new ListItem("", ""));
cbxXLCP.Items.Add(new ListItem("有", "1"));
cbxXLCP.Items.Add(new ListItem("无", "2"));
cbxXLCP.ShowValue = false;
TComboBox.SetComboBox("DBERP", cbxWJGBYS1, "select XLXSTZYZ_YZID,XLXSTZYZ_YZMC from XLXSTZYZ where XLXSTZYZ_MXBH='JZJ' AND XLXSTZYZ_TJYS='1' ORDER BY XLXSTZYZ_YZID", true);
TComboBox.SetComboBox("DBERP", this.cbxST, "select XLBZ_XLBZID,XLBZ_XLBZLXMC from XLBZ where isnull(XLBZ_DZSC,'N')='N' order by XLBZ_PX,XLBZ_XLBZID", true);
TComboBox.SetComboBox("DBERP", cbxDYDJID, "select distinct XLDYDJB_DYDJID as ID,XLDYDJB_DYDJID as Name from XLDYDJB where 1=1 order by ID ", true);
TComboBox.SetComboBox("DBERP", cbxDTCL, "select XLDTCLB_DTCLID,XLDTCLB_WLMC from XLDTCLB where XLDTCLB_WLID =' ' order by XLDTCLB_DTCLID ", true);
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("SELECT XLXSJGB_JGBID,XLXSJGB_YXQS,XLXSJGB_YXQZ,XLXSJGB_JGBMC from XLXSJGB ");
sql.Add("where XLXSJGB_MXBH=:pMXBH ");
if (!GetOption("BJU016").Equals(""))
{
sql.Add(" and (isnull(XLXSJGB_CPMLID,' ')=' ' or " + CMISproDataBase.GetWhereEqual("XLXSJGB_CPMLID", GetOption("BJU016")) + ") ");
}
sql.Add("order by XLXSJGB_JGBID");
sql.ParamByName("pMXBH").Value = cbxMXBH.SelectedValue.Trim();
DataSet ds = dberp.OpenDataSet(sql);
cbxJGBID.ClearItems();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string sJGBID = ds.Tables[0].Rows[i]["XLXSJGB_JGBID"].ToString().Trim();
string sYXQS = ds.Tables[0].Rows[i]["XLXSJGB_YXQS"].ToString().Trim();
string sYXQZ = ds.Tables[0].Rows[i]["XLXSJGB_YXQZ"].ToString().Trim();
string sJGBMC = ds.Tables[0].Rows[i]["XLXSJGB_JGBMC"].ToString().Trim();
if (sYXQS.Equals(""))
sYXQS = "--";
else
sYXQS = CMISproConvert.ConvertDate(sYXQS);
if (sYXQZ.Equals(""))
sYXQZ = "--";
else
sYXQZ = CMISproConvert.ConvertDate(sYXQZ);
if (sJGBMC.Equals(""))
cbxJGBID.Items.Add(new ListItem(sJGBID + "|" + sYXQS + "至" + sYXQZ, sJGBID));
else
cbxJGBID.Items.Add(new ListItem(sJGBID + "|" + sYXQS + "至" + sYXQZ + "|" + sJGBMC, sJGBID));
}
sql.Clear();
sql.Add("select JGCZBID,XLJGCZBML_JGCZBMC as JGCZBMC,JGCZBBBID ");
sql.Add("from ");
sql.Add("( ");
sql.Add(" select distinct XLXSCLQD_JGCZBID as JGCZBID, XLXSCLQD_JGCZBBBID as JGCZBBBID");
sql.Add(" from XLXSCLQD where 1=1 and XLXSCLQD_WPID ='ZZZZ' ");
sql.Add(") a left join XLJGCZBML on XLJGCZBML_JGCZBID=JGCZBID ");
sql.Add("order by JGCZBID");
ds = dberp.OpenDataSet(sql);
cbxJGCZB.ClearItems();
cbxJGCZB.Items.Add(new ListItem("", ""));
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string sJGCZBBBID = ds.Tables[0].Rows[i]["JGCZBBBID"].ToString().Trim();
cbxJGCZB.Items.Add(new ListItem(ds.Tables[0].Rows[i]["JGCZBID"].ToString().Trim() + "|" + ds.Tables[0].Rows[i]["JGCZBMC"].ToString().Trim() + "|" + sJGCZBBBID
, ds.Tables[0].Rows[i]["JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID));
}
}
private string GetJGCIDS(string sJGBID, string sMXBH)
{
string sJGCIDS = sJGBID;
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("SELECT XLXSJGB_JGCIDS from XLXSJGB ");
sql.Add("where XLXSJGB_MXBH=:pMXBH ");
sql.Add(" and XLXSJGB_JGBID = :pJGBID ");
sql.ParamByName("pMXBH").Value = sMXBH;
sql.ParamByName("pJGBID").Value = sJGBID;
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
sJGCIDS = sJGCIDS + "," + ds.Tables[0].Rows[0][0].ToString().Trim();
}
sJGCIDS = sJGCIDS.TrimStart(',').TrimEnd(',');
return sJGCIDS;
}
private void setCbxJGCZB()
{
string sJGCIDS = GetJGCIDS(cbxJGBID.SelectedValue.Trim(), cbxMXBH.SelectedValue.Trim());
//结构尺重表之前的值
string sOLDJGCZB = cbxJGCZB.SelectedValue.Trim();
int flag = 0;
cbxJGCZB.ClearItems();
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Clear();
sql.Add("select distinct XLJGCZBML_JGCZBID as JGCZBID,XLJGCZBML_JGCZBMC as JGCZBMC,XLJGCZBML_JGCZBBBID as JGCZBBBID ");
sql.Add(" from XLJGCZBML ");
sql.Add(" where exists( ");
sql.Add(" select 1 ");
sql.Add(" from XLXSJGBMX");
sql.Add(" left join XLXSCLQD on XLXSCLQD_XLXHID = XLXSJGBMX_XLXHID and XLXSCLQD_XLGGID = XLXSJGBMX_XLGGID");
sql.Add(" and XLXSCLQD_XLBZID = XLXSJGBMX_XLBZID and XLXSCLQD_DYDJID = isnull(XLXSJGBMX_DYDJID,' ')");
sql.Add(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSCLQD_XLGGID");
sql.Add(" where " + CMISproDataBase.GetWhereEqual("XLXSJGBMX_JGBID", sJGCIDS));
sql.Add(" and XLXSCLQD_WPID ='ZZZZ' and XLXSCLQD_JGCZBID=XLJGCZBML_JGCZBID and XLXSCLQD_JGCZBBBID=XLJGCZBML_JGCZBBBID ");
if (!txtXLXHID.Text.Trim().Equals(""))
{
string sXLXHID = txtXLXHID.Text.Trim();
string[] sTemp = sXLXHID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (sTemp.Length >= 2)
{
if (chkXLXHIDJQPP.Checked == false)
{
chkXLXHIDJQPP.Checked = true;
}
sql.Add(" and " + CMISproDataBase.GetWhereEqual(" XLXSCLQD_XLXHID", sXLXHID));
}
else
{
if (chkXLXHIDJQPP.Checked == true)
{
sql.Add(" and XLXSCLQD_XLXHID = :pXLXHID ");
sql.ParamByName("pXLXHID").Value = sXLXHID;
}
else
{
sql.Add(" and XLXSCLQD_XLXHID like :pXLXHID ");
sql.ParamByName("pXLXHID").Value = "%" + sXLXHID + "%";
}
}
}
if (!txtXLGGID.Text.Trim().Equals(""))
{
string sXLGGID = txtXLGGID.Text.Trim();
string[] sTemp = sXLGGID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (sTemp.Length >= 2)
{
//区别
sql.Add(" and " + CMISproDataBase.GetWhereEqual(" XLXSBJXLGGTHB_XLGGIDCH", sXLGGID.Replace('*', '×')));
}
else
{
if (chkXLGGIDJQPP.Checked == true)
{
sql.Add(" and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID ");
sql.ParamByName("pXLGGID").Value = txtXLGGID.Text.Trim().Replace('*', '×');
}
else
{
sql.Add(" and XLXSBJXLGGTHB_XLGGIDCH like :pXLGGID ");
sql.ParamByName("pXLGGID").Value = "%" + txtXLGGID.Text.Trim().Replace('*', '×') + "%";
}
}
}
if (!txtJGCZBID2.Text.Trim().Equals(""))
{
sql.Add(" and XLXSCLQD_JGCZBID = :pJGCZBID");
sql.ParamByName("pJGCZBID").Value = txtJGCZBID2.Text.Trim();
}
if (!cbxST.SelectedValue.Trim().Equals(""))
{
sql.Add(" and XLXSCLQD_XLBZID = :pXLBZID");
sql.ParamByName("pXLBZID").Value = cbxST.SelectedValue.Trim();
}
if (!cbxDYDJID.SelectedValue.Trim().Equals(""))
{
sql.Add(" and XLXSCLQD_DYDJID = :pDYDJID");
sql.ParamByName("pDYDJID").Value = cbxDYDJID.SelectedValue.Trim();
}
sql.Add(" ) ");
sql.Add("order by XLJGCZBML_JGCZBID");
DataSet ds = dberp.OpenDataSet(sql);
if (ds.Tables[0].Rows.Count > 0)
{
cbxJGCZB.Items.Add(new ListItem("", ""));
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string sJGCZBBBID = ds.Tables[0].Rows[i]["JGCZBBBID"].ToString().Trim();
cbxJGCZB.Items.Add(new ListItem(ds.Tables[0].Rows[i]["JGCZBID"].ToString().Trim() + "|" + ds.Tables[0].Rows[i]["JGCZBMC"].ToString().Trim() + "|" + sJGCZBBBID
, ds.Tables[0].Rows[i]["JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID));
if (sOLDJGCZB.Equals(ds.Tables[0].Rows[i]["JGCZBID"].ToString().Trim() + "|" + sJGCZBBBID))
{
flag = 1;
}
}
if (1 == flag)
{
cbxJGCZB.SelectedValue = sOLDJGCZB;
cbxJGCZB_SelectedIndexChanged(null, null);
}
}
}
#endregion
#region 控件事件
protected void cbxMXBH_SelectedIndexChanged(object sender, EventArgs e)
{
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sql = new TSQL(dberp);
sql.Add("SELECT XLXSJGB_JGBID,XLXSJGB_YXQS,XLXSJGB_YXQZ,XLXSJGB_JGBMC from XLXSJGB ");
sql.Add("where XLXSJGB_MXBH=:pMXBH ");
if (!GetOption("BJU016").Equals(""))
{
sql.Add(" and (isnull(XLXSJGB_CPMLID,' ')=' ' or " + CMISproDataBase.GetWhereEqual("XLXSJGB_CPMLID", GetOption("BJU016")) + ") ");
}
sql.Add("order by XLXSJGB_YXQS desc,ISNULL(XLXSJGB_YXQZ,'9999-12-31') desc,XLXSJGB_JGBID ");
sql.ParamByName("pMXBH").Value = cbxMXBH.SelectedValue.Trim();
DataSet ds = dberp.OpenDataSet(sql);
cbxJGBID.ClearItems();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
string sJGBID = ds.Tables[0].Rows[i]["XLXSJGB_JGBID"].ToString().Trim();
string sYXQS = ds.Tables[0].Rows[i]["XLXSJGB_YXQS"].ToString().Trim();
string sYXQZ = ds.Tables[0].Rows[i]["XLXSJGB_YXQZ"].ToString().Trim();
string sJGBMC = ds.Tables[0].Rows[i]["XLXSJGB_JGBMC"].ToString().Trim();
if (sYXQS.Equals(""))
sYXQS = "--";
else
sYXQS = CMISproConvert.ConvertDate(sYXQS);
if (sYXQZ.Equals(""))
sYXQZ = "--";
else
sYXQZ = CMISproConvert.ConvertDate(sYXQZ);
if (sJGBMC.Equals(""))
cbxJGBID.Items.Add(new ListItem(sJGBID + "|" + sYXQS + "至" + sYXQZ, sJGBID));
else
cbxJGBID.Items.Add(new ListItem(sJGBID + "|" + sYXQS + "至" + sYXQZ + "|" + sJGBMC, sJGBID));
}
}
protected void cbxJGBID_SelectedIndexChanged(object sender, EventArgs e)
{
cbxLZYZ.ClearItems();
cbxLZYZ.Items.Add(new ListItem("", ""));
if (!cbxJGBID.SelectedValue.Trim().Equals(""))
{
List<TZYZXX> yzxx_List = XLBJDUtils.GetJGBYZOrderByXSXH(cbxJGBID.SelectedValue.Trim());
foreach (TZYZXX yzxx in yzxx_List)
{
cbxLZYZ.Items.Add(new ListItem(yzxx.XLXSTZYZ_YZMC.Trim(), yzxx.XLXSTZYZ_YZID.Trim()));
}
}
txtXLXHID_OnTextChanged(null, null);
}
protected void cbxJGCZB_SelectedIndexChanged(object Sender, EventArgs e)
{
if (!cbxJGCZB.SelectedValue.Trim().Equals(""))
txtJGCZBBBID.Text = cbxJGCZB.SelectedValue.Trim().Split('|')[1];
else
txtJGCZBBBID.Text = "";
}
protected void txtXLXHID_OnTextChanged(object Sender, EventArgs e)
{
if (IsPostBack)
setCbxJGCZB();
}
protected void txtXLGGID_OnTextChanged(object Sender, EventArgs e)
{
if (IsPostBack)
setCbxJGCZB();
}
protected void chkXLXHIDJQPP_OnCheckedChanged(object Sender, EventArgs e)
{
string sXLXHID = txtXLXHID.Text.Trim();
string[] sTemp = sXLXHID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (sTemp.Length >= 2)
{
}
else
{
txtXLXHID_OnTextChanged(null, null);
}
}
protected void chkXLGGIDJQPP_OnCheckedChanged(object Sender, EventArgs e)
{
string sXLGGID = txtXLGGID.Text.Trim();
string[] sTemp = sXLGGID.Split(new Char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (sTemp.Length >= 2)
{
}
else
{
txtXLGGID_OnTextChanged(null, null);
}
}
#endregion
}
}