public JsonResult UpdateDone_Order_Suppliers(int id) { var Messaging = new RenderMessaging(); try { if (User == null) { Messaging.isError = true; Messaging.messaging = "Phiên đăng nhập đã hết hạn."; return(Json(Messaging, JsonRequestBehavior.AllowGet)); } var order = _context.soft_Order.Find(id); if (order == null) { Messaging.isError = true; Messaging.messaging = "Không tìm thấy đơn hàng này."; return(Json(Messaging, JsonRequestBehavior.AllowGet)); } var objOrder = new soft_Order { Id = id, Status = (int)StatusOrder_Suppliers.Done, DateUpdate = DateTime.Now, EmployeeUpdate = User.UserId }; _crud.Update <soft_Order>(objOrder, o => o.Status, o => o.EmployeeUpdate, o => o.DateUpdate); foreach (var item in order.soft_Order_Child) { var objOrderChild = new soft_Order_Child { Id = item.Id, Status = (int)StatusOrder_Suppliers.Done, OrderId = item.OrderId, Price = item.Price, ProductId = item.ProductId, Total = item.Total }; _crud.Update <soft_Order_Child>(objOrderChild, o => o.Status); } _crud.SaveChanges(); } catch { Messaging.isError = true; Messaging.messaging = "Cập nhật phiếu đặt hàng nhà phân phối không thành công!"; } return(Json(Messaging, JsonRequestBehavior.AllowGet)); }
public JsonResult UpdateDone_Order_Inside(int id) { var Messaging = new RenderMessaging(); try { if (User == null) { Messaging.isError = true; Messaging.messaging = "Phiên đăng nhập đã hết hạn."; return(Json(Messaging, JsonRequestBehavior.AllowGet)); } var order = _context.soft_Order.Find(id); if (order == null) { Messaging.isError = true; Messaging.messaging = "Không tìm thấy đơn hàng này."; return(Json(Messaging, JsonRequestBehavior.AllowGet)); } var objOrder = new soft_Order { Id = id, Status = (int)StatusOrder_Input.Done, DateUpdate = DateTime.Now, EmployeeUpdate = User.UserId }; var modelupdate = Mapper.Map <OrderModel>(order); if (order.Id_From > 0) { UpdateOrderSuppliers(modelupdate, order.Id_From.Value); } _crud.Update(objOrder, o => o.Status, o => o.EmployeeUpdate, o => o.DateUpdate); UpdateStockByBranches(modelupdate); _crud.SaveChanges(); } catch (Exception ex) { Messaging.isError = true; Messaging.messaging = "Cập nhật đơn hàng nhập không thành công!"; } return(Json(Messaging, JsonRequestBehavior.AllowGet)); }
private void UpdateOrderSuppliers(OrderModel model, int OrderSuppliersId) { var orderSuppliers = _context.soft_Order.FirstOrDefault(o => o.Id.Equals(OrderSuppliersId) && o.TypeOrder == (int)TypeOrder.OrderProduct && o.Status == (int)StatusOrder_Input.Process); if (orderSuppliers != null) { foreach (var item in orderSuppliers.soft_Order_Child) { if (item.Status == null || item.Status == (int)StatusOrder_Input.Process) { var hasProduct = model.Detail.FirstOrDefault(o => o.ProductId == item.ProductId.Value); if (hasProduct != null) { if (item.Total <= hasProduct.Total) { item.Status = (int)StatusOrder_Input.Done; var newobj = new soft_Order_Child { Id = item.Id, Status = item.Status }; _crud.Update <soft_Order_Child>(newobj, o => o.Status); } else { var newobj = new soft_Order_Child { Id = item.Id, Total = item.Total - hasProduct.Total }; _crud.Update <soft_Order_Child>(newobj, o => o.Total); } } } } var OrderChildDoneAll = orderSuppliers.soft_Order_Child.FirstOrDefault(o => o.Status == null || o.Status == (int)StatusOrder_Input.Process); if (OrderChildDoneAll == null) { var newobj = new soft_Order { Id = orderSuppliers.Id, Status = (int)StatusOrder_Input.Done }; _crud.Update <soft_Order>(newobj, o => o.Status); } } }
private void UpdateStockByBranches(soft_Order order) { foreach (var item in order.soft_Order_Child) { var StockProduct = _context.soft_Branches_Product_Stock.FirstOrDefault(o => o.ProductId == item.ProductId && o.BranchesId == User.BranchesId); if (StockProduct != null) { var newstock = new soft_Branches_Product_Stock { BranchesId = User.BranchesId, ProductId = item.ProductId.Value, //Stock_Total = StockProduct.Stock_Total + item.Total.Value, Stock_Total = item.Total.Value, DateCreate = DateTime.Now, EmployeeCreate = User.UserId, DateUpdate = DateTime.Now, EmployeeUpdate = User.UserId, }; _crud.Update(newstock, o => o.Stock_Total, o => o.EmployeeUpdate, o => o.DateUpdate); } else { var stockTo = new soft_Branches_Product_Stock { ProductId = item.ProductId.Value, BranchesId = User.BranchesId, DateCreate = DateTime.Now, Stock_Total = item.Total.Value, EmployeeCreate = User.UserId }; _crud.Add(stockTo); } } }