Example #1
0
        public void UpdateWarehouseVoucher(Guid id, WarehouseVoucher warehouseVoucher)
        {
            var exitingWarehouseVoucher = db.WarehouseVouchers.Find(id);
            db.Entry(exitingWarehouseVoucher).CurrentValues.SetValues(warehouseVoucher);
            WarehouseVoucherItem updatedItem = null;
            foreach (WarehouseVoucherItem item in exitingWarehouseVoucher.Items.ToList())
            {
                updatedItem = warehouseVoucher.Items.FirstOrDefault(p => p.ID == item.ID);
                if (updatedItem == null)
                {
                    exitingWarehouseVoucher.Items.Remove(item);
                }
                else
                {
                    db.Entry(item).CurrentValues.SetValues(updatedItem);

                }
            }
            foreach (WarehouseVoucherItem item in warehouseVoucher.Items)
            {
                item.WarehouseVoucherID = exitingWarehouseVoucher.ID;
                exitingWarehouseVoucher.Items.Add(item);

            }
        }
        public IHttpActionResult PostWarehouseVoucher(WarehouseVoucher warehouseVoucher)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }
            warehouseVoucher.Creater = this.User.Identity.Name;
            warehouseVoucher.CreateTime = DateTime.Now;
            warehouseVoucherAS.CreateWarehouseVoucher(warehouseVoucher);
            try
            {
                unitOfWork.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (WarehouseVoucherExists(warehouseVoucher.ID))
                {
                    return Conflict();
                }
                else
                {
                    throw;
                }
            }

            return CreatedAtRoute("DefaultApi", new { id = warehouseVoucher.ID }, warehouseVoucher);
        }
Example #3
0
        public static WarehouseVoucher Create(Guid supplierID, Guid departmentID, string creater)
        {
            WarehouseVoucher newWarehouseVoucher = new WarehouseVoucher();

            newWarehouseVoucher.State        = WarehouseVoucherState.Unconfirmed;
            newWarehouseVoucher.Creater      = creater;
            newWarehouseVoucher.CreateTime   = DateTime.Now;
            newWarehouseVoucher.SupplierID   = supplierID;
            newWarehouseVoucher.DepartmentID = departmentID;
            newWarehouseVoucher.SubmitUser   = "";
            return(newWarehouseVoucher);
        }
        public IHttpActionResult Submit(Guid id, WarehouseVoucher warehouseVoucher)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }
            if (warehouseVoucher != null)
            {
                SaveWarehouserVoucher(id, warehouseVoucher);
            }

            warehouseVoucherAS.SubmitWarehouseVoucher(id,User.Identity.Name);

            try
            {
                unitOfWork.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!WarehouseVoucherExists(id))
                {
                    return NotFound();
                }
                else
                {
                    throw;
                }
            }
            return StatusCode(HttpStatusCode.NoContent);
        }
 public void SaveWarehouserVoucher(Guid id, WarehouseVoucher warehouseVoucher)
 {
     warehouseVoucherAS.UpdateWarehouseVoucher(id, warehouseVoucher);
 }
        public IHttpActionResult PutWarehouseVoucher(Guid id, WarehouseVoucher warehouseVoucher)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            if (id != warehouseVoucher.ID)
            {
                return BadRequest();
            }
            SaveWarehouserVoucher(id, warehouseVoucher);

            try
            {
                unitOfWork.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!WarehouseVoucherExists(id))
                {
                    return NotFound();
                }
                else
                {
                    throw;
                }
            }
            return StatusCode(HttpStatusCode.NoContent);
        }
Example #7
0
 public static WarehouseVoucher Create(Guid supplierID, Guid departmentID, string creater)
 {
     WarehouseVoucher newWarehouseVoucher = new WarehouseVoucher();
     newWarehouseVoucher.State = WarehouseVoucherState.Unconfirmed;
     newWarehouseVoucher.Creater = creater;
     newWarehouseVoucher.CreateTime = DateTime.Now;
     newWarehouseVoucher.SupplierID = supplierID;
     newWarehouseVoucher.DepartmentID = departmentID;
     newWarehouseVoucher.SubmitUser = "";
     return newWarehouseVoucher;
 }
Example #8
0
 public void SubmitVoucher(WarehouseVoucher voucher, string submitter)
 {
     voucher.Submit(submitter);
     StockService stockService = new StockService(db);
     stockService.UpdateStock(voucher);
 }
Example #9
0
 public void UpdateStock(WarehouseVoucher voucher)
 {
     if (voucher.State == WarehouseVoucherState.Confirmed)
     {
         //var source = db.Suppliers.Find(voucher.SupplierID);
         //var destination = db.Departments.Find(voucher.DepartmentID);
         //if (source.InventoryManagement)
         //{
         //    foreach (WarehouseVoucherItem item in voucher.Items)
         //    {
         //        StockOut(voucher.SupplierID, item.ProductSkuInfo.SkuID, item.Quantity, item.Weight, item.PositionID, item.ProductNumber);
         //    }
         //}
         //if (destination.InventoryManagement)
         //{
             foreach (WarehouseVoucherItem item in voucher.Items)
             {
                 StockIn(voucher.DepartmentID, item.ProductSkuInfo.SkuID, item.Quantity, item.Weight, item.PositionID, item.ProductNumber);
             }
         //}
     }
     else
         throw new DomainException("入库单未提交");
 }