public static async Task <ConnectorResponseModel> GetRentHistory(UserModel user) { PaidRentHistory objRentH = HttpClientRQHandler.SendRQ <PaidRentHistory, UserModel>(user, "/GetPaidInvoices"); if (!(objRentH is PaidRentHistory && objRentH.ResponseStatus.ResponseCode == (int)ResponseCode.Success)) { objRentH = null; } return(await Task.FromResult(objRentH)); }
public async Task <ActionResult> RetrieveHistoricInvoices() { UserModel objUser = Session[SessionConstants.UserSession] as UserModel; PaidRentHistory objInvoices = await Connector.GetRentHistory(objUser) as PaidRentHistory; List <PaidInvoices> lsInvoices = new List <PaidInvoices>(); if (objInvoices != null && objInvoices.Result != null && objInvoices.Result.InvoicesData != null) { lsInvoices = objInvoices.Result.InvoicesData.ToList(); } return(Json(new ResponseModel() { Status = false, Data = lsInvoices, Errors = null }, JsonRequestBehavior.AllowGet)); }
public async Task <ActionResult> RetrieveClubbedInvoices(int dueInv, int paidInv, int maxCount) { List <InvoiceGeneralModel> lsClubbedInvoices = new List <InvoiceGeneralModel>(); List <Task> lsTsk = new List <Task>(); UserModel objUser = Session[SessionConstants.UserSession] as UserModel; List <Invoicesdata> lsDueInvoices = new List <Invoicesdata>(); List <PaidInvoices> lsPaidInvoices = new List <PaidInvoices>(); Task dueTask = await Task.Factory.StartNew(async() => { RentHistory objInvoices = await Connector.GetRentDues(objUser) as RentHistory; if (objInvoices != null && objInvoices.Result != null && objInvoices.Result.InvoicesData != null) { lsDueInvoices = objInvoices.Result.InvoicesData.ToList(); } }, CancellationToken.None, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default); Task paidTask = await Task.Factory.StartNew(async() => { PaidRentHistory objInvoices = await Connector.GetRentHistory(objUser) as PaidRentHistory; if (objInvoices != null && objInvoices.Result != null && objInvoices.Result.InvoicesData != null) { lsPaidInvoices = objInvoices.Result.InvoicesData.ToList(); } }, CancellationToken.None, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default); lsTsk.Add(dueTask); lsTsk.Add(paidTask); await Task.WhenAll(lsTsk.ToArray()); if (lsDueInvoices is List <Invoicesdata> ) { dueInv = dueInv == 0 ? lsDueInvoices.Count : lsDueInvoices.Count > dueInv ? lsDueInvoices.Count : lsDueInvoices.Count; for (int invCnt = 0; invCnt < lsDueInvoices.Count; invCnt++) { lsClubbedInvoices.Add(new InvoiceGeneralModel() { BranchID = "", DocEntryNo = lsDueInvoices[invCnt].DocEntryNo, InvoiceMonth = lsDueInvoices[invCnt].strDocMonth, DocTotal = lsDueInvoices[invCnt].DocTotal, InvoiceCurrency = "KWD", InvoiceDate = lsDueInvoices[invCnt].strDocDate, InvoiceDueDate = lsDueInvoices[invCnt].strDueDate, InvoiceFine = "0", IsPaid = false }); } } if (lsPaidInvoices is List <PaidInvoices> ) { paidInv = paidInv == 0 ? lsPaidInvoices.Count : lsPaidInvoices.Count > paidInv ? lsPaidInvoices.Count : lsPaidInvoices.Count; for (int invCnt = 0; invCnt < lsPaidInvoices.Count; invCnt++) { lsClubbedInvoices.Add(new InvoiceGeneralModel() { BranchID = "", DocEntryNo = lsPaidInvoices[invCnt].IPDocNum, InvoiceMonth = lsPaidInvoices[invCnt].strDocMonth, DocTotal = lsPaidInvoices[invCnt].InvPaidAmount.ToString(), InvoiceCurrency = "KWD", InvoiceDate = lsPaidInvoices[invCnt].strDocDate, InvoiceFine = "0", IsPaid = true, Payment = new InvoicePayment() { InvReffNo = lsPaidInvoices[invCnt].PayRefNo, PayID = lsPaidInvoices[invCnt].PayID, PayReff = lsPaidInvoices[invCnt].RefNo } }); } } maxCount = maxCount == 0 ? lsClubbedInvoices.Count : maxCount; return(Json(new ResponseModel() { Status = false, Data = lsClubbedInvoices.Take(maxCount), Errors = null }, JsonRequestBehavior.AllowGet)); }