Beispiel #1
0
        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));
        }
Beispiel #2
0
        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));
        }
Beispiel #3
0
        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));
        }