public bool CreateGLJ(DataRow p_info) { if (p_info == null) { return(false); } if (this.Contains(p_info)) { return(false); } DataRow info = this.Unit.StructSource.ModelQuantity.NewRow(); info["EnID"] = this.Unit.PID; info["UnID"] = this.Unit.ID; info["ZMID"] = this.Current.ID; info["QDID"] = this.Current.PID; info["SSLB"] = this.Current.SSLB; info["PID"] = DBNull.Value; info["SSKLB"] = this.Current.LibraryName; info["YSBH"] = p_info["YSBH"]; info["YSMC"] = p_info["YSMC"]; info["YSDW"] = p_info["YSDW"]; info["YSXHL"] = p_info["YSXHL"];; info["DEDJ"] = p_info["DEDJ"]; info["BH"] = p_info["BH"]; info["MC"] = p_info["MC"]; info["DW"] = p_info["DW"]; info["XHL"] = p_info["XHL"];; info["SCDJ"] = p_info["SCDJ"]; info["LB"] = p_info["LB"]; info["ZCLB"] = "W"; info["SDCLB"] = p_info["SDCLB"]; info["SDCXS"] = p_info["SDCXS"]; info["GCL"] = this.Current.GCL; if (info["LB"].Equals("主材") || info["LB"].Equals("设备")) { info["DEDJ"] = p_info["SCDJ"]; } info["IFSC"] = p_info["IFSC"]; info["IFFX"] = p_info["IFFX"]; info["IFSDSCDJ"] = p_info["IFSDSCDJ"]; info["IFZYCL"] = p_info["IFZYCL"]; info["YTLB"] = p_info["YTLB"]; info["JSDJ"] = p_info["JSDJ"]; info["CJ"] = p_info["CJ"]; info["PP"] = p_info["PP"]; info["ZLDJ"] = p_info["ZLDJ"]; info["GYS"] = p_info["GYS"]; info["CD"] = p_info["CD"]; info["CJBZ"] = p_info["CJBZ"]; if (info["LB"].Equals("配合比") || info["LB"].ToString().Contains("台班")) { info["IFKFJ"] = true; } info["CTIME"] = DateTime.Now; this.Unit.StructSource.ModelQuantity.Rows.InsertAt(info, 0); if (info["IFKFJ"].Equals(true)) { //此处需要调用 当前工料机的行计算 _Methods_Quantity met = new _Methods_Quantity(this.Unit); met.Parent = info; met.Create(); } this.Current.XMMC += "//增:" + info["MC"]; if (!this.Current.XMBM.Contains("换")) { this.Current.XMBM += "换"; } if (this.Current.SSLB == 0) { this.Unit.StructSource.ModelSubSegments.UpDate(this.Current); } else { this.Unit.StructSource.ModelMeasures.UpDate(this.Current); } return(true); }
/// <summary> /// 替换工料机 /// </summary> /// <param name="p_ysinfo"></param> /// <param name="p_info"></param> /// <returns></returns> public bool ReplaceGLJ(DataRow p_ysinfo, DataRow p_info) { if (p_ysinfo == null || p_info == null) { return(false); } if (this.Contains(p_info)) { return(false); } string ysmc = p_ysinfo["MC"].ToString(); p_ysinfo.BeginEdit(); p_ysinfo["EnID"] = this.Unit.PID; p_ysinfo["UnID"] = this.Unit.ID; p_ysinfo["ZMID"] = this.Current.ID; p_ysinfo["QDID"] = this.Current.PID; p_ysinfo["SSLB"] = this.Current.SSLB; p_ysinfo["SSKLB"] = this.Current.LibraryName; p_ysinfo["YSBH"] = p_info["YSBH"]; p_ysinfo["YSMC"] = p_info["YSMC"]; p_ysinfo["YSDW"] = p_info["YSDW"]; p_ysinfo["DEDJ"] = p_info["DEDJ"]; p_ysinfo["BH"] = p_info["BH"]; p_ysinfo["MC"] = p_info["MC"]; p_ysinfo["DW"] = p_info["DW"]; p_ysinfo["SCDJ"] = p_info["SCDJ"]; p_ysinfo["LB"] = p_info["LB"]; p_ysinfo["ZCLB"] = "W"; p_ysinfo["SDCLB"] = p_info["SDCLB"]; p_ysinfo["SDCXS"] = p_info["SDCXS"]; p_ysinfo["GCL"] = this.Current.GCL; if (p_ysinfo["LB"].Equals("主材") || p_ysinfo["LB"].Equals("设备")) { p_ysinfo["DEDJ"] = p_info["SCDJ"]; } p_ysinfo["IFSC"] = p_info["IFSC"]; p_ysinfo["IFFX"] = p_info["IFFX"]; p_ysinfo["IFSDSCDJ"] = p_info["IFSDSCDJ"]; p_ysinfo["IFZYCL"] = p_info["IFZYCL"]; p_ysinfo["YTLB"] = p_info["YTLB"]; p_ysinfo["JSDJ"] = p_info["JSDJ"]; p_ysinfo["CJ"] = p_info["CJ"]; p_ysinfo["PP"] = p_info["PP"]; p_ysinfo["ZLDJ"] = p_info["ZLDJ"]; p_ysinfo["GYS"] = p_info["GYS"]; p_ysinfo["CD"] = p_info["CD"]; p_ysinfo["CJBZ"] = p_info["CJBZ"]; if (p_ysinfo["LB"].Equals("配合比") || p_ysinfo["LB"].ToString().Contains("台班")) { p_ysinfo["IFKFJ"] = true; } DataRow[] drs = this.Unit.StructSource.ModelQuantity.Select(string.Format("UnID={0} AND SSLB={1} AND ZMID={2} AND PID={3}", this.Current.UnID, this.Current.SSLB, this.Current.ID, p_ysinfo["ID"])); foreach (DataRow item in drs) { item.Delete(); } p_ysinfo.EndEdit(); if (p_ysinfo["IFKFJ"].Equals(true)) { //此处需要调用 当前工料机的行计算 _Methods_Quantity met = new _Methods_Quantity(this.Unit); met.Parent = p_ysinfo; met.Create(); } this.Current.XMMC += "//换:" + ysmc + "," + p_ysinfo["MC"]; if (!this.Current.XMBM.Contains("换")) { this.Current.XMBM += "换"; } if (this.Current.SSLB == 0) { this.Unit.StructSource.ModelSubSegments.UpDate(this.Current); } else { this.Unit.StructSource.ModelMeasures.UpDate(this.Current); } return(true); }
/// <summary> /// 创建工料机(根据定额材机) /// </summary> public virtual void CreateGLJ() { DataTable dt = this.Unit.Property.Libraries.FixedLibrary.LibraryDataSet.Tables["材机表"]; if (!string.IsNullOrEmpty(this.Current.DECJ)) { string[] strs = this.Current.DECJ.Split('|'); CEntityQuantityUnit[] infos = new CEntityQuantityUnit[strs.Length - 1]; for (int i = 0; i < strs.Length - 1; i++) { string[] str = strs[i].Split(','); DataRow[] dr = dt.Select(string.Format("CAIJBH ='{0}'", str[0].ToString())); if (dr != null) { if (dr.Length < 1) { continue; } DataRow info = this.Unit.StructSource.ModelQuantity.NewRow(); info["YSBH"] = dr[0]["CAIJBH"]; info["YSMC"] = dr[0]["CAIJMC"]; info["YSDW"] = dr[0]["CAIJDW"]; info["YSXHL"] = ToolKit.ParseDecimal(str[1]); info["BH"] = dr[0]["CAIJBH"]; info["MC"] = dr[0]["CAIJMC"]; info["DW"] = dr[0]["CAIJDW"]; info["LB"] = dr[0]["CAIJLB"]; info["XHL"] = str.Length == 4 && !info["LB"].ToString().Contains("%") ? ToolKit.ParseDecimal(str[3]) : ToolKit.ParseDecimal(str[1]); info["DEDJ"] = ToolKit.ParseDecimal(dr[0]["CAIJDJ"]); info["ZCLB"] = "W"; info["SDCLB"] = dr[0]["SANDCMC"]; info["SDCXS"] = ToolKit.ParseDecimal(dr[0]["SANDCXS"]); info["GCL"] = this.Current.GCL; info["SSKLB"] = this.Current.LibraryName; DataRow row = this.Unit.StructSource.ModelQuantity.Select(string.Format("BH='{0}'", info["BH"])).FirstOrDefault(); if (row == null) { info["IFSC"] = dr[0]["CAIJSC"].Equals("是") ? true : false; info["IFZYCL"] = dr[0]["CAIJXSJG"].Equals("是") ? true : false; if (str[2] != string.Empty) { info["SCDJ"] = ToolKit.ParseDecimal(str[2]); } else { info["SCDJ"] = info["DEDJ"]; } } else { info["IFSC"] = row["IFSC"]; info["IFFX"] = row["IFFX"]; info["IFSDSCDJ"] = row["IFSDSCDJ"]; info["IFZYCL"] = row["IFZYCL"]; info["YTLB"] = row["YTLB"]; info["SCDJ"] = row["SCDJ"]; info["DEDJ"] = row["DEDJ"]; info["JSDJ"] = row["JSDJ"]; info["CJ"] = row["CJ"]; info["PP"] = row["PP"]; info["ZLDJ"] = row["ZLDJ"]; info["GYS"] = row["GYS"]; info["CD"] = row["CD"]; info["CJBZ"] = row["CJBZ"]; } if (info["LB"].Equals("主材") || info["LB"].Equals("设备")) { info["DEDJ"] = info["SCDJ"]; } info["UnID"] = this.Current.UnID; info["EnID"] = this.Current.EnID; info["ZMID"] = this.Current.ID; info["QDID"] = this.Current.PID; info["SSLB"] = this.Current.SSLB; info["PID"] = DBNull.Value; if (info["LB"].Equals("配合比") || info["LB"].ToString().Contains("台班")) { info["IFKFJ"] = true; } info["CTIME"] = DateTime.Now; this.Unit.StructSource.ModelQuantity.Rows.Add(info); if (info["IFKFJ"].Equals(true)) { //此处需要调用 当前工料机的行计算 _Methods_Quantity met = new _Methods_Quantity(this.Unit); met.Parent = info; met.Create(); } } } } }