public ActionResult DeleteWorkOrderItem(LaborPartsModel model) { var workOrderItemId = model.WorkOrderItem; var workOrder = repository.SearchFor <SageWorkOrder>(x => x.WorkOrder == model.WorkOrder).SingleOrDefault(); if (workOrder == null) { return(Error("WorkOrder doesn't exists", $"There is no workorders with id {model.WorkOrder}. workOrder==null")); } var item = workOrder.WorkOrderItems.SingleOrDefault(x => x.WorkOrderItem == workOrderItemId); var dBworkOrderItems = workOrder.WorkOrderItems.ToList(); var result = sageApiProxy.DeleteWorkOrderItems(model.WorkOrder, new List <long> { model.WorkOrderItem }); if (result != null && result.IsSucceed) { dBworkOrderItems.Remove(item); workOrder.WorkOrderItems = dBworkOrderItems; repository.Update(workOrder); _hub.UpdateSageWorkOrder(workOrder); } else { _log.ErrorFormat("Was not able to update workorderItem to sage. !result.IsSucceed"); return(Error("Was not able to update workorderItem to sage", $"DeleteWorkOrderItems method IsSucceed==false. {(result != null ? result.ErrorMassage : string.Empty)}")); } return(Json(Success(), JsonRequestBehavior.AllowGet)); }
public ActionResult AddWOItem(LaborPartsModel model) { var workOrder = repository.SearchFor <SageWorkOrder>(x => x.WorkOrder == model.WorkOrder).SingleOrDefault(); if (workOrder == null) { return(Error("Work Order does not exist", $"There are no Work Orders with ID: {model.WorkOrder}. workOrder == null")); } var workOrderItem = Mapper.Map <SageWorkOrderItem>(model); workOrderItem.Employee = UserModel.Name; if (model.WorkOrderItem == 0) { workOrderItem.WorkOrder = model.WorkOrder; workOrderItem.TotalSale = workOrderItem.Quantity * workOrderItem.UnitSale; if (workOrderItem.ItemType == "Parts") { workOrderItem.PartsSale = workOrderItem.UnitSale; } else { workOrderItem.LaborSale = workOrderItem.UnitSale; } var result = sageApiProxy.AddWorkOrderItem(workOrderItem); if (result != null && result.IsSucceed && result.Entity != null) { var woiResult = sageApiProxy.GetWorkorderItemsByWorkOrderId(workOrder.WorkOrder); if (woiResult.IsSucceed) { workOrder.WorkOrderItems = woiResult.Entities; repository.Update(workOrder); _hub.UpdateSageWorkOrder(workOrder); } } else { _log.ErrorFormat("Was not able to save workorderItem to sage. !result.IsSucceed"); return(Error("Work order item save failed", $"AddWorkOrderItem method IsSucceed==false. {result?.ErrorMassage}" )); } return(Json(result, JsonRequestBehavior.AllowGet)); } else { var resultUpdate = sageApiProxy.EditWorkOrderItem(workOrderItem); if (resultUpdate != null && resultUpdate.IsSucceed && resultUpdate.Entity != null) { var woiResult = sageApiProxy.GetWorkorderItemsByWorkOrderId(workOrder.WorkOrder); if (woiResult.IsSucceed) { workOrder.WorkOrderItems = woiResult.Entities; repository.Update(workOrder); } } else { _log.ErrorFormat("Was not able to update workorderItem to sage. !result.IsSucceed"); return(Error("Work order item update failed", $"EditWorkOrderItem method IsSucceed==false. {resultUpdate?.ErrorMassage}." )); } return(Json(resultUpdate, JsonRequestBehavior.AllowGet)); } }