public async Task <IActionResult> Rejected(int?pageIndex)
        {
            var certificates = await ApiClient.GetCertificatesToBeApproved(PageSize, pageIndex ?? 1,
                                                                           CertificateStatus.Draft, CertificateStatus.Rejected);

            var items = Mapper.Map <List <CertificateDetailApprovalViewModel> >(certificates.Items);
            var certificatesThatAreRejected = new CertificateApprovalViewModel
            {
                RejectedCertificates = new PaginatedList <CertificateDetailApprovalViewModel>(items,
                                                                                              certificates.TotalRecordCount, certificates.PageIndex, certificates.PageSize)
            };

            return(View(certificatesThatAreRejected));
        }
        public async Task <IActionResult> SentForApproval(int?pageIndex)
        {
            var certificates = await ApiClient.GetCertificatesToBeApproved(0, pageIndex ?? 1,
                                                                           CertificateStatus.ToBeApproved, CertificateStatus.SentForApproval);

            var items =
                Mapper.Map <List <CertificateDetailApprovalViewModel> >(certificates.Items.OrderBy(x => x.UpdatedAt));
            var certificatesSentForApproval = new CertificateApprovalViewModel
            {
                SentForApprovalCertificates = new PaginatedList <CertificateDetailApprovalViewModel>(items,
                                                                                                     certificates.TotalRecordCount, certificates.PageIndex, certificates.PageSize)
            };

            return(View(certificatesSentForApproval));
        }
        public async Task <IActionResult> New(int?pageIndex)
        {
            var certificates =
                await ApiClient.GetCertificatesToBeApproved(0, pageIndex ?? 1, CertificateStatus.ToBeApproved, null);

            var items = Mapper.Map <List <CertificateDetailApprovalViewModel> >(
                certificates.Items.OrderByDescending(x => x.CreatedDay));
            var certificatesToBeApproved = new CertificateApprovalViewModel
            {
                ToBeApprovedCertificates = new PaginatedList <CertificateDetailApprovalViewModel>(items,
                                                                                                  certificates.TotalRecordCount, certificates.PageIndex, certificates.PageSize)
            };

            return(View(certificatesToBeApproved));
        }