@sachin9822/reports-lib 0.0.211 → 0.0.212

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.
Files changed (211) hide show
  1. package/karma.conf.js +44 -0
  2. package/ng-package.json +17 -0
  3. package/package.json +16 -31
  4. package/src/assets/images/BreadcrumbArrow.png +0 -0
  5. package/src/lib/assets/images/Search.svg +10 -0
  6. package/src/lib/assets/images/XMLogo.png +0 -0
  7. package/src/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.html +27 -0
  8. package/src/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.scss +46 -0
  9. package/src/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.spec.ts +23 -0
  10. package/src/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.ts +292 -0
  11. package/src/lib/components/accounting-report/accounting-report.component.html +64 -0
  12. package/src/lib/components/accounting-report/accounting-report.component.scss +24 -0
  13. package/src/lib/components/accounting-report/accounting-report.component.spec.ts +23 -0
  14. package/src/lib/components/accounting-report/accounting-report.component.ts +738 -0
  15. package/src/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.html +46 -0
  16. package/src/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.scss +2 -0
  17. package/src/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.spec.ts +23 -0
  18. package/src/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.ts +247 -0
  19. package/src/lib/components/branch-activity-send-report/branch-activity-send-report.component.html +46 -0
  20. package/src/lib/components/branch-activity-send-report/branch-activity-send-report.component.scss +3 -0
  21. package/src/lib/components/branch-activity-send-report/branch-activity-send-report.component.spec.ts +23 -0
  22. package/src/lib/components/branch-activity-send-report/branch-activity-send-report.component.ts +276 -0
  23. package/src/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.html +51 -0
  24. package/src/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.scss +7 -0
  25. package/src/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.spec.ts +23 -0
  26. package/src/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.ts +840 -0
  27. package/src/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.html +68 -0
  28. package/src/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.scss +65 -0
  29. package/src/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.spec.ts +23 -0
  30. package/src/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.ts +290 -0
  31. package/src/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.html +25 -0
  32. package/src/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.scss +1 -0
  33. package/src/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.spec.ts +23 -0
  34. package/src/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.ts +213 -0
  35. package/src/lib/components/funding-report/funding-report.component.html +49 -0
  36. package/src/lib/components/funding-report/funding-report.component.scss +1 -0
  37. package/src/lib/components/funding-report/funding-report.component.spec.ts +23 -0
  38. package/src/lib/components/funding-report/funding-report.component.ts +221 -0
  39. package/src/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.html +26 -0
  40. package/src/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.scss +1 -0
  41. package/src/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.spec.ts +23 -0
  42. package/src/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.ts +267 -0
  43. package/src/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.html +95 -0
  44. package/src/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.scss +54 -0
  45. package/src/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.spec.ts +23 -0
  46. package/src/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.ts +904 -0
  47. package/src/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.html +49 -0
  48. package/src/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.scss +2 -0
  49. package/src/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.spec.ts +32 -0
  50. package/src/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.ts +304 -0
  51. package/src/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.html +46 -0
  52. package/src/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.scss +7 -0
  53. package/src/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.ts +343 -0
  54. package/src/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.html +25 -0
  55. package/src/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.scss +23 -0
  56. package/src/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.spec.ts +23 -0
  57. package/src/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.ts +745 -0
  58. package/src/lib/models/acc-gl-details-enquiry-report/accgl-details-enquiry-reportmodel.ts +10 -0
  59. package/src/lib/models/acc-gl-details-enquiry-report/journal-voucher-entry-model.ts +20 -0
  60. package/src/lib/models/accounting-report/accounting-report-branch-group.ts +7 -0
  61. package/src/lib/models/accounting-report/accounting-report-entry-model.ts +25 -0
  62. package/src/lib/models/accounting-report/accounting-report-model.ts +7 -0
  63. package/{lib/models/accounting-report/accounting-report-sub-group.d.ts → src/lib/models/accounting-report/accounting-report-sub-group.ts} +3 -2
  64. package/{lib/models/app-config.model.d.ts → src/lib/models/app-config.model.ts} +8 -7
  65. package/src/lib/models/branch-activity-receive-report/branch-activity-receive.model.ts +18 -0
  66. package/src/lib/models/branch-activity-report/branch-activity-send-report-request-domain-model.ts +16 -0
  67. package/src/lib/models/branch-activity-report/branch-activity-send-report.ts +26 -0
  68. package/src/lib/models/cancellation-transaction-report/cancellation-transaction.model.ts +65 -0
  69. package/src/lib/models/component-loading-states.ts +5 -0
  70. package/src/lib/models/credit-limit-status-enquiry-report/credit-limit-status-enquiry.model.ts +28 -0
  71. package/{lib/models/revenue-per-transaction-report/revenue-per-transaction.model.d.ts → src/lib/models/revenue-per-transaction-report/revenue-per-transaction.model.ts} +1 -1
  72. package/src/lib/models/statement-of-account-report/statement-of-accounts.model.ts +21 -0
  73. package/src/lib/models/transaction-enquiry-report/transaction-enquiry.model.ts +127 -0
  74. package/src/lib/models/transaction-monitoring-report/transaction-monitoring-report-request-domain-model.ts +16 -0
  75. package/src/lib/models/transaction-monitoring-report/transaction-monitoring-report.ts +29 -0
  76. package/src/lib/models/trial-balance-accounts-report/trial-balance-accounts.models.ts +46 -0
  77. package/src/lib/reports-lib-routing.module.ts +20 -0
  78. package/src/lib/reports-lib.component.spec.ts +23 -0
  79. package/src/lib/reports-lib.component.ts +20 -0
  80. package/src/lib/reports-lib.module.ts +102 -0
  81. package/src/lib/reports-lib.service.spec.ts +16 -0
  82. package/src/lib/reports-lib.service.ts +9 -0
  83. package/src/lib/services/config.service.ts +43 -0
  84. package/src/lib/services/report.service.spec.ts +16 -0
  85. package/src/lib/services/report.service.ts +463 -0
  86. package/src/lib/shared/export-generic.service.ts +557 -0
  87. package/src/lib/shared/export.service.spec.ts +16 -0
  88. package/src/lib/shared/export.service.ts +457 -0
  89. package/src/lib/shared/loader/loader.component.html +8 -0
  90. package/src/lib/shared/loader/loader.component.scss +52 -0
  91. package/src/lib/shared/loader/loader.component.ts +10 -0
  92. package/src/lib/shared/metadata/metadata.component.html +42 -0
  93. package/src/lib/shared/metadata/metadata.component.scss +95 -0
  94. package/src/lib/shared/metadata/metadata.component.spec.ts +23 -0
  95. package/src/lib/shared/metadata/metadata.component.ts +38 -0
  96. package/src/lib/shared/page-size-selector/page-size-selector.component.html +7 -0
  97. package/src/lib/shared/page-size-selector/page-size-selector.component.scss +42 -0
  98. package/src/lib/shared/page-size-selector/page-size-selector.component.spec.ts +23 -0
  99. package/src/lib/shared/page-size-selector/page-size-selector.component.ts +38 -0
  100. package/src/lib/shared/search-filter/search-filter.component.html +601 -0
  101. package/src/lib/shared/search-filter/search-filter.component.scss +203 -0
  102. package/src/lib/shared/search-filter/search-filter.component.spec.ts +23 -0
  103. package/src/lib/shared/search-filter/search-filter.component.ts +2387 -0
  104. package/src/lib/shared/shared.module.ts +13 -0
  105. package/{public-api.d.ts → src/public-api.ts} +17 -7
  106. package/src/styles/ag-grid-report-style.scss +71 -0
  107. package/src/styles/common-ag-grid-style.scss +146 -0
  108. package/src/styles/common-report-style.scss +395 -0
  109. package/src/styles/common-style.scss +615 -0
  110. package/src/test.ts +27 -0
  111. package/tsconfig.lib.json +15 -0
  112. package/tsconfig.lib.prod.json +10 -0
  113. package/tsconfig.spec.json +17 -0
  114. package/esm2020/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.mjs +0 -240
  115. package/esm2020/lib/components/accounting-report/accounting-report.component.mjs +0 -596
  116. package/esm2020/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.mjs +0 -218
  117. package/esm2020/lib/components/branch-activity-send-report/branch-activity-send-report.component.mjs +0 -243
  118. package/esm2020/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.mjs +0 -700
  119. package/esm2020/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.mjs +0 -255
  120. package/esm2020/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.mjs +0 -192
  121. package/esm2020/lib/components/funding-report/funding-report.component.mjs +0 -198
  122. package/esm2020/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.mjs +0 -244
  123. package/esm2020/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.mjs +0 -776
  124. package/esm2020/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.mjs +0 -266
  125. package/esm2020/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.mjs +0 -311
  126. package/esm2020/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.mjs +0 -631
  127. package/esm2020/lib/models/acc-gl-details-enquiry-report/accgl-details-enquiry-reportmodel.mjs +0 -2
  128. package/esm2020/lib/models/acc-gl-details-enquiry-report/journal-voucher-entry-model.mjs +0 -2
  129. package/esm2020/lib/models/accounting-report/accounting-report-branch-group.mjs +0 -2
  130. package/esm2020/lib/models/accounting-report/accounting-report-entry-model.mjs +0 -2
  131. package/esm2020/lib/models/accounting-report/accounting-report-model.mjs +0 -2
  132. package/esm2020/lib/models/accounting-report/accounting-report-sub-group.mjs +0 -2
  133. package/esm2020/lib/models/app-config.model.mjs +0 -2
  134. package/esm2020/lib/models/branch-activity-receive-report/branch-activity-receive.model.mjs +0 -2
  135. package/esm2020/lib/models/branch-activity-report/branch-activity-send-report-request-domain-model.mjs +0 -6
  136. package/esm2020/lib/models/branch-activity-report/branch-activity-send-report.mjs +0 -3
  137. package/esm2020/lib/models/cancellation-transaction-report/cancellation-transaction.model.mjs +0 -10
  138. package/esm2020/lib/models/component-loading-states.mjs +0 -7
  139. package/esm2020/lib/models/credit-limit-status-enquiry-report/credit-limit-status-enquiry.model.mjs +0 -5
  140. package/esm2020/lib/models/revenue-per-transaction-report/revenue-per-transaction.model.mjs +0 -2
  141. package/esm2020/lib/models/statement-of-account-report/statement-of-accounts.model.mjs +0 -2
  142. package/esm2020/lib/models/transaction-enquiry-report/transaction-enquiry.model.mjs +0 -8
  143. package/esm2020/lib/models/transaction-monitoring-report/transaction-monitoring-report-request-domain-model.mjs +0 -6
  144. package/esm2020/lib/models/transaction-monitoring-report/transaction-monitoring-report.mjs +0 -5
  145. package/esm2020/lib/models/trial-balance-accounts-report/trial-balance-accounts.models.mjs +0 -3
  146. package/esm2020/lib/reports-lib-routing.module.mjs +0 -24
  147. package/esm2020/lib/reports-lib.component.mjs +0 -22
  148. package/esm2020/lib/reports-lib.module.mjs +0 -172
  149. package/esm2020/lib/reports-lib.service.mjs +0 -14
  150. package/esm2020/lib/services/config.service.mjs +0 -39
  151. package/esm2020/lib/services/report.service.mjs +0 -374
  152. package/esm2020/lib/shared/export-generic.service.mjs +0 -443
  153. package/esm2020/lib/shared/export.service.mjs +0 -379
  154. package/esm2020/lib/shared/loader/loader.component.mjs +0 -11
  155. package/esm2020/lib/shared/metadata/metadata.component.mjs +0 -51
  156. package/esm2020/lib/shared/page-size-selector/page-size-selector.component.mjs +0 -44
  157. package/esm2020/lib/shared/search-filter/search-filter.component.mjs +0 -2134
  158. package/esm2020/lib/shared/shared.module.mjs +0 -21
  159. package/esm2020/public-api.mjs +0 -41
  160. package/esm2020/sachin9822-reports-lib.mjs +0 -5
  161. package/fesm2015/sachin9822-reports-lib.mjs +0 -8402
  162. package/fesm2015/sachin9822-reports-lib.mjs.map +0 -1
  163. package/fesm2020/sachin9822-reports-lib.mjs +0 -8384
  164. package/fesm2020/sachin9822-reports-lib.mjs.map +0 -1
  165. package/index.d.ts +0 -5
  166. package/lib/components/acc-gl-details-enquiry-report/acc-gl-details-enquiry-report.component.d.ts +0 -70
  167. package/lib/components/accounting-report/accounting-report.component.d.ts +0 -76
  168. package/lib/components/branch-activity-receive-report/branch-activity-receive-report.component.d.ts +0 -58
  169. package/lib/components/branch-activity-send-report/branch-activity-send-report.component.d.ts +0 -69
  170. package/lib/components/branch-activity-send-summary-report/branch-activity-send-summary-report.component.d.ts +0 -78
  171. package/lib/components/cancellation-transaction-report/cancellation-transaction-report.component.d.ts +0 -95
  172. package/lib/components/credit-limit-status-enquiry-report/credit-limit-status-enquiry-report.component.d.ts +0 -55
  173. package/lib/components/funding-report/funding-report.component.d.ts +0 -55
  174. package/lib/components/revenue-per-transaction-report/revenue-per-transaction-report.component.d.ts +0 -57
  175. package/lib/components/statement-of-accounts-report/statement-of-accounts-report.component.d.ts +0 -109
  176. package/lib/components/transaction-enquiry-report/transaction-enquiry-report.component.d.ts +0 -76
  177. package/lib/components/transaction-monitoring-report/transaction-monitoring-report.component.d.ts +0 -68
  178. package/lib/components/trial-balance-accounts-report/trial-balance-accounts-report.component.d.ts +0 -71
  179. package/lib/models/acc-gl-details-enquiry-report/accgl-details-enquiry-reportmodel.d.ts +0 -8
  180. package/lib/models/acc-gl-details-enquiry-report/journal-voucher-entry-model.d.ts +0 -18
  181. package/lib/models/accounting-report/accounting-report-branch-group.d.ts +0 -6
  182. package/lib/models/accounting-report/accounting-report-entry-model.d.ts +0 -24
  183. package/lib/models/accounting-report/accounting-report-model.d.ts +0 -6
  184. package/lib/models/branch-activity-receive-report/branch-activity-receive.model.d.ts +0 -18
  185. package/lib/models/branch-activity-report/branch-activity-send-report-request-domain-model.d.ts +0 -13
  186. package/lib/models/branch-activity-report/branch-activity-send-report.d.ts +0 -24
  187. package/lib/models/cancellation-transaction-report/cancellation-transaction.model.d.ts +0 -44
  188. package/lib/models/component-loading-states.d.ts +0 -5
  189. package/lib/models/credit-limit-status-enquiry-report/credit-limit-status-enquiry.model.d.ts +0 -26
  190. package/lib/models/statement-of-account-report/statement-of-accounts.model.d.ts +0 -18
  191. package/lib/models/transaction-enquiry-report/transaction-enquiry.model.d.ts +0 -113
  192. package/lib/models/transaction-monitoring-report/transaction-monitoring-report-request-domain-model.d.ts +0 -13
  193. package/lib/models/transaction-monitoring-report/transaction-monitoring-report.d.ts +0 -23
  194. package/lib/models/trial-balance-accounts-report/trial-balance-accounts.models.d.ts +0 -38
  195. package/lib/reports-lib-routing.module.d.ts +0 -7
  196. package/lib/reports-lib.component.d.ts +0 -8
  197. package/lib/reports-lib.module.d.ts +0 -33
  198. package/lib/reports-lib.service.d.ts +0 -6
  199. package/lib/services/config.service.d.ts +0 -20
  200. package/lib/services/report.service.d.ts +0 -80
  201. package/lib/shared/export-generic.service.d.ts +0 -50
  202. package/lib/shared/export.service.d.ts +0 -32
  203. package/lib/shared/loader/loader.component.d.ts +0 -5
  204. package/lib/shared/metadata/metadata.component.d.ts +0 -24
  205. package/lib/shared/page-size-selector/page-size-selector.component.d.ts +0 -15
  206. package/lib/shared/search-filter/search-filter.component.d.ts +0 -127
  207. package/lib/shared/shared.module.d.ts +0 -11
  208. /package/{lib → src}/assets/images/Search.svg +0 -0
  209. /package/{lib/assets/images/XMLogo.png → src/assets/images/XMCoral.png} +0 -0
  210. /package/{lib → src/lib}/assets/config/app-config.json +0 -0
  211. /package/{lib → src/lib}/assets/svg-loaders/blue-tail-spin.svg +0 -0
@@ -0,0 +1,601 @@
1
+ <h6 class="Breadcrumb">
2
+ <a class="BreadCrumbLink" [routerLink]="['/reports']">
3
+ <h1>Reports</h1>
4
+ </a>
5
+ <a href="BreadCrumbLink"></a>
6
+ <span class="BreadCrumbArrow"></span>
7
+ <a class="BreadCrumbLink">
8
+ <h2>{{ ReportName }}</h2>
9
+ </a>
10
+ </h6>
11
+
12
+ <app-loader *ngIf="loadingState === ComponentLoadingState.Loading"></app-loader>
13
+ <section>
14
+ <form [formGroup]="searchForm" (ngSubmit)="onSearch()">
15
+ <div class="row">
16
+ <div class="col-custom-10-5">
17
+ <div class="filter-grid">
18
+
19
+ <!-- Dynamically render filters in order -->
20
+ <ng-container *ngFor="let field of visibleFields">
21
+ <ng-container [ngSwitch]="field">
22
+
23
+ <!-- Client -->
24
+ <div class="form-field" *ngSwitchCase="'client'">
25
+ <div class="row align-items-center">
26
+ <div class="col-2">
27
+ <label class="form-label label-data">Client<span class="text-danger">*</span></label>
28
+ </div>
29
+ <div class="col-10">
30
+ <ng-select [items]="clients1" bindLabel="businessPartnerName" bindValue="businessPartnerCode"
31
+ placeholder="Select Client" [clearable]="false" formControlName="client" required
32
+ [ngClass]="{'invalid-select': searchForm.get('client')?.invalid && (searchForm.get('client')?.touched || formValidationError)}"
33
+ (change)="onClientChange()" (open)="onOpen()" (close)="onClose()" [searchable]="isOpen">
34
+
35
+ <ng-template ng-option-tmp let-item="item">
36
+ <span [title]="item.businessPartnerName">{{ item.businessPartnerName }}</span>
37
+ </ng-template>
38
+
39
+ </ng-select>
40
+ </div>
41
+ </div>
42
+ </div>
43
+
44
+ <!-- Branch -->
45
+ <div class="form-field" *ngSwitchCase="'branch'">
46
+ <div class="row align-items-center">
47
+ <div class="col-2">
48
+ <label class="form-label label-data">Branch<span class="text-danger">*</span></label>
49
+ </div>
50
+ <div class="col-10">
51
+ <ng-select [items]="branches" bindLabel="businessPartnerBranch" bindValue="branchCode"
52
+ placeholder="Select Branch" [clearable]="false" formControlName="branch" required
53
+ [ngClass]="{'invalid-select': searchForm.get('branch')?.invalid && (searchForm.get('branch')?.touched || formValidationError)}"
54
+ (change)="onBranchChange()" (open)="onOpen()" (close)="onClose()" [searchable]="isOpen">
55
+ <ng-template ng-option-tmp let-item="item">
56
+ <span [title]="item.businessPartnerBranch">{{ item.businessPartnerBranch }}</span>
57
+ </ng-template>
58
+
59
+ </ng-select>
60
+ </div>
61
+ </div>
62
+ </div>
63
+
64
+ <!-- From Date -->
65
+ <div class="form-field" *ngSwitchCase="'fromDate'">
66
+ <div class="row align-items-center">
67
+ <div class="col-2">
68
+ <label class="form-label label-data">From Date<span class="text-danger">*</span></label>
69
+ </div>
70
+ <div class="col-10">
71
+ <div class="input-group date-group">
72
+ <input class="form-control dpicker" placeholder="dd/mm/yyyy" ngbDatepicker
73
+ #fromDateInput="ngbDatepicker" formControlName="fromDate" autocomplete="off"
74
+ [ngClass]="{'invalid-date':searchForm.get('fromDate')?.invalid && (searchForm.get('fromDate')?.touched || formValidationError)}" />
75
+ <button class="input-group-button cal" (click)="fromDateInput.toggle()" type="button">
76
+ <i class="fa fa-calendar" aria-hidden="true"></i>
77
+ </button>
78
+ </div>
79
+ </div>
80
+ </div>
81
+ </div>
82
+
83
+ <!-- To Date -->
84
+ <div class="form-field" *ngSwitchCase="'toDate'">
85
+ <div class="row align-items-center">
86
+ <div class="col-2">
87
+ <label class="form-label label-data">To Date<span class="text-danger">*</span></label>
88
+ </div>
89
+ <div class="col-10">
90
+ <div class="input-group date-group">
91
+ <input class="form-control dpicker" placeholder="dd/mm/yyyy" ngbDatepicker
92
+ #toDateInput="ngbDatepicker" formControlName="toDate" [minDate]="disabledDate"
93
+ autocomplete="off"
94
+ [ngClass]="{'invalid-date':searchForm.get('toDate')?.invalid && (searchForm.get('toDate')?.touched || formValidationError)}" />
95
+ <button class="input-group-button cal" (click)="toDateInput.toggle()" type="button">
96
+ <i class="fa fa-calendar" aria-hidden="true"></i>
97
+ </button>
98
+ </div>
99
+ </div>
100
+ </div>
101
+ </div>
102
+
103
+ <!-- Product -->
104
+ <div class="form-field" *ngSwitchCase="'product'">
105
+ <div class="row align-items-center">
106
+ <div class="col-2">
107
+ <label class="form-label label-data">Product</label>
108
+ </div>
109
+ <div class="col-10">
110
+ <ng-select [items]="products" bindLabel="productName" bindValue="productCode"
111
+ placeholder="Select Product" [clearable]="false" formControlName="product" (open)="onOpen()"
112
+ (close)="onClose()" [searchable]="isOpen">
113
+ </ng-select>
114
+ </div>
115
+ </div>
116
+ </div>
117
+
118
+ <!-- User -->
119
+ <div class="form-field" *ngSwitchCase="'userId'">
120
+ <div class="row align-items-center">
121
+ <div class="col-2">
122
+ <label class="form-label label-data">User<span class="text-danger">*</span></label>
123
+ </div>
124
+ <div class="col-10">
125
+ <ng-select [items]="users" bindLabel="userName" bindValue="userId" placeholder="Select User"
126
+ [clearable]="false" formControlName="userId" required (open)="onOpen()" (close)="onClose()"
127
+ [searchable]="isOpen"
128
+ [ngClass]="{'invalid-select': searchForm.get('userId')?.invalid && (searchForm.get('userId')?.touched || formValidationError)}">
129
+ </ng-select>
130
+ </div>
131
+ </div>
132
+ </div>
133
+
134
+ <!-- Currency -->
135
+ <div class="form-field" *ngSwitchCase="'currency'">
136
+ <div class="row align-items-center">
137
+ <div class="col-2">
138
+ <label class="form-label label-data">Currency</label>
139
+ </div>
140
+ <div class="col-10">
141
+ <ng-select [items]="currencies" bindValue="currencyCode" placeholder="Select Currency"
142
+ [clearable]="false" formControlName="currency" [searchable]="true" [searchFn]="currencySearch"
143
+ (open)="onOpen()" (close)="onClose()" [searchable]="isOpen">
144
+
145
+ <!-- Template for dropdown options -->
146
+ <ng-template ng-option-tmp let-item="item">
147
+ <div
148
+ [title]="item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency)">
149
+ {{ item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency) }}
150
+ </div>
151
+ </ng-template>
152
+
153
+ <!-- Template for selected value -->
154
+ <ng-template ng-label-tmp let-item="item">
155
+ <div
156
+ [title]="item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency)">
157
+ {{ item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency) }}
158
+ </div>
159
+ </ng-template>
160
+
161
+ </ng-select>
162
+ </div>
163
+ </div>
164
+ </div>
165
+
166
+ <!--Send Currency -->
167
+ <div class="form-field" *ngSwitchCase="'sendCurrency'">
168
+ <div class="row align-items-center">
169
+ <div class="col-2">
170
+ <label class="form-label label-data">Send Currency</label>
171
+ </div>
172
+ <div class="col-10">
173
+ <ng-select [items]="currencies" bindValue="currencyCode" placeholder="Select Currency"
174
+ [clearable]="false" formControlName="currency" [searchable]="true" [searchFn]="currencySearch"
175
+ (open)="onOpen()" (close)="onClose()" [searchable]="isOpen">
176
+
177
+ <!-- Template for dropdown options -->
178
+ <ng-template ng-option-tmp let-item="item">
179
+ <div
180
+ [title]="item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency)">
181
+ {{ item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency) }}
182
+ </div>
183
+ </ng-template>
184
+
185
+ <!-- Template for selected value -->
186
+ <ng-template ng-label-tmp let-item="item">
187
+ <div
188
+ [title]="item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency)">
189
+ {{ item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency) }}
190
+ </div>
191
+ </ng-template>
192
+
193
+ </ng-select>
194
+ </div>
195
+ </div>
196
+ </div>
197
+
198
+ <!-- Transaction Status (Multi-select) -->
199
+ <div class="form-field" *ngSwitchCase="'transactionStatus'">
200
+ <div class="row align-items-center">
201
+ <div class="col-2">
202
+ <label class="form-label label-data">Txn. Status<span class="text-danger">*</span></label>
203
+ </div>
204
+ <div class="col-10">
205
+ <ng-select class="transaction-status-select" [items]="transactionStatuses"
206
+ bindLabel="transactionStatus" bindValue="transactionStatus" [multiple]="true"
207
+ placeholder="Select Transaction Status" formControlName="transactionStatus"
208
+ [closeOnSelect]="false" [clearable]="false" [searchable]="false" required
209
+ [ngClass]="{'invalid-select': searchForm.get('transactionStatus')?.invalid && (searchForm.get('transactionStatus')?.touched || formValidationError)}">
210
+ <ng-template ng-option-tmp let-item="item" let-item$="item$">
211
+ <input type="checkbox" [checked]="item$.selected" /> {{ item.transactionStatus }}
212
+ </ng-template>
213
+ </ng-select>
214
+ </div>
215
+ </div>
216
+ </div>
217
+
218
+ <!-- Transaction No -->
219
+ <div class="form-field" *ngSwitchCase="'transactionNo'">
220
+ <div class="row align-items-center">
221
+ <div class="col-2">
222
+ <label class="form-label label-data">Txn. Number</label>
223
+ </div>
224
+ <div class="col-10">
225
+ <input class="form-control dpicker" formControlName="transactionNo"
226
+ placeholder="Enter transaction number" />
227
+ </div>
228
+ </div>
229
+ </div>
230
+
231
+ <!-- Value Date -->
232
+ <div class="form-field" *ngSwitchCase="'valueDate'">
233
+ <div class="row align-items-center">
234
+ <div class="col-3">
235
+ <label class="form-label label-data">Value Date<span class="text-danger">*</span></label>
236
+ </div>
237
+ <div class="col-9">
238
+ <div class="input-group">
239
+ <input class="form-control dpicker" placeholder="dd/mm/yyyy" ngbDatepicker
240
+ #toDateInput="ngbDatepicker" formControlName="toDate" autocomplete="off"
241
+ [ngClass]="{'invalid-date':searchForm.get('date')?.invalid && (searchForm.get('date')?.touched || formValidationError)}" />
242
+ <button class="btn btn-outline-secondary" type="button" (click)="toDateInput.toggle()">
243
+ <i class="fa fa-calendar"></i>
244
+ </button>
245
+ </div>
246
+ </div>
247
+ </div>
248
+ </div>
249
+
250
+ <!-- Send Country -->
251
+ <div class="form-field" *ngSwitchCase="'sendCountry'">
252
+ <div class="row align-items-center">
253
+ <div class="col-2">
254
+ <label class="form-label label-data">Send Country</label>
255
+ </div>
256
+ <div class="col-10">
257
+ <ng-select [items]="countries" bindLabel="country" bindValue="countryCode"
258
+ placeholder="Select Product" [clearable]="false" formControlName="sendCountry">
259
+
260
+ <ng-template ng-option-tmp let-item="item">
261
+ <span [title]="item.country">{{ item.country }}</span>
262
+ </ng-template>
263
+
264
+ </ng-select>
265
+ </div>
266
+ </div>
267
+ </div>
268
+
269
+ <!-- Receive Country -->
270
+ <div class="form-field" *ngSwitchCase="'receiveCountry'">
271
+ <div class="row align-items-center">
272
+ <div class="col-2">
273
+ <label class="form-label label-data">Receive Country</label>
274
+ </div>
275
+ <div class="col-10">
276
+ <ng-select [items]="countries" bindLabel="country" bindValue="countryCode"
277
+ placeholder="Select Product" [clearable]="false" formControlName="receiveCountry">
278
+
279
+ <ng-template ng-option-tmp let-item="item">
280
+ <span [title]="item.country">{{ item.country }}</span>
281
+ </ng-template>
282
+
283
+ </ng-select>
284
+ </div>
285
+ </div>
286
+ </div>
287
+
288
+ <!--Transaction Product -->
289
+ <div class="form-field" *ngSwitchCase="'transactionProduct'">
290
+ <div class="row align-items-center">
291
+ <div class="col-2">
292
+ <label class="form-label label-data">Product</label>
293
+ </div>
294
+ <div class="col-10">
295
+ <ng-select [items]="transactionProducts" bindLabel="name" bindValue="productCode"
296
+ placeholder="Select Product" [clearable]="false" formControlName="product">
297
+ </ng-select>
298
+ </div>
299
+ </div>
300
+ </div>
301
+
302
+ <!-- Date Type -->
303
+ <div class="form-field" *ngSwitchCase="'dateType'">
304
+ <div class="row align-items-center">
305
+ <div class="col-2">
306
+ <label class="form-label label-data">Date Type</label>
307
+ </div>
308
+ <div class="col-10">
309
+ <ng-select placeholder="- Please select -" formControlName="dateType" [clearable]="false" required>
310
+ <ng-option [value]="1">
311
+ Value Date
312
+ </ng-option>
313
+ <ng-option [value]="2">
314
+ Posting Date
315
+ </ng-option>
316
+ </ng-select>
317
+ </div>
318
+ </div>
319
+ </div>
320
+
321
+ <!-- Date -->
322
+ <div class="form-field" *ngSwitchCase="'date'">
323
+ <div class="row align-items-center">
324
+ <div class="col-2">
325
+ <label class="form-label label-data">Date</label>
326
+ </div>
327
+ <div class="col-10">
328
+ <div class="input-group date-group">
329
+ <input class="form-control dpicker" placeholder="dd/mm/yyyy" ngbDatepicker
330
+ #dateInput="ngbDatepicker" formControlName="date" autocomplete="off"
331
+ [ngClass]="{'invalid-date': searchForm.get('date')?.invalid && (searchForm.get('date')?.touched || formValidationError)}" />
332
+ <button class="input-group-button cal" type="button" (click)="dateInput.toggle()">
333
+ <i class="fa fa-calendar" aria-hidden="true"></i>
334
+ </button>
335
+ </div>
336
+ </div>
337
+ </div>
338
+ </div>
339
+
340
+ <!-- receiveCurrency -->
341
+ <div class="form-field" *ngSwitchCase="'receiveCurrency'">
342
+ <div class="row align-items-center">
343
+ <div class="col-2">
344
+ <label class="form-label label-data">Receive Currency</label>
345
+ </div>
346
+ <div class="col-10">
347
+ <ng-select [items]="currencies" bindValue="currencyCode" placeholder="Select Receive Currency"
348
+ [clearable]="false" formControlName="receiveCurrency" required (change)="onBranchChange()"
349
+ [searchable]="true" [searchFn]="currencySearch" (open)="onOpen()" (close)="onClose()"
350
+ [searchable]="isOpen">
351
+
352
+ <!-- Dropdown options -->
353
+ <ng-template ng-option-tmp let-item="item">
354
+ <div
355
+ [title]="item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency)">
356
+ {{ item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency) }}
357
+ </div>
358
+ </ng-template>
359
+
360
+ <!-- Selected value -->
361
+ <ng-template ng-label-tmp let-item="item">
362
+ <div
363
+ [title]="item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency)">
364
+ {{ item.currencyCode === 'All' ? 'All' : (item.currencyCode + ' - ' + item.currency) }}
365
+ </div>
366
+ </ng-template>
367
+
368
+ </ng-select>
369
+ </div>
370
+ </div>
371
+ </div>
372
+
373
+ <!-- Send BusinessPartner -->
374
+ <div class="form-field" *ngSwitchCase="'sendBusinessPartner'">
375
+ <div class="row align-items-center">
376
+ <div class="col-2">
377
+ <label class="form-label label-data">Send Client<span class="text-danger">*</span></label>
378
+ </div>
379
+ <div class="col-10">
380
+ <ng-select [items]="sendBusinessPartnerAgents" bindLabel="name" bindValue="id"
381
+ placeholder="Select Send Partner" [clearable]="false" formControlName="sendBusinessPartner"
382
+ [ngClass]="{'invalid-select': searchForm.get('sendBusinessPartner')?.invalid && (searchForm.get('sendBusinessPartner')?.touched || formValidationError)}">
383
+
384
+ <ng-template ng-option-tmp let-item="item">
385
+ <span [title]="item.name">{{ item.name }}</span>
386
+ </ng-template>
387
+
388
+ </ng-select>
389
+ </div>
390
+ </div>
391
+ </div>
392
+
393
+ <!-- Recv BusinessPartner -->
394
+ <div class="form-field" *ngSwitchCase="'recvBusinessPartner'">
395
+ <div class="row align-items-center">
396
+ <div class="col-2">
397
+ <label class="form-label label-data">Recv Client<span class="text-danger">*</span></label>
398
+ </div>
399
+ <div class="col-10">
400
+ <ng-select [items]="recvBusinessPartnerAgents" bindLabel="name" bindValue="id"
401
+ placeholder="Select Recv Partner" [clearable]="false" formControlName="recvBusinessPartner"
402
+ [ngClass]="{'invalid-select': searchForm.get('recvBusinessPartner')?.invalid && (searchForm.get('recvBusinessPartner')?.touched || formValidationError)}">
403
+
404
+ <ng-template ng-option-tmp let-item="item">
405
+ <span [title]="item.name">{{ item.name }}</span>
406
+ </ng-template>
407
+
408
+ </ng-select>
409
+ </div>
410
+ </div>
411
+ </div>
412
+
413
+ <!-- Transaction Status (Single-select) -->
414
+ <div class="form-field" *ngSwitchCase="'transactionStatusSingleSelect'">
415
+ <div class="row align-items-center">
416
+ <div class="col-2">
417
+ <label class="form-label label-data">Txn. Status<span class="text-danger">*</span></label>
418
+ </div>
419
+ <div class="col-10">
420
+ <ng-select [items]="transactionStatuses" bindLabel="transactionStatus" bindValue="transactionStatus"
421
+ placeholder="Select Status" [clearable]="false" formControlName="transactionStatus" required
422
+ [ngClass]="{'invalid-select': searchForm.get('transactionStatus')?.invalid && (searchForm.get('transactionStatus')?.touched || formValidationError)}">
423
+ </ng-select>
424
+ </div>
425
+ </div>
426
+ </div>
427
+
428
+ <!-- For Trial Balance - Accounts Report -->
429
+
430
+ <!-- Business Unit -->
431
+ <div class="form-field" *ngSwitchCase="'businessUnit'">
432
+ <div class="row align-items-center">
433
+ <div class="col-2">
434
+ <label class="form-label label-data">Business Unit</label>
435
+ </div>
436
+ <div class="col-10">
437
+ <ng-select [items]="businessUnits" bindLabel="companyFullName" bindValue="companyCode"
438
+ placeholder="Select Business Unit" [clearable]="false" formControlName="businessUnit"
439
+ [ngClass]="{'invalid-select': searchForm.get('businessUnit')?.invalid && (searchForm.get('businessUnit')?.touched || formValidationError)}">
440
+ </ng-select>
441
+ </div>
442
+ </div>
443
+ </div>
444
+
445
+ <!-- Year -->
446
+ <div class="form-field" *ngSwitchCase="'financialYear'">
447
+ <div class="row align-items-center">
448
+ <div class="col-2">
449
+ <label class="form-label label-data">Financial Year</label>
450
+ </div>
451
+ <div class="col-10">
452
+ <ng-select [items]="financialYears" bindLabel="financialYear" bindValue="financialYear"
453
+ placeholder="Select Year" [clearable]="false" formControlName="financialYear"
454
+ [ngClass]="{'invalid-select': searchForm.get('financialYear')?.invalid && (searchForm.get('financialYear')?.touched || formValidationError)}"
455
+ (change)="onSelectFinancialYear()">
456
+ </ng-select>
457
+ </div>
458
+ </div>
459
+ </div>
460
+
461
+ <!-- From Month -->
462
+ <div class="form-field" *ngSwitchCase="'fromMonth'">
463
+ <div class="row align-items-center">
464
+ <div class="col-2">
465
+ <label class="form-label label-data">From Month</label>
466
+ </div>
467
+ <div class="col-10">
468
+ <ng-select [items]="fromMonths" bindLabel="period" bindValue="pOrder"
469
+ placeholder="Select From Month" [clearable]="false" formControlName="fromMonth"
470
+ [ngClass]="{'invalid-select': searchForm.get('fromMonth')?.invalid && (searchForm.get('fromMonth')?.touched|| formValidationError)}"
471
+ (change)="onSelectFromMonth()">
472
+ </ng-select>
473
+ </div>
474
+ </div>
475
+ </div>
476
+
477
+ <!-- To Month -->
478
+ <div class="form-field" *ngSwitchCase="'toMonth'">
479
+ <div class="row align-items-center">
480
+ <div class="col-2">
481
+ <label class="form-label label-data">To Month</label>
482
+ </div>
483
+ <div class="col-10">
484
+ <ng-select [items]="toMonths" bindLabel="pMonthName" bindValue="pMonth"
485
+ placeholder="Select To Month" [clearable]="false" formControlName="toMonth"
486
+ [ngClass]="{'invalid-select': searchForm.get('toMonth')?.invalid && (searchForm.get('toMonth')?.touched|| formValidationError)}"
487
+ (change)="onSelectToMonth()">
488
+ </ng-select>
489
+ </div>
490
+ </div>
491
+ </div>
492
+
493
+ <!-- From Day -->
494
+ <div class="form-field" *ngSwitchCase="'fromDay'">
495
+ <div class="row align-items-center">
496
+ <div class="col-2">
497
+ <label class="form-label label-data">From Day <span class="text-danger">*</span></label>
498
+ </div>
499
+ <div class="col-10">
500
+ <ng-select [items]="fromDays" bindLabel="individualDay" bindValue="individualDate"
501
+ placeholder="Select From Day" [clearable]="false" formControlName="fromDay"
502
+ [ngClass]="{'invalid-select': searchForm.get('fromDay')?.invalid && (searchForm.get('fromDay')?.touched|| formValidationError)}"
503
+ (change)="onSelectFromDay()">
504
+ </ng-select>
505
+ </div>
506
+ </div>
507
+ </div>
508
+
509
+ <!-- To Day -->
510
+ <div class="form-field" *ngSwitchCase="'toDay'">
511
+ <div class="row align-items-center">
512
+ <div class="col-2">
513
+ <label class="form-label label-data">To Day<span style="margin-left: 1px;"
514
+ class="text-danger">*</span></label>
515
+ </div>
516
+ <div class="col-10">
517
+ <ng-select [items]="toDays" bindLabel="pDate" bindValue="individualDate" placeholder="Select To Day"
518
+ [clearable]="false" formControlName="toDay"
519
+ [ngClass]="{'invalid-select': searchForm.get('toDay')?.invalid && (searchForm.get('toDay')?.touched|| formValidationError)}">
520
+ </ng-select>
521
+ </div>
522
+ </div>
523
+ </div>
524
+
525
+ <!-- Date Type -->
526
+ <div class="form-field" *ngSwitchCase="'dateTypeForTrialBalanceAccounts'">
527
+ <div class="row align-items-center">
528
+ <div class="col-2">
529
+ <label class="form-label label-data">Date Type</label>
530
+ </div>
531
+ <div class="col-10">
532
+ <ng-select [items]="dateTypes" bindLabel="dateTypeLabel" bindValue="dateTypeCode"
533
+ placeholder="Select Date Type" formControlName="dateType" [clearable]="false" required
534
+ [ngClass]="{'invalid-select': searchForm.get('dateType')?.invalid && (searchForm.get('dateType')?.touched|| formValidationError)}">
535
+ </ng-select>
536
+ </div>
537
+ </div>
538
+ </div>
539
+
540
+
541
+ <!-- Account Status -->
542
+ <div class="form-field" *ngSwitchCase="'accountStatus'">
543
+ <div class="row align-items-center">
544
+ <div class="col-2">
545
+ <label class="form-label label-data">Account Status</label>
546
+ </div>
547
+ <div class="col-10">
548
+ <ng-select class="transaction-status-select" [items]="accountStatuses" bindLabel="statusName"
549
+ bindValue="statusCode" [multiple]="true" placeholder="Select Account Status"
550
+ formControlName="accountStatus" [closeOnSelect]="false" [clearable]="false" [searchable]="false"
551
+ required
552
+ [ngClass]="{'invalid-select': searchForm.get('accountStatus')?.invalid && (searchForm.get('accountStatus')?.touched|| formValidationError)}">
553
+ <ng-template ng-option-tmp let-item="item" let-item$="item$">
554
+ <input type="checkbox" [checked]="item$.selected" /> {{ item.statusName }}
555
+ </ng-template>
556
+ </ng-select>
557
+ </div>
558
+ </div>
559
+ </div>
560
+ <!--Summary Report-->
561
+ <div class="form-field" *ngSwitchCase="'summaryReport'">
562
+ <div class="row align-items-center">
563
+ <div class="col-2">
564
+ <label class="form-label label-data">Summary Report</label>
565
+ </div>
566
+ <div class="col-10">
567
+ <ng-select [items]="summaryReportTypes" bindLabel="label" bindValue="value"
568
+ [clearable]="false" formControlName="summaryReport">
569
+
570
+ <ng-template ng-option-tmp let-item="item">
571
+ <span [title]="item.label">{{ item.label }}</span>
572
+ </ng-template>
573
+
574
+ </ng-select>
575
+ </div>
576
+ </div>
577
+ </div>
578
+ </ng-container>
579
+ </ng-container>
580
+
581
+ </div>
582
+
583
+ </div>
584
+ <div class="col-custom-1-5">
585
+ <!-- View Report Button (Always at Top-Right) -->
586
+ <div class="form-field view-report-btn">
587
+ <button type="submit" class="btn btn-report">View</button>
588
+ </div>
589
+ </div>
590
+ </div>
591
+ </form>
592
+ </section>
593
+ <hr>
594
+ <!-- Error Messages -->
595
+ <div class="alert alert-danger mt-3" *ngIf="formValidationError && hasSearched">
596
+ Please fill all mandatory fields
597
+ </div>
598
+
599
+ <div class="alert alert-danger mt-3" *ngIf="errorMessage && loadingState === ComponentLoadingState.Error">
600
+ {{ errorMessage }}
601
+ </div>