public void Audit(int id, int editBy, string editByName) { var entity = _db.Table.Find <OutInOrder>(id); var entityItems = _db.Table.FindAll <OutInOrderItem>(n => n.OutInOrderId == id).ToList(); entity.Items = entityItems; entity.Audit(editBy, editByName); _db.Update(entity); _inventoryService.CheckIsExists(entity.Code); var orderType = _db.Table.Find <OutInOrderType>(entity.OutInOrderTypeId); if (orderType == null) { throw new FriendlyException("业务类别为空"); } var billIdentity = BillIdentity.OtherInOrder; if (orderType.OutInInventory == OutInInventoryType.Out) { billIdentity = BillIdentity.OtherOutOrder; _inventoryService.StockOut(entity); } else { _inventoryService.StockIn(entity); } var reason = "审核单据"; _processHistoryService.Track(entity.UpdatedBy, editByName, (int)entity.Status, entity.Id, billIdentity.ToString(), reason); _db.SaveChange(); }
/// <summary> /// 入库 /// </summary> /// <param name="id"></param> /// <param name="editBy"></param> /// <param name="editor"></param> public void SaveInventory(int id, int editBy, string editor) { var entity = _db.Table.Find <StorePurchaseOrder>(id); if (entity == null) { throw new Exception("单据不存在"); } var entityItems = _db.Table.FindAll <StorePurchaseOrderItem>(n => n.StorePurchaseOrderId == entity.Id).ToList(); entity.SetItems(entityItems); entity.Finished(editBy, editor); _db.Update(entity); var reason = "入库"; _processHistoryService.Track(entity.StoragedBy, entity.StoragedByName, (int)entity.Status, entity.Id, BillIdentity.StorePurchaseOrder.ToString(), reason); // 写入库存,库存历史纪录 _storeInventoryService.CheckIsExists(entity.Code); _storeInventoryService.StockInProducts(entity); _db.SaveChange(); }
public void Audit(int id, int editBy, string editByName) { var entity = _db.Table.Find <TransferOrder>(id); var entityItems = _db.Table.FindAll <TransferOrderItem>(n => n.TransferOrderId == id).ToList(); entity.Items = entityItems; entity.Audit(editBy, editByName); var reason = "审核调拨单"; _db.Update(entity); _processHistoryService.Track(entity.UpdatedBy, editByName, (int)entity.Status, entity.Id, BillIdentity.TransferOrder.ToString(), reason); _inventoryService.CheckIsExists(entity.Code); _inventoryService.TransaferInventory(entity); _db.SaveChange(); }
public void EndPlan(int id, int editedBy, string editor, string loginPassword) { // 验证操作账号输入的密码,正确后才能进行盘点,防止误操作 var account = _db.Table.Find <Account>(editedBy); if (!account.CheckPassword(loginPassword)) { throw new Exception("密码错误"); } var entity = _db.Table.Find <StocktakingPlan>(id); var items = _db.Table.FindAll <StocktakingPlanItem>(n => n.StocktakingPlanId == id); entity.Items = items.ToList(); _service.ValidateEndStatus(entity); // 开始结转 entity.ChangeCompleteStatus(editedBy, editor); _inventoryService.CheckIsExists(entity.Code); _inventoryService.FixedInventory(entity); _db.Update(entity); _db.SaveChange(); }