86 lines
3.0 KiB
C#
86 lines
3.0 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 System.Collections.Generic;
|
|
using GThinking.N_MODEL.Page;
|
|
using GThinking.N_MISPRO.Data;
|
|
|
|
namespace GThinking.N_XLXSBJ
|
|
{
|
|
public partial class BJCPJXDR : HelpBase
|
|
{
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
this.UMID = 100860140;
|
|
this.UMName = "线缆报价深度解析导入";
|
|
if (PageParam.ContainsKey("BJDID"))
|
|
{
|
|
string BJDID = PageParam.GetRTrimString("BJDID").Trim();
|
|
if (!BJDID.Equals(""))
|
|
txtBJDID.Text = BJDID;
|
|
|
|
}
|
|
base.InitPage();
|
|
|
|
// 供 BJCPJXDR.js getDefaultPasteFieldOrder() 读取:报价业务配置「深度解析导入默认排序」
|
|
if (!IsPostBack)
|
|
txtBJU059.Text = GetDefaultColumnOrderFromConfigTable();
|
|
}
|
|
|
|
private string GetDefaultColumnOrderFromConfigTable()
|
|
{
|
|
string defaultOrder = "包号,报价产品,技术规范书ID,计量单位,数量";
|
|
Dictionary<string, string> codeNameMap = new Dictionary<string, string>();
|
|
codeNameMap.Add("E", "包号");
|
|
codeNameMap.Add("1", "报价产品");
|
|
codeNameMap.Add("K", "技术规范书ID");
|
|
codeNameMap.Add("4", "计量单位");
|
|
codeNameMap.Add("5", "数量");
|
|
|
|
try
|
|
{
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL sql = new TSQL(dberp);
|
|
sql.Clear();
|
|
sql.Add(" select XLXSBJPZ_FZNRDRLM from XLXSBJPZ where XLXSBJPZ_MDID = 100860140 ");
|
|
DataSet ds = dberp.OpenDataSet(sql);
|
|
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
|
|
return defaultOrder;
|
|
|
|
string raw = ds.Tables[0].Rows[0]["XLXSBJPZ_FZNRDRLM"].ToString().Trim();
|
|
if (raw.Equals(""))
|
|
return defaultOrder;
|
|
|
|
// 严格按配置表中保存的顺序读取
|
|
List<string> selectedColumns = new List<string>();
|
|
foreach (string item in raw.Split(','))
|
|
{
|
|
string code = item.Trim();
|
|
if ((code == "E" || code == "1" || code == "K" || code == "4" || code == "5")
|
|
&& !selectedColumns.Contains(codeNameMap[code]))
|
|
{
|
|
selectedColumns.Add(codeNameMap[code]);
|
|
}
|
|
}
|
|
|
|
// 补齐到5列,未配置的位置按“不导入”
|
|
while (selectedColumns.Count < 5)
|
|
selectedColumns.Add("不导入");
|
|
|
|
return string.Join(",", selectedColumns.ToArray());
|
|
}
|
|
catch
|
|
{
|
|
return defaultOrder;
|
|
}
|
|
}
|
|
}
|
|
}
|