private static int?GetTotalPendingAdjustmentQtyForStock(string itemNo, List <AdjustmentVoucher> aVList) { int? qty = 0; LussisEntities context = new LussisEntities(); // If no Pending Vouchers found if (aVList.Count == 0) { // Return 0 return(qty); } else { // For each Pending Voucher for (int i = 0; i < aVList.Count; i++) { List <AdjustmentVoucherDetail> aVDList = aVList[i].AdjustmentVoucherDetails.ToList <AdjustmentVoucherDetail>(); // For each VoucherDetail for (int j = 0; j < aVDList.Count; j++) { // Add to Qty if itemNo matches AdjustmentVoucherDetail aVD = aVDList[j]; if (aVD.ItemNo.Equals(itemNo)) { qty += aVD.Qty; } } } return(qty); } }
public JsonResult UpdateReason(int adjdId, string reason, int adjId) { AdjustmentVoucher adj = new AdjustmentVoucher(); if (TempData["AdjustQty"] == null) { adj = AdjustmentVoucherService.Instance.getAdjustmentVoucherById(adjId); } else if (TempData["AdjustQty"] != null) { adj = (AdjustmentVoucher)TempData["AdjustQty"]; TempData.Keep("AdjustQty"); } if (adj.Id == adjId) { if (adj.AdjustmentVoucherDetails.Where(x => x.Id == adjdId).Count() <= 0) { AdjustmentVoucherDetail newadjd = AdjustmentVoucherService.Instance.getAdjustmentVoucherDetailById(adjdId); adj.AdjustmentVoucherDetails.Add(newadjd); } adj.AdjustmentVoucherDetails.Single(x => x.Id == adjdId).Reason = reason; TempData["AdjustQty"] = adj; } return(Json(true, JsonRequestBehavior.AllowGet)); }
public void AutoAdjustmentsForRetrieval(int clerkEmployeeId, List <RetrievalItemDTO> retrievalList) { AdjustmentVoucher openAV = adjustmentVoucherRepo.FindOneBy(x => x.EmployeeId == clerkEmployeeId && x.Status == "Open"); foreach (var item in retrievalList) { if (item.NeededQuantity > item.RetrievedQty) //retrieval short of needed { if (openAV == null) //no open AV for this clerk { //open new AV openAV = new AdjustmentVoucher { Date = DateTime.Now, EmployeeId = clerkEmployeeId, Status = AdjustmentVoucherStatus.Open.ToString() }; //persist in DB openAV = adjustmentVoucherRepo.Create(openAV); } //create adjustment voucher detail int adjustmentQty = item.RetrievedQty - item.NeededQuantity; AdjustmentVoucherDetail newAVD = new AdjustmentVoucherDetail { AdjustmentVoucherId = openAV.Id, DateTime = DateTime.Now, Quantity = adjustmentQty, Reason = AdjustmentVoucherDefaultReasons.RETRIEVAL_SHORTAGE.ToString(), StationeryId = item.StationeryId }; adjustmentVoucherDetailRepo.Create(newAVD); } } }
public static void approveVoucherDetailItemsByManager(List <AdjustmentVoucherDetail> list) { UniversityStoreEntities CONTEXT = new UniversityStoreEntities(); foreach (AdjustmentVoucherDetail detail in list) { var query = from x in CONTEXT.AdjustmentVoucherDetails where x.VoucherNumber == detail.VoucherNumber && detail.ItemNumber == x.ItemNumber && x.ApprovalStatus == detail.ApprovalStatus select x; AdjustmentVoucherDetail voucherDetailObject = query.First(); int qnty = Convert.ToInt32(voucherDetailObject.Quantity); voucherDetailObject.ApprovalStatus = APPROVAL_STATUS_APPROVED; var q = from x in CONTEXT.Products where x.ItemNumber == detail.ItemNumber select x; Product prod = q.First <Product>(); if (voucherDetailObject.Status == STATUS_INCREASE) { ProductDAO.UpdateStock(prod.ItemNumber, qnty); } else { ProductDAO.UpdateStockReduce(prod.ItemNumber, qnty); } CONTEXT.SaveChanges(); } }
public static void makeNewAdjustmentVoucher(List <MakeAdjustmentItem> adjustmentList) { AdjustmentVoucher adjustmentVoucher = new AdjustmentVoucher(); adjustmentVoucher.DateCreated = DateTime.Now; EntityCollection <AdjustmentVoucherDetail> voucherDetailsCollection = new EntityCollection <AdjustmentVoucherDetail>(); foreach (MakeAdjustmentItem item in adjustmentList) { Product p = ProductDAO.getSearchProductbyid(item.ItemNumber); double totalPrice = (double)p.AdjustmentVoucherPrice * item.Quantity; AdjustmentVoucherDetail avd = new AdjustmentVoucherDetail(); avd.ItemNumber = item.ItemNumber; avd.Status = item.Status.Equals("Excess") ? AdjustmentVoucherEFFacade.STATUS_DECREASE : AdjustmentVoucherEFFacade.STATUS_INCREASE; avd.TotalPrice = totalPrice; avd.Comment = item.Comment; avd.ApprovalStatus = AdjustmentVoucherEFFacade.APPROVAL_STATUS_PENDING; avd.Quantity = item.Quantity; voucherDetailsCollection.Add(avd); } adjustmentVoucher.AdjustmentVoucherDetails = voucherDetailsCollection; AdjustmentVoucherEFFacade.addNewAdjustVoucherWithArrayVoucherDetails(adjustmentVoucher); }
public static void DeleteAVD(int aVNo, string itemNo) { LussisEntities context = new LussisEntities(); AdjustmentVoucherDetail aVD = context.AdjustmentVoucherDetails.Where(x => x.AvNo == aVNo && x.ItemNo.Equals(itemNo)).FirstOrDefault(); context.AdjustmentVoucherDetails.Remove(aVD); context.SaveChanges(); }
public static void UpdateAVDetailQty(int aVNo, string itemNo, int qty, string reason) { LussisEntities context = new LussisEntities(); AdjustmentVoucherDetail aVD = context.AdjustmentVoucherDetails.Where(x => x.AvNo == aVNo && x.ItemNo.Equals(itemNo)).FirstOrDefault(); aVD.Qty = qty; aVD.Reason = reason; context.SaveChanges(); }
public async Task <IList <AdjustmentVocherInfo> > issueVoucher(StockAdjustSumById voc) { IList <AdjustmentVocherInfo> list = await getAllAdjustDetailLineByAdjustId(voc); List <AdjustmentVocherInfo> voucherResult = new List <AdjustmentVocherInfo>(); Employee empObj = unitOfWork .GetRepository <Employee>() .GetAllIncludeIQueryable(filter: x => x.Id == voc.empId).FirstOrDefault(); AdjustmentVoucher adjVoc = new AdjustmentVoucher() { StockAdjustmentId = voc.stockAdustmentId, EmployeeId = voc.empId, Employee = empObj, date = DateTime.Now }; unitOfWork.GetRepository <AdjustmentVoucher>().Insert(adjVoc); unitOfWork.SaveChanges(); foreach (AdjustmentVocherInfo eachInfo in list) { StockAdjustmentDetail stkDetail = unitOfWork .GetRepository <StockAdjustmentDetail>() .GetAllIncludeIQueryable(filter: x => x.Id == eachInfo.stockAdustmentDetailId).FirstOrDefault(); if (stkDetail != null) { stkDetail.Status = "Approved"; unitOfWork.GetRepository <StockAdjustmentDetail>().Update(stkDetail); unitOfWork.SaveChanges(); } AdjustmentVoucherDetail vocDetail = new AdjustmentVoucherDetail() { adjustmentVoucherId = adjVoc.Id, StockAdjustmentDetailId = eachInfo.stockAdustmentDetailId, price = eachInfo.amount, reason = eachInfo.reason, }; unitOfWork.GetRepository <AdjustmentVoucherDetail>().Insert(vocDetail); unitOfWork.SaveChanges(); AdjustmentVocherInfo obj = await getEachVoucherDetail(eachInfo); if (obj != null) { voucherResult.Add(obj); } } return(voucherResult); }
// create new adjustmentvoucher detail public void createNewAdjustmentVoucherDetail(AdjustmentVoucher adjustmentVoucher, int stationeryId, int quantity) { AdjustmentVoucherDetail aVD = new AdjustmentVoucherDetail(); aVD.AdjustmentVoucherId = adjustmentVoucher.Id; aVD.StationeryId = stationeryId; aVD.Quantity = quantity; aVD.DateTime = System.DateTime.Now; aVD = adjustmentVoucherDetailRepo.Create(aVD); }
public void DeleteAdvDetails(AdjustmentVoucherDetail avd) { AdjustmentVoucherDetail original = dbcontext.AdjustmentVoucherDetails.FirstOrDefault(m => m.Id == avd.Id); if (original != null) { dbcontext.AdjustmentVoucherDetails.Remove(original); } dbcontext.SaveChanges(); }
private AdjustmentVoucherDetail generateVoucherDetail(AdjustmentVoucherDTO adjdDTO) { AdjustmentVoucherDetail newVoucherDetail = new AdjustmentVoucherDetail(); newVoucherDetail.AdjustmentVoucherId = adjdDTO.adjustmentVoucher.Id; newVoucherDetail.StationeryId = adjdDTO.StationeryId; newVoucherDetail.Quantity = adjdDTO.Quantity; newVoucherDetail.Reason = adjdDTO.Reason; newVoucherDetail.DateTime = DateTime.Now; return(newVoucherDetail); }
//public static DateTime getDate(int VoucherNo) //{ // var q2 = from x in CONTEXT.AdjustmentVouchers // where x.VoucherNumber == VoucherNo // select x; // DateTime av =(DateTime) q2.First<AdjustmentVoucher>().DateCreated; // return av; public static void deleteAdjustmentVoucherDetail(int voucherNo) { UniversityStoreEntities CONTEXT = new UniversityStoreEntities(); var a = from x in CONTEXT.AdjustmentVoucherDetails where x.VoucherNumber == voucherNo select x; AdjustmentVoucherDetail d = a.First <AdjustmentVoucherDetail>(); CONTEXT.DeleteObject(d); CONTEXT.SaveChanges(); }
public static void SubmitAdjustmentVoucher(string itemNo, DateTime dateIssued, int qty, string reason, int issueEmpNo) { AdjustmentVoucher aV; AdjustmentVoucherDetail aVD; LussisEntities context = new LussisEntities(); using (var txn = new TransactionScope()) { // Create AdjustmentVoucher aV = new AdjustmentVoucher(); aV.DateIssued = dateIssued; aV.IssueEmpNo = issueEmpNo; aV.Status = "Pending"; context.AdjustmentVouchers.Add(aV); context.SaveChanges(); // Create AdjustmentVoucherDetails aVD = new AdjustmentVoucherDetail(); aVD.AvNo = aV.AvNo; aVD.ItemNo = itemNo; aVD.Qty = qty; aVD.Reason = reason; context.AdjustmentVoucherDetails.Add(aVD); context.SaveChanges(); txn.Complete(); } // Send Email var supplier1Code = context.StationeryCatalogues.Where(x => x.ItemNo.Equals(itemNo)).FirstOrDefault().Supplier1; var unitPrice = context.SupplyTenders.Where(x => x.ItemNo.Equals(itemNo) && x.SupplierCode.Equals(supplier1Code)).FirstOrDefault().UnitPrice; var price = qty * unitPrice; Employee recipient; if (price >= 250) { recipient = context.StoreAssignments.Where(x => x.Role.Equals("Manager")).FirstOrDefault().Employee; } else { recipient = context.StoreAssignments.Where(x => x.Role.Equals("Supervisor")).FirstOrDefault().Employee; } string recipientEmail = recipient.Email; string emailSubject = EmailTemplate.GenerateAdjustmentVoucherSubject(); string emailContent = EmailTemplate.GenerateAdjustmentVoucherEmail(recipient.EmpName, aV.AvNo); EmailBackend.sendEmailStep(recipientEmail, emailSubject, emailContent); }
public static void approveVoucherDetailItemsByManager(List <AdjustmentVoucherDetail> list) { UniversityStoreEntities context = new UniversityStoreEntities(); foreach (AdjustmentVoucherDetail detail in list) { var query = from x in context.AdjustmentVoucherDetails where x.VoucherNumber == detail.VoucherNumber && detail.ItemNumber == x.ItemNumber && x.ApprovalStatus == detail.ApprovalStatus select x; AdjustmentVoucherDetail voucherDetailObject = query.First(); voucherDetailObject.ApprovalStatus = APPROVAL_STATUS_APPROVED; context.SaveChanges(); } }
protected void AVNO() { using (Model1 entities = new Model1()) { try { AdjustmentVoucherDetail num = entities.AdjustmentVoucherDetails.OrderByDescending(p => p.AVnumber).First <AdjustmentVoucherDetail>(); AVnum = num.AVnumber + 1; } catch (Exception EX) { AVnum = 1; } TextBox4.Text = AVnum.ToString(); } }
public static void AddAdjustmentVoucherDetails(int AVnumber, string ItemCode, string Description, int Qty, double Price, string Reason, string status) { using (Model1 entities = new Model1()) { AdjustmentVoucherDetail AdjustmentVoucherDetail = new AdjustmentVoucherDetail { AVnumber = AVnumber, ItemCode = ItemCode, Description = Description, Qty = Qty, Price = Price, Reason = Reason, Status = status }; entities.AdjustmentVoucherDetails.Add(AdjustmentVoucherDetail); entities.SaveChanges(); } }
public JsonResult Remove(int adjdId) { AdjustmentVoucher adj = new AdjustmentVoucher(); if (TempData["AdjustQty"] != null) { adj = (AdjustmentVoucher)TempData["AdjustQty"]; TempData.Keep("AdjustQty"); adj.AdjustmentVoucherDetails.Remove(adj.AdjustmentVoucherDetails.Single(x => x.Id == adjdId)); TempData["AdjustQty"] = adj; } AdjustmentVoucherDetail adjd = AdjustmentVoucherService.Instance.getAdjustmentVoucherDetailById(adjdId); AdjustmentVoucherService.Instance.DeleteAdjustmentVoucherDetail(adjd); return(Json(true, JsonRequestBehavior.AllowGet)); }
public ActionResult SubmitVoucher(AdjustmentVoucherDTO adjDTO) { if (Session["existinguser"] != null) { LoginDTO currentUser = (LoginDTO)Session["existinguser"]; if (currentUser.RoleId != (int)Enums.Roles.StoreClerk) { return(RedirectToAction("RedirectToClerkOrDepartmentView", "Login")); } if (ModelState.IsValid) { AdjustmentVoucher updatedVoucher = AdjustmentVoucherService.Instance.getAdjustmentVoucherById(adjDTO.adjustmentVoucher.Id); if (TempData["AdjustQty"] != null) { AdjustmentVoucher AdjustQtyDTO = (AdjustmentVoucher)TempData["AdjustQty"]; TempData.Keep("AdjustQty"); //update POdetails deliveredQty foreach (var detail in AdjustQtyDTO.AdjustmentVoucherDetails) { AdjustmentVoucherDetail oldVoucherDetail = updatedVoucher.AdjustmentVoucherDetails.Single(x => x.Id == detail.Id); oldVoucherDetail.Quantity = detail.Quantity; oldVoucherDetail.Reason = detail.Reason; //AdjustmentVoucherService.Instance.UpdateAdjustmentVoucherDetail(oldVoucherDetail); } } updatedVoucher.Status = Enum.GetName(typeof(Enums.AdjustmentVoucherStatus), Enums.AdjustmentVoucherStatus.Submitted); updatedVoucher.Date = DateTime.Now; AdjustmentVoucherService.Instance.UpdateAdjustmentVoucher(updatedVoucher); TempData["AdjustQty"] = null; return(RedirectToAction("Index")); } return(View(adjDTO)); } return(RedirectToAction("Index", "Login")); }
public async Task <AdjustmentVocherInfo> getEachVoucherDetail(AdjustmentVocherInfo info) { AdjustmentVoucherDetail vocDetail = unitOfWork .GetRepository <AdjustmentVoucherDetail>() .GetAllIncludeIQueryable(filter: x => x.StockAdjustmentDetailId == info.stockAdustmentDetailId).FirstOrDefault(); if (vocDetail != null) { Employee empObj = unitOfWork .GetRepository <Employee>() .GetAllIncludeIQueryable(filter: x => x.Id == info.empId).FirstOrDefault(); AdjustmentVoucher voc = unitOfWork .GetRepository <AdjustmentVoucher>() .GetAllIncludeIQueryable(filter: x => x.Id == vocDetail.adjustmentVoucherId).FirstOrDefault(); if (voc != null && empObj != null) { AdjustmentVocherInfo obj = new AdjustmentVocherInfo() { vocNo = voc.Id, stockAdustmentDetailId = vocDetail.Id, stockAdustmentId = voc.StockAdjustmentId, empId = voc.EmployeeId, date = voc.date, reason = vocDetail.reason, empName = empObj.name, itemCode = info.itemCode, quantity = info.quantity, amount = vocDetail.price }; return(obj); } } return(null); }
public static void approveVoucherDetailItemsBySupervisor(List <AdjustmentVoucherDetail> list) { UniversityStoreEntities context = new UniversityStoreEntities(); foreach (AdjustmentVoucherDetail detail in list) { var query = from x in context.AdjustmentVoucherDetails where x.VoucherNumber == detail.VoucherNumber && detail.ItemNumber == x.ItemNumber && x.ApprovalStatus == detail.ApprovalStatus select x; AdjustmentVoucherDetail voucherDetailObject = query.First(); voucherDetailObject.ApprovalStatus = APPROVAL_STATUS_APPROVED; context.SaveChanges(); } //foreach (AdjustmentVoucherDetail detail in itemsApproved) //{ // AdjustmentVoucherDetail d = context.AdjustmentVoucherDetails.Where(x => x.VoucherNumber == detail.VoucherNumber).First(); // d.ApprovalStatus = APPROVAL_STATUS_APPROVED; // context.SaveChanges(); //} }
public ActionResult Create(AdjustmentVoucherDTO adjDTO) { if (Session["existinguser"] != null) { LoginDTO currentUser = (LoginDTO)Session["existinguser"]; if (currentUser.RoleId != (int)Enums.Roles.StoreClerk) { return(RedirectToAction("RedirectToClerkOrDepartmentView", "Login")); } if (ModelState.IsValid) { int clerkId = currentUser.EmployeeId; adjDTO.adjustmentVoucher = new AdjustmentVoucher(); AdjustmentVoucher existVoucher = AdjustmentVoucherService.Instance.getOpenAdjustmentVoucherByClerk(clerkId); if (existVoucher != null) { adjDTO.adjustmentVoucher.Id = existVoucher.Id; } else { AdjustmentVoucher newVoucher = this.generateVoucher(adjDTO); AdjustmentVoucherService.Instance.CreateAdjustmentVoucher(newVoucher); adjDTO.adjustmentVoucher.Id = newVoucher.Id; } AdjustmentVoucherDetail newVoucherDetail = this.generateVoucherDetail(adjDTO); AdjustmentVoucherService.Instance.CreateAdjustmentVoucherDetail(newVoucherDetail); adjDTO.adjustmentVoucher = AdjustmentVoucherService.Instance.getAdjustmentVoucherById(adjDTO.adjustmentVoucher.Id); //return RedirectToAction("Index"); } adjDTO.Stationeries = StationeryService.Instance.GetAllStationeries(); return(RedirectToAction("Detail", "AdjustmentVoucher", new { @adjId = adjDTO.adjustmentVoucher.Id })); } return(RedirectToAction("Index", "Login")); }
/**added by lee * */ public static void makeNewAdjustmentVoucher(AdjustmentItemWCF[] adjustmentList) { AdjustmentVoucher adjustmentVoucher = new AdjustmentVoucher(); adjustmentVoucher.DateCreated = DateTime.Now; EntityCollection <AdjustmentVoucherDetail> voucherDetailsCollection = new EntityCollection <AdjustmentVoucherDetail>(); foreach (AdjustmentItemWCF item in adjustmentList) { AdjustmentVoucherDetail avd = new AdjustmentVoucherDetail(); avd.ItemNumber = item.ItemNumber; avd.Status = item.Status.Equals("reduce") ? AdjustmentVoucherEFFacade.STATUS_DECREASE : AdjustmentVoucherEFFacade.STATUS_INCREASE; avd.TotalPrice = item.TotalPrice; avd.Comment = item.Comment; avd.ApprovalStatus = AdjustmentVoucherEFFacade.APPROVAL_STATUS_PENDING; avd.Quantity = item.Quantity; voucherDetailsCollection.Add(avd); } adjustmentVoucher.AdjustmentVoucherDetails = voucherDetailsCollection; AdjustmentVoucherEFFacade.addNewAdjustVoucherWithArrayVoucherDetails(adjustmentVoucher); }
public void AddAdvDetail(AdjustmentVoucherDetail avd) { dbcontext.AdjustmentVoucherDetails.Add(avd); dbcontext.SaveChanges(); }
public void CreateAdjustmentVoucherDetail(AdjustmentVoucherDetail adjdetail) { adjustmentVoucherDetailRepo.Create(adjdetail); }
public void UpdateAdjustmentVoucherDetail(AdjustmentVoucherDetail adjdetail) { adjustmentVoucherDetailRepo.Update(adjdetail); }
public void DeleteAdjustmentVoucherDetail(AdjustmentVoucherDetail adjdetail) { adjustmentVoucherDetailRepo.Delete(adjdetail); }