2660 lines
138 KiB
C#
2660 lines
138 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_MODEL.Page;
|
||
using GThinking.N_MISPRO.Utility;
|
||
using GThinking.N_MISPRO.Data;
|
||
using GThinking.N_CONTROL;
|
||
using System.Collections.Generic;
|
||
using System.Text;
|
||
using GThinking.N_MISPRO.TableCache;
|
||
using GThinking.N_MISPRO;
|
||
using GThinking.N_MISPROAS.MISproAS;
|
||
using GThinking.N_WORKFLOW;
|
||
using GThinking.N_PUBLIC;
|
||
|
||
namespace GThinking.N_XLXSBJ
|
||
{
|
||
public partial class XLXSBJCXList : SingleGridBase
|
||
{
|
||
XLXSBJCX entity = new XLXSBJCX();
|
||
XLXSBJCX_M queryentity = new XLXSBJCX_M();
|
||
|
||
static Dictionary<string, string> dicBJDYZMC = new Dictionary<string, string>();
|
||
static Dictionary<string, string> dicBJDYZJJFS = new Dictionary<string, string>();
|
||
static List<string> lstTJYS = new List<string>();
|
||
static string sCXDX = "";
|
||
static string sCurBJFLID = "";
|
||
static int iXSWS = 0;
|
||
static bool JcModule = false;
|
||
static string sTcpList = "";
|
||
static string sLcpList = "";
|
||
static string sTLcpList = "";
|
||
static bool bXSBJDHQLJ = false;
|
||
static bool bXSLJ = false;
|
||
static bool bXSJCL = false;
|
||
static bool bXSLJJCL = false;
|
||
static bool bXSJGBBJJCE = false;
|
||
static bool bXSZDXJ = false;
|
||
static bool bXSJSJG = false;
|
||
static bool bXSTZJG = false;
|
||
static bool bXSTZJE = false;
|
||
static string sCPBJMRXSWS = "";
|
||
static string sMXBH = "";
|
||
static string sTBJCLID = "";
|
||
static string sLBJCLID = "";
|
||
static int iNumberDecimalPlace = 0;
|
||
static string sKHLY = "";
|
||
static bool QYXZQH = false;
|
||
|
||
|
||
private string sBJFLID = "";
|
||
private string sTXY = "";
|
||
private string sKH = "";
|
||
private string sKHLXR = "";
|
||
private string sBJDLX = "";
|
||
private string sBJDID = "";
|
||
private string sXSQYID = "";
|
||
private string sSYDWID = "";
|
||
|
||
private int tmpXSWS = 0;
|
||
|
||
#region pageload 事件
|
||
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
this.UMID = 100860069;
|
||
this.UMName = "线缆销售报价查询";
|
||
this.CurMaster = Master;
|
||
this.ModuleGV = this.grdContentGrid;
|
||
this.CurEntity = entity;
|
||
this.CurQueryEntity = queryentity;
|
||
this.sQueryURLTarget = "XLXSBJCXQuery.aspx";
|
||
this.sURLTarget = "";
|
||
this.PageHeight = 600;
|
||
this.PageWidth = 750;
|
||
if (!IsPostBack)
|
||
{
|
||
sBJDLX = PageParam.GetRTrimString("FromBJDINFO");
|
||
if (!sBJDLX.Equals("CFBJ"))
|
||
{
|
||
DateTime dtNow = DateTime.Now;
|
||
string dateNow = dtNow.ToShortDateString().Trim();
|
||
string dateFirst = dateNow.Split('-')[0] + "-" + dateNow.Split('-')[1] + "-01";
|
||
CurQueryEntity.FieldByName("BJRQS").Value = dateFirst;
|
||
CurQueryEntity.FieldByName("BJRQZ").Value = dateNow;
|
||
}
|
||
CurQueryEntity.FieldByName("PXFS").Value = "C";
|
||
}
|
||
this.Master.EnableCopyBtn = false;
|
||
this.Master.EnableDeleteBtn = false;
|
||
this.Master.EnableNewBtn = false;
|
||
this.Master.EnableEditBtn = false;
|
||
this.Master.EnableViewBtn = false;
|
||
|
||
base.DataKeyNames = new string[] { "XLXSBJD_BJDID","XLXSBJDMX_XH" };
|
||
|
||
|
||
InitToolBtn();
|
||
|
||
base.InitPage();
|
||
if (!IsPostBack)
|
||
{
|
||
//设置隐藏控件IsXJY、IsSJY、IsHJY
|
||
IsXJY.Value = "N";
|
||
IsSJY.Value = "N";
|
||
IsHJY.Value = "N";
|
||
|
||
TYGXX tRYXX = TRYXX.GetRYXXByGH(tSession.UserId);
|
||
string sXJYROLEID = string.Empty;
|
||
string sSJYROLEID = string.Empty;
|
||
string sHJYROLEID = string.Empty;
|
||
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860000);
|
||
if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_XJYROLEID))
|
||
sXJYROLEID = pzxx.XLXSBJPZ_XJYROLEID;
|
||
|
||
if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_SJYROLEID))
|
||
sSJYROLEID = pzxx.XLXSBJPZ_SJYROLEID;
|
||
|
||
if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_HJYROLEID))
|
||
sHJYROLEID = pzxx.XLXSBJPZ_HJYROLEID;
|
||
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from USERROLE where URUSERID='{0}' and " + CMISproDataBase.GetWhereEqual("URROLEID", sXJYROLEID), tRYXX.RYID)))
|
||
{
|
||
IsXJY.Value = "Y";
|
||
}
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from USERROLE where URUSERID='{0}' and " + CMISproDataBase.GetWhereEqual("URROLEID", sSJYROLEID), tRYXX.RYID)))
|
||
{
|
||
IsSJY.Value = "Y";
|
||
}
|
||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from USERROLE where URUSERID='{0}' and " + CMISproDataBase.GetWhereEqual("URROLEID", sHJYROLEID), tRYXX.RYID)))
|
||
{
|
||
IsHJY.Value = "Y";
|
||
}
|
||
}
|
||
|
||
InitGridView();
|
||
|
||
|
||
if (!IsPostBack)
|
||
{
|
||
if (!PageParam.GetRTrimString("FromBJDINFO").Trim().Equals(""))
|
||
{
|
||
Master_OnStandardQuery(null, null);
|
||
}
|
||
else
|
||
{
|
||
if (IsDefaultExecute)
|
||
{
|
||
Master_OnStandardQuery(null, null);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 模板事件继承
|
||
|
||
protected override void Master_OnStandardQuery(object sender, EventArgs e)
|
||
{
|
||
base.InitEntityByCondition();
|
||
entity.EntityTable.QuerySelSql = GetQuerySQL().ToString();
|
||
base.Master_OnStandardQuery(sender, e);
|
||
entity.GridDataBind(grdContentGrid, tSession);
|
||
}
|
||
|
||
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
|
||
{
|
||
base.InitEntityByCondition();
|
||
entity.EntityTable.QuerySelSql = GetQuerySQL().ToString();
|
||
grdContentGrid.SelectedIndex = -1;
|
||
base.moduleGV_PageIndexChanging(sender, e);
|
||
}
|
||
|
||
protected override void moduleGV_RowDataBound(object sender, GridViewRowEventArgs e)
|
||
{
|
||
if (e.Row.RowType == DataControlRowType.DataRow)
|
||
{
|
||
string sBJDID = grdContentGrid.DataKeys[e.Row.RowIndex]["XLXSBJD_BJDID"].ToString().Trim();
|
||
|
||
LinkPageParam.UMID = 100860000;
|
||
LinkPageParam.UrlPath = "XLBJDInfo.aspx";
|
||
LinkPageParam.AddString("XLXSBJD_BJDID", sBJDID);
|
||
|
||
//
|
||
string sCXDX = CurQueryEntity.FieldByName("CXDX").Value.Trim();
|
||
|
||
}
|
||
base.moduleGV_RowDataBound(sender, e);
|
||
}
|
||
#endregion
|
||
|
||
#region 自定义函数
|
||
|
||
|
||
private string AddCondition_A(string sFrom)
|
||
{
|
||
StringBuilder sSQL = new StringBuilder();
|
||
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("BJFLID").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJFLID", CurQueryEntity.FieldByName("BJFLID").Value.Trim()));
|
||
}
|
||
|
||
if (!CurQueryEntity.FieldByName("STATE").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_WPID", CurQueryEntity.FieldByName("STATE").Value.Trim()));
|
||
}
|
||
|
||
if (!string.IsNullOrEmpty(GetOption("HJU006").Trim()))
|
||
{
|
||
sSQL.AppendLine(" and (" + CMISproDataBase.GetWhereEqual("XLXSBJD_XSBMID", GetOption("HJU006").Trim()));
|
||
sSQL.AppendLine(" or isnull(XLXSBJD_XSBMID, ' ') = ' ')");
|
||
}
|
||
|
||
sSQL.AppendLine(" and isnull(XLXSBJD_YWLX,' ') = ' ' ");
|
||
return sSQL.ToString();
|
||
}
|
||
//通用查询条件---查询语句调用是为1
|
||
private string AddCondition(string sFrom)
|
||
{
|
||
StringBuilder sSQL = new StringBuilder();
|
||
if (!CurQueryEntity.FieldByName("DCBJCXSY").Value.ToString().Trim().ToUpper().Equals("TRUE"))
|
||
sSQL.AppendLine(" and ISNULL(XLXSBJD_TJBZ,'N') = 'Y' ");
|
||
if (!CurQueryEntity.FieldByName("FKZT").Value.Trim().Equals(""))
|
||
{
|
||
if (CurQueryEntity.FieldByName("FKZT").Value.Trim().Equals("未反馈"))
|
||
{
|
||
sSQL.AppendLine(" and isnull(TBBJFK_TBID, ' ') = ' ' ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("FKZT").Value.Trim().Equals("已反馈"))
|
||
{
|
||
sSQL.AppendLine(" and isnull(TBBJFK_TBID, ' ') <> ' ' ");
|
||
}
|
||
|
||
}
|
||
|
||
//反馈日期
|
||
sSQL.AppendLine(CMISproDataBase.GetTimeConditionSQL("TBBJFK_FKRQ",
|
||
CurQueryEntity.FieldByName("FKRQS").Value.ToString().Trim(),
|
||
CurQueryEntity.FieldByName("FKRQZ").Value.ToString().Trim(),
|
||
DateTimeType.dtDate, DateTimeType.dtDate));
|
||
|
||
|
||
if (!CurQueryEntity.FieldByName("BJDID").Value.Trim().Equals(""))
|
||
{
|
||
if (CurQueryEntity.FieldByName("BJDIDJQPP").Value.ToString().Trim().ToUpper().Equals("TRUE"))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_BJDID = :pBJDIDJQ ");
|
||
if (!entity.Param.ContainsKey("pBJDIDJQ"))
|
||
{
|
||
entity.Param.Add("pBJDIDJQ", CurQueryEntity.FieldByName("BJDID").Value.Trim());
|
||
}
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_BJDID like :pBJDID ");
|
||
if (!entity.Param.ContainsKey("pBJDID"))
|
||
{
|
||
entity.Param.Add("pBJDID", "%" + CurQueryEntity.FieldByName("BJDID").Value.Trim() + "%");
|
||
}
|
||
}
|
||
|
||
}
|
||
if (!CurQueryEntity.FieldByName("XSDW").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_SYDWID = :pXSDWID ");
|
||
entity.Param.Add("pXSDWID", CurQueryEntity.FieldByName("XSDW").Value.Trim());
|
||
}
|
||
if (!CurQueryEntity.FieldByName("XSQY").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_XSQYID = :pXSQYID ");
|
||
entity.Param.Add("pXSQYID", CurQueryEntity.FieldByName("XSQY").Value.Trim());
|
||
}
|
||
if (!CurQueryEntity.FieldByName("XSBM").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_XSBMID = :pXSBMID ");
|
||
entity.Param.Add("pXSBMID", CurQueryEntity.FieldByName("XSBM").Value.Trim());
|
||
}
|
||
if (!CurQueryEntity.FieldByName("SQRGH").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_SQRGH", CurQueryEntity.FieldByName("SQRGH").Value.Trim()));
|
||
}
|
||
if (!CurQueryEntity.FieldByName("TXY").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_TXY = :pTXY ");
|
||
if (!entity.Param.ContainsKey("pTXY"))
|
||
{
|
||
entity.Param.Add("pTXY", CurQueryEntity.FieldByName("TXY").Value.Trim());
|
||
}
|
||
}
|
||
|
||
if (!CurQueryEntity.FieldByName("KH").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_KH like :pKH ");
|
||
if (!entity.Param.ContainsKey("pKH"))
|
||
{
|
||
entity.Param.Add("pKH", "%" + CurQueryEntity.FieldByName("KH").Value.Trim() + "%");
|
||
}
|
||
}
|
||
if (!CurQueryEntity.FieldByName("KHLXR").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_KHLXR like :pKHLXR ");
|
||
if (!entity.Param.ContainsKey("pKHLXR"))
|
||
{
|
||
entity.Param.Add("pKHLXR", "%" + CurQueryEntity.FieldByName("KHLXR").Value.Trim() + "%");
|
||
}
|
||
}
|
||
if (!CurQueryEntity.FieldByName("XM").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_XMMC like :pXM ");
|
||
if (!entity.Param.ContainsKey("pXM"))
|
||
{
|
||
entity.Param.Add("pXM", "%" + CurQueryEntity.FieldByName("XM").Value.Trim() + "%");
|
||
}
|
||
}
|
||
if (!CurQueryEntity.FieldByName("FKQX").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_FKQXNR like :pFKQX ");
|
||
if (!entity.Param.ContainsKey("pFKQX"))
|
||
{
|
||
entity.Param.Add("pFKQX", "%" + CurQueryEntity.FieldByName("FKQX").Value.Trim() + "%");
|
||
}
|
||
}
|
||
return sSQL.ToString();
|
||
}
|
||
|
||
//主表相关限制条件---查询语句调用是为Qry
|
||
private string AddConditionBJD(string sFrom)
|
||
{
|
||
//entity.Param.Clear();
|
||
StringBuilder sSQL = new StringBuilder();
|
||
if (!CurQueryEntity.FieldByName("ZB").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and (1<>1 ");
|
||
if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("1"))
|
||
{
|
||
sSQL.AppendLine(" or isnull(XLXSBJD_ZB,'N') = 'Y' ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("0"))
|
||
{
|
||
sSQL.AppendLine(" or (isnull(XLXSBJD_ZB,'N') = 'N' AND EXISTS(SELECT 1 FROM XLXSBJDMX WHERE XLXSBJDMX_BJDID=XLXSBJD_BJDID AND XLXSBJDMX_ZB = 'N')) ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("2"))
|
||
{
|
||
sSQL.AppendLine(" or (isnull(XLXSBJD_ZB,'N') = 'N' AND NOT EXISTS(SELECT 1 FROM XLXSBJDMX WHERE XLXSBJDMX_BJDID=XLXSBJD_BJDID AND XLXSBJDMX_ZB IN ('N','Q'))) ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("3"))
|
||
{
|
||
sSQL.AppendLine(" or (isnull(XLXSBJD_ZB,'N') = 'N' AND NOT EXISTS(SELECT 1 FROM XLXSBJDMX WHERE XLXSBJDMX_BJDID=XLXSBJD_BJDID AND XLXSBJDMX_ZB IN ('N','F')))");
|
||
}
|
||
sSQL.AppendLine(" ) ");
|
||
}
|
||
|
||
//报价金额
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("BJZJES").Value.Trim()) && !CurQueryEntity.FieldByName("BJZJES").Value.Trim().Equals("0"))
|
||
{
|
||
sSQL.AppendLine( string.Format(" and XLXSBJD_ZJE >={0} ", CurQueryEntity.FieldByName("BJZJES").Value.Trim()));
|
||
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("BJZJEZ").Value.Trim()) && !CurQueryEntity.FieldByName("BJZJEZ").Value.Trim().Equals("0"))
|
||
{
|
||
sSQL.AppendLine(string.Format(" and XLXSBJD_ZJE <={0} ", CurQueryEntity.FieldByName("BJZJEZ").Value.Trim()));
|
||
}
|
||
|
||
//主表查询时按报价单明细调价因子平均值过滤
|
||
for (int i = 1; i <= 20; i++)
|
||
{
|
||
string sNo = i.ToString("00");
|
||
string sFieldS = "TJYZ" + sNo + "S";
|
||
string sFieldZ = "TJYZ" + sNo + "Z";
|
||
string sValueS = CurQueryEntity.FieldByName(sFieldS).Value.Trim();
|
||
string sValueZ = CurQueryEntity.FieldByName(sFieldZ).Value.Trim();
|
||
string sColumn = "TZYZ_BJ" + sNo;
|
||
if (!string.IsNullOrEmpty(sValueS) && !sValueS.Equals("0"))
|
||
{
|
||
string sParam = "pBJD" + sFieldS;
|
||
sSQL.AppendLine(" and isnull(" + sColumn + ",0) >= :" + sParam + " ");
|
||
if (!entity.Param.ContainsKey(sParam))
|
||
{
|
||
entity.Param.Add(sParam, sValueS);
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(sValueZ) && !sValueZ.Equals("0"))
|
||
{
|
||
string sParam = "pBJD" + sFieldZ;
|
||
sSQL.AppendLine(" and " + sColumn + " <= :" + sParam + " ");
|
||
if (!entity.Param.ContainsKey(sParam))
|
||
{
|
||
entity.Param.Add(sParam, sValueZ);
|
||
}
|
||
}
|
||
}
|
||
|
||
//增加限制,以防止明细数据为空
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLXHID").Value.Trim())
|
||
|| !string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLGGID").Value.Trim())
|
||
|| !string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLBZID").Value.Trim())
|
||
|| !string.IsNullOrEmpty(CurQueryEntity.FieldByName("DYDJID").Value.Trim())
|
||
|| !string.IsNullOrEmpty(CurQueryEntity.FieldByName("BJCP").Value.Trim())
|
||
|| !CurQueryEntity.FieldByName("CPYT").Value.Trim().Equals("")
|
||
|| !CurQueryEntity.FieldByName("CPML").Value.Trim().Equals("") )
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJD_BJDID in ( ");
|
||
sSQL.AppendLine(" select distinct XLXSBJDMX_BJDID from XLXSBJDMX ");
|
||
sSQL.AppendLine(" left join XLXSBJD on XLXSBJD_BJDID = XLXSBJDMX_BJDID ");
|
||
sSQL.AppendLine(" left join XLXSBJFL on XLXSBJFL_BJFLID = XLXSBJD_BJFLID ");
|
||
sSQL.AppendLine(" left join TBBJFK on TBBJFK_BJDID=XLXSBJDMX_BJDID ");
|
||
sSQL.AppendLine(" left join XLXHB on XLXHB_XLXHID = XLXSBJDMX_XLXHID ");
|
||
sSQL.AppendLine(" left join XLCPYT on XLCPYT_CPYT = XLXHB_CPYT ");
|
||
sSQL.AppendLine(" left join XLXSBJXLGGTHB on XLXSBJXLGGTHB_XLGGID = XLXSBJDMX_XLGGID ");
|
||
sSQL.AppendLine(" left join XLXSBJXHML A on A.XLXSBJXHML_XLXHID = XLXSBJDMX_XLXHID and A.XLXSBJXHML_DYDJID = isnull(XLXSBJDMX_DYDJID, ' ') ");
|
||
sSQL.AppendLine(" left join XLXSBJXHML B on B.XLXSBJXHML_XLXHID = XLXSBJDMX_XLXHID and B.XLXSBJXHML_DYDJID = ' ' ");
|
||
sSQL.AppendLine(" left join XLXSCPML on XLXSCPML_CPMLID = case when ISNULL(A.XLXSBJXHML_CPMLID,' ') = ' ' then ISNULL(B.XLXSBJXHML_CPMLID,' ') else ISNULL(A.XLXSBJXHML_CPMLID,' ') end ");
|
||
sSQL.AppendLine(" where 1=1");
|
||
sSQL.AppendLine(" and XLXSBJDMX_BJDID = XLXSBJD_BJDID ");
|
||
sSQL.AppendLine(AddConditionBJDMX("BJD"));
|
||
sSQL.AppendLine(" )");
|
||
}
|
||
return sSQL.ToString();
|
||
}
|
||
|
||
//明细表相关限制条件---查询语句调用是为Qry,主记录调用是BJD
|
||
private string AddConditionBJDMX(string sFrom)
|
||
{
|
||
string sBJU003 = GetOption(100860000, "BJU003").Trim();
|
||
Dictionary<string, double> dicLenJLDWTD = XLBJDUtils.GetLenJLDWTD();
|
||
|
||
//entity.Param.Clear();
|
||
StringBuilder sSQL = new StringBuilder();
|
||
if (!CurQueryEntity.FieldByName("ZB").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and (1<>1 ");
|
||
if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("1"))
|
||
{
|
||
sSQL.AppendLine(" or isnull(XLXSBJDMX_ZB,' ') in ('Y','P')");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("0"))
|
||
{
|
||
sSQL.AppendLine(" or isnull(XLXSBJDMX_ZB,' ') = 'N'");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("2"))
|
||
{
|
||
sSQL.AppendLine(" or isnull(XLXSBJDMX_ZB,' ') = 'F'");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("ZB").Value.Trim().Contains("3"))
|
||
{
|
||
sSQL.AppendLine(" or isnull(XLXSBJDMX_ZB,' ') = 'Q' ");
|
||
}
|
||
sSQL.AppendLine(" ) ");
|
||
}
|
||
//型号模糊
|
||
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 ");
|
||
if (!entity.Param.ContainsKey("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 ");
|
||
if (!entity.Param.ContainsKey("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 ");
|
||
if (!entity.Param.ContainsKey("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 " + XLBJDUtils.GetWhereEqual(" XLXSBJXLGGTHB_XLGGIDCH", sXLGGID.Replace('*', '×')));
|
||
}
|
||
else
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJXLGGTHB_XLGGIDCH = :pXLGGID ");
|
||
if (!entity.Param.ContainsKey("pXLGGID"))
|
||
{
|
||
entity.Param.Add("pXLGGID", CurQueryEntity.FieldByName("XLGGID").Value.Trim().Replace("*", "×"));
|
||
}
|
||
}
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("XLBZID").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJDMX_XLBZID = :pXLBZID ");
|
||
if (!entity.Param.ContainsKey("pXLBZID"))
|
||
{
|
||
entity.Param.Add("pXLBZID", CurQueryEntity.FieldByName("XLBZID").Value.Trim());
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("DYDJID").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine(" and XLXSBJDMX_DYDJID = :pDYDJID ");
|
||
if (!entity.Param.ContainsKey("pDYDJID"))
|
||
{
|
||
entity.Param.Add("pDYDJID", CurQueryEntity.FieldByName("DYDJID").Value.Trim());
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("BJCP").Value.Trim()))
|
||
{
|
||
sSQL.AppendLine(" \r\n and XLXSBJDMX_BJCP like :pBJCP ");
|
||
if (!entity.Param.ContainsKey("pBJCP"))
|
||
{
|
||
entity.Param.Add("pBJCP", "%" + CurQueryEntity.FieldByName("BJCP").Value.Trim() + "%");
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("DZSC").Value.Trim()))
|
||
{
|
||
if (CurQueryEntity.FieldByName("DZSC").Value.Trim().Equals("Y"))
|
||
sSQL.AppendLine(" and isnull(XLXSBJDMX_DZSC,'N')='Y' ");
|
||
else
|
||
sSQL.AppendLine(" and isnull(XLXSBJDMX_DZSC,'N')='N' ");
|
||
}
|
||
if (!CurQueryEntity.FieldByName("CPYT").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXHB_CPYT = :pCPYT ");
|
||
if (!entity.Param.ContainsKey("pCPYT"))
|
||
{
|
||
entity.Param.Add("pCPYT", CurQueryEntity.FieldByName("CPYT").Value.Trim());
|
||
}
|
||
}
|
||
if (!CurQueryEntity.FieldByName("CPML").Value.Trim().Equals(""))
|
||
{
|
||
sSQL.AppendLine(" and XLXSCPML_CPMLID = :pCPMLID ");
|
||
if (!entity.Param.ContainsKey("pCPMLID"))
|
||
{
|
||
entity.Param.Add("pCPMLID", CurQueryEntity.FieldByName("CPML").Value.Trim());
|
||
}
|
||
}
|
||
if (!CurQueryEntity.FieldByName("BJSLS").Value.Trim().Equals("") && !CurQueryEntity.FieldByName("BJSLS").Value.Trim().Equals("0"))
|
||
{
|
||
sSQL.AppendLine(" and (case ");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('Kg', '千克', '公斤') then (case when isnull(XLXSCLQD_CLZL,0.0)=0 then 0 else 1.0/RoundFix(isnull(XLXSCLQD_CLZL,0.0),6) end)");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('T', '吨') then (case when isnull(XLXSCLQD_CLZL,0.0)=0 then 0 else 1.0/RoundFix(isnull(XLXSCLQD_CLZL,0.0),6)*1000 end)");
|
||
if (sBJU003.ToUpper().Equals("KM") || sBJU003.ToUpper().Equals("千米"))
|
||
{
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('M', '米') then 0.001");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('Km', '千米') then 1.0");
|
||
foreach (string sKey in dicLenJLDWTD.Keys)
|
||
{
|
||
sSQL.AppendLine(string.Format(" when XLXSBJDMX_JLDW='{0}' then 0.001*{1} ", sKey, dicLenJLDWTD[sKey]));
|
||
}
|
||
}
|
||
else if (sBJU003.ToUpper().Equals("米") || sBJU003.ToUpper().Equals("M"))
|
||
{
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('M', '米') then 1.0");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('Km', '千米') then 1000.0");
|
||
foreach (string sKey in dicLenJLDWTD.Keys)
|
||
{
|
||
sSQL.AppendLine(string.Format(" when XLXSBJDMX_JLDW='{0}' then {1} ", sKey, dicLenJLDWTD[sKey]));
|
||
}
|
||
}
|
||
sSQL.AppendLine(" else 1.0 end ) * XLXSBJDMX_BJSL >= :pBJSLS ");
|
||
if (!entity.Param.ContainsKey("pBJSLS"))
|
||
{
|
||
entity.Param.Add("pBJSLS", CurQueryEntity.FieldByName("BJSLS").Value.Trim());
|
||
}
|
||
}
|
||
if (!CurQueryEntity.FieldByName("BJSLZ").Value.Trim().Equals("") && !CurQueryEntity.FieldByName("BJSLZ").Value.Trim().Equals("0"))
|
||
{
|
||
sSQL.AppendLine(" and (case ");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('Kg', '千克', '公斤') then (case when isnull(XLXSCLQD_CLZL,0.0)=0 then 0 else 1.0/RoundFix(isnull(XLXSCLQD_CLZL,0.0),6) end)");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('T', '吨') then (case when isnull(XLXSCLQD_CLZL,0.0)=0 then 0 else 1.0/RoundFix(isnull(XLXSCLQD_CLZL,0.0),6)*1000 end)");
|
||
if (sBJU003.ToUpper().Equals("KM") || sBJU003.ToUpper().Equals("千米"))
|
||
{
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('M', '米') then 0.001");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('Km', '千米') then 1.0");
|
||
foreach (string sKey in dicLenJLDWTD.Keys)
|
||
{
|
||
sSQL.AppendLine(string.Format(" when XLXSBJDMX_JLDW='{0}' then 0.001*{1} ", sKey, dicLenJLDWTD[sKey]));
|
||
}
|
||
}
|
||
else if (sBJU003.ToUpper().Equals("米") || sBJU003.ToUpper().Equals("M"))
|
||
{
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('M', '米') then 1.0");
|
||
sSQL.AppendLine(" when XLXSBJDMX_JLDW in ('Km', '千米') then 1000.0");
|
||
foreach (string sKey in dicLenJLDWTD.Keys)
|
||
{
|
||
sSQL.AppendLine(string.Format(" when XLXSBJDMX_JLDW='{0}' then {1} ", sKey, dicLenJLDWTD[sKey]));
|
||
}
|
||
}
|
||
sSQL.AppendLine(" else 1.0 end ) * XLXSBJDMX_BJSL <= :pBJSLZ ");
|
||
if (!entity.Param.ContainsKey("pBJSLZ"))
|
||
{
|
||
entity.Param.Add("pBJSLZ", CurQueryEntity.FieldByName("BJSLZ").Value.Trim());
|
||
}
|
||
}
|
||
if (!sFrom.Equals("BJD"))
|
||
{
|
||
for (int i = 1; i <= 20; i++)
|
||
{
|
||
string sNo = i.ToString("00");
|
||
string sFieldS = "TJYZ" + sNo + "S";
|
||
string sFieldZ = "TJYZ" + sNo + "Z";
|
||
string sValueS = CurQueryEntity.FieldByName(sFieldS).Value.Trim();
|
||
string sValueZ = CurQueryEntity.FieldByName(sFieldZ).Value.Trim();
|
||
string sColumn = "XLXSBJDYZZ0_YZZ" + sNo;
|
||
if (!string.IsNullOrEmpty(sValueS) && !sValueS.Equals("0"))
|
||
{
|
||
string sParam = "p" + sFieldS;
|
||
sSQL.AppendLine(" and isnull(" + sColumn + ",0) >= :" + sParam + " ");
|
||
if (!entity.Param.ContainsKey(sParam))
|
||
{
|
||
entity.Param.Add(sParam, sValueS);
|
||
}
|
||
}
|
||
if (!string.IsNullOrEmpty(sValueZ) && !sValueZ.Equals("0"))
|
||
{
|
||
string sParam = "p" + sFieldZ;
|
||
sSQL.AppendLine(" and " + sColumn + " <= :" + sParam + " ");
|
||
if (!entity.Param.ContainsKey(sParam))
|
||
{
|
||
entity.Param.Add(sParam, sValueZ);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
return sSQL.ToString();
|
||
}
|
||
|
||
private StringBuilder GetQuerySQL()
|
||
{
|
||
StringBuilder strSQL = new StringBuilder();
|
||
strSQL.Remove(0, strSQL.Length);
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
|
||
InitGridView();
|
||
|
||
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860063);
|
||
string sZBLRGS = pzxx.XLXSBJPZ_ZBLRGS;
|
||
|
||
#region 清空查询因子
|
||
entity.Param.Clear();
|
||
#endregion
|
||
|
||
if (sCXDX.Equals("BJD"))
|
||
{
|
||
//查询主表的表价总金额、最低限价总金额、中标总金额、明细数量不受明细查询条件的限制
|
||
#region 查询主表记录
|
||
strSQL.AppendLine(" select XLXSBJD_BJDID,0.0 as XLXSBJDMX_XH,TBBJFK_FKRQ, ");
|
||
strSQL.AppendLine(" case isnull(XLXSBJD_CLHQJGBID, ' ') when ' ' then ' ' ");
|
||
strSQL.AppendLine(" when 'ZZZZZZZZ' then rtrim(XLXSBJD_JGBID)||'|'||rtrim(XLXSJGB_JGBMC)||',ZZZZZZZZ|基础材料行情' ");
|
||
strSQL.AppendLine(" else rtrim(XLXSJGB_JGBID)||'|'||rtrim(XLXSJGB_JGBMC)||',YYYYYYYY|报价单材料行情' ");
|
||
strSQL.AppendLine(" end as JGBID,XLXSBJD_JGBID, ");
|
||
strSQL.AppendLine(" XLXSBJD_CLHQJGBID, ");
|
||
if (sMXBH.Equals("JGE"))
|
||
{
|
||
strSQL.AppendLine(" XLXSBJD_TJ as TJJG, XLXSBJD_LJ as LJJG, ");
|
||
}
|
||
else
|
||
{
|
||
if (!sTBJCLID.Equals(""))
|
||
{
|
||
strSQL.AppendLine(" isnull(( ");
|
||
strSQL.AppendLine(" select case when isnull(XLXSBJDCLHQ_BJCLID, ' ') <> ' 'then XLXSBJDCLHQ_HSJG else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG ");
|
||
strSQL.AppendLine(" from XLXSCLHQ ");
|
||
strSQL.AppendLine(" left join XLXSBJDCLHQ on ");
|
||
strSQL.AppendLine(" XLXSBJDCLHQ_BJCLID=XLXSCLHQ_BJCLID ");
|
||
strSQL.AppendLine(" and XLXSBJDCLHQ_BJDID = XLXSBJD_BJDID ");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID=XLXSBJD_JGBID and XLXSCLHQ_BJCLID='" + sTBJCLID + "'");
|
||
strSQL.AppendLine(" ),0) as TJJG, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" 0 as TJJG, ");
|
||
}
|
||
|
||
if (!sLBJCLID.Equals(""))
|
||
{
|
||
strSQL.AppendLine(" isnull(( ");
|
||
strSQL.AppendLine(" select case when isnull(XLXSBJDCLHQ_BJCLID, ' ') <> ' ' then XLXSBJDCLHQ_HSJG else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG ");
|
||
strSQL.AppendLine(" from XLXSCLHQ ");
|
||
strSQL.AppendLine(" left join XLXSBJDCLHQ on ");
|
||
strSQL.AppendLine(" XLXSBJDCLHQ_BJCLID=XLXSCLHQ_BJCLID ");
|
||
strSQL.AppendLine(" and XLXSBJDCLHQ_BJDID = XLXSBJD_BJDID ");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID=XLXSBJD_JGBID and XLXSCLHQ_BJCLID='" + sLBJCLID + "'");
|
||
strSQL.AppendLine(" ),0) as LJJG, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" 0 as LJJG, ");
|
||
}
|
||
}
|
||
strSQL.AppendLine(" case isnull(XLXSBJD_BJFLID, ' ') when ' ' then ' ' else rtrim(XLXSBJD_BJFLID)||'|'||rtrim(XLXSBJFL_BJFLMC) end as BJFLID, XLXSBJD_BJFLID, ");
|
||
strSQL.AppendLine(" XLXSBJD_KHID, XLXSBJD_XSQYID, ");
|
||
strSQL.AppendLine(" case isnull(XLXSBJD_SYDWID, ' ') when ' ' then ' ' else rtrim(XLXSBJD_SYDWID)||'|'||rtrim(GS_GSMC) end as SYDWID, XLXSBJD_SYDWID, ");
|
||
strSQL.AppendLine(" case isnull(XLXSBJD_XSQYID, ' ') when ' ' then ' ' else rtrim(XLXSBJD_XSQYID)||'|'||rtrim(XSQY_XSQYMC) end as XSQY, XLXSBJD_XSQYID, ");
|
||
strSQL.AppendLine(" case isnull(XLXSBJD_XSBMID, ' ') when ' ' then ' ' else rtrim(XLXSBJD_XSBMID)||'|'||rtrim(BM_MC) end as XSBM, XLXSBJD_XSBMID, ");
|
||
strSQL.AppendLine(" XLXSBJD_BJRQ, XLXSBJD_XSJLMC, ");
|
||
strSQL.AppendLine(" XLXSBJD_SQR, XLXSBJD_TXY, XLXSBJD_XSBMID, XLXSBJD_KH, XLXSBJD_KHLXR,XLXSBJD_LXDH,XLXSBJD_CZ, ");
|
||
//客户分类
|
||
if(!sKHLY.Equals(""))
|
||
strSQL.AppendLine(" case when ISNULL(KHFL_FLID,' ') = ' ' then ' ' else rtrim(KHFL_FLID) || '|' || rtrim(KHFL_FLMC) end as KHFL, ");
|
||
else
|
||
strSQL.AppendLine(" ' ' as KHFL, ");
|
||
|
||
strSQL.AppendLine(" case isnull(XLXSBJD_PJLX, ' ') when ' ' then ' ' else rtrim(XLXSBJD_PJLX)||'|'||rtrim(SFPJ_PJMC) end as PJLX, XLXSBJD_PJLX, ");
|
||
strSQL.AppendLine(" XLXSBJD_JZBJHS, XLXSBJD_XMMC, XLXSBJD_XXDZ, XLXSBJD_FKSM, XLXSBJD_BZ,");
|
||
//客户区划
|
||
if (QYXZQH)
|
||
{
|
||
strSQL.AppendLine(" case rtrim(ISNULL(D.XZQH_XZQHID,' ')) when '86' then C.XZQH_PROVINCE else D.XZQH_PROVINCE end as XMSZDPRO,");
|
||
strSQL.AppendLine(" case rtrim(ISNULL(D.XZQH_XZQHID,' ')) when '86' then ' ' else C.XZQH_CITY end as XMSZDCITY,");
|
||
}
|
||
strSQL.AppendLine(" XLXSBJD_ZJE,XLXSBJD_ZZL,");
|
||
if (sCurBJFLID.Contains(","))//多选报价分类,需单独控制栏目值是否查询
|
||
{
|
||
List<string> ListBXS = new List<string>();
|
||
#region 料价价差率
|
||
GetBXSLJJCL(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJD_CLCBJCL end as XLXSBJD_CLCBJCL, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJD_CLCBJCL, ");
|
||
}
|
||
#endregion
|
||
#region 表价总金额
|
||
GetBXSJCL(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJD_LRL end as XLXSBJD_LRL, ");
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else MXXX.BJZJE end as CPJJJE, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJD_LRL,MXXX.BJZJE as CPJJJE ,");
|
||
}
|
||
#endregion
|
||
#region 最低限价总金额
|
||
GetBXSZDXJ(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJD_ZDXJJCL end as XLXSBJD_ZDXJJCL, ");
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else MXXX.ZDXJZJE end as ZDXJZJE, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJD_ZDXJJCL,MXXX.ZDXJZJE as ZDXJZJE , ");
|
||
}
|
||
#endregion
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJD_CLCBJCL, ");
|
||
//表价总金额
|
||
strSQL.AppendLine(" XLXSBJD_LRL,MXXX.BJZJE as CPJJJE ,");
|
||
//最低限价总金额
|
||
strSQL.AppendLine(" XLXSBJD_ZDXJJCL,MXXX.ZDXJZJE as ZDXJZJE , ");
|
||
}
|
||
//中标总金额
|
||
strSQL.AppendLine(" XLXSBJD_ZBJE as ZBZJE , ");
|
||
if (sZBLRGS.Equals("1"))
|
||
strSQL.AppendLine(" XLXSBJD_ZBJE - ZDXJZJE as ZBZLR , ");
|
||
else
|
||
strSQL.AppendLine(" 0 as ZBZLR , ");
|
||
|
||
strSQL.AppendLine(" MXJLS,XLXSBJD_FKQXNR,convert(varchar(250), XLXSBJD_BJSM) as XLXSBJD_BJSM,XLXSBJD_TJ,XLXSBJD_LJ,XLXSBJD_CZJSXY,XLXSBJD_KHDH,");
|
||
strSQL.AppendLine(" XLXSBJD_XZQHID,XLXSBJD_XMID,");
|
||
strSQL.AppendLine(" XLXSBJD_YSJDID,XLXSBJD_GYSID,XLXSBJD_YSFY,");
|
||
strSQL.AppendLine(" TZYZ_BJ01,TZYZ_BJ02,TZYZ_BJ03,TZYZ_BJ04,TZYZ_BJ05,");
|
||
strSQL.AppendLine(" TZYZ_BJ06,TZYZ_BJ07,TZYZ_BJ08,TZYZ_BJ09,TZYZ_BJ10,");
|
||
strSQL.AppendLine(" TZYZ_BJ11,TZYZ_BJ12,TZYZ_BJ13,TZYZ_BJ14,TZYZ_BJ15,");
|
||
strSQL.AppendLine(" TZYZ_BJ16,TZYZ_BJ17,TZYZ_BJ18,TZYZ_BJ19,TZYZ_BJ20,");
|
||
strSQL.AppendLine(" XLXSBJD_WHR, XLXSBJD_WHRID, XLXSBJD_WHSJ, XLXSBJD_DOCGRPID, XLXSBJD_FJS, XLXSBJD_WFID, XLXSBJD_WFINST, XLXSBJD_WPID, XLXSBJD_WFAWAITER, XLXSBJD_WFHANDLER, XLXSBJD_ACTNAME");
|
||
strSQL.AppendLine(" from XLXSBJD ");
|
||
strSQL.AppendLine(" left join ( ");
|
||
strSQL.AppendLine(" select XLXSBJDYZZ0_BJDID as BJDID,");
|
||
strSQL.AppendLine(" AVG(XLXSBJDYZZ0_YZZ01) as TZYZ_BJ01,AVG(XLXSBJDYZZ0_YZZ02) as TZYZ_BJ02,AVG(XLXSBJDYZZ0_YZZ03) as TZYZ_BJ03,AVG(XLXSBJDYZZ0_YZZ04) as TZYZ_BJ04,AVG(XLXSBJDYZZ0_YZZ05) as TZYZ_BJ05, ");
|
||
strSQL.AppendLine(" AVG(XLXSBJDYZZ0_YZZ06) as TZYZ_BJ06,AVG(XLXSBJDYZZ0_YZZ07) as TZYZ_BJ07,AVG(XLXSBJDYZZ0_YZZ08) as TZYZ_BJ08,AVG(XLXSBJDYZZ0_YZZ09) as TZYZ_BJ09,AVG(XLXSBJDYZZ0_YZZ10) as TZYZ_BJ10, ");
|
||
strSQL.AppendLine(" AVG(XLXSBJDYZZ0_YZZ11) as TZYZ_BJ11,AVG(XLXSBJDYZZ0_YZZ12) as TZYZ_BJ12,AVG(XLXSBJDYZZ0_YZZ13) as TZYZ_BJ13,AVG(XLXSBJDYZZ0_YZZ14) as TZYZ_BJ14,AVG(XLXSBJDYZZ0_YZZ15) as TZYZ_BJ15, ");
|
||
strSQL.AppendLine(" AVG(XLXSBJDYZZ0_YZZ16) as TZYZ_BJ16,AVG(XLXSBJDYZZ0_YZZ17) as TZYZ_BJ17,AVG(XLXSBJDYZZ0_YZZ18) as TZYZ_BJ18,AVG(XLXSBJDYZZ0_YZZ19) as TZYZ_BJ19,AVG(XLXSBJDYZZ0_YZZ20) as TZYZ_BJ20 ");
|
||
strSQL.AppendLine(" from XLXSBJDYZZ0 ");
|
||
strSQL.AppendLine(" group by XLXSBJDYZZ0_BJDID ");
|
||
strSQL.AppendLine(" ) YZZ0 on YZZ0.BJDID = XLXSBJD_BJDID ");
|
||
strSQL.AppendLine(" left join XLXSBJFL on XLXSBJFL_BJFLID = XLXSBJD_BJFLID ");
|
||
strSQL.AppendLine(" left join GS on GS_SYDWID=XLXSBJD_SYDWID ");
|
||
strSQL.AppendLine(" left join XSQY on XSQY_XSQYID=XLXSBJD_XSQYID ");
|
||
strSQL.AppendLine(" left join BM on BM_BMID=XLXSBJD_XSBMID ");
|
||
strSQL.AppendLine(" left join XLXSJGB on XLXSJGB_JGBID=XLXSBJD_JGBID and XLXSJGB_MXBH in ('JGB','JGE') ");
|
||
strSQL.AppendLine(" left join SFPJ on SFPJ_PJLX=XLXSBJD_PJLX ");
|
||
strSQL.AppendLine(" left join TBBJFK on TBBJFK_BJDID=XLXSBJD_BJDID ");
|
||
strSQL.AppendLine(" left join ( ");
|
||
strSQL.AppendLine(" select XLXSBJDMX_BJDID,sum(XLXSBJDMX_BJSL*XLXSBJDMX_CLCB) as BJZJE,sum(XLXSBJDMX_BJSL*XLXSBJDMX_ZDXJ) as ZDXJZJE,COUNT(1) as MXJLS ");
|
||
strSQL.AppendLine(" from XLXSBJDMX ");
|
||
strSQL.AppendLine(" left join XLXSBJD on XLXSBJD_BJDID = XLXSBJDMX_BJDID ");
|
||
strSQL.AppendLine(" where 1=1 ");
|
||
strSQL.AppendLine(AddCondition_A("Qry"));
|
||
strSQL.AppendLine(" group by XLXSBJDMX_BJDID ");
|
||
strSQL.AppendLine(" ) MXXX on MXXX.XLXSBJDMX_BJDID = XLXSBJD_BJDID ");
|
||
if (sKHLY.Equals("KH"))
|
||
{
|
||
strSQL.AppendLine(" left join KH on isnull(KH_KHID,' ')=isnull(XLXSBJD_KHID,' ') ");
|
||
strSQL.AppendLine(" left join KHFL on KHFL_FLID = KH_FL ");
|
||
}
|
||
else if (sKHLY.Equals("KHXX"))
|
||
{
|
||
strSQL.AppendLine(" left join KHXX on isnull(KHXX_MC,' ')=isnull(XLXSBJD_KH,' ') ");
|
||
strSQL.AppendLine(" left join KHFL on KHFL_FLID = KHXX_FLID ");
|
||
}
|
||
if (QYXZQH)
|
||
{
|
||
strSQL.AppendLine(" left join XZQH C on C.XZQH_XZQHID = XLXSBJD_XZQHID ");
|
||
strSQL.AppendLine(" left join XZQH D on D.XZQH_XZQHID = C.XZQH_FID ");
|
||
}
|
||
strSQL.AppendLine("where 1=1 ");
|
||
strSQL.AppendLine(AddCondition("Qry"));
|
||
strSQL.AppendLine(AddCondition_A("Qry"));
|
||
strSQL.AppendLine(AddConditionBJD("Qry"));
|
||
if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("A"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJDID desc ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("B"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJDID ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("C"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJRQ desc, XLXSBJD_BJDID desc ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("D"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJRQ, XLXSBJD_BJDID ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJRQ desc, XLXSBJD_BJDID desc ");
|
||
}
|
||
|
||
#endregion
|
||
|
||
}
|
||
else
|
||
{
|
||
#region 查询明细
|
||
strSQL.AppendLine(" select XLXSBJD_BJDID,XLXSBJDMX_BJDID, XLXSBJDMX_XH, XLXSBJDMX_XH as OLD_XLXSBJDMX_XH,XLXSBJDMX_XSSX, ");
|
||
//主表信息
|
||
strSQL.AppendLine(" XLXSBJD_BJRQ, case isnull(XLXSBJD_BJFLID, ' ') when ' ' then ' ' else rtrim(XLXSBJD_BJFLID)||'|'||rtrim(XLXSBJFL_BJFLMC) end as BJFLID, XLXSBJD_BJFLID, ");
|
||
strSQL.AppendLine(" case isnull(XLXSBJD_CLHQJGBID, ' ') when ' ' then ' ' ");
|
||
strSQL.AppendLine(" when 'ZZZZZZZZ' then rtrim(XLXSBJD_JGBID)||'|'||rtrim(XLXSJGB_JGBMC)||',ZZZZZZZZ|基础材料行情' ");
|
||
strSQL.AppendLine(" else rtrim(XLXSJGB_JGBID)||'|'||rtrim(XLXSJGB_JGBMC)||',YYYYYYYY|报价单材料行情' ");
|
||
strSQL.AppendLine(" end as JGBID,XLXSBJD_JGBID, ");
|
||
strSQL.AppendLine(" TBBJFK_FKRQ,XLXSBJD_SQR,XLXSBJD_TXY,XLXSBJD_KH,XLXSBJD_XMMC, ");
|
||
//客户分类
|
||
if (!sKHLY.Equals(""))
|
||
strSQL.AppendLine(" case when ISNULL(KHFL_FLID,' ') = ' ' then ' ' else rtrim(KHFL_FLID) || '|' || rtrim(KHFL_FLMC) end as KHFL, ");
|
||
else
|
||
strSQL.AppendLine(" ' ' as KHFL, ");
|
||
//行政区划
|
||
if (QYXZQH)
|
||
{
|
||
strSQL.AppendLine(" case rtrim(ISNULL(D.XZQH_XZQHID,' ')) when '86' then C.XZQH_PROVINCE else D.XZQH_PROVINCE end as XMSZDPRO,");
|
||
strSQL.AppendLine(" case rtrim(ISNULL(D.XZQH_XZQHID,' ')) when '86' then ' ' else C.XZQH_CITY end as XMSZDCITY,");
|
||
}
|
||
|
||
if (sMXBH.Equals("JGE"))
|
||
{
|
||
strSQL.AppendLine(" XLXSBJD_TJ as TJJG, XLXSBJD_LJ as LJJG, ");
|
||
}
|
||
else
|
||
{
|
||
if (!sTBJCLID.Equals(""))
|
||
{
|
||
strSQL.AppendLine(" isnull(( ");
|
||
strSQL.AppendLine(" select case when isnull(XLXSBJDCLHQ_BJCLID, ' ') <> ' 'then XLXSBJDCLHQ_HSJG else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG ");
|
||
strSQL.AppendLine(" from XLXSCLHQ ");
|
||
strSQL.AppendLine(" left join XLXSBJDCLHQ on ");
|
||
strSQL.AppendLine(" XLXSBJDCLHQ_BJCLID=XLXSCLHQ_BJCLID ");
|
||
strSQL.AppendLine(" and XLXSBJDCLHQ_BJDID = XLXSBJD_BJDID ");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID=XLXSBJD_JGBID and XLXSCLHQ_BJCLID='" + sTBJCLID + "'");
|
||
strSQL.AppendLine(" ),0) as TJJG, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" 0 as TJJG, ");
|
||
}
|
||
|
||
if (!sLBJCLID.Equals(""))
|
||
{
|
||
strSQL.AppendLine(" isnull(( ");
|
||
strSQL.AppendLine(" select case when isnull(XLXSBJDCLHQ_BJCLID, ' ') <> ' ' then XLXSBJDCLHQ_HSJG else XLXSCLHQ_HSJG end as XLXSCLHQ_HSJG ");
|
||
strSQL.AppendLine(" from XLXSCLHQ ");
|
||
strSQL.AppendLine(" left join XLXSBJDCLHQ on ");
|
||
strSQL.AppendLine(" XLXSBJDCLHQ_BJCLID=XLXSCLHQ_BJCLID ");
|
||
strSQL.AppendLine(" and XLXSBJDCLHQ_BJDID = XLXSBJD_BJDID ");
|
||
strSQL.AppendLine(" where XLXSCLHQ_JGBID=XLXSBJD_JGBID and XLXSCLHQ_BJCLID='" + sLBJCLID + "'");
|
||
strSQL.AppendLine(" ),0) as LJJG, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" 0 as LJJG, ");
|
||
}
|
||
}
|
||
strSQL.AppendLine(" XLXSBJDMX_XLXHID, XLXSBJDMX_XLGGID, XLXSBJDMX_DZSC, ");
|
||
strSQL.AppendLine(" case isnull(XLXSBJDMX_XLBZID, ' ') when ' ' then ' ' else rtrim(XLXSBJDMX_XLBZID)||'|'||rtrim(XLBZ_XLBZLXMC) end as XLBZID, XLXSBJDMX_XLBZID, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_DYDJID,");
|
||
strSQL.AppendLine(" case isnull(XLXSBJDMX_XLYSID, ' ') when ' ' then ' ' else rtrim(XLXSBJDMX_XLYSID)||'|'||rtrim(XLYSB_XLYSMC) end as XLYSID, XLXSBJDMX_XLYSID, ");
|
||
strSQL.AppendLine(" case ");
|
||
strSQL.AppendLine(" (case when ISNULL(A.XLXSBJXHML_CPMLID,' ') = ' ' then ISNULL(B.XLXSBJXHML_CPMLID,' ') else ISNULL(A.XLXSBJXHML_CPMLID,' ') end) ");
|
||
strSQL.AppendLine(" when ' ' then ' ' else ");
|
||
strSQL.AppendLine(" rtrim(case when ISNULL(A.XLXSBJXHML_CPMLID,' ') = ' ' then ISNULL(B.XLXSBJXHML_CPMLID,' ') else ISNULL(A.XLXSBJXHML_CPMLID,' ') end) || '|'|| rtrim(XLXSCPML_CPMLMC) end as CPML, ");
|
||
strSQL.AppendLine(" case isnull(XLXHB_CPYT, ' ') when ' ' then ' ' else rtrim(XLXHB_CPYT)||'|'||rtrim(XLCPYT_CPYTMC) end as CPYT, ");
|
||
strSQL.AppendLine(" case when " + XLBJDUtils.GetWhereEqual("isnull(XLXHB_DTCLID,' ')", sTcpList) + " then '铜产品' ");
|
||
strSQL.AppendLine(" when " + XLBJDUtils.GetWhereEqual("isnull(XLXHB_DTCLID,' ')", sLcpList) + " then '铝产品' else '其他产品' end as TLCP, ");
|
||
strSQL.AppendLine(" XLDTJMZHB_DTJM1 as ZXJM, XLGGB_GGZJM as GGZJM, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_BJCP,' ' as XLWLXX,");
|
||
strSQL.AppendLine(" XLXSBJDMX_JLDW,XLXSBJDMX_BJSL,XLXSBJDMX_CLCB,XLXSBJDMX_JGBJJ,");
|
||
strSQL.AppendLine(" XLXSBJDJJYZ_YZZ01 as TZYZ_JZ01,XLXSBJDJJYZ_YZZ02 as TZYZ_JZ02,XLXSBJDJJYZ_YZZ03 as TZYZ_JZ03,XLXSBJDJJYZ_YZZ04 as TZYZ_JZ04,XLXSBJDJJYZ_YZZ05 as TZYZ_JZ05,");
|
||
strSQL.AppendLine(" XLXSBJDJJYZ_YZZ06 as TZYZ_JZ06,XLXSBJDJJYZ_YZZ07 as TZYZ_JZ07,XLXSBJDJJYZ_YZZ08 as TZYZ_JZ08,XLXSBJDJJYZ_YZZ09 as TZYZ_JZ09,XLXSBJDJJYZ_YZZ10 as TZYZ_JZ10,");
|
||
strSQL.AppendLine(" XLXSBJDMX_JGBBJ,");
|
||
strSQL.AppendLine(" XLXSBJDYZZ0_YZZ01 as TZYZ_BJ01,XLXSBJDYZZ0_YZZ02 as TZYZ_BJ02,XLXSBJDYZZ0_YZZ03 as TZYZ_BJ03,XLXSBJDYZZ0_YZZ04 as TZYZ_BJ04,XLXSBJDYZZ0_YZZ05 as TZYZ_BJ05,");
|
||
strSQL.AppendLine(" XLXSBJDYZZ0_YZZ06 as TZYZ_BJ06,XLXSBJDYZZ0_YZZ07 as TZYZ_BJ07,XLXSBJDYZZ0_YZZ08 as TZYZ_BJ08,XLXSBJDYZZ0_YZZ09 as TZYZ_BJ09,XLXSBJDYZZ0_YZZ10 as TZYZ_BJ10,");
|
||
strSQL.AppendLine(" XLXSBJDYZZ0_YZZ11 as TZYZ_BJ11,XLXSBJDYZZ0_YZZ12 as TZYZ_BJ12,XLXSBJDYZZ0_YZZ13 as TZYZ_BJ13,XLXSBJDYZZ0_YZZ14 as TZYZ_BJ14,XLXSBJDYZZ0_YZZ15 as TZYZ_BJ15,");
|
||
strSQL.AppendLine(" XLXSBJDYZZ0_YZZ16 as TZYZ_BJ16,XLXSBJDYZZ0_YZZ17 as TZYZ_BJ17,XLXSBJDYZZ0_YZZ18 as TZYZ_BJ18,XLXSBJDYZZ0_YZZ19 as TZYZ_BJ19,XLXSBJDYZZ0_YZZ20 as TZYZ_BJ20,");
|
||
strSQL.AppendLine(" XLXSBJDMX_TZQCPBJ,XLXSBJDMX_CPBJ,XLXSBJDMX_BJJE,");
|
||
strSQL.AppendLine(" XLXSBJDMX_CLZL,");
|
||
if (sCurBJFLID.Contains(","))//多选报价分类,需单独控制栏目值是否查询
|
||
{
|
||
List<string> ListBXS = new List<string>();
|
||
|
||
#region 报价单行情料价
|
||
GetBXSBJDHQLJ(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_BJDHQCLCB end as XLXSBJDMX_BJDHQCLCB, ");
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 'N' ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_CLCBJCLSDBZ end as XLXSBJDMX_CLCBJCLSDBZ, ");
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_BJSL*XLXSBJDMX_BJDHQCLCB end as BJDHQCLCBJE, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_BJDHQCLCB,XLXSBJDMX_CLCBJCLSDBZ,XLXSBJDMX_BJSL*XLXSBJDMX_BJDHQCLCB as BJDHQCLCBJE, ");
|
||
}
|
||
#endregion
|
||
#region 调整产品报价
|
||
GetBXSTZJG(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_TZCPBJ end as XLXSBJDMX_TZCPBJ, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_TZCPBJ, ");
|
||
}
|
||
#endregion
|
||
#region 调整金额
|
||
GetBXSTZJE(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_TZQBJJE end as XLXSBJDMX_TZQBJJE, ");
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_TZBJJE end as XLXSBJDMX_TZBJJE, ");
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else case when XLXSBJDMX_BJSL=0 then 0 else RoundFix(XLXSBJDMX_BJJE/XLXSBJDMX_BJSL,14) end end as TZHDJ, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_TZQBJJE,XLXSBJDMX_TZBJJE,case when XLXSBJDMX_BJSL=0 then 0 else RoundFix(XLXSBJDMX_BJJE/XLXSBJDMX_BJSL,14) end as TZHDJ, ");
|
||
}
|
||
#endregion
|
||
#region 料价价差率
|
||
GetBXSLJJCL(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_CLCBJCL end as XLXSBJDMX_CLCBJCL, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_CLCBJCL, ");
|
||
}
|
||
#endregion
|
||
#region 表价价差率
|
||
GetBXSJCL(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_JGBBJJCL end as XLXSBJDMX_JGBBJJCL, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_JGBBJJCL, ");
|
||
}
|
||
#endregion
|
||
#region 表价价差额
|
||
GetBXSJGBBJJCE(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_JGBBJJCE end as XLXSBJDMX_JGBBJJCE, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_JGBBJJCE, ");
|
||
}
|
||
#endregion
|
||
#region 最低限价
|
||
GetBXSZDXJ(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_ZDXJ end as XLXSBJDMX_ZDXJ, ");
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_ZDXJJCL end as XLXSBJDMX_ZDXJJCL, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_ZDXJ,XLXSBJDMX_ZDXJJCL,");
|
||
}
|
||
#endregion
|
||
#region 结算价格
|
||
GetBXSJSJG(sCurBJFLID, ref ListBXS);
|
||
if (ListBXS.Count > 0)
|
||
{
|
||
strSQL.AppendLine(" case ");
|
||
for (int i = 0; i < ListBXS.Count; i++)
|
||
{
|
||
strSQL.AppendLine(" when XLXSBJD_BJFLID = '" + ListBXS[i] + "' then 0 ");
|
||
}
|
||
strSQL.AppendLine(" else XLXSBJDMX_JSJG end as XLXSBJDMX_JSJG, ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_JSJG, ");
|
||
}
|
||
#endregion
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" XLXSBJDMX_BJDHQCLCB,XLXSBJDMX_CLCBJCLSDBZ,XLXSBJDMX_BJSL*XLXSBJDMX_BJDHQCLCB as BJDHQCLCBJE, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_TZCPBJ, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_TZQBJJE,XLXSBJDMX_TZBJJE,case when XLXSBJDMX_BJSL=0 then 0 else RoundFix(XLXSBJDMX_BJJE/XLXSBJDMX_BJSL,14) end as TZHDJ, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_CLCBJCL, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_JGBBJJCL, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_JGBBJJCE, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_ZDXJ,XLXSBJDMX_ZDXJJCL,");
|
||
strSQL.AppendLine(" XLXSBJDMX_JSJG, ");
|
||
}
|
||
|
||
strSQL.AppendLine(" case when isnull(XLXSBJDMX_ZB,' ') = ' ' then ' '");
|
||
strSQL.AppendLine(" when isnull(XLXSBJDMX_ZB,' ') = 'Y' then 'Y|全部中标'");
|
||
strSQL.AppendLine(" when isnull(XLXSBJDMX_ZB,' ') = 'P' then 'P|部分中标'");
|
||
strSQL.AppendLine(" when isnull(XLXSBJDMX_ZB,' ') = 'N' then 'N|未中标'");
|
||
strSQL.AppendLine(" when isnull(XLXSBJDMX_ZB,' ') = 'F' then 'F|废标'");
|
||
strSQL.AppendLine(" when isnull(XLXSBJDMX_ZB,' ') = 'Q' then 'Q|弃标'");
|
||
strSQL.AppendLine(" else ' ' end as XLXSBJDMX_ZB, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_ZBSL,XLXSBJDMX_ZBJE,");
|
||
if (sZBLRGS.Equals("1"))
|
||
strSQL.AppendLine(" XLXSBJDMX_ZBJE - RoundFix(XLXSBJDMX_BJSL*XLXSBJDMX_ZDXJ,2) as XLXSBJDMX_ZBLR,");
|
||
else
|
||
strSQL.AppendLine(" 0 as XLXSBJDMX_ZBLR,");
|
||
strSQL.AppendLine(" XLXSBJDMX_WLID as WLID, ");
|
||
strSQL.AppendLine(" case when isnull(XLXSBJDMX_WLID,' ') = ' ' then ' ' ");
|
||
strSQL.AppendLine(" else rtrim(rtrim(rtrim(rtrim(isnull(WL_MC,' '))||' '||rtrim(isnull(WL_GG,' ')))||' '||rtrim(isnull(WL_TZ,' ')))||' '||rtrim(isnull(WL_CL,' '))) ");
|
||
strSQL.AppendLine(" end as WLXX, ");
|
||
strSQL.AppendLine(" XLXSBJDMX_BZ,XLXSBJDMX_BJCPSD,XLXSBJDMX_BJSDBZ,XLXSBJDMX_WHRID,XLXSBJDMX_WHR,XLXSBJDMX_WHSJ, ");
|
||
strSQL.AppendLine(" case when isnull(XLXSCLQD_WPID,' ')='ZZZZ' then 'Y' else 'N' end as HasCLQD, ");
|
||
strSQL.AppendLine(" case when ((ISNULL(XLXSBJYLZD_WPID,' ')= '0060' or ISNULL(XLXSBJYLZD_WPID,' ')= 'ZZZZ') and isnull(XLXSBJYLZDMX_BZDBZ,'N') ='Y' and isnull(XLXSBJYLZDMX_BJDXH,0) <> 0) then 'N' ");
|
||
strSQL.AppendLine(" when (ISNULL(XLXSBJYLZD_WPID,' ')<> ' ' and isnull(XLXSBJYLZDMX_BJDXH,0) <> 0) then 'Y' ");
|
||
strSQL.AppendLine(" else 'N' end as HasYLDZSQ ");
|
||
strSQL.AppendLine(" from XLXSBJDMX ");
|
||
strSQL.AppendLine(" left join XLXSBJD on XLXSBJD_BJDID = XLXSBJDMX_BJDID ");
|
||
strSQL.AppendLine(" left join XLXSBJFL on XLXSBJFL_BJFLID = XLXSBJD_BJFLID ");
|
||
strSQL.AppendLine(" left join XLXSJGB on XLXSJGB_JGBID=XLXSBJD_JGBID and XLXSJGB_MXBH in ('JGB','JGE') ");
|
||
strSQL.AppendLine(" left join TBBJFK on TBBJFK_BJDID=XLXSBJDMX_BJDID ");
|
||
if (sKHLY.Equals("KH"))
|
||
{
|
||
strSQL.AppendLine(" left join KH on isnull(KH_KHID,' ')=isnull(XLXSBJD_KHID,' ') ");
|
||
strSQL.AppendLine(" left join KHFL on KHFL_FLID = KH_FL ");
|
||
}
|
||
else if (sKHLY.Equals("KHXX"))
|
||
{
|
||
strSQL.AppendLine(" left join KHXX on isnull(KHXX_MC,' ')=isnull(XLXSBJD_KH,' ') ");
|
||
strSQL.AppendLine(" left join KHFL on KHFL_FLID = KHXX_FLID ");
|
||
}
|
||
if (QYXZQH)
|
||
{
|
||
strSQL.AppendLine(" left join XZQH C on C.XZQH_XZQHID = XLXSBJD_XZQHID ");
|
||
strSQL.AppendLine(" left join XZQH D on D.XZQH_XZQHID = C.XZQH_FID ");
|
||
}
|
||
strSQL.AppendLine(" left join XLBZ on XLBZ_XLBZID = XLXSBJDMX_XLBZID ");
|
||
strSQL.AppendLine(" left join WL on WL_WLID = isnull(XLXSBJDMX_WLID, ' ') ");
|
||
strSQL.AppendLine(" left join XLYSB on XLYSB_XLYSID = XLXSBJDMX_XLYSID ");
|
||
strSQL.AppendLine(" left join XLXHB on XLXHB_XLXHID = XLXSBJDMX_XLXHID ");
|
||
strSQL.AppendLine(" left join XLXSBJXLGGTHB XLXSBJXLGGTHB_A on XLXSBJXLGGTHB_A.XLXSBJXLGGTHB_XLGGID = XLXSBJDMX_XLGGID ");
|
||
strSQL.AppendLine(" left join XLGGB on XLGGB_XLGGID=XLXSBJXLGGTHB_A.XLXSBJXLGGTHB_XLGGID and XLGGB_XLGGJDGZ = isnull(XLXHB_XLGGJDGZ,'0') ");
|
||
strSQL.AppendLine(" left join XLDTJMZHB on XLDTJMZHB_DTJMZHID=XLGGB_DTJMZHID ");
|
||
strSQL.AppendLine(" left join XLCPYT on XLCPYT_CPYT = XLXHB_CPYT ");
|
||
strSQL.AppendLine(" left join XLXSBJDYZZ0 on XLXSBJDYZZ0_BJDID=XLXSBJDMX_BJDID and XLXSBJDYZZ0_XH=XLXSBJDMX_XH ");
|
||
strSQL.AppendLine(" left join XLXSBJDJJYZ on XLXSBJDJJYZ_BJDID=XLXSBJDMX_BJDID and XLXSBJDJJYZ_XH=XLXSBJDMX_XH ");
|
||
strSQL.AppendLine(" left join XLXSCLQD on XLXSCLQD_XLXHID=XLXSBJDMX_XLXHID and XLXSCLQD_XLGGID=XLXSBJDMX_XLGGID and XLXSCLQD_XLBZID=XLXSBJDMX_XLBZID and XLXSCLQD_DYDJID=isnull(XLXSBJDMX_DYDJID,' ')");
|
||
strSQL.AppendLine(" left join ( select XLXSBJYLZD_BJDID,XLXSBJYLZD_SQDH,XLXSBJYLZD_WPID,XLXSBJYLZDMX_BJDXH,XLXSBJYLZDMX_BZDBZ ");
|
||
strSQL.AppendLine(" from XLXSBJYLZDMX left join XLXSBJYLZD on XLXSBJYLZD_SQDH = XLXSBJYLZDMX_SQDH where 1=1 ) YLZDMX on XLXSBJYLZD_BJDID = XLXSBJDMX_BJDID and XLXSBJYLZDMX_BJDXH = XLXSBJDMX_XH ");
|
||
strSQL.AppendLine(" left join XLXSBJXHML A on A.XLXSBJXHML_XLXHID = XLXSBJDMX_XLXHID and A.XLXSBJXHML_DYDJID = isnull(XLXSBJDMX_DYDJID, ' ') ");
|
||
strSQL.AppendLine(" left join XLXSBJXHML B on B.XLXSBJXHML_XLXHID = XLXSBJDMX_XLXHID and B.XLXSBJXHML_DYDJID = ' ' ");
|
||
strSQL.AppendLine(" left join XLXSCPML on XLXSCPML_CPMLID = case when ISNULL(A.XLXSBJXHML_CPMLID,' ') = ' ' then ISNULL(B.XLXSBJXHML_CPMLID,' ') else ISNULL(A.XLXSBJXHML_CPMLID,' ') end ");
|
||
//strSQL.AppendLine(" left join XLXSBJXLGGTHB XLXSBJXLGGTHB_B on XLXSBJXLGGTHB_B.XLXSBJXLGGTHB_XLGGID = XLXSBJDMX_XLGGID ");
|
||
strSQL.AppendLine(" where 1=1 ");
|
||
strSQL.AppendLine(AddCondition("Qry"));
|
||
strSQL.AppendLine(AddCondition_A("Qry"));
|
||
strSQL.AppendLine(AddConditionBJDMX("Qry"));
|
||
if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("A"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJDID desc,XLXSBJDMX_XSSX,XLXSBJDMX_XH ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("B"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJDID,XLXSBJDMX_XSSX,XLXSBJDMX_XH ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("C"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJRQ desc, XLXSBJD_BJDID desc,XLXSBJDMX_XSSX,XLXSBJDMX_XH ");
|
||
}
|
||
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("D"))
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJRQ, XLXSBJD_BJDID,XLXSBJDMX_XSSX,XLXSBJDMX_XH ");
|
||
}
|
||
else
|
||
{
|
||
strSQL.AppendLine(" order by XLXSBJD_BJRQ desc, XLXSBJD_BJDID desc, XLXSBJDMX_XSSX,XLXSBJDMX_XH");
|
||
}
|
||
#endregion
|
||
}
|
||
return strSQL;
|
||
|
||
}
|
||
|
||
//判断模块是否存在并且是否有权限
|
||
private bool CheckModule(string sUMID)
|
||
{
|
||
int iUMID = CMISproConvert.StrToInt(sUMID);
|
||
UserRight UR = OpRightUtils.GetUserRight(tSession.UserId, iUMID);
|
||
return (DSActiveModule.IsActiveModule(iUMID) && UR.Open);
|
||
}
|
||
|
||
private void InitToolBtn()
|
||
{
|
||
if (!PageParam.GetRTrimString("FromBJDINFO").Trim().Equals(""))
|
||
{
|
||
|
||
sBJDLX = PageParam.GetRTrimString("FromBJDINFO");
|
||
sBJDID = PageParam.GetRTrimString("BJDID");
|
||
sBJFLID = PageParam.GetRTrimString("BJFLID");
|
||
sTXY = PageParam.GetRTrimString("TXY");
|
||
sKH = PageParam.GetRTrimString("KH");
|
||
sKHLXR = PageParam.GetRTrimString("KHLXR");
|
||
sSYDWID = PageParam.GetRTrimString("SYDWID");
|
||
|
||
grdContentGrid.CheckBox = true;
|
||
if (sBJDLX.Equals("HBBJ"))
|
||
{
|
||
btnHBBJ.Visible = true;
|
||
CurQueryEntity.FieldByName("CXDX").Value = "BJD";
|
||
CurQueryEntity.FieldByName("BJFLID").Value = sBJFLID;
|
||
CurQueryEntity.FieldByName("FKZT").Value = "未反馈";
|
||
CurQueryEntity.FieldByName("TXY").Value = sTXY;
|
||
CurQueryEntity.FieldByName("KH").Value = sKH;
|
||
CurQueryEntity.FieldByName("KHLXR").Value = sKHLXR;
|
||
}
|
||
else if (sBJDLX.Equals("CFBJ"))
|
||
{
|
||
btnCFBJ.Visible = true;
|
||
CurQueryEntity.FieldByName("CXDX").Value = "BJDMX";
|
||
CurQueryEntity.FieldByName("BJFLID").Value = sBJFLID;
|
||
CurQueryEntity.FieldByName("BJDID").Value = sBJDID;
|
||
CurQueryEntity.FieldByName("BJDIDJQPP").Value = "True";
|
||
|
||
|
||
}
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.AddString("BJDID", sBJDID);
|
||
tpp.AddString("BJDLX", sBJDLX);
|
||
QueryPageParam = tpp;
|
||
}
|
||
}
|
||
|
||
private void InitGridView()
|
||
{
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
|
||
#region 查询条件相关初始化
|
||
grdContentGrid.Columns.Clear();
|
||
sCXDX = CurQueryEntity.FieldByName("CXDX").Value.Trim();
|
||
sCurBJFLID = CurQueryEntity.FieldByName("BJFLID").Value.Trim();
|
||
#endregion
|
||
|
||
#region 因子、小数位数等初始化
|
||
|
||
iXSWS = string.IsNullOrEmpty(GetOption(100860000, "BJU002")) ? 5 : CMISproConvert.StrToInt(GetOption(100860000, "BJU002"));
|
||
if (iXSWS < 0)
|
||
{
|
||
iXSWS = 0;
|
||
}
|
||
else if (iXSWS > 8)
|
||
{
|
||
iXSWS = 8;
|
||
}
|
||
|
||
JcModule = CheckModule("100860008");
|
||
//因子名称后缀
|
||
string sStr = "";
|
||
|
||
//同产品所属,铝产品所属
|
||
sTcpList = "";
|
||
sLcpList = "";
|
||
sTLcpList = "";
|
||
XLXSBJPZXX pzxx = XLBJDUtils.GetXLXSBJPZXX(100860063);
|
||
if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_TDTGSCLID))
|
||
sTcpList = pzxx.XLXSBJPZ_TDTGSCLID;
|
||
if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_LDTGSCLID))
|
||
sLcpList = pzxx.XLXSBJPZ_LDTGSCLID;
|
||
sTLcpList = sTcpList + "," + sLcpList;
|
||
sTLcpList = sTLcpList.TrimStart(',').TrimEnd(',');
|
||
|
||
string sZBLRGS = pzxx.XLXSBJPZ_ZBLRGS;
|
||
|
||
|
||
|
||
#endregion
|
||
|
||
#region 报价分类的设置
|
||
int iCPMRXSWS = 0;
|
||
string sJGBBJBM = "";
|
||
string sBJDHQLJBM = "";
|
||
string sBJBM = "";
|
||
bXSBJDHQLJ = false;
|
||
bXSLJ = false;
|
||
bXSJCL = false;
|
||
bXSLJJCL = false;
|
||
bXSJGBBJJCE = false;
|
||
bXSZDXJ = false;
|
||
bXSJSJG = false;
|
||
bXSTZJG = false;
|
||
bXSTZJE = false;
|
||
//表价-料价-最低限价=价差率
|
||
foreach (string sBJFLID in sCurBJFLID.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
#region 按角色隐藏栏目
|
||
//获取需要按角色隐藏的栏目ID列表
|
||
string sHidJSLMList = XLBJDUtils.GetHidJSLMList(sCurBJFLID, IsXJY.Value.Equals("Y"), IsSJY.Value.Equals("Y"), IsHJY.Value.Equals("Y"));
|
||
bool bJSYCBJDHQLJ = false;
|
||
bool bJSYCZDXJ = false;
|
||
bool bJSYCJSJG = false;
|
||
if (!sHidJSLMList.Trim().Equals(""))
|
||
{
|
||
string[] sHidJSLMs = sHidJSLMList.Split(',');
|
||
for (int i = 0; i < sHidJSLMs.Length; i++)
|
||
{
|
||
string sLMID = sHidJSLMs[i].Trim();
|
||
|
||
switch (sLMID)
|
||
{
|
||
case "XLXSBJDMX_BJDHQCLCB":
|
||
bJSYCBJDHQLJ = true;
|
||
break;
|
||
case "XLXSBJDMX_ZDXJ":
|
||
bJSYCZDXJ = true;
|
||
break;
|
||
case "XLXSBJDMX_JSJG":
|
||
bJSYCJSJG = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
//显示报价单行情料价
|
||
if (bjflxx.XSBJDHQLJ() && !bJSYCBJDHQLJ)
|
||
bXSBJDHQLJ = true;
|
||
|
||
//显示结算价
|
||
if (bjflxx.XSJSJ() && !bJSYCJSJG)
|
||
bXSJSJG = true;
|
||
|
||
//显示价格表行情料价
|
||
if (bjflxx.XSLJ())
|
||
bXSLJ = true;
|
||
|
||
//显示表价价差率
|
||
if (bjflxx.XSJCL())
|
||
bXSJCL = true;
|
||
|
||
//显示价格表行情料价/显示料价价差率
|
||
if (bjflxx.XSLJJCL())
|
||
bXSLJJCL = true;
|
||
|
||
//表价价差总额/表价价差额
|
||
if (bjflxx.XSJGBBJJCEChecked())
|
||
bXSJGBBJJCE = true;
|
||
|
||
//最低限价
|
||
if (bjflxx.XSZDXJ() && !bJSYCZDXJ)
|
||
bXSZDXJ = true;
|
||
//
|
||
if (bjflxx.XSTZCPBJChecked())
|
||
bXSTZJG = true;
|
||
|
||
//显示调整总金额
|
||
if (bjflxx.XSTZBJJEChecked())
|
||
bXSTZJE = true;
|
||
if ( CMISproConvert.StrToInt(bjflxx.XLXSBJFL_CPBJMRXSWS) > iCPMRXSWS)
|
||
iCPMRXSWS = CMISproConvert.StrToInt(bjflxx.XLXSBJFL_CPBJMRXSWS);
|
||
|
||
sMXBH = bjflxx.XLXSBJFL_MXBH;
|
||
|
||
//别名
|
||
if (sJGBBJBM.Equals(""))
|
||
sJGBBJBM = bjflxx.XLXSBJFL_JGBBJBM;
|
||
if (sBJDHQLJBM.Equals(""))
|
||
sBJDHQLJBM = bjflxx.XLXSBJFL_BJDHQLJBM;
|
||
if (sBJBM.Equals(""))
|
||
sBJBM = bjflxx.XLXSBJFL_BJBM;
|
||
|
||
sTBJCLID = "";
|
||
sLBJCLID = "";
|
||
|
||
if (!sMXBH.Equals("JGE"))
|
||
JGBMLInfo.GetTLBJCLID(dberp, SQL, ref sTBJCLID, ref sLBJCLID);
|
||
}
|
||
//小数位数
|
||
iNumberDecimalPlace = iCPMRXSWS > iXSWS ? iCPMRXSWS : iXSWS;
|
||
#endregion
|
||
|
||
#region 销售报价业务配置
|
||
|
||
sKHLY = "";
|
||
pzxx = XLBJDUtils.GetXLXSBJPZXX(100860000);
|
||
if (!string.IsNullOrEmpty(pzxx.XLXSBJPZ_KHJSLY))
|
||
sKHLY = pzxx.XLXSBJPZ_KHJSLY;
|
||
|
||
|
||
# endregion
|
||
QYXZQH = DSActiveModule.IsActiveModule(100956005);//是否启用行政区划
|
||
|
||
if (sCXDX.Equals("BJD"))
|
||
{
|
||
#region 构建因子列
|
||
dicBJDYZMC.Clear();
|
||
dicBJDYZJJFS.Clear();
|
||
lstTJYS.Clear();
|
||
SQL.Clear();
|
||
SQL.Add(" SELECT XLXSBJFLYZ_YZID,XLXSTZYZ_TJYS,XLXSTZYZ_YZMC,XLXSTZYZ_JJFS FROM XLXSBJFLYZ ");
|
||
SQL.Add(" LEFT JOIN XLXSTZYZ on XLXSTZYZ_YZID = XLXSBJFLYZ_YZID and XLXSTZYZ_MXBH = 'BJD' ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJFLYZ_BJFLID", sCurBJFLID));
|
||
SQL.Add(" and (XLXSTZYZ_TJYS in('1','8','B') or isnull(XLXSTZYZ_TJYS,' ') = ' ' ) ");
|
||
SQL.Add(" order by XLXSTZYZ_XSXH,XLXSBJFLYZ_YZID ");
|
||
DataSet dsBJDYZZ = dberp.OpenDataSet(SQL);
|
||
for (int i = 0; i < dsBJDYZZ.Tables[0].Rows.Count; i++)
|
||
{
|
||
if (!dicBJDYZMC.ContainsKey(dsBJDYZZ.Tables[0].Rows[i]["XLXSBJFLYZ_YZID"].ToString().Trim()))
|
||
{
|
||
|
||
if (dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("JD")
|
||
|| dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("KD")
|
||
|| dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("SX")
|
||
||dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("MD")
|
||
||dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("DD"))
|
||
{
|
||
sStr = "(%)";
|
||
}
|
||
else if (dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("JJ"))
|
||
{
|
||
sStr = "(元)";
|
||
}
|
||
else if (dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("XX"))
|
||
{
|
||
sStr = "(不参与调价)";
|
||
}
|
||
dicBJDYZMC.Add(dsBJDYZZ.Tables[0].Rows[i]["XLXSBJFLYZ_YZID"].ToString().Trim(), dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim() + sStr);
|
||
dicBJDYZJJFS.Add(dsBJDYZZ.Tables[0].Rows[i]["XLXSBJFLYZ_YZID"].ToString().Trim(), dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim());
|
||
|
||
lstTJYS.Add(dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_TJYS"].ToString().Trim());
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
//sCXDX.Equals("BJD")
|
||
#region 构建主表的列
|
||
AddColumn("XLXSBJD_BJDID", "报价单号", 80, true);
|
||
AddColumn("BJFLID", "报价分类", 150, true);
|
||
AddColumn("XLXSBJD_BJRQ", "报价日期", 72, TDateTimeEditKinds.dtDate, true);
|
||
AddColumn("XLXSBJD_SQR", "申请人", 72, true);
|
||
AddColumn("JGBID", "价格表", 160, true);
|
||
AddColumn("TJJG", "铜价", 2, 72, true);
|
||
AddColumn("LJJG", "铝价", 2, 72, true);
|
||
AddColumn("SYDWID", "销售单位", 160, true);
|
||
AddColumn("XSQY", "销售区域", 160, true);
|
||
AddColumn("XSBM", "销售部门", 160, true);
|
||
AddColumn("XLXSBJD_TXY", "销售员", 72, true);
|
||
AddColumn("XLXSBJD_KH", "客户", 150, true);
|
||
AddColumn("XLXSBJD_XMMC", "项目", 150, true);
|
||
AddColumn("KHFL", "客户分类", 120, true);
|
||
if (QYXZQH)
|
||
{
|
||
AddColumn("XMSZDPRO", "项目所在地(省/直辖市/自治区)", 180, true);
|
||
AddColumn("XMSZDCITY", "项目所在地(市/区/盟/州)", 180, true);
|
||
}
|
||
AddColumn("MXJLS", "明细记录数", 0, 80, true);
|
||
AddColumn("XLXSBJD_ZJE", "报价总金额", 2, 120, true);
|
||
AddColumn("CPJJJE", "表价总金额", 2, 120, bXSJCL);
|
||
AddColumn("ZDXJZJE", "最低限价总金额", 2, 120, bXSZDXJ);
|
||
AddColumn("TBBJFK_FKRQ", "反馈日期", 72, TDateTimeEditKinds.dtDate, true);
|
||
AddColumn("ZBZJE", "中标总金额", 2, 120, true);
|
||
if (!sZBLRGS.Equals(""))
|
||
AddColumn("ZBZLR", "中标总利润", 2, 120, true);
|
||
AddColumn("XLXSBJD_BJSM", "报价说明", 120, true);
|
||
AddColumn("XLXSBJD_FKQXNR", "付款期限", 120, true);
|
||
if (lstTJYS.Contains("1"))
|
||
{
|
||
AddColumn("PJLX", "付款方式", 120, true);
|
||
}
|
||
else
|
||
{
|
||
AddColumn("XLXSBJD_FKSM", "付款说明", 120, true);
|
||
}
|
||
//通过报价分类构建因子顺序,仅构建主表相关的因子
|
||
foreach (KeyValuePair<string, string> kvp in dicBJDYZMC)
|
||
{
|
||
if (dicBJDYZJJFS.ContainsKey(kvp.Key))
|
||
{
|
||
if (dicBJDYZJJFS[kvp.Key].Equals("MX") || dicBJDYZJJFS[kvp.Key].Equals("DX"))
|
||
{
|
||
AddColumn("TZYZ_" + kvp.Key, kvp.Value, 4, 100, true);
|
||
}
|
||
else
|
||
{
|
||
AddColumn("TZYZ_" + kvp.Key, kvp.Value, 2, 100, true);
|
||
}
|
||
}
|
||
}
|
||
|
||
AddColumn("XLXSBJD_LRL", "表价价差率(%)", 2, 120, JcModule && bXSJCL);
|
||
AddColumn("XLXSBJD_CLCBJCL", "料价价差率(%)", 2, 120, JcModule && bXSLJJCL);
|
||
AddColumn("XLXSBJD_ZDXJJCL", "最低限价价差率(%)", 2, 120, JcModule && bXSZDXJ);
|
||
AddColumn("XLXSBJD_BZ", "报价备注", 200, true);
|
||
AddColumn("XLXSBJD_WHRID", "维护人工号", 70, false);
|
||
AddColumn("XLXSBJD_WHR", "维护人", 72, true);
|
||
AddColumn("XLXSBJD_WHSJ", "维护时间", 125, TDateTimeEditKinds.dtDateTime, true);
|
||
|
||
#endregion
|
||
}
|
||
else
|
||
{
|
||
#region 构建因子列
|
||
dicBJDYZMC.Clear();
|
||
dicBJDYZJJFS.Clear();
|
||
lstTJYS.Clear();
|
||
SQL.Clear();
|
||
SQL.Add(" SELECT XLXSBJFLYZ_YZID,XLXSTZYZ_TJYS,XLXSTZYZ_YZMC,XLXSTZYZ_JJFS FROM XLXSBJFLYZ ");
|
||
SQL.Add(" LEFT JOIN XLXSTZYZ on XLXSTZYZ_YZID = XLXSBJFLYZ_YZID and XLXSTZYZ_MXBH = 'BJD' ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJFLYZ_BJFLID", sCurBJFLID));
|
||
SQL.Add(" order by XLXSTZYZ_XSXH,XLXSBJFLYZ_YZID ");
|
||
DataSet dsBJDYZZ = dberp.OpenDataSet(SQL);
|
||
for (int i = 0; i < dsBJDYZZ.Tables[0].Rows.Count; i++)
|
||
{
|
||
if (!dicBJDYZMC.ContainsKey(dsBJDYZZ.Tables[0].Rows[i]["XLXSBJFLYZ_YZID"].ToString().Trim()))
|
||
{
|
||
|
||
if (dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("JD")
|
||
|| dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("KD")
|
||
|| dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("SX")
|
||
||dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("MD")
|
||
||dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("DD"))
|
||
{
|
||
sStr = "(%)";
|
||
}
|
||
else if (dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("JJ"))
|
||
{
|
||
sStr = "(元)";
|
||
}
|
||
else if (dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim().Equals("XX"))
|
||
{
|
||
sStr = "(不参与调价)";
|
||
}
|
||
dicBJDYZMC.Add(dsBJDYZZ.Tables[0].Rows[i]["XLXSBJFLYZ_YZID"].ToString().Trim(), dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_YZMC"].ToString().Trim() + sStr);
|
||
dicBJDYZJJFS.Add(dsBJDYZZ.Tables[0].Rows[i]["XLXSBJFLYZ_YZID"].ToString().Trim(), dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_JJFS"].ToString().Trim());
|
||
|
||
lstTJYS.Add(dsBJDYZZ.Tables[0].Rows[i]["XLXSTZYZ_TJYS"].ToString().Trim());
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
//sCXDX.Equals("BJDMX")
|
||
string sJGBBJMC = sJGBBJBM.Equals("") ? "表价" : sJGBBJBM;
|
||
string sBJMC = sBJBM.Equals("") ? "报价" : sBJBM;
|
||
#region 构建明细的列
|
||
AddColumn("XLXSBJDMX_BJDID", "报价单号", 80, true);
|
||
AddColumn("XLXSBJD_BJRQ", "报价日期", 72, TDateTimeEditKinds.dtDate, true);
|
||
AddColumn("XLXSBJD_SQR", "申请人", 72, true);
|
||
AddColumn("BJFLID", "报价分类", 150, true);
|
||
AddColumn("JGBID", "价格表", 160, true);
|
||
AddColumn("TBBJFK_FKRQ", "反馈日期", 72, TDateTimeEditKinds.dtDate, true);
|
||
AddColumn("TJJG", "铜价", 2, 72, true);
|
||
AddColumn("LJJG", "铝价", 2, 72, true);
|
||
AddColumn("XLXSBJD_TXY", "销售员", 72, true);
|
||
AddColumn("XLXSBJD_KH", "客户", 150, true);
|
||
AddColumn("KHFL", "客户分类", 120, true);
|
||
AddColumn("XLXSBJD_XMMC", "项目", 150, true);
|
||
if (QYXZQH)
|
||
{
|
||
AddColumn("XMSZDPRO", "项目所在地(省/直辖市/自治区)", 180, true);
|
||
AddColumn("XMSZDCITY", "项目所在地(市/区/盟/州)", 180, true);
|
||
}
|
||
AddColumn("XLXSBJDMX_XH", "序号", 0, 60, false);
|
||
AddColumn("XLXSBJDMX_XSSX", "显示序号", 0, 100, true);
|
||
|
||
AddColumn("XLXSBJDMX_XLXHID", "型号", 100, true);
|
||
AddColumn("XLXSBJDMX_XLGGID", "规格", 100, true);
|
||
AddColumn("XLBZID", "标准", 100, true);
|
||
AddColumn("XLXSBJDMX_DYDJID", "电压等级", 100, true);
|
||
AddColumn("XLYSID", "颜色", 100, true);
|
||
AddColumn("XLXSBJDMX_BJCP", "报价产品", 150, true);
|
||
AddColumn("TLCP", "铜铝产品", 100, true);
|
||
AddColumn("CPML", "产品目录", 100, true);
|
||
AddColumn("CPYT", "产品用途", 150, true);
|
||
AddColumn("XLXSBJDMX_DZSC", "定制生产",72, TEditType.etCheckBox, true);
|
||
|
||
AddColumn("ZXJM", "主芯截面", 72, true);
|
||
AddColumn("GGZJM", "规格总截面", 2, 72, true);
|
||
|
||
|
||
AddColumn("XLXSBJDMX_JLDW", "计量单位", 100, true);
|
||
AddColumn("XLXSBJDMX_BJSL", "报价数量", true, 3, 100, true);
|
||
|
||
AddColumn("XLXSBJDMX_CPBJ", sBJMC, iXSWS, 80, true);
|
||
AddColumn("XLXSBJDMX_BJDHQCLCB", sBJDHQLJBM.Equals("") ? "报价单行情料价" : sBJDHQLJBM, iXSWS, 90, bXSBJDHQLJ);
|
||
AddColumn("BJDHQCLCBJE", sBJDHQLJBM.Equals("") ? "报价单行情料价金额" : sBJDHQLJBM+"金额", iXSWS, 120, bXSBJDHQLJ);
|
||
AddColumn("XLXSBJDMX_CLCB", "价格表行情料价", iXSWS, 80, bXSLJ);
|
||
AddColumn("XLXSBJDMX_JGBJJ", "基价", iXSWS, 80, false);
|
||
|
||
//若存在“线缆销售报价表价”模块的权限,则增加显示价格表调价因子
|
||
if (CheckModule("100860010"))
|
||
{
|
||
Dictionary<string, string> dicJZJYZ = XLBJDUtils.GetJZJYZIDDic();
|
||
foreach (KeyValuePair<string, string> kvp in dicJZJYZ)
|
||
{
|
||
string sJJFS = XLBJDUtils.GetYZXXByYZID(kvp.Key).XLXSTZYZ_JJFS.Trim();
|
||
string sYZMC = kvp.Value;
|
||
if (sJJFS.Equals("JD") || sJJFS.Equals("KD") || sJJFS.Equals("SX"))
|
||
sYZMC += "(%)";
|
||
else
|
||
sYZMC += "(元)";
|
||
|
||
AddColumn("TZYZ_" + kvp.Key, sYZMC, 2, 100, true);
|
||
|
||
}
|
||
}
|
||
|
||
|
||
|
||
AddColumn("XLXSBJDMX_JGBBJ", sJGBBJMC, iXSWS, 80, true);
|
||
|
||
//通过报价分类构建因子顺序,构建明细因子
|
||
foreach (KeyValuePair<string, string> kvp in dicBJDYZMC)
|
||
{
|
||
if (dicBJDYZJJFS.ContainsKey(kvp.Key))
|
||
{
|
||
if (dicBJDYZJJFS[kvp.Key].Equals("MX") || dicBJDYZJJFS[kvp.Key].Equals("DX"))
|
||
{
|
||
AddColumn("TZYZ_" + kvp.Key, kvp.Value, 4, 100, true);
|
||
}
|
||
else
|
||
{
|
||
AddColumn("TZYZ_" + kvp.Key, kvp.Value, 2, 100, true);
|
||
}
|
||
}
|
||
}
|
||
|
||
AddColumn("XLXSBJDMX_TZQCPBJ", "调整前" + sBJMC, iNumberDecimalPlace, 80, false);
|
||
AddColumn("XLXSBJDMX_TZCPBJ", "调整" + sBJMC + "(%)", 6, 80, bXSTZJG);
|
||
AddColumn("XLXSBJDMX_TZQBJJE", sBJMC + "金额", 2, 80, bXSTZJE);
|
||
AddColumn("XLXSBJDMX_TZBJJE", "调整金额(元)", 2, 80, bXSTZJE);
|
||
if (bXSTZJE)
|
||
{
|
||
AddColumn("XLXSBJDMX_BJJE", string.Format("调整后{0}金额",sBJMC), 2, 90, true);
|
||
}
|
||
else
|
||
{
|
||
AddColumn("XLXSBJDMX_BJJE", sBJMC + "金额", 2, 90, true);
|
||
}
|
||
AddColumn("XLXSBJDMX_ZB", "中标", 72, true);
|
||
AddColumn("XLXSBJDMX_ZBSL", "中标数量", 3, 72, true);
|
||
AddColumn("XLXSBJDMX_ZBJE", "中标金额", 2, 72, true);
|
||
if (!sZBLRGS.Equals(""))
|
||
AddColumn("XLXSBJDMX_ZBLR", "中标利润", 2, 72, true,true);
|
||
|
||
AddColumn("WLID", "物料编码", 72, true);
|
||
AddColumn("WLXX", "物料信息", 150, true);
|
||
|
||
AddColumn("TZHDJ", "调整后单价", iXSWS, 90, bXSTZJE);
|
||
AddColumn("XLXSBJDMX_CLZL", "材料重量(Kg)", 3, 80, true);
|
||
|
||
AddColumn("XLXSBJDMX_CLCBJCL", "料价价差率(%)", 2, 120, bXSLJJCL);
|
||
AddColumn("XLXSBJDMX_JGBBJJCL", sJGBBJMC + "价差率(%)", 2, 120, bXSJCL);
|
||
AddColumn("XLXSBJDMX_JGBBJJCE", sJGBBJMC+"价差额", 2, 80, bXSJGBBJJCE);
|
||
AddColumn("XLXSBJDMX_ZDXJ", "最低限价", iXSWS, 80, bXSZDXJ);
|
||
AddColumn("XLXSBJDMX_ZDXJJCL", "最低限价价差率(%)", 2, 120, bXSZDXJ);
|
||
AddColumn("XLXSBJDMX_JSJG", "结算价", iXSWS, 80, bXSJSJG);
|
||
|
||
AddColumn("XLXSBJDMX_BZ", "备注", 200, true);
|
||
|
||
AddColumn("XLXSBJDMX_BJCPSD", "报价产品锁定", 60, TEditType.etCheckBox, false);
|
||
AddColumn("XLXSBJDMX_BJSDBZ",sBJMC+ "锁定", 60, TEditType.etCheckBox, true);
|
||
|
||
AddColumn("XLXSBJDMX_CLCBJCLSDBZ", "按料价价差率算报价", 60, TEditType.etCheckBox, bXSBJDHQLJ);
|
||
|
||
|
||
AddColumn("XLXSBJDMX_WHRID", "维护人工号", 70, false);
|
||
AddColumn("XLXSBJDMX_WHR", "维护人", 72, true);
|
||
AddColumn("XLXSBJDMX_WHSJ", "维护时间", 125, TDateTimeEditKinds.dtDateTime, true);
|
||
|
||
AddColumn("HasCLQD", "有无清单", 72, false);
|
||
AddColumn("HasYLDZSQ", "有无用量制定申请", 72, false);
|
||
#endregion
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取文档组号
|
||
/// </summary>
|
||
/// <param name="sSQDHList"></param>
|
||
/// <param name="dFJS"></param>
|
||
/// <returns></returns>
|
||
private double[] GetFileIDArray(string sBJDIDList, out double dFJS)
|
||
{
|
||
dFJS = 0;
|
||
List<double> fFileIDList = new List<double>();
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
|
||
SQL.Clear();
|
||
SQL.Add("select XLXSBJD_FJS, XLXSBJD_DOCGRPID from XLXSBJD ");
|
||
SQL.Add("where 1 = 1");
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJDID", sBJDIDList));
|
||
SQL.Add("order by XLXSBJD_BJDID");
|
||
DataSet ds = dberp.OpenDataSet(SQL);
|
||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||
{
|
||
dFJS += CMISproConvert.StrToFloat(ds.Tables[0].Rows[i]["XLXSBJD_FJS"].ToString());
|
||
fFileIDList.Add(CMISproConvert.StrToFloat(ds.Tables[0].Rows[i]["XLXSBJD_DOCGRPID"].ToString()));
|
||
}
|
||
return fFileIDList.ToArray();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 复制附件
|
||
/// </summary>
|
||
/// <param name="dGroupIdArray"></param>
|
||
/// <param name="dNewFjs"></param>
|
||
/// <returns></returns>
|
||
private double CopyAttach(double[] dGroupIdArray, out double dNewFjs)
|
||
{
|
||
//获取文件编号
|
||
List<double> fileIdList = new List<double>();
|
||
for (int i = 0; i < dGroupIdArray.Length; i++)
|
||
{
|
||
DocFileInfo[] docFileInfo = FileService.GetFilesInfo(dGroupIdArray[i]);
|
||
for (int j = 0; j < docFileInfo.Length; j++)
|
||
fileIdList.Add(docFileInfo[j].FileId);
|
||
}
|
||
|
||
//获取新文件组号和附件数
|
||
DocFileResult DocFiRe = FileService.CopyFiles(fileIdList.ToArray(), 0);
|
||
dNewFjs = DocFiRe.FileCount;
|
||
|
||
return DocFiRe.GroupId;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 更新主记录附件
|
||
/// </summary>
|
||
/// <param name="dberp"></param>
|
||
/// <param name="sSQID"></param>
|
||
/// <param name="dFJS"></param>
|
||
/// <param name="dDOCGRPID"></param>
|
||
private void UpdateDocOfBJD(TDatabase dberp, TSQL SQL, string sBJDID, double dFJS, double dDOCGRPID)
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add(" update XLXSBJD ");
|
||
SQL.Add(" set XLXSBJD_FJS= :pFJS, ");
|
||
SQL.Add(" XLXSBJD_DOCGRPID=:pDOCGRPID ");
|
||
SQL.Add(" where XLXSBJD_BJDID=:pBJDID ");
|
||
SQL.ParamByName("pFJS").Value = dFJS;
|
||
SQL.ParamByName("pDOCGRPID").Value = dDOCGRPID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
dberp.ExecSQL(SQL);
|
||
}
|
||
|
||
private void GetBXSJCL(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
//显示表价价差率
|
||
if (!bjflxx.XSJCL())
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void GetBXSZDXJ(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
#region 按角色隐藏栏目
|
||
//获取需要按角色隐藏的栏目ID列表
|
||
string sHidJSLMList = XLBJDUtils.GetHidJSLMList(sBJFLID, IsXJY.Value.Equals("Y"), IsSJY.Value.Equals("Y"), IsHJY.Value.Equals("Y"));
|
||
bool bJSYCZDXJ = false;
|
||
if (!sHidJSLMList.Trim().Equals(""))
|
||
{
|
||
string[] sHidJSLMs = sHidJSLMList.Split(',');
|
||
for (int i = 0; i < sHidJSLMs.Length; i++)
|
||
{
|
||
string sLMID = sHidJSLMs[i].Trim();
|
||
|
||
switch (sLMID)
|
||
{
|
||
case "XLXSBJDMX_ZDXJ":
|
||
bJSYCZDXJ = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
//最低限价
|
||
if (!bjflxx.XSZDXJ() || bJSYCZDXJ)
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void GetBXSLJJCL(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
//显示价格表行情料价/显示料价价差率
|
||
if (!bjflxx.XSLJJCL())
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void GetBXSBJDHQLJ(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
#region 按角色隐藏栏目
|
||
//获取需要按角色隐藏的栏目ID列表
|
||
string sHidJSLMList = XLBJDUtils.GetHidJSLMList(sBJFLID, IsXJY.Value.Equals("Y"), IsSJY.Value.Equals("Y"), IsHJY.Value.Equals("Y"));
|
||
bool bJSYCBJDHQLJ = false;
|
||
if (!sHidJSLMList.Trim().Equals(""))
|
||
{
|
||
string[] sHidJSLMs = sHidJSLMList.Split(',');
|
||
for (int i = 0; i < sHidJSLMs.Length; i++)
|
||
{
|
||
string sLMID = sHidJSLMs[i].Trim();
|
||
|
||
switch (sLMID)
|
||
{
|
||
case "XLXSBJDMX_BJDHQCLCB":
|
||
bJSYCBJDHQLJ = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
//显示报价单行情料价
|
||
if (!bjflxx.XSBJDHQLJ() || bJSYCBJDHQLJ)
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void GetBXSTZJG(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
//
|
||
if (!bjflxx.XSTZCPBJChecked())
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void GetBXSTZJE(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
//显示调整总金额
|
||
if (!bjflxx.XSTZBJJEChecked())
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void GetBXSJGBBJJCE(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
//表价价差总额/表价价差额
|
||
if (!bjflxx.XSJGBBJJCEChecked())
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
private void GetBXSJSJG(string sBJFL, ref List<string> ListBXS)
|
||
{
|
||
ListBXS.Clear();
|
||
foreach (string sBJFLID in sBJFL.Split(','))
|
||
{
|
||
BJFLXX bjflxx = XLBJDUtils.GetBJFLXX(sBJFLID);
|
||
|
||
#region 按角色隐藏栏目
|
||
//获取需要按角色隐藏的栏目ID列表
|
||
string sHidJSLMList = XLBJDUtils.GetHidJSLMList(sBJFLID, IsXJY.Value.Equals("Y"), IsSJY.Value.Equals("Y"), IsHJY.Value.Equals("Y"));
|
||
bool bJSYCJSJG = false;
|
||
if (!sHidJSLMList.Trim().Equals(""))
|
||
{
|
||
string[] sHidJSLMs = sHidJSLMList.Split(',');
|
||
for (int i = 0; i < sHidJSLMs.Length; i++)
|
||
{
|
||
string sLMID = sHidJSLMs[i].Trim();
|
||
|
||
switch (sLMID)
|
||
{
|
||
case "XLXSBJDMX_JSJG":
|
||
bJSYCJSJG = true;
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
//显示结算价
|
||
if (!bjflxx.XSJSJ() || bJSYCJSJG)
|
||
{
|
||
if (!ListBXS.Contains(sBJFLID))
|
||
ListBXS.Add(sBJFLID);
|
||
}
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
|
||
#region 按钮事件
|
||
#region 合并报价、拆分报价
|
||
|
||
protected void btnHBBJ_Click(object sender, EventArgs e)
|
||
{
|
||
DoBJDHB_CF("合并");
|
||
}
|
||
|
||
protected void btnCFBJ_Click(object sender, EventArgs e)
|
||
{
|
||
DoBJDHB_CF("拆分");
|
||
}
|
||
|
||
private void DoBJDHB_CF(string sAct)
|
||
{
|
||
if (string.IsNullOrEmpty(grdContentGrid.CheckedRowIndexs))
|
||
{
|
||
ShowMessage("请勾选需要" + sAct + "报价的记录!");
|
||
return;
|
||
}
|
||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||
TSQL SQL = new TSQL(dberp);
|
||
DataSet ds = new DataSet();
|
||
SQL.Clear();
|
||
string sError = "";
|
||
string sBJDIDList = "";//记录待合并的报价单号
|
||
string sBJDXHList = "";//记录待拆分的报价单序号
|
||
//重新生成的序号
|
||
string sKHSZDPRO = PageParam.GetRTrimString("KHSZDPRO");
|
||
string sKHSZDCITY = PageParam.GetRTrimString("KHSZDCITY");
|
||
string sXZQHID = PageParam.GetRTrimString("XZQHID");
|
||
|
||
if (this.grdContentGrid.CheckBox && !String.IsNullOrEmpty(this.grdContentGrid.CheckedRowIndexs))
|
||
{
|
||
//成功创建记录标志
|
||
string[] RowsArry = this.grdContentGrid.CheckedRowIndexs.Split(new char[] { ',' });
|
||
if (sAct == "合并")
|
||
{
|
||
if (RowsArry.Length < 2)
|
||
{
|
||
ShowMessage("请勾选至少两条记录!");
|
||
return;
|
||
}
|
||
foreach (string sRowIndex in RowsArry)
|
||
{
|
||
int iRowIndex = CMISproConvert.StrToInt(sRowIndex.Trim());
|
||
sBJDIDList = sBJDIDList + "," + grdContentGrid.DataKeys[iRowIndex]["XLXSBJD_BJDID"].ToString().Trim();
|
||
}
|
||
sBJDIDList = sBJDIDList.TrimStart(',').TrimEnd(',');
|
||
sBJDXHList = "";
|
||
}
|
||
else
|
||
{
|
||
foreach (string sRowIndex in RowsArry)
|
||
{
|
||
int iRowIndex = CMISproConvert.StrToInt(sRowIndex.Trim());
|
||
sBJDXHList = sBJDXHList + "," + grdContentGrid.DataKeys[iRowIndex]["XLXSBJDMX_XH"].ToString().Trim();
|
||
}
|
||
sBJDXHList = sBJDXHList.TrimStart(',').TrimEnd(',');
|
||
sBJDIDList = sBJDID;
|
||
}
|
||
|
||
string sNewBJDID = "";
|
||
string sJGBID = "";
|
||
string sBJRQ = DateTime.Now.ToShortDateString();
|
||
Dictionary<string, string> dicJGBID = new Dictionary<string, string>();
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSBJD_KH,XLXSBJD_TXY,XLXSBJD_KHLXR ");
|
||
SQL.Add(" from XLXSBJD ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJDID", sBJDIDList));
|
||
SQL.Add(" group by XLXSBJD_KH,XLXSBJD_TXY,XLXSBJD_KHLXR ");
|
||
ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 1)
|
||
{
|
||
ShowMessage("仅能" + sAct + "“客户”、“销售员”、“客户联系人”相同的记录!");
|
||
return;
|
||
}
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" select XLXSBJD_BJDID ");
|
||
SQL.Add(" from XLXSBJD ");
|
||
SQL.Add(" left join TBBJFK on TBBJFK_BJDID = XLXSBJD_BJDID ");
|
||
SQL.Add(" where isnull(TBBJFK_TBID, ' ')<>' ' ");
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJD_BJDID", sBJDIDList));
|
||
SQL.Add(" order by XLXSBJD_BJDID ");
|
||
ds = dberp.OpenDataSet(SQL);
|
||
if (ds.Tables[0].Rows.Count > 0)
|
||
{
|
||
ShowMessage(string.Format("报价单【{0}】已经反馈,不允许{1}!", ds.Tables[0].Rows[0]["XLXSBJD_BJDID"].ToString().Trim(), sAct));
|
||
return;
|
||
}
|
||
|
||
try
|
||
{
|
||
dberp.BeginTrans();
|
||
|
||
#region 初始校验
|
||
XLBJDUtils.GetBJDID(sXZQHID, sBJFLID,sSYDWID, ref sNewBJDID, ref sError);
|
||
if (!sError.Equals(""))
|
||
{
|
||
throw new Exception(sError);
|
||
}
|
||
if (sNewBJDID.Equals(""))
|
||
{
|
||
throw new Exception("报价单号为空!");
|
||
}
|
||
|
||
dicJGBID = XLBJDUtils.GetJGBIDByXSQYID("", sBJFLID, sBJRQ, sXSQYID);
|
||
foreach (KeyValuePair<string, string> kvp in dicJGBID)
|
||
{
|
||
if (sJGBID.Equals(""))
|
||
{
|
||
sJGBID = kvp.Key;
|
||
}
|
||
}
|
||
if (sJGBID.Equals(""))
|
||
{
|
||
throw new Exception("价格表为空!");
|
||
}
|
||
#endregion
|
||
|
||
#region 插入主表信息
|
||
SQL.Clear();
|
||
SQL.Add("insert into XLXSBJD ");
|
||
SQL.Add(" ( ");
|
||
SQL.Add(" XLXSBJD_BJDID,XLXSBJD_CLHQJGBID,");
|
||
SQL.Add(" XLXSBJD_BJFLID,XLXSBJD_KHID,XLXSBJD_XSQYID,");
|
||
SQL.Add(" XLXSBJD_SYDWID,XLXSBJD_XSJLMC,XLXSBJD_TXY,XLXSBJD_XSBMID, ");
|
||
SQL.Add(" XLXSBJD_KH,XLXSBJD_KHLXR,XLXSBJD_LXDH,XLXSBJD_CZ,XLXSBJD_PJLX,XLXSBJD_JZBJHS,");
|
||
SQL.Add(" XLXSBJD_XMMC,XLXSBJD_XXDZ,XLXSBJD_FKSM,XLXSBJD_BZ,XLXSBJD_ZJE,XLXSBJD_ZZL,");
|
||
SQL.Add(" XLXSBJD_LRL,XLXSBJD_FKQXNR,XLXSBJD_YSJDID,XLXSBJD_GYSID,XLXSBJD_YSFY,");
|
||
SQL.Add(" XLXSBJD_TJ,XLXSBJD_LJ,XLXSBJD_CZJSXY,XLXSBJD_KHDH,XLXSBJD_XZQHID,XLXSBJD_XMID,");
|
||
SQL.Add(" XLXSBJD_SQR,XLXSBJD_SQRGH,XLXSBJD_SQRID,XLXSBJD_SQRQ,");
|
||
SQL.Add(" XLXSBJD_BJRQ, XLXSBJD_JGBID,XLXSBJD_ZT,XLXSBJD_YBJDIDS, ");
|
||
SQL.Add(" XLXSBJD_WHRID,XLXSBJD_WHR,XLXSBJD_WHSJ ");
|
||
SQL.Add(" ) ");
|
||
SQL.Add(" select ");
|
||
SQL.Add(" :pNewBJDID,XLXSBJD_CLHQJGBID,");
|
||
SQL.Add(" XLXSBJD_BJFLID,XLXSBJD_KHID,XLXSBJD_XSQYID,");
|
||
SQL.Add(" XLXSBJD_SYDWID,XLXSBJD_XSJLMC,XLXSBJD_TXY,XLXSBJD_XSBMID, ");
|
||
SQL.Add(" XLXSBJD_KH,XLXSBJD_KHLXR,XLXSBJD_LXDH,XLXSBJD_CZ,XLXSBJD_PJLX,XLXSBJD_JZBJHS,");
|
||
SQL.Add(" XLXSBJD_XMMC,XLXSBJD_XXDZ,XLXSBJD_FKSM,XLXSBJD_BZ,XLXSBJD_ZJE,XLXSBJD_ZZL,");
|
||
SQL.Add(" XLXSBJD_LRL,XLXSBJD_FKQXNR,XLXSBJD_YSJDID,XLXSBJD_GYSID,XLXSBJD_YSFY,");
|
||
SQL.Add(" XLXSBJD_TJ,XLXSBJD_LJ,XLXSBJD_CZJSXY,XLXSBJD_KHDH,XLXSBJD_XZQHID,XLXSBJD_XMID,");
|
||
SQL.Add(" :XLXSBJD_SQR,:XLXSBJD_SQRGH,:XLXSBJD_SQRID,:XLXSBJD_SQRQ,");
|
||
SQL.Add(" :XLXSBJD_BJRQ,:XLXSBJD_JGBID,:XLXSBJD_ZT,:XLXSBJD_YBJDIDS, ");
|
||
SQL.Add(" :XLXSBJD_WHRID,:XLXSBJD_WHR,:XLXSBJD_WHSJ ");
|
||
SQL.Add(" from XLXSBJD ");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" and XLXSBJD_BJDID=:pBJDID ");
|
||
SQL.ParamByName("pNewBJDID").Value = sNewBJDID;
|
||
SQL.ParamByName("pBJDID").Value = sBJDID;
|
||
|
||
SQL.ParamByName("XLXSBJD_SQR").Value = tSession.UserName;
|
||
SQL.ParamByName("XLXSBJD_SQRGH").Value = tSession.UserId;
|
||
SQL.ParamByName("XLXSBJD_SQRID").Value = TRYXX.GetRYXXByGH(tSession.UserId).RYID;
|
||
SQL.ParamByName("XLXSBJD_SQRQ").Value = sBJRQ;
|
||
SQL.ParamByName("XLXSBJD_BJRQ").Value = sBJRQ;
|
||
SQL.ParamByName("XLXSBJD_JGBID").Value = sJGBID;
|
||
if (sAct == "合并")
|
||
SQL.ParamByName("XLXSBJD_ZT").Value = "H";
|
||
else if (sAct == "拆分")
|
||
SQL.ParamByName("XLXSBJD_ZT").Value = "C";
|
||
SQL.ParamByName("XLXSBJD_YBJDIDS").Value = sBJDIDList;
|
||
|
||
SQL.ParamByName("XLXSBJD_WHRID").Value = tSession.UserId;
|
||
SQL.ParamByName("XLXSBJD_WHR").Value = tSession.UserName;
|
||
SQL.ParamByName("XLXSBJD_WHSJ").Value = DateTime.Now;
|
||
dberp.ExecSQL(SQL);
|
||
#endregion
|
||
|
||
#region 手工生成工作流数据
|
||
TWorkflow wf = new TWorkflow(tSession, Cache);
|
||
wf.Enabled = true;
|
||
wf.UMID = 100860000;
|
||
wf.WFNewInst(wf.GetWFID("XLXSBJ_BJD"), tSession.UserId);
|
||
wf.dbe.ExecSQL(string.Format("update XLXSBJD set XLXSBJD_WFID='{0}', XLXSBJD_WPID='{1}', XLXSBJD_ACTNAME = '{2}', XLXSBJD_WFAWAITER='{3}', XLXSBJD_WFHANDLER='{4}', XLXSBJD_WFINST={5} where XLXSBJD_BJDID='{6}' ",
|
||
wf.WFID, wf.WPID, wf.GetWFActionName(TWFAction.wfaNewInst), wf.Awaiter, wf.Handler, wf.WFInst, sNewBJDID));
|
||
#endregion
|
||
|
||
#region 更新附件
|
||
double dFJS = 0;
|
||
double[] dGroupIdArray = GetFileIDArray(sBJDIDList, out dFJS);
|
||
if (dFJS != 0)
|
||
{
|
||
double dNewFjs = 0;
|
||
double dNewGrpId = CopyAttach(dGroupIdArray, out dNewFjs);
|
||
UpdateDocOfBJD(dberp, SQL, sNewBJDID, dNewFjs, dNewGrpId);
|
||
}
|
||
#endregion
|
||
|
||
#region 初始化
|
||
tmpXSWS = string.IsNullOrEmpty(GetOption(100860000, "BJU002")) ? 5 : CMISproConvert.StrToInt(GetOption(100860000, "BJU002"));
|
||
if (tmpXSWS < 0)
|
||
{
|
||
tmpXSWS = 0;
|
||
}
|
||
else if (tmpXSWS > 8)
|
||
{
|
||
tmpXSWS = 8;
|
||
}
|
||
|
||
string sXH = "";
|
||
string sXSSX = "";
|
||
string sXLXHID = "";
|
||
string sXLGGID = "";
|
||
string sXLBZID = "";
|
||
string sDYDJID = "";
|
||
string sJLDW = "";
|
||
string sBJSL = "";
|
||
|
||
double fCLZL = 0;
|
||
double dCPJJ = 0;
|
||
double dJJ = 0;
|
||
double dCLCB = 0;
|
||
double dBJDHQCLCB = 0;
|
||
|
||
string sBJU003 = GetOption(100860000, "BJU003");
|
||
string sBJU018 = GetOption(100860000, "BJU018");
|
||
//用于传递固定参数计算表价
|
||
Dictionary<string, string> dic = new Dictionary<string, string>();
|
||
//用于记录RowIndex和XH的关系
|
||
|
||
string sBJDCP = "";
|
||
string sBZ = "";
|
||
#endregion
|
||
|
||
#region 循环插入明细信息
|
||
SQL.Clear();
|
||
SQL.Add("select ");
|
||
SQL.Add(" :pNewBJDID, ");
|
||
SQL.Add(" row_number()over(order by XLXSBJDMX_BJDID,XLXSBJDMX_XSSX,XLXSBJDMX_XH) as XH, ");
|
||
SQL.Add(" row_number()over(order by XLXSBJDMX_BJDID,XLXSBJDMX_XSSX,XLXSBJDMX_XH) as XSSX, ");
|
||
SQL.Add(" XLXSBJDMX_XLXHID, XLXSBJDMX_XLGGID, XLXSBJDMX_XLBZID,XLXSBJDMX_DYDJID,");
|
||
SQL.Add(" XLXSBJDMX_XLYSID,XLXSBJDMX_CPMLMC,XLXSBJDMX_BJCP,");
|
||
SQL.Add(" XLXSBJDMX_JLDW,XLXSBJDMX_BJSL,");
|
||
SQL.Add(" XLXSBJDMX_JGBBJ,XLXSBJDMX_TZQCPBJ,XLXSBJDMX_TZCPBJ,");
|
||
SQL.Add(" XLXSBJDMX_CPBJ,XLXSBJDMX_TZQBJJE,XLXSBJDMX_TZBJJE,XLXSBJDMX_BJJE,XLXSBJDMX_JGBJJ,XLXSBJDMX_CLCB,");
|
||
SQL.Add(" XLXSBJDMX_JGBBJJCL,XLXSBJDMX_JGBBJJCE,XLXSBJDMX_CLZL,XLXSBJDMX_BJDHQCLCB,XLXSBJDMX_CLCBJCL,");
|
||
SQL.Add(" XLXSBJDMX_BJCPSD,XLXSBJDMX_BJSDBZ,XLXSBJDMX_CLCBJCLSDBZ,XLXSBJDMX_ZDXJ,XLXSBJDMX_ZDXJJCL,");
|
||
SQL.Add(" XLXSBJDMX_BJDID,XLXSBJDMX_XH, ");
|
||
//后续增补数据
|
||
SQL.Add(" XLXSBJDMX_WGCPBZ, ");
|
||
SQL.Add(" XLXSBJDMX_BZ,XLXSBJDMX_WHRID,XLXSBJDMX_WHR,XLXSBJDMX_WHSJ, ");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ01, XLXSBJDYZZ0_YZZ02, XLXSBJDYZZ0_YZZ03,XLXSBJDYZZ0_YZZ04, XLXSBJDYZZ0_YZZ05, ");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ06, XLXSBJDYZZ0_YZZ07, XLXSBJDYZZ0_YZZ08,XLXSBJDYZZ0_YZZ09, XLXSBJDYZZ0_YZZ10,");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ11, XLXSBJDYZZ0_YZZ12, XLXSBJDYZZ0_YZZ13,XLXSBJDYZZ0_YZZ14, XLXSBJDYZZ0_YZZ15, ");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ16, XLXSBJDYZZ0_YZZ17, XLXSBJDYZZ0_YZZ18,XLXSBJDYZZ0_YZZ19, XLXSBJDYZZ0_YZZ20,XLXSBJDMX_ZDXJBJDID,XLXSBJDMX_ZDXJBJDXH ");
|
||
SQL.Add(" from XLXSBJDMX ");
|
||
SQL.Add(" left join XLXSBJDYZZ0 on XLXSBJDYZZ0_BJDID=XLXSBJDMX_BJDID and XLXSBJDYZZ0_XH=XLXSBJDMX_XH");
|
||
SQL.Add(" where 1=1 ");
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJDMX_BJDID", sBJDIDList));
|
||
if (!sBJDXHList.Trim().Equals(""))
|
||
SQL.Add(" and " + CMISproDataBase.GetWhereEqual("XLXSBJDMX_XH", sBJDXHList));
|
||
SQL.Add(" order by XLXSBJDMX_BJDID,XLXSBJDMX_XSSX,XLXSBJDMX_XH ");
|
||
SQL.ParamByName("pNewBJDID").Value = sNewBJDID;
|
||
ds = dberp.OpenDataSet(SQL);
|
||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||
{
|
||
SQL.Clear();
|
||
sXH = ds.Tables[0].Rows[i]["XH"].ToString().Trim();
|
||
sXSSX = ds.Tables[0].Rows[i]["XSSX"].ToString().Trim();
|
||
sXLXHID = ds.Tables[0].Rows[i]["XLXSBJDMX_XLXHID"].ToString().Trim();
|
||
sXLGGID = ds.Tables[0].Rows[i]["XLXSBJDMX_XLGGID"].ToString().Trim();
|
||
sXLBZID = ds.Tables[0].Rows[i]["XLXSBJDMX_XLBZID"].ToString().Trim();
|
||
sDYDJID = ds.Tables[0].Rows[i]["XLXSBJDMX_DYDJID"].ToString().Trim().Equals("") ? " " : ds.Tables[0].Rows[i]["XLXSBJDMX_DYDJID"].ToString().Trim();
|
||
sJLDW = ds.Tables[0].Rows[i]["XLXSBJDMX_JLDW"].ToString().Trim();
|
||
sBJDCP = ds.Tables[0].Rows[i]["XLXSBJDMX_BJCP"].ToString().Trim();
|
||
sBJSL = ds.Tables[0].Rows[i]["XLXSBJDMX_BJSL"].ToString().Trim();
|
||
sBZ = ds.Tables[0].Rows[i]["XLXSBJDMX_BZ"].ToString().Trim();
|
||
|
||
#region 根据四要素算表价----参照用量制定-XLBJDInfo.aspx.cs UpdateBJCPByCLCYZD(Line 12249)
|
||
fCLZL = 0;
|
||
dCPJJ = 0;
|
||
dJJ = 0;
|
||
dCLCB = 0;
|
||
dBJDHQCLCB = 0;
|
||
dic.Clear();
|
||
dic.Add("sXH", sXH);
|
||
dic.Add("fBJSL", sBJSL);
|
||
dic.Add("sJLDW", sJLDW);
|
||
dic.Add("iXSWS", tmpXSWS.ToString().Trim());
|
||
dic.Add("sXSQYID", sXSQYID);
|
||
dic.Add("sBJFLID", sBJFLID);
|
||
dic.Add("sJGBID", sJGBID);
|
||
dic.Add("sBJDHQLY", PageParam.GetRTrimString("BJDHQLY"));
|
||
dic.Add("sBJRQ", sBJRQ);
|
||
dic.Add("sJGBIDS", PageParam.GetRTrimString("JGBIDS"));
|
||
dic.Add("fJZBJHS", PageParam.GetRTrimString("HSBZ"));
|
||
dic.Add("sLJJCLLX", PageParam.GetRTrimString("LJJCLLX"));
|
||
dic.Add("sJCLLX", PageParam.GetRTrimString("JCLLX"));
|
||
dic.Add("sBJLY", PageParam.GetRTrimString("BJLY"));
|
||
dic.Add("sJSBLFS", PageParam.GetRTrimString("JSBLFS"));
|
||
dic.Add("sTZCLHQ", PageParam.GetRTrimString("NeedUpdBJDHQCLCB"));
|
||
dic.Add("sJGCIDS", PageParam.GetRTrimString("JGCIDS"));
|
||
dic.Add("sJGBTJYS", PageParam.GetRTrimString("JGBTJYS"));
|
||
dic.Add("sTBJCLID", PageParam.GetRTrimString("TBJCLID"));
|
||
dic.Add("sLBJCLID", PageParam.GetRTrimString("LBJCLID"));
|
||
dic.Add("sTJ", PageParam.GetRTrimString("TJ"));
|
||
dic.Add("sLJ", PageParam.GetRTrimString("LJ"));
|
||
dic.Add("sBJU003", sBJU003);
|
||
dic.Add("sBJU018", sBJU018);
|
||
string sWGCPBZ = "N";
|
||
string sJGFBZ = "N";
|
||
Dictionary<string, double> dicJJYZList_JGE = new Dictionary<string, double>();
|
||
XLBJDUtils.UpdateXLXSBJDMX_JGBBJ(dberp, SQL, sBJDID, sXLXHID, sXLGGID, sXLBZID, sDYDJID, dic, ref dCPJJ, ref dJJ, ref dCLCB, ref dBJDHQCLCB, ref fCLZL, ref dicJJYZList_JGE, ref sWGCPBZ, ref sJGFBZ);
|
||
if (dicJJYZList_JGE.Count > 0)
|
||
{
|
||
SQL.Clear();
|
||
SQL.Add("insert into XLXSBJDJJYZ(XLXSBJDJJYZ_BJDID,XLXSBJDJJYZ_XH,XLXSBJDJJYZ_YZZ01,XLXSBJDJJYZ_YZZ02,XLXSBJDJJYZ_YZZ03,XLXSBJDJJYZ_YZZ04,");
|
||
SQL.Add(" XLXSBJDJJYZ_YZZ05,XLXSBJDJJYZ_YZZ06,XLXSBJDJJYZ_YZZ07,XLXSBJDJJYZ_YZZ08,XLXSBJDJJYZ_YZZ09,XLXSBJDJJYZ_YZZ10)");
|
||
SQL.Add(" values(:pBJDID,:pBJDXH,:pYZZ01,:pYZZ02,:pYZZ03,:pYZZ04,:pYZZ05,:pYZZ06,:pYZZ07,:pYZZ08,:pYZZ09,:pYZZ10)");
|
||
SQL.ParamByName("pBJDID").Value = sNewBJDID;
|
||
SQL.ParamByName("pBJDXH").Value = sXH;
|
||
SQL.ParamByName("pYZZ01").Value = dicJJYZList_JGE["JZ01"];
|
||
SQL.ParamByName("pYZZ02").Value = dicJJYZList_JGE["JZ02"];
|
||
SQL.ParamByName("pYZZ03").Value = dicJJYZList_JGE["JZ03"];
|
||
SQL.ParamByName("pYZZ04").Value = dicJJYZList_JGE["JZ04"];
|
||
SQL.ParamByName("pYZZ05").Value = dicJJYZList_JGE["JZ05"];
|
||
SQL.ParamByName("pYZZ06").Value = dicJJYZList_JGE["JZ06"];
|
||
SQL.ParamByName("pYZZ07").Value = dicJJYZList_JGE["JZ07"];
|
||
SQL.ParamByName("pYZZ08").Value = dicJJYZList_JGE["JZ08"];
|
||
SQL.ParamByName("pYZZ09").Value = dicJJYZList_JGE["JZ09"];
|
||
SQL.ParamByName("pYZZ10").Value = dicJJYZList_JGE["JZ10"];
|
||
dberp.ExecSQL(SQL);
|
||
}
|
||
|
||
SQL.Clear();
|
||
SQL.Add(" insert into XLXSBJDMX( ");
|
||
SQL.Add(" XLXSBJDMX_BJDID, XLXSBJDMX_XH,XLXSBJDMX_XSSX, XLXSBJDMX_XLXHID, XLXSBJDMX_XLGGID, ");
|
||
SQL.Add(" XLXSBJDMX_XLBZID, XLXSBJDMX_DYDJID, XLXSBJDMX_XLYSID, XLXSBJDMX_BJCP, XLXSBJDMX_CPMLMC, ");
|
||
SQL.Add(" XLXSBJDMX_JLDW, XLXSBJDMX_BJSL,XLXSBJDMX_XDXLXHID,XLXSBJDMX_XDXLBZID, ");
|
||
SQL.Add(" XLXSBJDMX_JGBBJ,XLXSBJDMX_JGBJJ,XLXSBJDMX_CLCB,XLXSBJDMX_BJDHQCLCB,XLXSBJDMX_CLZL, ");
|
||
SQL.Add(" XLXSBJDMX_BJSDBZ,XLXSBJDMX_CPBJ, ");
|
||
//后续增补数据
|
||
SQL.Add(" XLXSBJDMX_WGCPBZ,XLXSBJDMX_JGFBZ, ");
|
||
SQL.Add(" XLXSBJDMX_BZ, XLXSBJDMX_DZSC, XLXSBJDMX_WHRID, XLXSBJDMX_WHR, XLXSBJDMX_WHSJ,XLXSBJDMX_ZDXJBJDID,XLXSBJDMX_ZDXJBJDXH )");
|
||
SQL.Add(" values(");
|
||
SQL.Add(" :pNewBJDID, :XLXSBJDMX_XH, :XLXSBJDMX_XSSX, :XLXSBJDMX_XLXHID, :XLXSBJDMX_XLGGID, ");
|
||
SQL.Add(" :XLXSBJDMX_XLBZID, isnull(:XLXSBJDMX_DYDJID,' '), :XLXSBJDMX_XLYSID, :XLXSBJDMX_BJCP, :XLXSBJDMX_CPMLMC, ");
|
||
SQL.Add(" :XLXSBJDMX_JLDW, :XLXSBJDMX_BJSL,:XLXSBJDMX_XDXLXHID,:XLXSBJDMX_XDXLBZID, ");
|
||
SQL.Add(" :XLXSBJDMX_JGBBJ, :XLXSBJDMX_JGBJJ, :XLXSBJDMX_CLCB, :XLXSBJDMX_BJDHQCLCB, :XLXSBJDMX_CLZL, ");
|
||
SQL.Add(" :XLXSBJDMX_BJSDBZ,:XLXSBJDMX_CPBJ, ");
|
||
//后续增补数据
|
||
SQL.Add(" :XLXSBJDMX_WGCPBZ,:XLXSBJDMX_JGFBZ, ");
|
||
SQL.Add(" :XLXSBJDMX_BZ, :XLXSBJDMX_DZSC, :XLXSBJDMX_WHRID, :XLXSBJDMX_WHR, :XLXSBJDMX_WHSJ,:XLXSBJDMX_ZDXJBJDID,:XLXSBJDMX_ZDXJBJDXH )");
|
||
SQL.ParamByName("pNewBJDID").Value = sNewBJDID;
|
||
SQL.ParamByName("XLXSBJDMX_XH").Value = sXH;
|
||
SQL.ParamByName("XLXSBJDMX_XSSX").Value = sXSSX;
|
||
SQL.ParamByName("XLXSBJDMX_XLXHID").Value = sXLXHID;
|
||
SQL.ParamByName("XLXSBJDMX_XDXLXHID").Value = sXLXHID;
|
||
SQL.ParamByName("XLXSBJDMX_XLGGID").Value = sXLGGID;
|
||
SQL.ParamByName("XLXSBJDMX_XLBZID").Value = sXLBZID;
|
||
SQL.ParamByName("XLXSBJDMX_XDXLBZID").Value = sXLBZID;
|
||
SQL.ParamByName("XLXSBJDMX_DYDJID").Value = sDYDJID;
|
||
SQL.ParamByName("XLXSBJDMX_XLYSID").Value = XLBJDInfo.GetDefaultYSID(sXLXHID, sXLGGID);
|
||
SQL.ParamByName("XLXSBJDMX_BJCP").Value = sBJDCP;
|
||
SQL.ParamByName("XLXSBJDMX_CPMLMC").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_CPMLMC"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_JLDW").Value = sJLDW;
|
||
SQL.ParamByName("XLXSBJDMX_BJSL").Value = sBJSL;
|
||
SQL.ParamByName("XLXSBJDMX_JGBBJ").Value = dCPJJ;
|
||
SQL.ParamByName("XLXSBJDMX_JGBJJ").Value = dJJ;
|
||
SQL.ParamByName("XLXSBJDMX_CLCB").Value = dCLCB;
|
||
SQL.ParamByName("XLXSBJDMX_BJDHQCLCB").Value = dBJDHQCLCB;
|
||
SQL.ParamByName("XLXSBJDMX_CLZL").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_CLZL"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_BZ").Value = sBZ;
|
||
SQL.ParamByName("XLXSBJDMX_BJSDBZ").Value = "Y";//报价锁定默认为Y
|
||
SQL.ParamByName("XLXSBJDMX_CPBJ").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_CPBJ"].ToString().Trim();
|
||
//后续增补数据
|
||
SQL.ParamByName("XLXSBJDMX_WGCPBZ").Value = sWGCPBZ;
|
||
SQL.ParamByName("XLXSBJDMX_JGFBZ").Value = sJGFBZ;
|
||
if (XLBJDUtils.ISDZBZ(sXLBZID))
|
||
{
|
||
SQL.ParamByName("XLXSBJDMX_DZSC").Value = "Y";
|
||
}
|
||
else
|
||
{
|
||
SQL.ParamByName("XLXSBJDMX_DZSC").Value = "N";
|
||
}
|
||
SQL.ParamByName("XLXSBJDMX_WHR").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_WHR"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_WHRID").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_WHRID"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_WHSJ").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_WHSJ"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_ZDXJBJDID").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_ZDXJBJDID"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDMX_ZDXJBJDXH").Value = ds.Tables[0].Rows[i]["XLXSBJDMX_ZDXJBJDXH"].ToString().Trim();
|
||
|
||
dberp.ExecSQL(SQL);
|
||
|
||
#endregion
|
||
|
||
#region 直接以源报价单因子插入
|
||
SQL.Clear();
|
||
SQL.Add(" insert into XLXSBJDYZZ0 ");
|
||
SQL.Add(" (");
|
||
SQL.Add(" XLXSBJDYZZ0_BJDID, XLXSBJDYZZ0_XH, ");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ01, XLXSBJDYZZ0_YZZ02, XLXSBJDYZZ0_YZZ03,XLXSBJDYZZ0_YZZ04, XLXSBJDYZZ0_YZZ05, ");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ06, XLXSBJDYZZ0_YZZ07, XLXSBJDYZZ0_YZZ08,XLXSBJDYZZ0_YZZ09, XLXSBJDYZZ0_YZZ10, ");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ11, XLXSBJDYZZ0_YZZ12, XLXSBJDYZZ0_YZZ13,XLXSBJDYZZ0_YZZ14, XLXSBJDYZZ0_YZZ15, ");
|
||
SQL.Add(" XLXSBJDYZZ0_YZZ16, XLXSBJDYZZ0_YZZ17, XLXSBJDYZZ0_YZZ18,XLXSBJDYZZ0_YZZ19, XLXSBJDYZZ0_YZZ20 ");
|
||
SQL.Add(" )");
|
||
SQL.Add(" values ");
|
||
SQL.Add(" (");
|
||
SQL.Add(" :pNewBJDID, :XLXSBJDYZZ0_XH, ");
|
||
SQL.Add(" :XLXSBJDYZZ0_YZZ01, :XLXSBJDYZZ0_YZZ02, :XLXSBJDYZZ0_YZZ03,:XLXSBJDYZZ0_YZZ04, :XLXSBJDYZZ0_YZZ05, ");
|
||
SQL.Add(" :XLXSBJDYZZ0_YZZ06, :XLXSBJDYZZ0_YZZ07, :XLXSBJDYZZ0_YZZ08,:XLXSBJDYZZ0_YZZ09, :XLXSBJDYZZ0_YZZ10, ");
|
||
SQL.Add(" :XLXSBJDYZZ0_YZZ11, :XLXSBJDYZZ0_YZZ12, :XLXSBJDYZZ0_YZZ13,:XLXSBJDYZZ0_YZZ14, :XLXSBJDYZZ0_YZZ15, ");
|
||
SQL.Add(" :XLXSBJDYZZ0_YZZ16, :XLXSBJDYZZ0_YZZ17, :XLXSBJDYZZ0_YZZ18,:XLXSBJDYZZ0_YZZ19, :XLXSBJDYZZ0_YZZ20 ");
|
||
SQL.Add(" )");
|
||
SQL.ParamByName("pNewBJDID").Value = sNewBJDID;
|
||
SQL.ParamByName("XLXSBJDYZZ0_XH").Value = ds.Tables[0].Rows[i]["XH"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ01").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ01"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ02").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ02"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ03").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ03"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ04").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ04"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ05").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ05"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ06").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ06"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ07").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ07"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ08").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ08"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ09").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ09"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ10").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ10"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ11").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ11"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ12").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ12"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ13").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ13"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ14").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ14"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ15").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ15"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ16").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ16"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ17").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ17"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ18").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ18"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ19").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ19"].ToString().Trim();
|
||
SQL.ParamByName("XLXSBJDYZZ0_YZZ20").Value = ds.Tables[0].Rows[i]["XLXSBJDYZZ0_YZZ20"].ToString().Trim();
|
||
dberp.ExecSQL(SQL);
|
||
#endregion
|
||
}
|
||
#endregion
|
||
|
||
#region 同步补充插入XLXSCLQD、XLXSJGBMX中没有的记录
|
||
XLBJDInfo.InsertCLQDorJGBMX(sNewBJDID, sJGBID, PageParam.GetRTrimString("JGCIDS"), tSession);
|
||
#endregion
|
||
|
||
#region 同步插入XLXSBJDCLCB、XLXSBJDJJYZ
|
||
XLBJDInfo.InsertCLCBandJJYZ(TControlState.ctsInsert, sNewBJDID, sJGBID, tSession.UserId, tSession.UserName,
|
||
sBJU003, PageParam.GetRTrimString("HSBZ").Equals("Y"));
|
||
#endregion
|
||
|
||
string sErrorNum = string.Empty;
|
||
XLBJDUtils.UpdateXDXLBZID(dberp, SQL, sNewBJDID, "", 0, ref sErrorNum);
|
||
|
||
#region 计算报价
|
||
XLBJDUtils.UpdateBJDMX(dberp, SQL, sBJFLID, sNewBJDID, tmpXSWS, PageParam.GetRTrimString("JCLLX"), PageParam.GetRTrimString("LJJCLLX"), PageParam.GetRTrimString("CPBJMRXSWS"), "", 0);
|
||
#endregion
|
||
|
||
#region 计算最新限价
|
||
XLBJDUtils.UpdateZDXJGS(sNewBJDID, sBJFLID, GetOption(100860000, "BJU002"), "", 0);
|
||
XLBJDUtils.UpdateJSJGS(sNewBJDID, sBJFLID, GetOption(100860000, "BJU002"), "", 0);
|
||
|
||
#endregion
|
||
|
||
#region 短米校验和修正
|
||
XLBJDCalcUtils.Check_UpdBJSLYZZ(dberp, SQL, sNewBJDID, sBJFLID, GetOption(100860000, "BJU002"), sBJU003);
|
||
#endregion
|
||
|
||
#region 更新报价单主表记录
|
||
XLBJDUtils.UpdateXLXSBJD(dberp, SQL, sNewBJDID, PageParam.GetRTrimString("JCLLX"), PageParam.GetRTrimString("LJJCLLX"), PageParam.GetRTrimString("ZDXJJCLLX"), PageParam.GetRTrimString("JYF"), PageParam.GetRTrimString("YSJDID"),
|
||
PageParam.GetRTrimString("GYSID"), PageParam.GetRTrimString("YFWLID"), PageParam.GetRTrimString("BJHYF"));
|
||
#endregion
|
||
|
||
dberp.CommitTrans();
|
||
|
||
string sWFID = wf.WFID;
|
||
string sWFINST = wf.WFInst.ToString().Trim();
|
||
|
||
TPageParams tpp = new TPageParams();
|
||
tpp.UrlPath = "XLBJDInfo.aspx";
|
||
tpp.AddString("XLXSBJD_BJDID", sNewBJDID);
|
||
tpp.AddString("WFID", sWFID);
|
||
tpp.AddString("WFINST", sWFINST);
|
||
tpp.CallAction = TPageCallAction.pcaEdit;
|
||
OpenModuleDialog(100860000, tpp);
|
||
|
||
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
dberp.RollbackTrans();
|
||
ShowMessage(ex.ToString().Trim());
|
||
}
|
||
}
|
||
}
|
||
|
||
#endregion
|
||
#endregion
|
||
|
||
#region GridView增加列
|
||
|
||
/// <summary>
|
||
/// 设置etCheckBox列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="Width"></param>
|
||
/// <param name="CheckBox"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int Width, TEditType TEditType, bool bVisible)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
Column.Visible = bVisible;
|
||
grdContentGrid.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType;
|
||
grdContentGrid.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etString列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int Width, bool bVisible)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
Column.Visible = bVisible;
|
||
grdContentGrid.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etString;
|
||
ColumnEx.ShowHint = true;
|
||
grdContentGrid.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etNumber列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="NumberDecimalPlace"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int NumberDecimalPlace, int Width, bool bVisible,bool bShowZero)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
Column.Visible = bVisible;
|
||
Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
|
||
grdContentGrid.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etNumber;
|
||
ColumnEx.ShowHint = true;
|
||
ColumnEx.NumberDecimalPlace = NumberDecimalPlace;
|
||
ColumnEx.ShowZero = bShowZero;
|
||
grdContentGrid.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etNumber列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="NumberDecimalPlace"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int NumberDecimalPlace, int Width, bool bVisible)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
Column.Visible = bVisible;
|
||
Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
|
||
grdContentGrid.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etNumber;
|
||
ColumnEx.ShowHint = true;
|
||
ColumnEx.NumberDecimalPlace = NumberDecimalPlace;
|
||
grdContentGrid.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etNumber列的属性(报价数量)
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="NumberIsQuantity"></param>
|
||
/// <param name="NumberDecimalPlace"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, bool NumberIsQuantity, int NumberDecimalPlace, int Width, bool bVisible)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.ItemStyle.Width = (Unit)Width;
|
||
Column.HeaderStyle.Width = (Unit)Width;
|
||
Column.Visible = bVisible;
|
||
Column.ItemStyle.HorizontalAlign = HorizontalAlign.Right;
|
||
grdContentGrid.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etNumber;
|
||
ColumnEx.ShowHint = true;
|
||
ColumnEx.NumberIsQuantity = NumberIsQuantity;
|
||
ColumnEx.NumberDecimalPlace = NumberDecimalPlace;
|
||
grdContentGrid.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 设置etDateTime列的属性
|
||
/// </summary>
|
||
/// <param name="sDataField"></param>
|
||
/// <param name="HeadText"></param>
|
||
/// <param name="DateTimeKind"></param>
|
||
/// <param name="Width"></param>
|
||
private void AddColumn(string sDataField, string HeadText, int Width, TDateTimeEditKinds DateTimeKind, bool bVisible)
|
||
{
|
||
BoundField Column = new BoundField();
|
||
Column.DataField = sDataField;
|
||
Column.HeaderText = HeadText;
|
||
Column.Visible = bVisible;
|
||
Column.ItemStyle.Width = (Unit)(DateTimeKind == TDateTimeEditKinds.dtDateTime ? 125 : 72);
|
||
Column.HeaderStyle.Width = (Unit)(DateTimeKind == TDateTimeEditKinds.dtDateTime ? 125 : 72);
|
||
grdContentGrid.Columns.Add(Column);
|
||
|
||
gtGridView_Column ColumnEx = new gtGridView_Column();
|
||
ColumnEx.DataField = sDataField;
|
||
ColumnEx.EditType = TEditType.etDateTime;
|
||
ColumnEx.DateTimeEditKins = DateTimeKind;
|
||
grdContentGrid.ColumnsEx.Insert(0, ColumnEx);
|
||
}
|
||
|
||
#endregion
|
||
}
|
||
}
|