public IActionResult CreateNewWorkWorder([FromBody] NewWorkOrderDto newWork) { if (newWork == null) { return(StatusCode(400)); } if (!ModelState.IsValid) { return(new InvalidInputResponse(ModelState)); } var employee = _employeeQuery.GetEmployeeById(newWork.OrderedBy); if (employee == null) { return(StatusCode(404, "Employee Record Not Found")); } if (newWork.PurchaseOrderItemId != 0) { var salesOrder = _salesQuery.GetSalesOrderItemById((uint)newWork.PurchaseOrderItemId); if (salesOrder == null) { return(StatusCode(404, $"Sales Order with id {newWork.PurchaseOrderItemId} Not Found")); } if (_query.saleOrderProductionExits((uint)newWork.PurchaseOrderItemId)) { ModelState.AddModelError("PurchaseOrderId", $"Sale Order With Id : {newWork.PurchaseOrderItemId} already has a manufacturing Order"); return(new InvalidInputResponse(ModelState)); } newWork.Quantity = (newWork.Quantity > salesOrder.Quantity) ? salesOrder.Quantity : newWork.Quantity; } var workorder = _factory.CreateNewWorkOrder(newWork); var result = _command.CreateNewWorkOrder(workorder); if (result != null) { var workOrderView = _factory.CreateWorkOrderView(result); return(StatusCode(201, workOrderView)); } else { return(StatusCode(500, "Server error Try Again")); } }
public NewWorkOrderDto CreateCustomerOrderDto(uint customerOrderId, uint itemId, uint quantity, DateTime startDate, DateTime endDate, uint bookedBy, string description = "") { NewWorkOrderDto work = new NewWorkOrderDto() { PurchaseOrderItemId = customerOrderId, OrderedBy = bookedBy, ItemId = itemId, Quantity = quantity, DueDate = endDate, Start = startDate }; if (description.Trim() != "") { work.Description = description.Trim(); } return(work); }
public ProductionOrderList CreateNewWorkOrder(NewWorkOrderDto newOrder) { try { ProductionOrderList productionOrder = new ProductionOrderList() { Description = newOrder.Description, OrderedBy = newOrder.OrderedBy, ItemId = newOrder.ItemId, Quantity = newOrder.Quantity, DueDate = newOrder.DueDate, Start = newOrder.Start }; /* * if (newOrder.PurchaseOrderItemId != 0) { * productionOrder.CustomerOrderItemId = newOrder.PurchaseOrderItemId; * } */ return(productionOrder); } catch (Exception) { return(null); } }