public ActionResult Save(Requisition requisition) { Requisition req = new Requisition { DepartmentId = User.Identity.GetDepartmentId(), Remark = requisition.Remark, Status = CustomStatus.PendingApproval }; requisitionService.Save(req); //get the department var department = departmentService.Get(req.DepartmentId); foreach (ItemRequisition ir in requisition.ItemRequisitions) { ItemRequisition itemRequisition = new ItemRequisition { RequisitionId = req.Id, Quantity = ir.Quantity, ItemId = ir.ItemId }; itemRequisitionService.Save(itemRequisition); } return(Json(new { req = req, dept = department })); }
public static List <ItemRequisition> MapToClient(List <ItemRequisition> itemRequisition) { List <ItemRequisition> onlyitemRequisition = new List <ItemRequisition>(); itemRequisition.ForEach(i => { ItemRequisition itemReq = ModelMapper.MapToClient(i); onlyitemRequisition.Add(itemReq); }); return(onlyitemRequisition); }
public JsonResult UpdateRequisitionItemFromAdmin(ItemRequisition requisitionItem) { // requisitionItem.UserId = GetLoggedinUserInfo().UserId; requisitionItem.Item = null; requisitionItem.ApprovedBy = GetLoggedinUserInfo().UserId; using (Repository <ItemRequisition> repository = new Repository <ItemRequisition>()) { repository.Update(requisitionItem); return(Json("Requisition item update successfull", JsonRequestBehavior.AllowGet)); } }
public JsonResult UpdateRequisitionItem(ItemRequisition requisitionItem) { requisitionItem.UserId = GetLoggedinUserInfo().UserId; requisitionItem.Item = null; requisitionItem.Inventory = null; requisitionItem.MeasurementUnit = null; requisitionItem.Requisition = null; requisitionItem.RequisitionStatus = null; requisitionItem.ApprovedByUser = null; using (Repository <ItemRequisition> repository = new Repository <ItemRequisition>()) { repository.Update(requisitionItem); return(Json("Requisition item update successfull", JsonRequestBehavior.AllowGet)); } }
public static ItemRequisition MapToClientWithoutInventory(ItemRequisition itemReq) { ItemRequisition onlyItemRequisition = new ItemRequisition() { Id = itemReq.Id, ItemId = itemReq.ItemId, InventoryId = itemReq.InventoryId, RequisitionId = itemReq.RequisitionId, ApprovedBy = itemReq.ApprovedBy, ApprovalDate = itemReq.ApprovalDate, Quantity = itemReq.Quantity, MeasurementUnitId = itemReq.MeasurementUnitId, RequisitionStatusId = itemReq.RequisitionStatusId, UserId = itemReq.UserId, Item = itemReq.Item != null?MapToClient(itemReq.Item) : null }; return(onlyItemRequisition); }
public void Save(ItemRequisition itemRequisition) { //Check if itemCategory is in DB var ir = itemRequisitionContext.Get(itemRequisition.Id); //If not in DB, create new if (ir == null) { itemRequisitionContext.Add(itemRequisition); } //If in DB, update else { ir.Quantity = itemRequisition.Quantity; ir.ItemId = itemRequisition.ItemId; } //Commit changes itemRequisitionContext.Commit(); }
public JsonResult GetRequistionsItemsWithoutInventory(long requisitionId) { List <ItemRequisition> onlyRequsitionItems = new List <ItemRequisition>(); using (Repository <ItemRequisition> repository = new Repository <ItemRequisition>()) { Expression <Func <ItemRequisition, bool> > lambda; lambda = (x => x.Active == true && x.RequisitionId == requisitionId); Func <IQueryable <ItemRequisition>, IOrderedQueryable <ItemRequisition> > orderingFunc = query => query.OrderBy(m => m.Item.Name); List <ItemRequisition> requisitonItemList = repository.GetByQuery(lambda, orderingFunc).ToList(); requisitonItemList.ForEach(r => { ItemRequisition requisitionItem = ModelMapper.MapToClientWithoutInventory(r); onlyRequsitionItems.Add(requisitionItem); }); } return(Json(onlyRequsitionItems, JsonRequestBehavior.AllowGet)); }
public JsonResult ApproveRequisition(Inventory inventory, InventoryItem inventoryItem, ItemRequisition requisitionItem, Requisition requistion) { CreateInventory(inventory); CreateInventoryItem(inventoryItem); UpdateRequisitionItem(requisitionItem); Inventory sourceInventory = GetInventoryByItemAndStore(requisitionItem.ItemId, requistion.ToStoreId); if (sourceInventory.Id > 0) { sourceInventory.Quantity = sourceInventory.Quantity - requisitionItem.Quantity; CreateInventory(sourceInventory); } var updateReq = true; foreach (ItemRequisition reqitem in requistion.ItemRequisitions) { if (reqitem.RequisitionStatusId != 130) { updateReq = false; } } if (updateReq) { requistion.IsOpen = false; UpdateRequisition(requistion); } return(Json("Successfull Approve requistion", JsonRequestBehavior.AllowGet)); }