using System; using System.Data; using System.Configuration; 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.Data; using System.Collections.Generic; using GThinking.N_MISPRO.Utility; namespace GThinking.N_XLXSBJ { [TableMap(DB = "DBERP", DbTableName = "XLXSJGBPZ", Umid = 100860036, IsWorkFlow = false, UseWhr = true, QuerySelSql = "select XLXSJGBPZ_JGBPZDH,XLXSJGBPZ_MXBH,XLXSJGBPZ_TJYS,XLXSJGBPZ_CPMLID," + " XLXSJGBPZ_BJCLIDS,XLXSJGBPZ_BZ,XLXSJGBPZ_WHR,XLXSJGBPZ_WHRID,XLXSJGBPZ_WHSJ" + " from XLXSJGBPZ where 1=1", EntitySelSql = "select XLXSJGBPZ_JGBPZDH,XLXSJGBPZ_JGBPZDH as OLDJGBPZDH,XLXSJGBPZ_MXBH,XLXSJGBPZ_TJYS,XLXSJGBPZ_CPMLID," + " XLXSJGBPZ_BJCLIDS,XLXSJGBPZ_BZ,XLXSJGBPZ_WHR,XLXSJGBPZ_WHRID,XLXSJGBPZ_WHSJ" + " from XLXSJGBPZ where XLXSJGBPZ_JGBPZDH=:XLXSJGBPZ_JGBPZDH ", UpdateSql = " update XLXSJGBPZ set XLXSJGBPZ_JGBPZDH=:XLXSJGBPZ_JGBPZDH,XLXSJGBPZ_MXBH=:XLXSJGBPZ_MXBH,XLXSJGBPZ_TJYS=:XLXSJGBPZ_TJYS,XLXSJGBPZ_CPMLID=:XLXSJGBPZ_CPMLID," + " XLXSJGBPZ_BJCLIDS=:XLXSJGBPZ_BJCLIDS,XLXSJGBPZ_BZ=:XLXSJGBPZ_BZ,XLXSJGBPZ_WHR=:XLXSJGBPZ_WHR,XLXSJGBPZ_WHRID=:XLXSJGBPZ_WHRID,XLXSJGBPZ_WHSJ=:XLXSJGBPZ_WHSJ " + "\r\n" + " where XLXSJGBPZ_JGBPZDH=:OLDJGBPZDH ", InsertSql = " insert into XLXSJGBPZ(XLXSJGBPZ_JGBPZDH,XLXSJGBPZ_MXBH,XLXSJGBPZ_TJYS,XLXSJGBPZ_CPMLID, " + " XLXSJGBPZ_BJCLIDS,XLXSJGBPZ_BZ,XLXSJGBPZ_WHR,XLXSJGBPZ_WHRID,XLXSJGBPZ_WHSJ) " + " values(:XLXSJGBPZ_JGBPZDH,:XLXSJGBPZ_MXBH,:XLXSJGBPZ_TJYS,:XLXSJGBPZ_CPMLID, " + " :XLXSJGBPZ_BJCLIDS,:XLXSJGBPZ_BZ,:XLXSJGBPZ_WHR,:XLXSJGBPZ_WHRID,:XLXSJGBPZ_WHSJ)", DeleteSql = " delete from XLXSJGBPZ where XLXSJGBPZ_JGBPZDH=:XLXSJGBPZ_JGBPZDH ")] public class JGBPZ : EntityManager { #region 数据实体 private string _XLXSJGBPZ_JGBPZDH; [ColumnMap(DbField = "XLXSJGBPZ_JGBPZDH", CtrlName = "txtJGBPZDH", Type = FieldType.C, DbTitle = "配置单号", DefaultValue = "", IsAllowNull = true, IsKey = true, Length = 6)] public string XLXSJGBPZ_JGBPZDH { get { return _XLXSJGBPZ_JGBPZDH; } set { _XLXSJGBPZ_JGBPZDH = value; } } private string _OLDJGBPZDH; [ColumnMap(DbField = "OLDJGBPZDH", CtrlName = "txtOLDJGBPZDH", Type = FieldType.HiddenField, DbTitle = "原配置单号", DefaultValue = "", IsAllowNull = true, IsKey = false, Length = 6, PrintVisible = false)] public string OLDJGBPZDH { get { return _OLDJGBPZDH; } set { _OLDJGBPZDH = value; } } private string _XLXSJGBPZ_MXBH; [ColumnMap(DbField = "XLXSJGBPZ_MXBH", CtrlName = "cbxMXBH", Type = FieldType.CBX, DbTitle = "价格表类型", DefaultValue = "", IsAllowNull = false, IsKey = false, Length = 3)] public string XLXSJGBPZ_MXBH { get { return _XLXSJGBPZ_MXBH; } set { _XLXSJGBPZ_MXBH = value; } } private string _XLXSJGBPZ_TJYS; [ColumnMap(DbField = "XLXSJGBPZ_TJYS", CtrlName = "cbxTJYS", Type = FieldType.CBX, DbTitle = "价格表调价因素", DefaultValue = "", IsAllowNull = false, IsKey = false, Length = 1)] public string XLXSJGBPZ_TJYS { get { return _XLXSJGBPZ_TJYS; } set { _XLXSJGBPZ_TJYS = value; } } private string _XLXSJGBPZ_CPMLID; [ColumnMap(DbField = "XLXSJGBPZ_CPMLID", CtrlName = "cbxCPMLID", Type = FieldType.CBX, DbTitle = "产品目录", DefaultValue = "", IsAllowNull = false, IsKey = false, Length = 2)] public string XLXSJGBPZ_CPMLID { get { return _XLXSJGBPZ_CPMLID; } set { _XLXSJGBPZ_CPMLID = value; } } private string _XLXSJGBPZ_BJCLIDS; [ColumnMap(DbField = "XLXSJGBPZ_BJCLIDS", CtrlName = "cbxBJCLIDS", Type = FieldType.CL, DbTitle = "行情分段材料", DefaultValue = "", IsAllowNull = true, IsKey = false, Length = 250)] public string XLXSJGBPZ_BJCLIDS { get { return _XLXSJGBPZ_BJCLIDS; } set { _XLXSJGBPZ_BJCLIDS = value; } } private string _XLXSJGBPZ_BZ; [ColumnMap(DbField = "XLXSJGBPZ_BZ", CtrlName = "txtBZ", DbTitle = "备注", Type = FieldType.C, DefaultValue = "", IsAllowNull = true, IsKey = false, Length = 250)] public string XLXSJGBPZ_BZ { get { return _XLXSJGBPZ_BZ; } set { _XLXSJGBPZ_BZ = value; } } // 私有变量维护人 private string _XLXSJGBPZ_WHR; [ColumnMap(DbField = "XLXSJGBPZ_WHR", CtrlName = "txtWHR", Type = FieldType.C, DbTitle = "维护人", DefaultValue = "", IsAllowNull = true, IsKey = false, Length = 30)] public string XLXSJGBPZ_WHR { get { return _XLXSJGBPZ_WHR; } set { _XLXSJGBPZ_WHR = value; } } // 私有变量维护人工号 private string _XLXSJGBPZ_WHRID; [ColumnMap(DbField = "XLXSJGBPZ_WHRID", CtrlName = "txtWHRID", Type = FieldType.HiddenField, DbTitle = "维护人ID", DefaultValue = "", IsAllowNull = true, IsKey = false, Length = 10)] public string XLXSJGBPZ_WHRID { get { return _XLXSJGBPZ_WHRID; } set { _XLXSJGBPZ_WHRID = value; } } // 私有变量维护时间 private string _XLXSJGBPZ_WHSJ; [ColumnMap(DbField = "XLXSJGBPZ_WHSJ", CtrlName = "datWHSJ", Type = FieldType.DT, DbTitle = "维护时间", DefaultValue = "", IsAllowNull = false, IsKey = true, Length = 18)] public string XLXSJGBPZ_WHSJ { get { return _XLXSJGBPZ_WHSJ; } set { _XLXSJGBPZ_WHSJ = value; } } #endregion #region 公用函数 public static string GetJGCIDS(TDatabase dberp, TSQL SQL, string JGBPZDH, string CLHQZH, string CPMLIDS, string BJCLIDS, ref string sErrorMsg) { string sJGCIDs = ""; //包含的单一产品目录 string[] sCPMLIDs = CPMLIDS.Split(','); //构建当前选择的分段组各材料的段号情况 Dictionary dicCLHQDH = new Dictionary(); SQL.Clear(); SQL.Add("select XLXSJGBPZCLHQFD_BJCLID,XLXSJGBPZCLHQFD_CLHQDH "); SQL.Add(" from XLXSJGBPZCLHQFD"); SQL.Add(" where XLXSJGBPZCLHQFD_JGBPZDH=:pJGBPZDH"); SQL.Add(" and XLXSJGBPZCLHQFD_CLHQZH=:pCLHQZH"); SQL.Add(" and" + CMISproDataBase.GetWhereEqual("XLXSJGBPZCLHQFD_BJCLID", BJCLIDS)); SQL.Add(" order by XLXSJGBPZCLHQFD_BJCLID"); SQL.ParamByName("pJGBPZDH").Value = JGBPZDH; SQL.ParamByName("pCLHQZH").Value = CLHQZH; DataSet ds = dberp.OpenDataSet(SQL); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { dicCLHQDH.Add(ds.Tables[0].Rows[i]["XLXSJGBPZCLHQFD_BJCLID"].ToString().Trim(), ds.Tables[0].Rows[i]["XLXSJGBPZCLHQFD_CLHQDH"].ToString().Trim()); } //(单一目录ID,价格表ID) Dictionary dicJGCID = new Dictionary(); //把单一产品目录的‘行情分段材料’找出来 SQL.Clear(); SQL.Add("select XLXSJGBPZ_JGBPZDH,XLXSJGBPZ_CPMLID,XLXSJGBPZ_BJCLIDS from XLXSJGBPZ where " + CMISproDataBase.GetWhereEqual("XLXSJGBPZ_CPMLID", CPMLIDS)); SQL.Add(" order by XLXSJGBPZ_CPMLID"); DataSet dsML = dberp.OpenDataSet(SQL); for (int i = 0; i < dsML.Tables[0].Rows.Count; i++) { string sDYJGBPZDH = dsML.Tables[0].Rows[i]["XLXSJGBPZ_JGBPZDH"].ToString().Trim(); string sDYCPMLID = dsML.Tables[0].Rows[i]["XLXSJGBPZ_CPMLID"].ToString().Trim(); string[] sBJCLIDs = dsML.Tables[0].Rows[i]["XLXSJGBPZ_BJCLIDS"].ToString().Trim().Split(','); SQL.Clear(); SQL.Add("select XLXSJGBPZJGB_CLHQZH,XLXSJGBPZJGB_JGBID"); SQL.Add(" from XLXSJGBPZJGB"); for (int j = 0; j < sBJCLIDs.Length; j++) { SQL.Add(string.Format(" ,XLXSJGBPZCLHQFD cpmlclhqfd{0}", Convert.ToString(j + 1))); } SQL.Add(" where XLXSJGBPZJGB_JGBPZDH=:pDYJGBPZDH"); for (int j = 0; j < sBJCLIDs.Length; j++) { SQL.Add(string.Format(" and cpmlclhqfd{0}.XLXSJGBPZCLHQFD_JGBPZDH=XLXSJGBPZJGB_JGBPZDH", Convert.ToString(j + 1))); SQL.Add(string.Format(" and cpmlclhqfd{0}.XLXSJGBPZCLHQFD_CLHQZH=XLXSJGBPZJGB_CLHQZH", Convert.ToString(j + 1))); SQL.Add(string.Format(" and cpmlclhqfd{0}.XLXSJGBPZCLHQFD_BJCLID='{1}'", Convert.ToString(j + 1), sBJCLIDs[j].Trim())); SQL.Add(string.Format(" and cpmlclhqfd{0}.XLXSJGBPZCLHQFD_CLHQDH='{1}'", Convert.ToString(j + 1), dicCLHQDH[sBJCLIDs[j].Trim()])); } SQL.Add(" order by XLXSJGBPZJGB_CLHQZH"); SQL.ParamByName("pDYJGBPZDH").Value = sDYJGBPZDH; DataSet dsTmp = dberp.OpenDataSet(SQL); if (dsTmp.Tables[0].Rows.Count > 0) { dicJGCID.Add(sDYCPMLID, dsTmp.Tables[0].Rows[0]["XLXSJGBPZJGB_JGBID"].ToString().Trim()); } } for (int i = 0; i < sCPMLIDs.Length; i++) { if (!dicJGCID.ContainsKey(sCPMLIDs[i].Trim()) || dicJGCID[sCPMLIDs[i].Trim()].Equals("")) { sErrorMsg = "没有在产品目录[" + sCPMLIDs[i].Trim() + "]下匹配到行情范围适用的价格表!"; return ""; } else { sJGCIDs += dicJGCID[sCPMLIDs[i].Trim()] + ","; } } sJGCIDs = sJGCIDs.TrimEnd(','); return sJGCIDs; } /// /// 根据调价因素获取基价来源 /// public static string GetJJLY(string sTJYS) { string sJJLY = ""; if (sTJYS.Equals("0") || sTJYS.Equals("1")) { sJJLY = "A"; } else if (sTJYS.Equals("2")) { sJJLY = "B"; } return sJJLY; } #endregion } }