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 codeNameMap = new Dictionary(); 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 selectedColumns = new List(); 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; } } } }