Exemplo n.º 1
0
        /// <summary>
        /// 收货
        /// </summary>
        /// <param name="model"></param>
        public void ReceivedGoods(ReceivedGoodsStorePurchaseOrder model)
        {
            //修改明细数据和生产日期/保质期
            var entity = _db.Table.Find <StorePurchaseOrder>(model.Id);

            entity = model.MapTo <StorePurchaseOrder>(entity);
            entity.ReceivedGoods(model.ReceivedBy, model.ReceivedByName);
            var entityItems = _db.Table.FindAll <StorePurchaseOrderItem>(n => n.StorePurchaseOrderId == model.Id).ToList();

            entity.SetItems(entityItems);
            entity.UpdateReceivedGoodsItems(model.ConvertJsonToItem());
            _db.Update(entity);
            _db.Update(entity.Items.ToArray());
            var reason       = "保存本次收货";
            var billIdentity = BillIdentity.StorePurchaseOrder;

            if (entity.OrderType == OrderType.Refund)
            {
                reason       = "保存本次退货";
                billIdentity = BillIdentity.StorePurchaseRefundOrder;
            }
            _processHistoryService.Track(model.ReceivedBy, model.ReceivedByName, (int)entity.Status, entity.Id, billIdentity.ToString(), reason);
            // 添加库存中不存在的商品
            var notExistsInventorys = _storeInventoryService.CheckProductNotInInventory(entity);

            if (notExistsInventorys.Count() > 0)
            {
                _db.Insert <StoreInventory>(notExistsInventorys.ToArray());
            }
            _db.SaveChange();
        }
Exemplo n.º 2
0
        /// <summary>
        /// 收货
        /// </summary>
        /// <returns></returns>
        public JsonResult ReceiveGoods(ReceivedGoodsStorePurchaseOrder model)
        {
            model.ReceivedBy     = _context.CurrentAccount.AccountId;
            model.ReceivedByName = _context.CurrentAccount.NickName;
            model.ReceivedOn     = DateTime.Now;
            _storePurchaseOrderFacade.ReceivedGoods(model);

            return(Json(new { success = true }));
        }
Exemplo n.º 3
0
        public static List <StorePurchaseOrderItem> ConvertJsonToItem(this ReceivedGoodsStorePurchaseOrder source)
        {
            if (string.IsNullOrEmpty(source.Items))
            {
                throw new Exception("商品明细为空");
            }
            var productPriceList = JsonConvert.DeserializeObject <List <StorePurchaseOrderItem> >(source.Items);

            return(productPriceList);
        }