/// <summary> /// 初始化单位工程 /// </summary> /// <param name="p_info"></param> public override void InitDataObject(GOLDSOFT.QDJJ.COMMONS._COBJECTS p_Info) { //初始化属性 p_Info.Property.DLibraries.FixedLibrary.Rule = p_Info.DEGZ; p_Info.Property.DLibraries.FixedLibrary.LibName = p_Info.DELibName; p_Info.Property.DLibraries.AtlasGallery.LibName = p_Info.TJLibName; p_Info.Property.DLibraries.ListGallery.Rule = p_Info.QDGZ; p_Info.Property.DLibraries.ListGallery.LibName = p_Info.QDLibName; //_Library //初始化库 p_Info.Property.DLibraries.Init(APP.Application); //初始化新的临时对象(不参与序列化此对象每次使用需要呗初始化) p_Info.Property.Temporary = new _Temporary(); //默认同步临时库对象 p_Info.Property.Temporary.Libraries = p_Info.Property.DLibraries.Copy(); p_Info.Property.Temporary.Libraries.Init(APP.Application); p_Info.Property.IncreaseCosts.init();//初始化子目取费 _UnitProject m_UnitProject = p_Info as _UnitProject; if (m_UnitProject != null) { if (m_UnitProject.StructSource.ModelUnitFee.Rows.Count == 0 || m_UnitProject.StructSource.ModelPSubheadingsFee.Rows.Count == 0) { _Methods_ParamsSeting m_Methods_ParamsSeting = new _Methods_ParamsSeting(m_UnitProject); m_Methods_ParamsSeting.Init(); DataRow[] m_MRGCQF = m_UnitProject.StructSource.ModelUnitFee.Select(string.Format("GCLB='{0}'", m_UnitProject.ProType)); if (m_MRGCQF.Length == 0) { m_UnitProject.ProType = m_UnitProject.StructSource.ModelUnitFee.Rows[0]["GCLB"].ToString(); } } } }
private void CreateSubByCurrent() { _Methods_ParamsSeting m_Methods_ParamsSeting = new _Methods_ParamsSeting(this.Unit); DataRow dr_UnitFee = m_Methods_ParamsSeting.GetUnitFeeInfo(this.Current.OLDXMBM); decimal gLF = ToolKit.ParseDecimal(dr_UnitFee["GLFFL"]) * 0.01m; decimal LR = ToolKit.ParseDecimal(dr_UnitFee["LRFL"]) * 0.01m; decimal xhl = this.Current.ZJTJ / (1 + gLF + LR + gLF * LR); DataRow r = this.Unit.StructSource.ModelQuantity.NewRow(); r["YSBH"] = APP.RepairQuantityUnit.GetRepairBH(this.Unit, "材料"); r["YSMC"] = this.Current.XMMC; r["YSDW"] = this.Current.DW; r["YSXHL"] = xhl; r["DEDJ"] = 1; r["BH"] = r["YSBH"]; r["MC"] = this.Current.XMMC; r["DW"] = this.Current.DW; r["XHL"] = xhl; r["SCDJ"] = 1; r["LB"] = "材料"; r["ZCLB"] = "W"; r["SDCLB"] = string.Empty; r["SDCXS"] = 0; r["IFSC"] = true; r["IFFX"] = false; r["IFSDSCDJ"] = false; r["IFZYCL"] = true; r["YTLB"] = string.Empty; this.CreateGLJ(r); }
/// <summary> /// 在当前清单没有子目自动创建子目 /// </summary> private void CreateSubByCurrent() { DataRow[] rs = this.GetDataSource.Select(string.Format("PID={0}", this.Current.ID)); if (rs.Length > 0) { return; } _Entity_SubInfo info = new _Entity_SubInfo(); info.XMBM = "补" + this.Current.OLDXMBM.Replace("补", ""); info.OLDXMBM = this.Current.OLDXMBM.Replace("补", ""); info.XMMC = "补充定额"; info.GCL = this.Current.GCL; info.SC = true; info.LB = "子目"; info.DW = this.Current.DW; info.TX = this.Unit.ProType.Replace("【", "").Replace("】", "").Substring(0, 2); info.LibraryName = this.Unit.Property.Libraries.FixedLibrary.FullName; this.Create(false, -1, info); _Methods_Subheadings m = new _Methods_Subheadings(this.CurrentBusiness, this.Unit, info); _Methods_ParamsSeting m_Methods_ParamsSeting = new _Methods_ParamsSeting(this.Unit); DataRow dr_UnitFee = m_Methods_ParamsSeting.GetUnitFeeInfo(info.OLDXMBM); decimal gLF = ToolKit.ParseDecimal(dr_UnitFee["GLFFL"]) * 0.01m; decimal LR = ToolKit.ParseDecimal(dr_UnitFee["LRFL"]) * 0.01m; decimal xhl = this.Current.ZJTJ / (1 + gLF + LR + gLF * LR); DataRow r = this.Unit.StructSource.ModelQuantity.NewRow(); r["YSBH"] = APP.RepairQuantityUnit.GetRepairBH(this.Unit, "材料"); r["YSMC"] = info.XMMC; r["YSDW"] = info.DW; r["YSXHL"] = xhl; r["DEDJ"] = 1; r["BH"] = r["YSBH"]; r["MC"] = info.XMMC; r["DW"] = info.DW; r["XHL"] = xhl; r["SCDJ"] = 1; r["LB"] = "材料"; r["ZCLB"] = "W"; r["SDCLB"] = string.Empty; r["SDCXS"] = 0; r["IFSC"] = true; r["IFFX"] = false; r["IFSDSCDJ"] = false; r["IFZYCL"] = true; r["YTLB"] = string.Empty; m.CreateGLJ(r); }
/// <summary> /// 创建:子目取费 /// </summary> public virtual void CreateZMQFS() { if (this.Unit == null) { return; } if (string.IsNullOrEmpty(this.Current.OLDXMBM)) { return; } string m_XMBM = this.Current.OLDXMBM; _Methods_ParamsSeting m_Methods_ParamsSeting = new _Methods_ParamsSeting(this.Unit); DataRow dr_UnitFee = m_Methods_ParamsSeting.GetUnitFeeInfo(m_XMBM); if (dr_UnitFee != null) { this.Current.ZYLB = dr_UnitFee["GCLB"].ToString().Replace("【", "").Replace("】", ""); //this.RemoveFeeOfSubheading(); } foreach (DataRowView view in this.Unit.StructSource.ModelPSubheadingsFee.DefaultView) { DataRow item = view.Row; if (item["YYH"] == null || string.IsNullOrEmpty(item["YYH"].ToString())) { continue; } DataRow dr = this.Unit.StructSource.ModelSubheadingsFee.NewRow(); dr["EnID"] = this.Current.EnID; dr["UnID"] = this.Current.UnID; dr["SSLB"] = this.Current.SSLB; dr["QDID"] = this.Current.PID; dr["ZMID"] = this.Current.ID; dr["Sort"] = item["Sort"]; dr["JSSX"] = item["JSSX"]; dr["YYH"] = item["YYH"]; dr["MC"] = item["MC"]; dr["BDS"] = item["BDS"]; dr["BZ"] = item["BZ"]; dr["FYLB"] = item["FYLB"]; if (dr["Sort"].Equals(7) && dr_UnitFee != null) { dr["TBJSJC"] = dr_UnitFee["FXFTBJSJC"]; dr["BDJSJC"] = dr_UnitFee["FXFBDJSJC"]; dr["FL"] = ToolKit.ParseDecimal(dr_UnitFee["FXTBFL"]); } else if (dr["Sort"].Equals(8) && dr_UnitFee != null) { dr["TBJSJC"] = dr_UnitFee["GLFTBJSJC"]; dr["BDJSJC"] = dr_UnitFee["GLFBDJSJC"]; dr["FL"] = ToolKit.ParseDecimal(dr_UnitFee["GLFFL"]); } else if (dr["Sort"].Equals(9) && dr_UnitFee != null) { dr["TBJSJC"] = dr_UnitFee["LRFTBJSJC"]; dr["BDJSJC"] = dr_UnitFee["LRFBDJSJC"]; dr["FL"] = ToolKit.ParseDecimal(dr_UnitFee["LRFL"]); } else { switch (item["QFLB"].ToString()) { case "0": dr["TBJSJC"] = item["TBJSJC"]; break; case "1": dr["TBJSJC"] = item["SCJJC"]; break; case "2": dr["TBJSJC"] = item["BDJSJC"]; break; default: dr["TBJSJC"] = item["TBJSJC"]; break; } dr["BDJSJC"] = item["BDJSJC"]; dr["FL"] = ToolKit.ParseDecimal(item["FL"]); } this.Unit.StructSource.ModelSubheadingsFee.Rows.Add(dr); this.Unit.StructSource.ModelSubheadingsFee.AcceptChanges(); } }