Ejemplo n.º 1
0
        /// <summary>
        /// 盘点确认
        /// </summary>
        /// <param name="info">盘点单</param>
        public void ConfirmCheck(CheckStockBill info)
        {
            CheckStockDAL dal  = new CheckStockDAL();
            StockDAL      sDal = new StockDAL();

            int seq = 1;

            foreach (CheckStockDetail detail in info.Details)
            {
                detail.ID     = Guid.NewGuid().ToString();
                detail.BillID = info.ID;
                detail.Seq    = seq;
                seq++;
            }

            using (IDataSession session = AppDataFactory.CreateMainSession())
            {
                session.OpenTs();

                dal.Session  = session;
                sDal.Session = session;

                //更新盘点单信息
                info.IsConfirm = 1;
                dal.Update(info);

                foreach (CheckStockDetail detail in info.Details)
                {
                    //更新库存信息
                    WHMatAmount matStock = sDal.GetStock(new WHMatAmount()
                    {
                        Warehouse    = info.Warehouse
                        , SaveSite   = detail.SaveSite
                        , MatID      = detail.MatID
                        , MatBarCode = detail.IDCode
                    });

                    matStock.MainAmount    = matStock.MainAmount * detail.FactAmount / matStock.ProductAmount;
                    matStock.ProductAmount = detail.FactAmount;

                    sDal.Update(matStock);
                }

                session.CommitTs();
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 更新盘点单
        /// </summary>
        /// <param name="info"></param>
        public void Update(CheckStockBill info)
        {
            info.UPDATEUSER = this.LoginUser.UserID;
            info.UPDATETIME = info.CREATETIME;

            int seq = 1;

            foreach (CheckStockDetail detail in info.Details)
            {
                detail.ID     = Guid.NewGuid().ToString();
                detail.BillID = info.ID;
                detail.Seq    = seq;
                seq++;
            }

            CheckStockDAL dal = new CheckStockDAL();

            using (IDataSession session = AppDataFactory.CreateMainSession())
            {
                dal.Session = session;
                dal.Update(info);
            }
        }