Example #1
0
        public void InputNowBalanceCount(List <Bus_WorkShop_InProduct> lstInfo)
        {
            DepotManagementDataContext ctx = CommentParameter.DepotDataContext;

            foreach (Bus_WorkShop_InProduct item in lstInfo)
            {
                var varData = from a in ctx.Bus_WorkShop_InProduct
                              where a.GoodsID == item.GoodsID &&
                              a.YearMonth == item.YearMonth
                              select a;

                if (varData.Count() == 0)
                {
                    item.F_Id           = Guid.NewGuid().ToString();
                    item.InventoryCount = -item.NowBalanceCount;

                    ctx.Bus_WorkShop_InProduct.InsertOnSubmit(item);
                }
                else if (varData.Count() == 1)
                {
                    Bus_WorkShop_InProduct tempInfo = varData.Single();

                    tempInfo.NowBalanceCount = item.NowBalanceCount;
                    tempInfo.InventoryCount  =
                        tempInfo.LastBalanceCount + tempInfo.ShowInCount - tempInfo.ProductCount -
                        tempInfo.ScrapCount - tempInfo.NowBalanceCount;
                }
                else
                {
                    throw new Exception("导入有误");
                }
            }

            ctx.SubmitChanges();
        }
Example #2
0
        private void btnSupplementary_InProduct_Click(object sender, EventArgs e)
        {
            try
            {
                string yearMonth = "";

                择年月 frm = new  择年月();

                if (frm.ShowDialog() == DialogResult.OK)
                {
                    yearMonth = frm._Str_YearMonth;
                }
                else
                {
                    return;
                }

                DataTable dtTemp = ExcelHelperP.RenderFromExcel(openFileDialog1);

                if (dtTemp == null)
                {
                    return;
                }

                if (!dtTemp.Columns.Contains("图号型号"))
                {
                    throw new Exception("文件无【图号型号】列名");
                }

                if (!dtTemp.Columns.Contains("物品名称"))
                {
                    throw new Exception("文件无【物品名称】列名");
                }

                if (!dtTemp.Columns.Contains("规格"))
                {
                    throw new Exception("文件无【规格】列名");
                }

                if (!dtTemp.Columns.Contains("实盘数"))
                {
                    throw new Exception("文件无【实盘数】列名");
                }

                List <Bus_WorkShop_InProduct> lstInfo = new List <Bus_WorkShop_InProduct>();

                for (int i = 0; i < dtTemp.Rows.Count; i++)
                {
                    int goodsID = UniversalFunction.GetGoodsID(dtTemp.Rows[i]["图号型号"].ToString(),
                                                               dtTemp.Rows[i]["物品名称"].ToString(), dtTemp.Rows[i]["规格"].ToString());

                    if (goodsID == 0)
                    {
                        throw new Exception(string.Format("第【{0}】行,图号型号:{1},物品名称:{2},规格:{3},无法找到匹配的物品ID", i.ToString(),
                                                          dtTemp.Rows[i]["图号型号"].ToString(), dtTemp.Rows[i]["物品名称"].ToString(), dtTemp.Rows[i]["规格"].ToString()));
                    }

                    Bus_WorkShop_InProduct tempInfo = new Bus_WorkShop_InProduct();
                    tempInfo.F_Id      = Guid.NewGuid().ToString();
                    tempInfo.GoodsID   = goodsID;
                    tempInfo.YearMonth = yearMonth;

                    decimal goodsCount = 0;
                    Decimal.TryParse(dtTemp.Rows[i]["实盘数"] == null ? "" : dtTemp.Rows[i]["实盘数"].ToString(), out goodsCount);
                    tempInfo.NowBalanceCount = goodsCount;

                    lstInfo.Add(tempInfo);
                }

                _Service_InProcutReport.InputNowBalanceCount(lstInfo);
                MessageDialog.ShowPromptMessage("导入成功");
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
                return;
            }
        }