public int RemoveRetrievalDetail(int id) { RetrievalDetail retrievalDetail = context.RetrievalDetails.Where(x => x.RetrievalId == id).First(); context.RetrievalDetails.Remove(retrievalDetail); return(context.SaveChanges()); }
/// <summary> /// Submit /// </summary> /// <param name="retDetailList">RetrievalDetail List (RetID, ItemID, ActualQty)</param> /// <returns></returns> public bool submit(List <RetrievalDetail> retDetailList) { bool result = true; foreach (RetrievalDetail retDetail in retDetailList) { //update actual quantity of retrieval detail RetrievalDetail retDetailSearch = ctx.RetrievalDetail.Where(x => x.RetID == retDetail.RetID && x.ItemID == retDetail.ItemID).FirstOrDefault(); retDetailSearch.ActualQty = retDetail.ActualQty; } //update status of retrieval to "Retrieved" int retid = (int)retDetailList.First().RetID; Retrieval ret = ctx.Retrieval.Where(x => x.RetID == retid).FirstOrDefault(); ret.Status = "RETRIEVED"; try { ctx.SaveChanges(); } catch { result = false; } return(result); }
//for new Retrieval Detail --- 4 public int UpdateRetDetRaiseSAV(int retrId, string itemCode, int qtyRetrieved, int raiseSAVQty, string reason, int storeClerkId) { try { //update qty retrieved RetrievalDetail rd = FindRetrDetByRetrIdAndItemCode(itemCode, retrId); rd.QuantityRetrieved = qtyRetrieved; UpdateRetrDet(rd); if (raiseSAVQty != 0) { //update RetDet status rd.Remark = raiseSAVQty + " " + reason; UpdateRetrDet(rd); //raise SAV StockAdjustment stkAdjustment = new StockAdjustment(); stkAdjustment.ItemCode = itemCode; stkAdjustment.QuantityAdjusted = raiseSAVQty; stkAdjustment.Reason = reason; stkAdjustment.DateCreated = DateTime.Today; stkAdjustment.ClerkEmployeeId = storeClerkId; if (stkAdjBz.AddAdjustment(stkAdjustment, "In Progress") == 0) { return(0); } } return(1); } catch (Exception e) { return(0); } }
/// <summary> /// Update RetrievalDetail data to RetrievalDetail Table according to the RetrievalDetail Parameter /// Return Constants.DB_STATUS /// </summary> /// <param name="retrievalDetail"></param> /// <returns></returns> public Constants.DB_STATUS Update(RetrievalDetail retrievalDetail) { Constants.DB_STATUS status = Constants.DB_STATUS.UNKNOWN; try { RetrievalDetail rDetail = inventory.RetrievalDetails.Where(rObj => rObj.Id == retrievalDetail.Id).First(); if (!rDetail.Equals(null)) { retrieval = inventory.Retrievals.Where(r => r.Id == retrievalDetail.Retrieval.Id).First(); Item item = inventory.Items.Where(i => i.Id == retrievalDetail.Item.Id).First(); Department department = inventory.Departments.Where(d => d.Id == retrievalDetail.Department.Id).First(); rDetail.Retrieval = retrieval; rDetail.Item = item; rDetail.Department = department; rDetail.NeededQty = retrievalDetail.NeededQty; rDetail.ActualQty = retrievalDetail.ActualQty; inventory.SaveChanges(); status = Constants.DB_STATUS.SUCCESSFULL; } } catch (Exception e) { status = Constants.DB_STATUS.FAILED; } return(status); }
public int UpdateRetrievalDetail(RetrievalDetail retrievalDetail) { RetrievalDetail re = context.RetrievalDetails.Where(x => x.RetrievalDetailsId == retrievalDetail.RetrievalDetailsId).First(); re.QuantityRetrieved = retrievalDetail.QuantityRetrieved; re.Remark = retrievalDetail.Remark; return(context.SaveChanges()); }
public void DeleteRetrievalDetails(RetrievalDetail rd) { using (EntityModel en = new EntityModel()) { RetrievalDetail r = en.RetrievalDetails.Where(p => p.RetrievalCode == rd.RetrievalCode && p.ItemCode == rd.ItemCode).FirstOrDefault <RetrievalDetail>(); en.RetrievalDetails.Remove(r); en.SaveChanges(); } }
//Retrieval Details public int AddNewRetrievalDetail(int retrId, string itemCode, int qtyNeeded, int qtyRetrieved) { RetrievalDetail retrDet = new RetrievalDetail(); retrDet.RetrievalId = retrId; retrDet.ItemCode = itemCode; retrDet.QuantityNeeded = qtyNeeded; retrDet.QuantityRetrieved = qtyRetrieved; return(retrDetServ.AddRetrievalDetail(retrDet)); }
public int UpdateRetrivalDetails(RetrievalDetail rd) { using (EntityModel en = new EntityModel()) { RetrievalDetail r = en.RetrievalDetails.Where(p => p.RetrievalCode == rd.RetrievalCode && p.ItemCode == rd.ItemCode).FirstOrDefault <RetrievalDetail>(); r.QuantityRetrieved = rd.QuantityRetrieved; r.Notes = rd.Notes; return(en.SaveChanges()); } }
public List <RetrievalDetail> AddRetrievalDetailToRdList(List <RetrievalDetail> rdList, string itemcode, int retrievedqty, int TotalNeeded, string Id) { RetrievalDetail rd = new RetrievalDetail(); rd.ItemCode = itemcode; rd.QuantityRetrieved = retrievedqty; rd.QuantityNeeded = TotalNeeded; rd.AdjustmentVoucherId = Id; rdList.Add(rd); return(rdList); }
public RetrievalItem(RetrievalDetail rd, Stationery sn) { RetrievalDetailsId = rd.RetrievalDetailsId.ToString(); ItemCode = rd.ItemCode; RetrievalId = rd.RetrievalId.ToString(); QuantityRetrieved = rd.QuantityRetrieved.ToString(); QuantityNeeded = rd.QuantityNeeded.ToString(); Description = sn.Description; QuantityInStock = sn.QuantityInStock.ToString(); Bin = sn.Bin.ToString(); }
public void UpdateRetrievalDetail(WCF_RetrievalDetail wrd, String email, String password) { if (loginService.ValidateUser(email, password)) { RetrievalDetail rdCurrent = sClerkCtrl.GetProcessingRetrievalDetailByItemCode(wrd.ItemCode); rdCurrent.QuantityRetrieved = Int32.Parse(wrd.QuantityRetrieved); rdCurrent.Notes = wrd.Notes; sClerkCtrl.UpdateRetrievalDetail(rdCurrent); } }
protected void validAllocatedQty_ServerValidate(object source, ServerValidateEventArgs args) { if (source is CustomValidator && IsPostBack) { CustomValidator validator = (CustomValidator)source; ListViewItem parentItem = (ListViewItem)validator.Parent; ListView listDetails = (ListView)parentItem.Parent.Parent; ListViewDataItem listItem = (ListViewDataItem)listDetails.Parent; HiddenField hfItemCode = (HiddenField)listItem.FindControl("hfItemCode"); List <DisbursementDetail> ddList = GetDisbursementDetailsPerItem(hfItemCode.Value); DisbursementDetail dd = ddList[listDetails.EditIndex]; RetrievalDetail retrievalDetail = retrieval.RetrievalDetails.Where(rd => rd.ItemCode == hfItemCode.Value).FirstOrDefault(); RequestDetail requestDetail = GetRequestDetail(dd.RequestCode, dd.ItemCode); int num = Convert.ToInt32(args.Value); //args.IsValid = num <= rd.RemainingQuant && num >= 0; var tbxAllocatedQty = (TextBox)parentItem.FindControl("tbxAllocatedQty"); //cannot be less than 0; if (num < 0) { args.IsValid = false; tbxAllocatedQty.CssClass = "control error"; validator.ErrorMessage = "Allocated Quantity cannot be less than 0"; } else if (retrievalDetail.QuantityRetrieved >= requestDetail.RemainingQuant) { if (num > requestDetail.RemainingQuant) { args.IsValid = false; tbxAllocatedQty.CssClass = "control error"; validator.ErrorMessage = "Allocated Quantity cannot be more than needed quantity (" + requestDetail.RemainingQuant + ")"; } } else if (requestDetail.RemainingQuant > retrievalDetail.QuantityRetrieved) { if (num > retrievalDetail.QuantityRetrieved) { args.IsValid = false; tbxAllocatedQty.CssClass = "control error"; validator.ErrorMessage = "Allocated Quantity cannot be more than retrieved quantity (" + retrievalDetail.QuantityRetrieved + ")"; } } else { args.IsValid = true; tbxAllocatedQty.CssClass = "control"; } } }
protected string GetStatus(string itemCode) { RetrievalDetail retrDet = myBz.FindRetrDetByRetrIdAndItemCode(itemCode, retrieval.RetrievalId); if (retrDet.QuantityNeeded == retrDet.QuantityRetrieved) { return("Fulfilled"); } else { return("Unfulfilled"); } }
public WCF_RetrievalDetail GetRetrievalDetail(string id, String email, String password) { if (loginService.ValidateUser(email, password)) { Retrieval r = sClerkCtrl.GetCurrentRetrieval(); RetrievalDetail item = sClerkCtrl.GetProcessingRetrievalDetailByItemCode(id); return(new WCF_RetrievalDetail(item.RetrievalCode, sClerkCtrl.GetStationeryByCode(item.ItemCode).Description, item.QuantityRetrieved.ToString(), item.QuantityNeeded.ToString(), item.Notes, r.Status, r.DateRetrieved == null ? "" : ((DateTime)r.DateRetrieved).ToString("dd MMM yyyy"), sClerkCtrl.GetStationeryByCode(item.ItemCode).Stock.ToString(), sClerkCtrl.GetStationeryByCode(item.ItemCode).Location, item.ItemCode)); } else { return(null); } }
public int GetMaxRetrieved(RetrievalDetail rd) { int stock = (int)stationeryDAO.GetStationery(rd.ItemCode).Stock; if (stock > rd.QuantityNeeded) { return((int)rd.QuantityNeeded); } else { return(stock); } }
/// <summary> /// Retrieve the RetrievalDetail information from RetrievalDetail Table according to the RetrievalDetail Parameter /// </summary> /// <param name="retrievalDetail"></param> /// <returns></returns> public RetrievalDetail GetRetrievalDetail(RetrievalDetail retrievalDetail) { try { retrievalDetail = inventory.RetrievalDetails.Where(rObj => rObj.Id == retrievalDetail.Id).First(); } catch (Exception e) { retrievalDetail = null; } return(retrievalDetail); }
protected String GetStatus(String itemCode) { RetrievalDetail rd = GetRetrievalDetail(itemCode); if (rd.QuantityNeeded > rd.QuantityRetrieved) { return("Unfulfilled"); } else { return("Fulfilled"); } }
private static void ProcessRequisitions(LussisEntities context, int retrievalNo) { // Get Approved Requisitions List <Requisition> requisitionList = GetApprovedRequisitions(context); if (requisitionList.Count == 0) { throw new Exception("No Requisitions to Process"); } // For each Requisition for (int i = 0; i < requisitionList.Count; i++) { // Get RequisitionDetails List <RequisitionDetail> requisitionDetailList = requisitionList[i].RequisitionDetails.ToList <RequisitionDetail>(); // For each RequisitionDetail for (int j = 0; j < requisitionDetailList.Count; j++) { // Get deptCode & itemNo string deptCode = requisitionDetailList[j].RequisitionInfo.EmployeeWhoIssued.DeptCode; string itemNo = requisitionDetailList[j].ItemNo; // Get RetrievalDetail RetrievalDetail retrievalDetail = GetRetrievalDetail(context, retrievalNo, deptCode, itemNo); if (retrievalDetail != null) { // Update RetrievalDetail retrievalDetail.Needed += requisitionDetailList[j].Qty; } else { // Create RetrievalDetail retrievalDetail = new RetrievalDetail(); retrievalDetail.RetrievalNo = retrievalNo; retrievalDetail.DeptCode = deptCode; retrievalDetail.ItemNo = requisitionDetailList[j].ItemNo; retrievalDetail.Needed = requisitionDetailList[j].Qty; retrievalDetail.BackLogQty = 0; retrievalDetail.Actual = 0; retrievalDetail = AddRetrievalDetail(context, retrievalDetail); context.SaveChanges(); } } // Update Requisition Status requisitionList[i].Status = "Processed"; } context.SaveChanges(); }
public string UpdateRetrievalDetails(WCFRetrievalDetail[] b) { List <RetrievalDetail> l = new List <RetrievalDetail>(); foreach (WCFRetrievalDetail c in b) { RetrievalDetail r = new RetrievalDetail(); r.RetrievalID = c.RetrievalID; r.ItemCode = c.ItemCode; r.RequestedQuantity = c.RequestedQuantity; r.RetrievedQuantity = c.RetrievedQuantity; l.Add(r); } return(Data.UpdateRetrievalDetails(l)); }
/// <summary> /// Insert RetrievalDetail data to the RetrievalDetail Table according to the RetrievalDetail Parameter /// Return Constants.DB_STATUS /// </summary> /// <param name="newRetrievalDetail"></param> /// <returns></returns> public Constants.DB_STATUS Insert(RetrievalDetail newRetrievalDetail) { Constants.DB_STATUS status = Constants.DB_STATUS.UNKNOWN; try { inventory.AddToRetrievalDetails(newRetrievalDetail); inventory.SaveChanges(); status = Constants.DB_STATUS.SUCCESSFULL; } catch (Exception e) { status = Constants.DB_STATUS.FAILED; } return(status); }
/// <summary> /// Save /// </summary> /// <param name="retDetailList">RetrievalDetail List (RetID, ItemID, ActualQty)</param> /// <returns></returns> public bool save(List <RetrievalDetail> retDetailList) { bool result = true; //update actual quantity of retrieval detail foreach (RetrievalDetail retDetail in retDetailList) { RetrievalDetail retDetailSearch = ctx.RetrievalDetail.Where(x => x.RetID == retDetail.RetID && x.ItemID == retDetail.ItemID).FirstOrDefault(); retDetailSearch.ActualQty = retDetail.ActualQty; } try { ctx.SaveChanges(); } catch { result = false; } return(result); }
private static void ProcessBacklogs(LussisEntities context, int retrievalNo) { // Get Backlogs List <BackLog> backlogList = context.BackLogs.ToList <BackLog>(); // For each Backlog for (int i = 0; i < backlogList.Count; i++) { // Get deptCode & itemNo string deptCode = backlogList[i].DeptCode; string itemNo = backlogList[i].ItemNo; // Get RetrievalDetail RetrievalDetail retrievalDetail = GetRetrievalDetail(context, retrievalNo, deptCode, itemNo); if (retrievalDetail != null) { // Update RetrievalDetail retrievalDetail.BackLogQty += backlogList[i].BackLogQty; } else { // Create RetrievalDetail retrievalDetail = new RetrievalDetail(); retrievalDetail.RetrievalNo = retrievalNo; retrievalDetail.DeptCode = deptCode; retrievalDetail.ItemNo = itemNo; retrievalDetail.Needed = 0; retrievalDetail.BackLogQty = backlogList[i].BackLogQty; retrievalDetail.Actual = 0; retrievalDetail = AddRetrievalDetail(context, retrievalDetail); } } context.SaveChanges(); }
protected void lvDetails_ItemUpdating(object sender, ListViewUpdateEventArgs e) { if (!Page.IsValid) { return; } ListView listDetails = (ListView)sender; ListViewDataItem listItem = (ListViewDataItem)listDetails.Parent; HiddenField hfItemCode = (HiddenField)listItem.FindControl("hfItemCode"); List <DisbursementDetail> ddList = GetDisbursementDetailsPerItem(hfItemCode.Value); List <DisbursementDetail> sortedDDList = new List <DisbursementDetail>(); foreach (DisbursementDetail dd in ddList) { DateTime dateRequested = GetRequestDateFromDD(dd); bool isInserted = false; for (int i = 0; i < sortedDDList.Count; i++) { if (dateRequested < GetRequestDateFromDD(sortedDDList[i])) { //if earlier insert into index sortedDDList.Insert(i, dd); isInserted = true; break; } } if (!isInserted) { sortedDDList.Add(dd); } } int updatedQty = Convert.ToInt32(e.NewValues["Quantity"]); RetrievalDetail retrievalDetail = retrieval.RetrievalDetails.Where(rd => rd.ItemCode == hfItemCode.Value).FirstOrDefault(); int? retrievedQty = retrievalDetail.QuantityRetrieved; DisbursementDetail updatedDD = sortedDDList[e.ItemIndex]; updatedDD.Quantity = updatedQty; sClerkCtrl.UpdateDisbursementDetail(updatedDD); retrievedQty -= updatedQty; sortedDDList.Remove(updatedDD); for (int i = 0; i < sortedDDList.Count; i++) { DisbursementDetail sortedDD = sortedDDList[i]; RequestDetail requestDetail = GetRequestDetail(sortedDD.RequestCode, sortedDD.ItemCode); if (retrievedQty != 0) { if (requestDetail.RemainingQuant < retrievedQty) { sortedDD.Quantity = requestDetail.RemainingQuant; retrievedQty -= requestDetail.RemainingQuant; } else { sortedDD.Quantity = retrievedQty; retrievedQty -= retrievedQty; } } else { sortedDD.Quantity = 0; } sClerkCtrl.UpdateDisbursementDetail(sortedDD); } listDetails.EditIndex = -1; listDetails.DataSource = GetDisbursementDetailsPerItem(hfItemCode.Value); listDetails.DataBind(); }
//need a method for breakdown by Dept - do in RequisitionService public int AddRetrievalDetail(RetrievalDetail retrievalDetail) { context.RetrievalDetails.Add(retrievalDetail); return(context.SaveChanges()); }
/// <summary> /// There is no status in RetrievalTable. /// </summary> /// <param name="retrievalDetail"></param> /// <returns></returns> public Constants.DB_STATUS Delete(RetrievalDetail retrievalDetail) { throw new NotImplementedException(); }
public static RetrievalDetail AddRetrievalDetail(LussisEntities context, RetrievalDetail retrievalDetail) { context.RetrievalDetails.Add(retrievalDetail); return(retrievalDetail); }
public static bool SubmitRetrieval(int retrievalNo, List <string> deptCodeList, List <string> itemNoList, List <int> actualList) { LussisEntities context = new LussisEntities(); DateTime today = DateTime.Today; int daysUntilMonday = ((int)DayOfWeek.Monday - (int)today.DayOfWeek + 7) % 7; DateTime disbursementDate = today.Date.AddDays(daysUntilMonday); // Update RetrievalDate Retrieval retrieval = GetRetrieval(context, retrievalNo); retrieval.Date = DateTime.Now; // For each RetrievalDetail for (int i = 0; i < actualList.Count; i++) { string deptCode = deptCodeList[i]; string itemNo = itemNoList[i]; int actual = actualList[i]; // Update RetrievalDetail RetrievalDetail retrievalDetail = GetRetrievalDetail(context, retrievalNo, deptCode, itemNo); retrievalDetail.Actual = actual; // Update StationeryCatalogueCurrentyQty StationeryCatalogue stock = GetStock(context, itemNo); stock.CurrentQty -= actual; // Add StockTxnDetail StockTxnDetail txn = new StockTxnDetail(); txn.ItemNo = itemNo; txn.Date = retrieval.Date; txn.AdjustQty = -actual; txn.RecordedQty = stock.CurrentQty; txn.Remarks = GetDepartment(context, deptCode).DeptName; txn = AddStockTxn(context, txn); // Add Disbursement Disbursement disbursement = GetPendingDisbursement(context, deptCode, disbursementDate); if (disbursement == null) { disbursement = new Disbursement(); disbursement.DisbursementNo = int.MaxValue; disbursement.DeptCode = deptCode; disbursement.DisbursementDate = disbursementDate; disbursement.RepEmpNo = GetDepartment(context, deptCode).RepEmpNo; disbursement.CollectionPointNo = GetDepartment(context, deptCode).CollectionPointNo; disbursement.Pin = new Random().Next(10000, 99999); disbursement.Status = "Pending"; disbursement = AddDisbursement(context, disbursement); } // Add DisbursementDetail DisbursementDetail disbursementDetail = new DisbursementDetail(); disbursementDetail.DisbursementNo = disbursement.DisbursementNo; disbursementDetail.ItemNo = itemNo; disbursementDetail.Needed = retrievalDetail.Needed + retrievalDetail.BackLogQty; disbursementDetail.Promised = actual; disbursementDetail.Received = actual; disbursementDetail = AddDisbursementDetail(context, disbursementDetail); } context.SaveChanges(); return(true); }
public RetrievalDetail FindRetrievalDetail(string itemCode, int retrievalId) { RetrievalDetail retrievalDetail = context.RetrievalDetails.Where(x => x.ItemCode == itemCode && x.RetrievalId == retrievalId).First(); return(retrievalDetail); }
public int UpdateRetrDet(RetrievalDetail retrDet) { return(retrDetServ.UpdateRetrievalDetail(retrDet)); }
public RetrievalDetail FindRetrievalDetail(int id) { RetrievalDetail retrievalDetail = context.RetrievalDetails.Where(x => x.RetrievalDetailsId == id).First(); return(retrievalDetail); }