@hmcts/ccpay-web-component 5.0.7 → 5.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/hmcts-ccpay-web-component.umd.js +176 -38
- package/bundles/hmcts-ccpay-web-component.umd.js.map +1 -1
- package/bundles/hmcts-ccpay-web-component.umd.min.js +1 -1
- package/bundles/hmcts-ccpay-web-component.umd.min.js.map +1 -1
- package/esm2015/lib/components/allocate-payments/allocate-payments.component.js +16 -16
- package/esm2015/lib/components/payment-view/payment-view.component.js +3 -3
- package/esm2015/lib/components/reports/reports.component.js +120 -20
- package/esm2015/lib/payment-lib.component.js +4 -2
- package/esm2015/lib/services/shared/error-handler.service.js +7 -3
- package/esm2015/lib/services/xl-file/xl-file.service.js +29 -1
- package/esm5/lib/components/allocate-payments/allocate-payments.component.js +16 -16
- package/esm5/lib/components/payment-view/payment-view.component.js +3 -3
- package/esm5/lib/components/reports/reports.component.js +126 -20
- package/esm5/lib/payment-lib.component.js +2 -2
- package/esm5/lib/services/shared/error-handler.service.js +11 -3
- package/esm5/lib/services/xl-file/xl-file.service.js +34 -1
- package/fesm2015/hmcts-ccpay-web-component.js +162 -38
- package/fesm2015/hmcts-ccpay-web-component.js.map +1 -1
- package/fesm5/hmcts-ccpay-web-component.js +175 -38
- package/fesm5/hmcts-ccpay-web-component.js.map +1 -1
- package/hmcts-ccpay-web-component.metadata.json +1 -1
- package/lib/components/reports/reports.component.d.ts +6 -0
- package/lib/services/shared/error-handler.service.d.ts +1 -1
- package/lib/services/xl-file/xl-file.service.d.ts +1 -0
- package/package.json +1 -1
|
@@ -464,7 +464,9 @@ PaymentLibComponent.decorators = [
|
|
|
464
464
|
[isTurnOff]="ISTURNOFF"
|
|
465
465
|
[caseType]="CASETYPE"
|
|
466
466
|
></ccpay-fee-summary>
|
|
467
|
-
<ccpay-reports *ngIf="viewName === 'reports'"
|
|
467
|
+
<ccpay-reports *ngIf="viewName === 'reports'"
|
|
468
|
+
[ISPAYMENTSTATUSENABLED] = "ISPAYMENTSTATUSENABLED"
|
|
469
|
+
></ccpay-reports>
|
|
468
470
|
`
|
|
469
471
|
}] }
|
|
470
472
|
];
|
|
@@ -588,12 +590,16 @@ class ErrorHandlerService {
|
|
|
588
590
|
}
|
|
589
591
|
/**
|
|
590
592
|
* @param {?} isErrorExist
|
|
593
|
+
* @param {?=} isDataNotExist
|
|
594
|
+
* @param {?=} error
|
|
591
595
|
* @return {?}
|
|
592
596
|
*/
|
|
593
|
-
getServerErrorMessage(isErrorExist) {
|
|
597
|
+
getServerErrorMessage(isErrorExist, isDataNotExist = false, error = '') {
|
|
598
|
+
/** @type {?} */
|
|
599
|
+
const bodyContent = isDataNotExist ? error : 'Try again later';
|
|
594
600
|
return {
|
|
595
601
|
title: "There is a problem with the service",
|
|
596
|
-
body:
|
|
602
|
+
body: bodyContent,
|
|
597
603
|
showError: isErrorExist
|
|
598
604
|
};
|
|
599
605
|
}
|
|
@@ -1533,8 +1539,8 @@ class PaymentViewComponent {
|
|
|
1533
1539
|
PaymentViewComponent.decorators = [
|
|
1534
1540
|
{ type: Component, args: [{
|
|
1535
1541
|
selector: 'ccpay-payment-view',
|
|
1536
|
-
template: "\n<ng-container *ngIf=\"viewStatus === 'paymentview'\">\n<div class=\"govuk-width-container\">\n\n <div class=\"govuk-breadcrumbs\">\n <ol class=\"govuk-breadcrumbs__list\">\n <li class=\"govuk-breadcrumbs__list-item\">\n <a href=\"javascript:void(0)\" (click)=\"goToCaseTransationPage($event)\" class=\"govuk-back-link\">Back</a>\n </li>\n </ol>\n </div>\n\n <main class=\"govuk-main-wrapper govuk-!-padding-top-0\" id=\"main-content\" role=\"main\">\n\n <div *ngIf=\"errorMessage\">\n <div class=\"error-summary\" role=\"group\" aria-labelledby=\"failure-error-summary-heading\" tabindex=\"-1\">\n <h2 class=\"heading-medium error-summary-heading\" id=\"failure-error-summary-heading\">\n Payment details could not be retrieved\n </h2>\n <div class=\"govuk-error-summary__body\">\n {{ errorMessage }}\n </div>\n </div>\n </div>\n\n <div class=\"payment-view-alignment\" *ngIf=\"!errorMessage && paymentGroup?.payments[0]\">\n\n <input #myInput type='hidden' id='iFrameDrivenImageValue' value='PAYMENTDETAILS'>\n <div class=\"govuk-grid-row\">\n <div class=\"column\">\n <h1 class=\"heading-large govuk-!-margin-top-0\">Payment details</h1>\n </div>\n </div>\n <table>\n <tbody>\n\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Service request reference</td>\n <td class=\"tb-col-w\">{{ serviceReference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Payment reference</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Payment amount</td>\n <td class=\"tb-col-w\">\u00A3{{ paymentGroup?.payments[0]?.amount | number:'.2' }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0] && paymentGroup?.payments[0]?.document_control_number && !paymentGroup?.payments[0]?.external_reference\">\n <td class=\"bold tb-col-w\">Payment asset number(DCN)</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.document_control_number }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0] && paymentGroup?.payments[0]?.document_control_number && !paymentGroup?.payments[0]?.external_reference\">\n <td class=\"bold tb-col-w\">Banked date</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.banked_date | date:'dd MMM yyyy' }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0] && paymentGroup?.payments[0]?.external_reference\">\n <td class=\"bold tb-col-w\">GovPay Transaction ID</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.external_reference }}</td>\n </tr>\n <tr class=\"section\" >\n <td class=\"bold tb-col-w\">Payment method</td>\n <td class=\"tb-col-w text-transform\">{{ paymentGroup?.payments[0]?.method }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0]?.method === 'payment by account'\" >\n <td class=\"bold tb-col-w\">Type</td>\n <td class=\"tb-col-w\" *ngIf=\"paymentGroup?.payments[0]?.method !== 'card'\">Credit</td>\n <td class=\"tb-col-w\" *ngIf=\"paymentGroup?.payments[0]?.method === 'card'\">Card</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Channel</td>\n <td class=\"tb-col-w text-transform\">{{ paymentGroup?.payments[0]?.channel }}</td>\n </tr>\n <!-- <tr class=\"section\">\n <td class=\"bold tb-col-w\">Method</td>\n <td *ngIf=\"paymentGroup?.payments[0]?.method !== 'card'\">{{ paymentGroup?.payments[0]?.method }}</td>\n <td *ngIf=\"paymentGroup?.payments[0]?.method === 'card'\">CARD</td>\n </tr> -->\n <!-- <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0]?.channel !== 'telephony'\">\n <td class=\"bold tb-col-w\">Status</td>\n <td>{{ paymentGroup?.payments[0]?.status }}</td>\n </tr> -->\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0]?.payment_allocation[0] !== undefined\">\n <td class=\"bold tb-col-w\">Allocaton status</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.payment_allocation[0]?.allocation_status }}</td>\n </tr>\n\n <tr *ngIf=\"paymentGroup?.payments[0].organisation_name\">\n <td class=\"bold tb-col-w\">PBA account name</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.organisation_name }}</td>\n </tr>\n\n <tr *ngIf=\"paymentGroup?.payments[0].account_number\">\n <td class=\"bold tb-col-w\">PBA number</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.account_number }}</td>\n </tr>\n\n <tr *ngIf=\"paymentGroup?.payments[0].customer_reference\">\n <td class=\"bold tb-col-w\">Customer internal reference</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.customer_reference }}</td>\n </tr>\n\n </tbody>\n </table>\n\n <div>\n <!-- Status histories -->\n <ccpay-payment-statuses *ngIf=\"isStatusAllocated\" [isTakePayment]=\"isTakePayment\"></ccpay-payment-statuses>\n </div>\n <div class=\"remission\">\n <button [disabled]=\"!chkIssueRefundBtnEnable(paymentGroup?.payments[0])\" (click)=\"issueRefund(paymentGroup)\" class=\"govuk-button govuk-button--secondary\">Issue refund</button>\n </div>\n<div *ngIf=\"ISPAYMENTSTATUSENABLED === 'Enable'\">\n <div class=\"column\">\n <h2 class=\"heading-medium\">Disputed payment history</h2>\n </div>\n \n <div>\n <table>\n <thead>\n <tr>\n <th>Status</th>\n <th>Amount</th>\n <th>Date</th>\n <th>Payment reference</th>\n <th>Event</th>\n <th></th>\n </tr>\n </thead> \n <tbody *ngIf=\"!errorMsg && allPaymentsFailure.length > 0\">\n <tr *ngFor=\"let payment of allPaymentsFailure\">\n <td>{{ payment.status }}</td>\n <td>\u00A3{{ payment.disputed_amount | number:'.2' }}</td>\n <td>{{(payment.representment_date ? payment.representment_date : payment.failure_event_date_time) | date:'dd MMM yyyy'}}</td>\n <td>{{ payment.payment_reference }}</td>\n <td >{{ payment.failure_type }}</td>\n <td>\n \n <a href=\"javascript:void(0)\" (click)=\"goToPaymentFailuePage(payment)\">Show detail</a>\n\n </td>\n </tr>\n </tbody>\n <tbody *ngIf=\"errorMsg || allPaymentsFailure.length === 0\">\n <tr>\n <td colspan=\"6\"> No disputed payment history available. </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n \n <div *ngIf=\"checkForFees(paymentGroup)\">\n <div *ngIf=\"paymentGroup.fees.length > 0\">\n <div class=\"column\">\n <br/>\n <br/>\n <h2 class=\"heading-large\">Fee and remission details</h2>\n\n </div>\n </div>\n\n <div *ngFor=\"let fee of paymentGroup.fees\">\n <table class=\"table\">\n <tbody>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Description</td>\n <td class=\"tb-col-w\">Application for {{ fee.description }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Fee code</td>\n <td class=\"tb-col-w\">{{ fee?.code }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\" [ngClass]=\"{'tr-border': !fee.apportion_amount && !fee.remissions && !isTurnOff }\">Fee amount</td>\n <td [ngClass]=\"{'tr-border': !fee.apportion_amount && !fee.remissions && !isTurnOff}\">\u00A3{{ fee?.calculated_amount | number:'.2' }}</td>\n </tr>\n\n <tr *ngIf=\"fee.apportion_amount\">\n <td class=\"bold tb-col-w tr-border\" [ngClass]=\"{'tr-border': !fee.remissions}\">Allocated amount</td>\n <td [ngClass]=\"{'tr-border': !fee.remissions}\">\u00A3{{ fee?.apportion_amount | number:'.2' }}</td>\n </tr>\n\n </tbody>\n </table>\n <button [disabled]=\"!chkForAddRemission(fee.code)\" (click)=\"addRemission(fee)\" class=\"govuk-button govuk-button--secondary\"> Add remission</button>\n </div>\n\n <!-- remissions -->\n <div class=\"order-class\">\n <div class=\"column\">\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header col-24 whitespace-inherit\" scope=\"col\">Help with fees or remission code</td>\n <td class=\"govuk-table__header col-27 whitespace-inherit\" scope=\"col\">Reference</td>\n <td class=\"govuk-table__header whitespace-inherit\" scope=\"col\">Fee</td>\n <td class=\"govuk-table__header whitespace-inherit\" scope=\"col\">Amount</td>\n <td class=\"govuk-table__header whitespace-inherit refundBtn\" scope=\"col\"></td>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\" *ngFor=\"let remission of paymentGroup.remissions\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.hwf_reference }}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.remission_reference }}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.fee_code }}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.hwf_amount | currency:'GBP':'symbol-narrow':'1.2-2'}}</td>\n <td class=\"govuk-table__cell refundBtn whitespace-inherit\" >\n <button [disabled]=\"!chkIsRefundRemissionBtnEnable()\" (click)=\"addRefundForRemission(paymentGroup.payments[0],remission,paymentGroup.fees)\" class=\"govuk-button govuk-button--secondary\"> Add refund</button>\n </td>\n </tr>\n </tbody>\n\n\n </table>\n </div></div>\n\n <div *ngIf=\"paymentGroup.remissions?.length === 0\">\n <span class=\"mar-17\" >No help with fees or remissions.</span>\n </div>\n\n </div>\n </div>\n </main>\n</div>\n\n</ng-container>\n<ng-container *ngIf=\"viewStatus === 'addremission' && feeId\">\n<ccpay-add-remission\n[isTurnOff]=\"isTurnOff\"\n[isStrategicFixEnable]=\"isStrategicFixEnable\"\n[viewCompStatus]= \"viewStatus\"\n[fee]=\"feeId\"\n[payment] = \"payment\"\n[orderStatus] =\"paymentGroup.payments[0].status\"\n[paidAmount]= \"paymentGroup.payments[0].amount\"\n[isRefundRemission]=\"isRefundRemission\"\n[caseType]=\"caseType\"\n[paymentGroupRef]=\"paymentGroup.payment_group_reference\"\n[isFromPaymentDetailPage] = \"true\"\n[ccdCaseNumber]=\"ccdCaseNumber\"\n[orderFeesTotal] = \"orderFeesTotal\"\n[orderTotalPayments] = \"orderTotalPayments\"\n[orderRemissionTotal] = \"orderRemissionTotal\"\n[orderRef] = \"orderRef\"\n[orderCreated] = \"orderCreated\"\n[orderParty] = \"orderParty\"\n[orderCCDEvent] = \"orderCCDEvent\"\n[orderDetail] = \"orderDetail\"\n[LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\"></ccpay-add-remission>\n</ng-container>\n\n<ng-container *ngIf=\"viewStatus === 'addrefundforremission' && payment\">\n\n<ccpay-add-remission\n[isTurnOff]=\"isTurnOff\"\n[isStrategicFixEnable]=\"isStrategicFixEnable\"\n[viewCompStatus]= \"viewStatus\"\n[payment]=\"payment\"\n[orderStatus] =\"orderStatus\"\n[paidAmount]= \"orderTotalPayments\"\n[isRefundRemission]=\"isRefundRemission\"\n[caseType]=\"caseType\"\n[feeamount]=\"remissionFeeAmt\"\n[remission] = \"remissions\"\n[isFromServiceRequestPage]=\"false\"\n[paymentGroupRef]=\"paymentGroup.payment_group_reference\"\n[ccdCaseNumber]=\"ccdCaseNumber\"\n[orderFeesTotal] = \"orderFeesTotal\"\n[orderTotalPayments] = \"orderTotalPayments\"\n[orderRemissionTotal] = \"orderRemissionTotal\"\n[orderRef] = \"orderRef\"\n[orderCreated] = \"orderCreated\"\n[orderParty] = \"orderParty\"\n[orderCCDEvent] = \"orderCCDEvent\"\n[orderDetail] = \"orderDetail\"\n[LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\"></ccpay-add-remission>\n</ng-container>\n\n<ng-container *ngIf=\"viewStatus === 'issuerefund'\">\n <ccpay-add-remission\n [isTurnOff]=\"isTurnOff\"\n [isStrategicFixEnable]=\"isStrategicFixEnable\"\n [payment] = 'paymentGroup.payments[0]'\n [viewCompStatus]= \"viewStatus\"\n [orderStatus] =\"paymentGroup.payments[0].status\"\n [paidAmount]= \"paymentGroup.payments[0].amount\"\n [isRefundRemission]=\"isRefundRemission\"\n [caseType]=\"caseType\"\n [isFromServiceRequestPage]=\"isFromServiceRequestPage\"\n [isFromPaymentDetailPage] = \"isFromPaymentDetailPage\"\n [paymentGroupRef]=\"paymentGroup.payment_group_reference\"\n [ccdCaseNumber]=\"ccdCaseNumber\"\n [orderFeesTotal] = \"orderFeesTotal\"\n [orderTotalPayments] = \"orderTotalPayments\"\n [orderRemissionTotal] = \"orderRemissionTotal\"\n [orderRef] = \"orderRef\"\n [orderCreated] = \"orderCreated\"\n [orderParty] = \"orderParty\"\n [orderCCDEvent] = \"orderCCDEvent\"\n [orderDetail] = \"orderDetail\"\n [LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\">\n ></ccpay-add-remission>\n</ng-container>\n<ng-container *ngIf=\"viewStatus === 'order-full-view'\">\n <ccpay-service-request\n [viewStatus] = \"viewStatus\"\n [orderRef] = \"orderRef\"\n [orderStatus] = \"orderStatus\"\n [orderCreated] = \"orderCreated\"\n [orderParty] = \"orderParty\"\n [orderCCDEvent] = \"orderCCDEvent\"\n [orderDetail] = \"orderDetail\"\n [LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\"\n [takePayment] = \"isTakePayment\"\n [ccdCaseNumber] = \"ccdCaseNumber\"\n [orderFeesTotal] = \"orderFeesTotal\"\n [orderTotalPayments] = \"orderTotalPayments\"\n [orderRemissionTotal] = \"orderRemissionTotal\"\n [isServiceRequest] = \"isServiceRequest\"\n (goToServiceRquestComponent) = \"goToServiceRequestPage()\"\n>\n</ccpay-service-request>\n\n</ng-container>\n\n<ng-container *ngIf=\"viewStatus === 'payment-failure'\">\n <div class=\"payment-failure-alignment\">\n <div class=\"govuk-breadcrumbs\">\n <ol class=\"govuk-breadcrumbs__list\">\n <li class=\"govuk-breadcrumbs__list-item\">\n <a href=\"javascript:void(0)\" (click)=\"goBackToPaymentView($event)\" class=\"govuk-back-link\">Back</a>\n </li>\n </ol>\n </div>\n <div class=\"govuk-grid-row\">\n <div class=\"column\">\n <h1 class=\"heading-large govuk-!-margin-top-0\">Failure event details</h1>\n </div>\n </div>\n <table>\n <tbody>\n\n <tr class=\"section\">\n <td class=\"bold\">Failure reference</td>\n <td>\t{{selectedPaymentsStatus.failure_reference}}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Failure reason</td>\n <td>\t{{selectedPaymentsStatus.failure_reason}}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Payment reference</td>\n <td>{{ selectedPaymentsStatus.payment_reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Payment amount</td>\n <td> \u00A3{{ paymentGroup?.payments[0]?.amount | number:'.2' }}</td>\n\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Disputed amount</td>\n <td>\t\u00A3{{selectedPaymentsStatus.disputed_amount | number:'.2'}}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Additional information</td>\n <td>\t{{selectedPaymentsStatus.additional_reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Failure type</td>\n <td>\t{{ selectedPaymentsStatus.failure_type }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Failure event date and time</td>\n <td> {{ selectedPaymentsStatus.failure_event_date_time | date:'dd MMM yyyy HH:mm:ss' }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"selectedPaymentsStatus.has_amount_debited\">\n <td class=\"bold\">Has disputed amount debited</td>\n <td>\t{{selectedPaymentsStatus.has_amount_debited}}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"selectedPaymentsStatus.representment_status\">\n <td class=\"bold\">Status following representation of payment</td>\n <td>\t{{(selectedPaymentsStatus.representment_status === 'Yes' || selectedPaymentsStatus.representment_status === 'yes') ? 'Success' : 'Failure'}}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"selectedPaymentsStatus.representment_date\">\n <td class=\"bold\">Date payment represented</td>\n <td>\t{{selectedPaymentsStatus.representment_date | date:'dd MMM yyyy HH:mm:ss'}}</td>\n </tr>\n </tbody>\n </table>\n\n <div>\n </div>\n </div>\n</ng-container>\n",
|
|
1537
|
-
styles: [".tb-col-w{width:330px}.tr-border{border-bottom:2px solid}.payment-view-alignment{margin-left:30px}.govuk-button{font-size:19px;float:left;margin-top:2em}.remission{margin-bottom:7em}.govuk-error-summary__title{font-size:24px!important}.govuk-table__cell,.govuk-table__header{padding:0;line-height:1.3;vertical-align:middle}.govuk-table__row{line-height:1.3}.govuk-table__cell:last-child{text-align:right}.text-transform::first-letter{text-transform:capitalize}.govuk-link{cursor:pointer}.mar-17{font-size:19px!important}.payment-failure-alignment{margin-bottom:50px}"]
|
|
1542
|
+
template: "\n<ng-container *ngIf=\"viewStatus === 'paymentview'\">\n<div class=\"govuk-width-container\">\n\n <div class=\"govuk-breadcrumbs\">\n <ol class=\"govuk-breadcrumbs__list\">\n <li class=\"govuk-breadcrumbs__list-item\">\n <a href=\"javascript:void(0)\" (click)=\"goToCaseTransationPage($event)\" class=\"govuk-back-link\">Back</a>\n </li>\n </ol>\n </div>\n\n <main class=\"govuk-main-wrapper govuk-!-padding-top-0\" id=\"main-content\" role=\"main\">\n\n <div *ngIf=\"errorMessage\">\n <div class=\"error-summary\" role=\"group\" aria-labelledby=\"failure-error-summary-heading\" tabindex=\"-1\">\n <h2 class=\"heading-medium error-summary-heading\" id=\"failure-error-summary-heading\">\n Payment details could not be retrieved\n </h2>\n <div class=\"govuk-error-summary__body\">\n {{ errorMessage }}\n </div>\n </div>\n </div>\n\n <div class=\"payment-view-alignment\" *ngIf=\"!errorMessage && paymentGroup?.payments[0]\">\n\n <input #myInput type='hidden' id='iFrameDrivenImageValue' value='PAYMENTDETAILS'>\n <div class=\"govuk-grid-row\">\n <div class=\"column\">\n <h1 class=\"heading-large govuk-!-margin-top-0\">Payment details</h1>\n </div>\n </div>\n <table>\n <tbody>\n\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Service request reference</td>\n <td class=\"tb-col-w\">{{ serviceReference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Payment reference</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Payment amount</td>\n <td class=\"tb-col-w\">\u00A3{{ paymentGroup?.payments[0]?.amount | number:'.2' }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0] && paymentGroup?.payments[0]?.document_control_number && !paymentGroup?.payments[0]?.external_reference\">\n <td class=\"bold tb-col-w\">Payment asset number(DCN)</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.document_control_number }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0] && paymentGroup?.payments[0]?.document_control_number && !paymentGroup?.payments[0]?.external_reference\">\n <td class=\"bold tb-col-w\">Banked date</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.banked_date | date:'dd MMM yyyy' }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0] && paymentGroup?.payments[0]?.external_reference\">\n <td class=\"bold tb-col-w\">GovPay Transaction ID</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.external_reference }}</td>\n </tr>\n <tr class=\"section\" >\n <td class=\"bold tb-col-w\">Payment method</td>\n <td class=\"tb-col-w text-transform\">{{ paymentGroup?.payments[0]?.method }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0]?.method === 'payment by account'\" >\n <td class=\"bold tb-col-w\">Type</td>\n <td class=\"tb-col-w\" *ngIf=\"paymentGroup?.payments[0]?.method !== 'card'\">Credit</td>\n <td class=\"tb-col-w\" *ngIf=\"paymentGroup?.payments[0]?.method === 'card'\">Card</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Channel</td>\n <td class=\"tb-col-w text-transform\">{{ paymentGroup?.payments[0]?.channel }}</td>\n </tr>\n <!-- <tr class=\"section\">\n <td class=\"bold tb-col-w\">Method</td>\n <td *ngIf=\"paymentGroup?.payments[0]?.method !== 'card'\">{{ paymentGroup?.payments[0]?.method }}</td>\n <td *ngIf=\"paymentGroup?.payments[0]?.method === 'card'\">CARD</td>\n </tr> -->\n <!-- <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0]?.channel !== 'telephony'\">\n <td class=\"bold tb-col-w\">Status</td>\n <td>{{ paymentGroup?.payments[0]?.status }}</td>\n </tr> -->\n <tr class=\"section\" *ngIf=\"paymentGroup?.payments[0]?.payment_allocation[0] !== undefined\">\n <td class=\"bold tb-col-w\">Allocaton status</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.payment_allocation[0]?.allocation_status }}</td>\n </tr>\n\n <tr *ngIf=\"paymentGroup?.payments[0].organisation_name\">\n <td class=\"bold tb-col-w\">PBA account name</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.organisation_name }}</td>\n </tr>\n\n <tr *ngIf=\"paymentGroup?.payments[0].account_number\">\n <td class=\"bold tb-col-w\">PBA number</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.account_number }}</td>\n </tr>\n\n <tr *ngIf=\"paymentGroup?.payments[0].customer_reference\">\n <td class=\"bold tb-col-w\">Customer internal reference</td>\n <td class=\"tb-col-w\">{{ paymentGroup?.payments[0]?.customer_reference }}</td>\n </tr>\n\n </tbody>\n </table>\n\n <div>\n <!-- Status histories -->\n <ccpay-payment-statuses *ngIf=\"isStatusAllocated\" [isTakePayment]=\"isTakePayment\"></ccpay-payment-statuses>\n </div>\n <div class=\"remission\">\n <button [disabled]=\"!chkIssueRefundBtnEnable(paymentGroup?.payments[0])\" (click)=\"issueRefund(paymentGroup)\" class=\"govuk-button govuk-button--secondary\">Issue refund</button>\n </div>\n<div *ngIf=\"ISPAYMENTSTATUSENABLED\">\n <div class=\"column\">\n <h2 class=\"heading-medium\">Disputed payment history</h2>\n </div>\n \n <div>\n <table>\n <thead>\n <tr>\n <th>Status</th>\n <th>Amount</th>\n <th>Date</th>\n <th>Payment reference</th>\n <th>Event</th>\n <th></th>\n </tr>\n </thead> \n <tbody *ngIf=\"!errorMsg && allPaymentsFailure.length > 0\">\n <tr *ngFor=\"let payment of allPaymentsFailure\">\n <td>{{ payment.status | capitalize }}</td>\n <td>\u00A3{{ payment.disputed_amount | number:'.2' }}</td>\n <td>{{(payment.representment_date ? payment.representment_date : payment.failure_event_date_time) | date:'dd MMM yyyy'}}</td>\n <td>{{ payment.payment_reference }}</td>\n <td >{{ payment.failure_type }}</td>\n <td>\n \n <a href=\"javascript:void(0)\" (click)=\"goToPaymentFailuePage(payment)\">Show detail</a>\n\n </td>\n </tr>\n </tbody>\n <tbody *ngIf=\"errorMsg || allPaymentsFailure.length === 0\">\n <tr>\n <td colspan=\"6\"> No disputed payment history available. </td>\n </tr>\n </tbody>\n </table>\n </div>\n <br/>\n <br/>\n </div>\n \n <div *ngIf=\"checkForFees(paymentGroup)\">\n <div *ngIf=\"paymentGroup.fees.length > 0\">\n <div class=\"column\">\n <br/>\n <br/>\n <h2 class=\"heading-large\">Fee and remission details</h2>\n\n </div>\n </div>\n\n <div *ngFor=\"let fee of paymentGroup.fees\">\n <table class=\"table\">\n <tbody>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Description</td>\n <td class=\"tb-col-w\">Application for {{ fee.description }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\">Fee code</td>\n <td class=\"tb-col-w\">{{ fee?.code }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold tb-col-w\" [ngClass]=\"{'tr-border': !fee.apportion_amount && !fee.remissions && !isTurnOff }\">Fee amount</td>\n <td [ngClass]=\"{'tr-border': !fee.apportion_amount && !fee.remissions && !isTurnOff}\">\u00A3{{ fee?.calculated_amount | number:'.2' }}</td>\n </tr>\n\n <tr *ngIf=\"fee.apportion_amount\">\n <td class=\"bold tb-col-w tr-border\" [ngClass]=\"{'tr-border': !fee.remissions}\">Allocated amount</td>\n <td [ngClass]=\"{'tr-border': !fee.remissions}\">\u00A3{{ fee?.apportion_amount | number:'.2' }}</td>\n </tr>\n\n </tbody>\n </table>\n <button [disabled]=\"!chkForAddRemission(fee.code)\" (click)=\"addRemission(fee)\" class=\"govuk-button govuk-button--secondary\"> Add remission</button>\n </div>\n\n <!-- remissions -->\n <div class=\"order-class\">\n <div class=\"column\">\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__header col-24 whitespace-inherit\" scope=\"col\">Help with fees or remission code</td>\n <td class=\"govuk-table__header col-27 whitespace-inherit\" scope=\"col\">Reference</td>\n <td class=\"govuk-table__header whitespace-inherit\" scope=\"col\">Fee</td>\n <td class=\"govuk-table__header whitespace-inherit\" scope=\"col\">Amount</td>\n <td class=\"govuk-table__header whitespace-inherit refundBtn\" scope=\"col\"></td>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\" *ngFor=\"let remission of paymentGroup.remissions\">\n <tr class=\"govuk-table__row\">\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.hwf_reference }}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.remission_reference }}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.fee_code }}</td>\n <td class=\"govuk-table__cell whitespace-inherit\">{{ remission?.hwf_amount | currency:'GBP':'symbol-narrow':'1.2-2'}}</td>\n <td class=\"govuk-table__cell refundBtn whitespace-inherit\" >\n <button [disabled]=\"!chkIsRefundRemissionBtnEnable()\" (click)=\"addRefundForRemission(paymentGroup.payments[0],remission,paymentGroup.fees)\" class=\"govuk-button govuk-button--secondary\"> Add refund</button>\n </td>\n </tr>\n </tbody>\n\n\n </table>\n </div></div>\n\n <div *ngIf=\"paymentGroup.remissions?.length === 0\">\n <span class=\"mar-17\" >No help with fees or remissions.</span>\n </div>\n\n </div>\n </div>\n </main>\n</div>\n\n</ng-container>\n<ng-container *ngIf=\"viewStatus === 'addremission' && feeId\">\n<ccpay-add-remission\n[isTurnOff]=\"isTurnOff\"\n[isStrategicFixEnable]=\"isStrategicFixEnable\"\n[viewCompStatus]= \"viewStatus\"\n[fee]=\"feeId\"\n[payment] = \"payment\"\n[orderStatus] =\"paymentGroup.payments[0].status\"\n[paidAmount]= \"paymentGroup.payments[0].amount\"\n[isRefundRemission]=\"isRefundRemission\"\n[caseType]=\"caseType\"\n[paymentGroupRef]=\"paymentGroup.payment_group_reference\"\n[isFromPaymentDetailPage] = \"true\"\n[ccdCaseNumber]=\"ccdCaseNumber\"\n[orderFeesTotal] = \"orderFeesTotal\"\n[orderTotalPayments] = \"orderTotalPayments\"\n[orderRemissionTotal] = \"orderRemissionTotal\"\n[orderRef] = \"orderRef\"\n[orderCreated] = \"orderCreated\"\n[orderParty] = \"orderParty\"\n[orderCCDEvent] = \"orderCCDEvent\"\n[orderDetail] = \"orderDetail\"\n[LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\"></ccpay-add-remission>\n</ng-container>\n\n<ng-container *ngIf=\"viewStatus === 'addrefundforremission' && payment\">\n\n<ccpay-add-remission\n[isTurnOff]=\"isTurnOff\"\n[isStrategicFixEnable]=\"isStrategicFixEnable\"\n[viewCompStatus]= \"viewStatus\"\n[payment]=\"payment\"\n[orderStatus] =\"orderStatus\"\n[paidAmount]= \"orderTotalPayments\"\n[isRefundRemission]=\"isRefundRemission\"\n[caseType]=\"caseType\"\n[feeamount]=\"remissionFeeAmt\"\n[remission] = \"remissions\"\n[isFromServiceRequestPage]=\"false\"\n[paymentGroupRef]=\"paymentGroup.payment_group_reference\"\n[ccdCaseNumber]=\"ccdCaseNumber\"\n[orderFeesTotal] = \"orderFeesTotal\"\n[orderTotalPayments] = \"orderTotalPayments\"\n[orderRemissionTotal] = \"orderRemissionTotal\"\n[orderRef] = \"orderRef\"\n[orderCreated] = \"orderCreated\"\n[orderParty] = \"orderParty\"\n[orderCCDEvent] = \"orderCCDEvent\"\n[orderDetail] = \"orderDetail\"\n[LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\"></ccpay-add-remission>\n</ng-container>\n\n<ng-container *ngIf=\"viewStatus === 'issuerefund'\">\n <ccpay-add-remission\n [isTurnOff]=\"isTurnOff\"\n [isStrategicFixEnable]=\"isStrategicFixEnable\"\n [payment] = 'paymentGroup.payments[0]'\n [viewCompStatus]= \"viewStatus\"\n [orderStatus] =\"paymentGroup.payments[0].status\"\n [paidAmount]= \"paymentGroup.payments[0].amount\"\n [isRefundRemission]=\"isRefundRemission\"\n [caseType]=\"caseType\"\n [isFromServiceRequestPage]=\"isFromServiceRequestPage\"\n [isFromPaymentDetailPage] = \"isFromPaymentDetailPage\"\n [paymentGroupRef]=\"paymentGroup.payment_group_reference\"\n [ccdCaseNumber]=\"ccdCaseNumber\"\n [orderFeesTotal] = \"orderFeesTotal\"\n [orderTotalPayments] = \"orderTotalPayments\"\n [orderRemissionTotal] = \"orderRemissionTotal\"\n [orderRef] = \"orderRef\"\n [orderCreated] = \"orderCreated\"\n [orderParty] = \"orderParty\"\n [orderCCDEvent] = \"orderCCDEvent\"\n [orderDetail] = \"orderDetail\"\n [LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\">\n ></ccpay-add-remission>\n</ng-container>\n<ng-container *ngIf=\"viewStatus === 'order-full-view'\">\n <ccpay-service-request\n [viewStatus] = \"viewStatus\"\n [orderRef] = \"orderRef\"\n [orderStatus] = \"orderStatus\"\n [orderCreated] = \"orderCreated\"\n [orderParty] = \"orderParty\"\n [orderCCDEvent] = \"orderCCDEvent\"\n [orderDetail] = \"orderDetail\"\n [LOGGEDINUSERROLES] = \"LOGGEDINUSERROLES\"\n [takePayment] = \"isTakePayment\"\n [ccdCaseNumber] = \"ccdCaseNumber\"\n [orderFeesTotal] = \"orderFeesTotal\"\n [orderTotalPayments] = \"orderTotalPayments\"\n [orderRemissionTotal] = \"orderRemissionTotal\"\n [isServiceRequest] = \"isServiceRequest\"\n (goToServiceRquestComponent) = \"goToServiceRequestPage()\"\n>\n</ccpay-service-request>\n\n</ng-container>\n\n<ng-container *ngIf=\"viewStatus === 'payment-failure'\">\n <div class=\"payment-failure-alignment\">\n <div class=\"govuk-breadcrumbs\">\n <ol class=\"govuk-breadcrumbs__list\">\n <li class=\"govuk-breadcrumbs__list-item\">\n <a href=\"javascript:void(0)\" (click)=\"goBackToPaymentView($event)\" class=\"govuk-back-link\">Back</a>\n </li>\n </ol>\n </div>\n <div class=\"govuk-grid-row\">\n <div class=\"column\">\n <h1 class=\"heading-large govuk-!-margin-top-0\">Failure event details</h1>\n </div>\n </div>\n <table>\n <tbody>\n\n <tr class=\"section\">\n <td class=\"bold\">Failure reference</td>\n <td>\t{{selectedPaymentsStatus.failure_reference}}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Failure reason</td>\n <td>\t{{selectedPaymentsStatus.failure_reason}}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Payment reference</td>\n <td>{{ selectedPaymentsStatus.payment_reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Payment amount</td>\n <td> \u00A3{{ paymentGroup?.payments[0]?.amount | number:'.2' }}</td>\n\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Disputed amount</td>\n <td>\t\u00A3{{selectedPaymentsStatus.disputed_amount | number:'.2'}}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Additional information</td>\n <td>\t{{selectedPaymentsStatus.additional_reference }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Failure type</td>\n <td>\t{{ selectedPaymentsStatus.failure_type }}</td>\n </tr>\n <tr class=\"section\">\n <td class=\"bold\">Failure event date and time</td>\n <td> {{ selectedPaymentsStatus.failure_event_date_time | date:'dd MMM yyyy HH:mm:ss' }}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"selectedPaymentsStatus.has_amount_debited\">\n <td class=\"bold\">Has disputed amount debited</td>\n <td>\t{{selectedPaymentsStatus.has_amount_debited}}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"selectedPaymentsStatus.representment_status\">\n <td class=\"bold\">Status following representation of payment</td>\n <td>\t{{(selectedPaymentsStatus.representment_status === 'Yes' || selectedPaymentsStatus.representment_status === 'yes') ? 'Success' : 'Failure'}}</td>\n </tr>\n <tr class=\"section\" *ngIf=\"selectedPaymentsStatus.representment_date\">\n <td class=\"bold\">Date payment represented</td>\n <td>\t{{selectedPaymentsStatus.representment_date | date:'dd MMM yyyy HH:mm:ss'}}</td>\n </tr>\n </tbody>\n </table>\n\n <div>\n </div>\n </div>\n</ng-container>\n",
|
|
1543
|
+
styles: [".tb-col-w{width:330px}.tr-border{border-bottom:2px solid}.payment-view-alignment{margin-left:30px}.govuk-button{font-size:19px;float:left;margin-top:2em}.remission{margin-bottom:7em}.govuk-error-summary__title{font-size:24px!important}.govuk-table__cell,.govuk-table__header{padding:0;line-height:1.3;vertical-align:middle}.govuk-table__row{line-height:1.3}.govuk-table__cell:last-child{text-align:right}.text-transform::first-letter{text-transform:capitalize}.govuk-link{cursor:pointer}.mar-17{font-size:19px!important}.payment-failure-alignment{margin-bottom:50px!important;margin-left:15px!important}"]
|
|
1538
1544
|
}] }
|
|
1539
1545
|
];
|
|
1540
1546
|
/** @nocollapse */
|
|
@@ -5274,7 +5280,7 @@ class AllocatePaymentsComponent {
|
|
|
5274
5280
|
amount: 0
|
|
5275
5281
|
};
|
|
5276
5282
|
this.siteID = null;
|
|
5277
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5283
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5278
5284
|
this.paymentGroups = [];
|
|
5279
5285
|
this.isMoreDetailsBoxHide = true;
|
|
5280
5286
|
this.isConfirmButtondisabled = false;
|
|
@@ -5394,7 +5400,7 @@ class AllocatePaymentsComponent {
|
|
|
5394
5400
|
* @return {?}
|
|
5395
5401
|
*/
|
|
5396
5402
|
paymentGroup => {
|
|
5397
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5403
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5398
5404
|
this.paymentGroup = paymentGroup;
|
|
5399
5405
|
this.saveAndContinue();
|
|
5400
5406
|
}), (/**
|
|
@@ -5402,7 +5408,7 @@ class AllocatePaymentsComponent {
|
|
|
5402
5408
|
* @return {?}
|
|
5403
5409
|
*/
|
|
5404
5410
|
(error) => {
|
|
5405
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
5411
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
5406
5412
|
}));
|
|
5407
5413
|
}
|
|
5408
5414
|
else {
|
|
@@ -5411,7 +5417,7 @@ class AllocatePaymentsComponent {
|
|
|
5411
5417
|
* @return {?}
|
|
5412
5418
|
*/
|
|
5413
5419
|
paymentGroups => {
|
|
5414
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5420
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5415
5421
|
this.paymentGroups = paymentGroups['payment_groups'].filter((/**
|
|
5416
5422
|
* @param {?} paymentGroup
|
|
5417
5423
|
* @return {?}
|
|
@@ -5437,7 +5443,7 @@ class AllocatePaymentsComponent {
|
|
|
5437
5443
|
* @return {?}
|
|
5438
5444
|
*/
|
|
5439
5445
|
(error) => {
|
|
5440
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
5446
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
5441
5447
|
}));
|
|
5442
5448
|
}
|
|
5443
5449
|
}
|
|
@@ -5589,7 +5595,7 @@ class AllocatePaymentsComponent {
|
|
|
5589
5595
|
* @return {?}
|
|
5590
5596
|
*/
|
|
5591
5597
|
res => {
|
|
5592
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5598
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5593
5599
|
/** @type {?} */
|
|
5594
5600
|
let response = JSON.parse(res);
|
|
5595
5601
|
if (response.success) {
|
|
@@ -5600,7 +5606,7 @@ class AllocatePaymentsComponent {
|
|
|
5600
5606
|
* @return {?}
|
|
5601
5607
|
*/
|
|
5602
5608
|
(error) => {
|
|
5603
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
5609
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
5604
5610
|
window.scrollTo(0, 0);
|
|
5605
5611
|
this.isConfirmButtondisabled = false;
|
|
5606
5612
|
}));
|
|
@@ -5611,7 +5617,7 @@ class AllocatePaymentsComponent {
|
|
|
5611
5617
|
* @return {?}
|
|
5612
5618
|
*/
|
|
5613
5619
|
res1 => {
|
|
5614
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5620
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5615
5621
|
/** @type {?} */
|
|
5616
5622
|
let response1 = JSON.parse(res1);
|
|
5617
5623
|
if (response1.success) {
|
|
@@ -5622,7 +5628,7 @@ class AllocatePaymentsComponent {
|
|
|
5622
5628
|
* @return {?}
|
|
5623
5629
|
*/
|
|
5624
5630
|
res2 => {
|
|
5625
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5631
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5626
5632
|
/** @type {?} */
|
|
5627
5633
|
let response2 = JSON.parse(res2);
|
|
5628
5634
|
/** @type {?} */
|
|
@@ -5633,7 +5639,7 @@ class AllocatePaymentsComponent {
|
|
|
5633
5639
|
* @return {?}
|
|
5634
5640
|
*/
|
|
5635
5641
|
res3 => {
|
|
5636
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5642
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5637
5643
|
/** @type {?} */
|
|
5638
5644
|
let response3 = JSON.parse(res3);
|
|
5639
5645
|
if (response3.success) {
|
|
@@ -5645,7 +5651,7 @@ class AllocatePaymentsComponent {
|
|
|
5645
5651
|
*/
|
|
5646
5652
|
(error) => {
|
|
5647
5653
|
this.bulkScaningPaymentService.patchBSChangeStatus(this.unAllocatedPayment.dcn_reference, 'COMPLETE').subscribe();
|
|
5648
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
5654
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
5649
5655
|
window.scrollTo(0, 0);
|
|
5650
5656
|
this.isConfirmButtondisabled = false;
|
|
5651
5657
|
}));
|
|
@@ -5656,7 +5662,7 @@ class AllocatePaymentsComponent {
|
|
|
5656
5662
|
*/
|
|
5657
5663
|
(error) => {
|
|
5658
5664
|
this.bulkScaningPaymentService.patchBSChangeStatus(this.unAllocatedPayment.dcn_reference, 'COMPLETE').subscribe();
|
|
5659
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
5665
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
5660
5666
|
window.scrollTo(0, 0);
|
|
5661
5667
|
this.isConfirmButtondisabled = false;
|
|
5662
5668
|
}));
|
|
@@ -5666,7 +5672,7 @@ class AllocatePaymentsComponent {
|
|
|
5666
5672
|
* @return {?}
|
|
5667
5673
|
*/
|
|
5668
5674
|
(error) => {
|
|
5669
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
5675
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
5670
5676
|
window.scrollTo(0, 0);
|
|
5671
5677
|
this.isConfirmButtondisabled = false;
|
|
5672
5678
|
}));
|
|
@@ -5718,7 +5724,7 @@ class AllocatePaymentsComponent {
|
|
|
5718
5724
|
* @return {?}
|
|
5719
5725
|
*/
|
|
5720
5726
|
unassignedPayments => {
|
|
5721
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
5727
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
5722
5728
|
this.unAllocatedPayment = unassignedPayments['data'].payments.filter((/**
|
|
5723
5729
|
* @param {?} payment
|
|
5724
5730
|
* @return {?}
|
|
@@ -5741,7 +5747,7 @@ class AllocatePaymentsComponent {
|
|
|
5741
5747
|
* @return {?}
|
|
5742
5748
|
*/
|
|
5743
5749
|
(error) => {
|
|
5744
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
5750
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
5745
5751
|
}));
|
|
5746
5752
|
}
|
|
5747
5753
|
/**
|
|
@@ -6859,6 +6865,7 @@ class XlFileService {
|
|
|
6859
6865
|
let worksheet;
|
|
6860
6866
|
/** @type {?} */
|
|
6861
6867
|
let workbook;
|
|
6868
|
+
console.log(excelFileName);
|
|
6862
6869
|
if (excelFileName.match('Data_Loss') !== null) {
|
|
6863
6870
|
worksheet = utils.json_to_sheet(json, { header: ['loss_resp', 'payment_asset_dcn', 'env_ref', 'env_item', 'resp_service_id', 'resp_service_name', 'date_banked', 'bgc_batch', 'payment_method', 'amount'] });
|
|
6864
6871
|
worksheet = this.setDataLossReportHeaders(worksheet);
|
|
@@ -6874,6 +6881,11 @@ class XlFileService {
|
|
|
6874
6881
|
worksheet = this.setProcessedUnallocatedReportHeaders(worksheet);
|
|
6875
6882
|
worksheet = this.autoFitColumns(worksheet, json);
|
|
6876
6883
|
}
|
|
6884
|
+
else if (excelFileName.match('Payment failure') !== null) {
|
|
6885
|
+
worksheet = utils.json_to_sheet(json, { header: ['payment_reference', 'ccd_reference', 'org_id', 'service_name', 'failure_reference', 'failure_reason', 'disputed_amount', 'event_name', 'event_date', 'representment_status', 'representment_date', 'refund_reference', 'refund_amount', 'refund_date'] });
|
|
6886
|
+
worksheet = this.setPaymentFailureReportHeaders(worksheet);
|
|
6887
|
+
worksheet = this.autoFitColumns(worksheet, json);
|
|
6888
|
+
}
|
|
6877
6889
|
else {
|
|
6878
6890
|
worksheet = utils.json_to_sheet(json, { header: ['resp_service_id', 'resp_service_name', 'surplus_shortfall', 'balance', 'payment_amount', 'ccd_case_reference', 'ccd_exception_reference', 'processed_date', 'reason', 'explanation', 'user_name'] });
|
|
6879
6891
|
worksheet = this.setShortFallReportHeaders(worksheet);
|
|
@@ -6978,6 +6990,28 @@ class XlFileService {
|
|
|
6978
6990
|
worksheet.N1.v = "Amount";
|
|
6979
6991
|
return worksheet;
|
|
6980
6992
|
}
|
|
6993
|
+
/**
|
|
6994
|
+
* @private
|
|
6995
|
+
* @param {?} worksheet
|
|
6996
|
+
* @return {?}
|
|
6997
|
+
*/
|
|
6998
|
+
setPaymentFailureReportHeaders(worksheet) {
|
|
6999
|
+
worksheet.A1.v = "Payment reference";
|
|
7000
|
+
worksheet.B1.v = "CCD reference";
|
|
7001
|
+
worksheet.C1.v = "OrgID";
|
|
7002
|
+
worksheet.D1.v = "Service name";
|
|
7003
|
+
worksheet.E1.v = "Failure reference";
|
|
7004
|
+
worksheet.F1.v = "Failure reason";
|
|
7005
|
+
worksheet.G1.v = "Disputed amount";
|
|
7006
|
+
worksheet.H1.v = "Event name";
|
|
7007
|
+
worksheet.I1.v = "Event date";
|
|
7008
|
+
worksheet.J1.v = "Representment status";
|
|
7009
|
+
worksheet.K1.v = "Representment date";
|
|
7010
|
+
worksheet.L1.v = "Refund reference";
|
|
7011
|
+
worksheet.M1.v = "Refund amount";
|
|
7012
|
+
worksheet.N1.v = "Refund date";
|
|
7013
|
+
return worksheet;
|
|
7014
|
+
}
|
|
6981
7015
|
/**
|
|
6982
7016
|
* @private
|
|
6983
7017
|
* @param {?} worksheet
|
|
@@ -7035,10 +7069,13 @@ class ReportsComponent {
|
|
|
7035
7069
|
this.formBuilder = formBuilder;
|
|
7036
7070
|
this.bulkScaningPaymentService = bulkScaningPaymentService;
|
|
7037
7071
|
this.paymentViewService = paymentViewService;
|
|
7072
|
+
this.fmt = 'dd/MM/yyyy';
|
|
7073
|
+
this.loc = 'en-US';
|
|
7038
7074
|
this.isDownLoadButtondisabled = false;
|
|
7039
7075
|
this.isStartDateLesthanEndDate = false;
|
|
7076
|
+
this.isDateBetwnMonth = false;
|
|
7040
7077
|
this.isDateRangeBetnWeek = false;
|
|
7041
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
7078
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
7042
7079
|
this.paymentGroups = [];
|
|
7043
7080
|
}
|
|
7044
7081
|
/**
|
|
@@ -7070,16 +7107,26 @@ class ReportsComponent {
|
|
|
7070
7107
|
const selectedEndDate = this.tranformDate(this.reportsForm.get('endDate').value);
|
|
7071
7108
|
/** @type {?} */
|
|
7072
7109
|
const isDateRangeMoreThanWeek = ((/** @type {?} */ (new Date(selectedStartDate))) - (/** @type {?} */ (new Date(selectedEndDate)))) / (1000 * 3600 * -24) > 7;
|
|
7110
|
+
/** @type {?} */
|
|
7111
|
+
const isDateRangeMoreThanMonth = ((/** @type {?} */ (new Date(selectedStartDate))) - (/** @type {?} */ (new Date(selectedEndDate)))) / (1000 * 3600 * -24) > 30;
|
|
7073
7112
|
if (new Date(selectedStartDate) > new Date(selectedEndDate) && selectedEndDate !== '') {
|
|
7074
7113
|
this.reportsForm.get('startDate').setValue('');
|
|
7075
7114
|
this.isDateRangeBetnWeek = false;
|
|
7115
|
+
this.isDateBetwnMonth = false;
|
|
7076
7116
|
this.isStartDateLesthanEndDate = true;
|
|
7077
7117
|
}
|
|
7078
7118
|
else if (reportName && reportName === 'SURPLUS_AND_SHORTFALL' && isDateRangeMoreThanWeek) {
|
|
7079
7119
|
this.isDateRangeBetnWeek = true;
|
|
7120
|
+
this.isDateBetwnMonth = false;
|
|
7121
|
+
this.isStartDateLesthanEndDate = false;
|
|
7122
|
+
}
|
|
7123
|
+
else if (reportName && reportName === 'PAYMENT_FAILURE_EVENT' && isDateRangeMoreThanMonth) {
|
|
7124
|
+
this.isDateRangeBetnWeek = false;
|
|
7125
|
+
this.isDateBetwnMonth = true;
|
|
7080
7126
|
this.isStartDateLesthanEndDate = false;
|
|
7081
7127
|
}
|
|
7082
7128
|
else {
|
|
7129
|
+
this.isDateBetwnMonth = false;
|
|
7083
7130
|
this.isDateRangeBetnWeek = false;
|
|
7084
7131
|
this.isStartDateLesthanEndDate = false;
|
|
7085
7132
|
}
|
|
@@ -7119,7 +7166,7 @@ class ReportsComponent {
|
|
|
7119
7166
|
* @return {?}
|
|
7120
7167
|
*/
|
|
7121
7168
|
response => {
|
|
7122
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
7169
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
7123
7170
|
/** @type {?} */
|
|
7124
7171
|
const result = JSON.parse(response);
|
|
7125
7172
|
/** @type {?} */
|
|
@@ -7160,15 +7207,64 @@ class ReportsComponent {
|
|
|
7160
7207
|
*/
|
|
7161
7208
|
(error) => {
|
|
7162
7209
|
this.isDownLoadButtondisabled = false;
|
|
7163
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
7210
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
7211
|
+
}));
|
|
7212
|
+
}
|
|
7213
|
+
else if (selectedReportName === 'PAYMENT_FAILURE_EVENT') {
|
|
7214
|
+
this.paymentViewService.downloadFailureReport(selectedStartDate, selectedEndDate).subscribe((/**
|
|
7215
|
+
* @param {?} response
|
|
7216
|
+
* @return {?}
|
|
7217
|
+
*/
|
|
7218
|
+
response => {
|
|
7219
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
7220
|
+
/** @type {?} */
|
|
7221
|
+
const result = { data: JSON.parse(response)['payment_failure_report_list'] };
|
|
7222
|
+
/** @type {?} */
|
|
7223
|
+
let res = { data: this.applyDateFormat(result) };
|
|
7224
|
+
if (result['data'].length > 0) {
|
|
7225
|
+
for (var i = 0; i < res['data'].length; i++) {
|
|
7226
|
+
if (res['data'][i]["disputed_amount"] !== undefined) {
|
|
7227
|
+
res['data'][i]['disputed_amount'] = this.convertToFloatValue(res['data'][i]["disputed_amount"]);
|
|
7228
|
+
}
|
|
7229
|
+
if (res['data'][i]["representment_status"] !== undefined) {
|
|
7230
|
+
res['data'][i]['representment_status'] = res['data'][i]["representment_status"].toLowerCase() === 'yes' ? 'Success' : 'Failure';
|
|
7231
|
+
}
|
|
7232
|
+
if (res['data'][i]['representment_status'] === undefined) {
|
|
7233
|
+
res['data'][i]['representment_status'] = 'No representment received';
|
|
7234
|
+
}
|
|
7235
|
+
if (res['data'][i]['representment_date'] === undefined) {
|
|
7236
|
+
res['data'][i]['representment_date'] = 'N/A';
|
|
7237
|
+
}
|
|
7238
|
+
if (res['data'][i]['refund_reference'] === undefined) {
|
|
7239
|
+
res['data'][i]['refund_reference'] = 'No refund available';
|
|
7240
|
+
}
|
|
7241
|
+
if (res['data'][i]['refund_amount'] === undefined) {
|
|
7242
|
+
res['data'][i]['refund_amount'] = 'N/A';
|
|
7243
|
+
}
|
|
7244
|
+
if (res['data'][i]['refund_date'] === undefined) {
|
|
7245
|
+
res['data'][i]['refund_date'] = 'N/A';
|
|
7246
|
+
}
|
|
7247
|
+
}
|
|
7248
|
+
}
|
|
7249
|
+
this.isDownLoadButtondisabled = false;
|
|
7250
|
+
this.xlFileService.exportAsExcelFile(res['data'], this.getFileName(this.reportsForm.get('selectedreport').value, selectedStartDate, selectedEndDate));
|
|
7251
|
+
}), (/**
|
|
7252
|
+
* @param {?} error
|
|
7253
|
+
* @return {?}
|
|
7254
|
+
*/
|
|
7255
|
+
(error) => {
|
|
7256
|
+
this.isDownLoadButtondisabled = false;
|
|
7257
|
+
/** @type {?} */
|
|
7258
|
+
const errorContent = error.replace(/[^a-zA-Z ]/g, '').trim();
|
|
7259
|
+
/** @type {?} */
|
|
7260
|
+
const statusCode = error.replace(/[^a-zA-Z0-9 ]/g, '').trim().split(' ')[0];
|
|
7261
|
+
if (statusCode === '404') {
|
|
7262
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, true, errorContent);
|
|
7263
|
+
}
|
|
7264
|
+
else {
|
|
7265
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
7266
|
+
}
|
|
7164
7267
|
}));
|
|
7165
|
-
// }else if(selectedReportName === 'PAYMENT_FAILURE_EVENT') {
|
|
7166
|
-
// this.paymentViewService.downloadFailureReport(selectedStartDate,selectedEndDate).subscribe(
|
|
7167
|
-
// response => {
|
|
7168
|
-
// },
|
|
7169
|
-
// (error: any) => {
|
|
7170
|
-
// })
|
|
7171
|
-
// }
|
|
7172
7268
|
}
|
|
7173
7269
|
else {
|
|
7174
7270
|
this.bulkScaningPaymentService.downloadSelectedReport(selectedReportName, selectedStartDate, selectedEndDate).subscribe((/**
|
|
@@ -7176,7 +7272,7 @@ class ReportsComponent {
|
|
|
7176
7272
|
* @return {?}
|
|
7177
7273
|
*/
|
|
7178
7274
|
response => {
|
|
7179
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false);
|
|
7275
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(false, false, '');
|
|
7180
7276
|
/** @type {?} */
|
|
7181
7277
|
const result = JSON.parse(response);
|
|
7182
7278
|
/** @type {?} */
|
|
@@ -7206,7 +7302,7 @@ class ReportsComponent {
|
|
|
7206
7302
|
*/
|
|
7207
7303
|
(error) => {
|
|
7208
7304
|
this.isDownLoadButtondisabled = false;
|
|
7209
|
-
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true);
|
|
7305
|
+
this.errorMessage = this.errorHandlerService.getServerErrorMessage(true, false, '');
|
|
7210
7306
|
}));
|
|
7211
7307
|
}
|
|
7212
7308
|
}
|
|
@@ -7294,21 +7390,46 @@ class ReportsComponent {
|
|
|
7294
7390
|
* @return {?}
|
|
7295
7391
|
*/
|
|
7296
7392
|
applyDateFormat(res) {
|
|
7297
|
-
/** @type {?} */
|
|
7298
|
-
const fmt = 'dd/MM/yyyy';
|
|
7299
|
-
/** @type {?} */
|
|
7300
|
-
const loc = 'en-US';
|
|
7301
7393
|
return res['data'].map((/**
|
|
7302
7394
|
* @param {?} value
|
|
7303
7395
|
* @return {?}
|
|
7304
7396
|
*/
|
|
7305
7397
|
value => {
|
|
7306
7398
|
if (value['date_banked']) {
|
|
7307
|
-
value['date_banked'] = formatDate(value['date_banked'], fmt, loc);
|
|
7399
|
+
value['date_banked'] = formatDate(value['date_banked'], this.fmt, this.loc);
|
|
7400
|
+
}
|
|
7401
|
+
if (value['event_date'] && value['event_date'].indexOf(',') === -1) {
|
|
7402
|
+
value['event_date'] = formatDate(value['event_date'], this.fmt, this.loc);
|
|
7403
|
+
}
|
|
7404
|
+
else if (value['event_date'] && value['event_date'].indexOf(',') !== -1) {
|
|
7405
|
+
value['event_date'] = this.multiDateFormater(value['event_date']);
|
|
7406
|
+
}
|
|
7407
|
+
if (value['representment_date'] && value['representment_date'].indexOf(',') === -1) {
|
|
7408
|
+
value['representment_date'] = formatDate(value['representment_date'], this.fmt, this.loc);
|
|
7409
|
+
}
|
|
7410
|
+
else if (value['representment_date'] && value['representment_date'].indexOf(',') !== -1) {
|
|
7411
|
+
value['representment_date'] = this.multiDateFormater(value['representment_date']);
|
|
7412
|
+
}
|
|
7413
|
+
if (value['refund_date'] && value['refund_date'].indexOf(',') === -1) {
|
|
7414
|
+
value['refund_date'] = formatDate(value['refund_date'], this.fmt, this.loc);
|
|
7415
|
+
}
|
|
7416
|
+
else if (value['refund_date'] && value['refund_date'].indexOf(',') !== -1) {
|
|
7417
|
+
value['refund_date'] = this.multiDateFormater(value['refund_date']);
|
|
7308
7418
|
}
|
|
7309
7419
|
return value;
|
|
7310
7420
|
}));
|
|
7311
7421
|
}
|
|
7422
|
+
/**
|
|
7423
|
+
* @param {?} dateStr
|
|
7424
|
+
* @return {?}
|
|
7425
|
+
*/
|
|
7426
|
+
multiDateFormater(dateStr) {
|
|
7427
|
+
return dateStr.split(',').map((/**
|
|
7428
|
+
* @param {?} date
|
|
7429
|
+
* @return {?}
|
|
7430
|
+
*/
|
|
7431
|
+
(date) => formatDate(date, this.fmt, this.loc))).join(',');
|
|
7432
|
+
}
|
|
7312
7433
|
/**
|
|
7313
7434
|
* @param {?} amt
|
|
7314
7435
|
* @return {?}
|
|
@@ -7320,7 +7441,7 @@ class ReportsComponent {
|
|
|
7320
7441
|
ReportsComponent.decorators = [
|
|
7321
7442
|
{ type: Component, args: [{
|
|
7322
7443
|
selector: 'ccpay-reports',
|
|
7323
|
-
template: "<div class=\"header\">\n <input #myInput type='hidden' id='iFrameDrivenImageValue' value='REPORTS'>\n <ccpay-error-banner *ngIf=\"errorMessage.showError\" [errorMessage]=\"errorMessage\"></ccpay-error-banner>\n <legend class=\"govuk-fieldset__legend--xl\">\n <h1 class=\"govuk-fieldset__heading\"> Choose the report type and date range</h1>\n </legend>\n</div>\n<form [formGroup]=\"reportsForm\">\n <div class=\"govuk-form-group\">\n <div class=\"govuk-radios govuk-radios--conditional\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input \n required\n id=\"DataLoss\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n (click)=\"validateDates('DATA_LOSS')\"\n name=\"selectedreport\"\n type=\"radio\"\n value=\"DATA_LOSS\" \n data-aria-controls=\"DataLoss\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"DataLoss\">Data loss</label>\n <span class=\"form-hint\">Missing transactions where data has been received from only either of Exela or Bulk scan</span>\n </div>\n\n <div class=\"govuk-radios__item\">\n <input \n id=\"UnprocessedTransactions\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n (click)=\"validateDates('UNPROCESSED')\"\n name=\"selectedreport\"\n type=\"radio\"\n value=\"UNPROCESSED\" \n data-aria-controls=\"UnprocessedTransactions\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"UnprocessedTransactions\">Unprocessed transactions</label>\n <span class=\"form-hint\">Transaction records that are still unprocessed by staff.</span>\n </div>\n\n <div class=\"govuk-radios__item\">\n <input \n id=\"ProcessedUnallocated\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n name=\"selectedreport\"\n (click)=\"validateDates('PROCESSED_UNALLOCATED')\"\n type=\"radio\"\n value=\"PROCESSED_UNALLOCATED\" \n data-aria-controls=\"ProcessedUnallocated\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"ProcessedUnallocated\">Processed unallocated</label>\n <span class=\"form-hint\">Payments that are marked as \u2018Unidentified\u2019 or \u2018Transferred\u2019 (Unsolicited requests)</span>\n </div>\n\n <div class=\"govuk-radios__item\">\n <input \n id=\"ShortfallsandSurplus\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n name=\"selectedreport\"\n (click)=\"validateDates('SURPLUS_AND_SHORTFALL')\"\n type=\"radio\"\n value=\"SURPLUS_AND_SHORTFALL\" \n data-aria-controls=\"ShortfallsandSurplus\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"ShortfallsandSurplus\">Under payment and Over payment</label>\n <span class=\"form-hint\">Requests where balances are marked as Under payment/Over payment further case management.\n E.g: Refund approval, Customer contact</span>\n </div>\n
|
|
7444
|
+
template: "<div class=\"header\">\n <input #myInput type='hidden' id='iFrameDrivenImageValue' value='REPORTS'>\n <ccpay-error-banner *ngIf=\"errorMessage.showError\" [errorMessage]=\"errorMessage\"></ccpay-error-banner>\n <legend class=\"govuk-fieldset__legend--xl\">\n <h1 class=\"govuk-fieldset__heading\"> Choose the report type and date range</h1>\n </legend>\n</div>\n<form [formGroup]=\"reportsForm\">\n <div class=\"govuk-form-group\">\n <div class=\"govuk-radios govuk-radios--conditional\" data-module=\"govuk-radios\">\n <div class=\"govuk-radios__item\">\n <input \n required\n id=\"DataLoss\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n (click)=\"validateDates('DATA_LOSS')\"\n name=\"selectedreport\"\n type=\"radio\"\n value=\"DATA_LOSS\" \n data-aria-controls=\"DataLoss\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"DataLoss\">Data loss</label>\n <span class=\"form-hint\">Missing transactions where data has been received from only either of Exela or Bulk scan</span>\n </div>\n\n <div class=\"govuk-radios__item\">\n <input \n id=\"UnprocessedTransactions\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n (click)=\"validateDates('UNPROCESSED')\"\n name=\"selectedreport\"\n type=\"radio\"\n value=\"UNPROCESSED\" \n data-aria-controls=\"UnprocessedTransactions\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"UnprocessedTransactions\">Unprocessed transactions</label>\n <span class=\"form-hint\">Transaction records that are still unprocessed by staff.</span>\n </div>\n\n <div class=\"govuk-radios__item\">\n <input \n id=\"ProcessedUnallocated\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n name=\"selectedreport\"\n (click)=\"validateDates('PROCESSED_UNALLOCATED')\"\n type=\"radio\"\n value=\"PROCESSED_UNALLOCATED\" \n data-aria-controls=\"ProcessedUnallocated\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"ProcessedUnallocated\">Processed unallocated</label>\n <span class=\"form-hint\">Payments that are marked as \u2018Unidentified\u2019 or \u2018Transferred\u2019 (Unsolicited requests)</span>\n </div>\n\n <div class=\"govuk-radios__item\">\n <input \n id=\"ShortfallsandSurplus\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n name=\"selectedreport\"\n (click)=\"validateDates('SURPLUS_AND_SHORTFALL')\"\n type=\"radio\"\n value=\"SURPLUS_AND_SHORTFALL\" \n data-aria-controls=\"ShortfallsandSurplus\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"ShortfallsandSurplus\">Under payment and Over payment</label>\n <span class=\"form-hint\">Requests where balances are marked as Under payment/Over payment further case management.\n E.g: Refund approval, Customer contact</span>\n </div>\n <div class=\"govuk-radios__item\" *ngIf=\"ISPAYMENTSTATUSENABLED\">\n <input \n id=\"PaymentFailureEvent\"\n class=\"govuk-radios__input\"\n formControlName=\"selectedreport\"\n name=\"selectedreport\"\n (click)=\"validateDates('PAYMENT_FAILURE_EVENT')\"\n type=\"radio\"\n value=\"PAYMENT_FAILURE_EVENT\" \n data-aria-controls=\"PaymentFailureEvent\"/>\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"PaymentFailureEvent\">Payment failure event</label>\n <span class=\"form-hint\">Failed payment transaction details</span>\n </div>\n </div>\n </div>\n <div class=\"govuk-form-group\">\n <div class=\"datefrom\">\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"date-from\">Date from</label>\n <input (change)=\"getSelectedFromDate()\" [max]=\"getToday()\" class=\"form-control\" id=\"date-from\" name=\"date-from\" type=\"date\" formControlName=\"startDate\" required/>\n </div>\n\n <div class=\"dateto\">\n <label class=\"govuk-label govuk-radios__label govuk-label--m\" for=\"date-to\">Date to</label>\n <input (change)=\"getSelectedFromDate()\" [max]=\"getToday()\" class=\"form-control\" id=\"date-to\" name=\"search\" type=\"date\" formControlName=\"endDate\" required/>\n </div>\n </div>\n <p class=\"inline-error-message\" *ngIf=\"isStartDateLesthanEndDate || isDateRangeBetnWeek || isDateBetwnMonth\">\n <span *ngIf=\"isStartDateLesthanEndDate\">Please select 'Date From' less than or equal to 'Date To'</span>\n <span *ngIf=\"isDateRangeBetnWeek\"> Please select the date range between 7 days</span>\n <span *ngIf=\"isDateBetwnMonth\"> Please select the date range between 30 days</span>\n </p>\n <div class=\"btnsubmit\">\n <button type=\"submit\" (click)=\"downloadReport()\" class=\"button\" [disabled]=\"!reportsForm.valid || isDownLoadButtondisabled || isStartDateLesthanEndDate || isDateRangeBetnWeek\">Download report</button>\n </div>\n </form>\n \n",
|
|
7324
7445
|
styles: [".govuk-radios__input:focus+.govuk-radios__label::before{border-width:4px;box-shadow:0 0 0 4px #ffaf00}.datefrom{width:50%;float:left}.dateto{width:50%;float:right}.govuk-label--m{font-size:large}.form-hint{padding-left:.7em}.header{margin-top:10px;margin-bottom:15px}.btnsubmit{margin-bottom:30px}.inline-error-message{color:#a71414;font-weight:700;margin-top:10px}"]
|
|
7325
7446
|
}] }
|
|
7326
7447
|
];
|
|
@@ -7332,6 +7453,9 @@ ReportsComponent.ctorParameters = () => [
|
|
|
7332
7453
|
{ type: BulkScaningPaymentService },
|
|
7333
7454
|
{ type: PaymentViewService }
|
|
7334
7455
|
];
|
|
7456
|
+
ReportsComponent.propDecorators = {
|
|
7457
|
+
ISPAYMENTSTATUSENABLED: [{ type: Input }]
|
|
7458
|
+
};
|
|
7335
7459
|
|
|
7336
7460
|
/**
|
|
7337
7461
|
* @fileoverview added by tsickle
|