コード例 #1
0
        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);
        }
コード例 #2
0
        /// <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);
        }
コード例 #3
0
        /// <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();
                        }
                    }
                }
            }
        }