shareneus 1.7.4 → 1.7.6

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 (212) hide show
  1. package/README.md +1 -0
  2. package/dist/accounting/invoice/invoice-pdf/invoice-pdf.service.js +18 -45
  3. package/dist/accounting/invoice/reports/excel/analysis-excel.service.js +17 -7
  4. package/dist/accounting/invoice/reports/excel/category-wise-item-excel.service.js +17 -7
  5. package/dist/accounting/invoice/reports/excel/cust-wise-sales-details.js +17 -7
  6. package/dist/accounting/invoice/reports/excel/cust-wise-sales-summary-excel.service.js +17 -7
  7. package/dist/accounting/invoice/reports/excel/invoice-wise-excel.service.js +17 -7
  8. package/dist/accounting/invoice/reports/excel/item-wise-doctor-sale-excel.service.js +17 -7
  9. package/dist/accounting/invoice/reports/excel/items-wise-sales-excel.service.js +17 -7
  10. package/dist/accounting/invoice/reports/excel/manf-wise-sales-excel.service.js +17 -7
  11. package/dist/accounting/invoice/reports/excel/operator-wise-details.js +17 -7
  12. package/dist/accounting/invoice/reports/excel/operator-wise-summary.js +17 -7
  13. package/dist/accounting/invoice/reports/excel/sa-wise-labor-sales-excel.service.js +17 -7
  14. package/dist/accounting/invoice/reports/excel/sa-wise-part-sales-excel.service.js +17 -7
  15. package/dist/accounting/invoice/reports/excel/sale-summary-excel.service.js +17 -7
  16. package/dist/accounting/invoice/reports/excel/sales-by-service-summary-excel.service.js +17 -7
  17. package/dist/accounting/invoice/reports/excel/scheduled-drug-summary-excel.service.js +17 -7
  18. package/dist/accounting/invoice/reports/excel/scheduled-drugs-excel.service.js +17 -7
  19. package/dist/accounting/invoice/unified-invoice-pdf.service.d.ts +1 -1
  20. package/dist/accounting/payment-receive/reports/excel/cust-balance-excel.service.js +17 -7
  21. package/dist/accounting/payment-receive/reports/excel/payment-receive-excel.service.js +17 -7
  22. package/dist/common/reports/excel/product-without-owner-excel.service.js +17 -7
  23. package/dist/gst/excel/GSTR-RO-excel.service.js +17 -7
  24. package/dist/gst/excel/GSTR1-excel.service.js +17 -7
  25. package/dist/gst/excel/GSTR2-excel.service.js +17 -7
  26. package/dist/gst/excel/hsn-summary.js +17 -7
  27. package/dist/gst/excel/tally-sales-import.service.js +17 -7
  28. package/dist/index.d.ts +1 -1
  29. package/dist/index.js +6 -6
  30. package/dist/inventory/items/reports/excel/expiring-drugs-excel.service.js +17 -7
  31. package/dist/inventory/items/reports/excel/item-wise-mout-details.js +17 -7
  32. package/dist/inventory/items/reports/excel/item-wise-mout-summary.js +17 -7
  33. package/dist/inventory/items/reports/excel/spares-issue-excel.service.js +17 -7
  34. package/dist/inventory/items/reports/excel/stock-excel.service.js +17 -7
  35. package/dist/purchases/payment-made/reports/excel/payments-made-excel.service.js +17 -7
  36. package/dist/purchases/payment-made/reports/excel/ven-balance-excel.service.js +17 -7
  37. package/dist/services/reports/excel/insurance-expire-excel.service.js +17 -7
  38. package/dist/services/reports/excel/next-service-date-excel.service.js +17 -7
  39. package/dist/services/reports/excel/repair-orders-excel.service.js +17 -7
  40. package/dist/shared/table-section/pdf-table.header.d.ts +1 -1
  41. package/dist/shared/table-section/pdf-table.header.js +14 -2
  42. package/dist/shared/table-section/pdf-table.section.js +6 -13
  43. package/dist/{accounting/invoice/invoice-pdf.service.js → shared/transactions-pdf.service.js} +15 -15
  44. package/package.json +1 -1
  45. package/src/accounting/counter-sales/auto-sales-receipt-pdf.service.ts +569 -0
  46. package/src/accounting/counter-sales/pos-receipt-pdf.ts +577 -0
  47. package/src/accounting/counter-sales/sales-receipt-pdf.service.ts +628 -0
  48. package/src/accounting/counter-sales/sales-receipt-print.service.ts +506 -0
  49. package/src/accounting/credit-note/cn-print.service.ts +264 -0
  50. package/src/accounting/credit-note/credit-note-pdf.service.ts +602 -0
  51. package/src/accounting/credit-note/credit-note-totals.service.ts +424 -0
  52. package/src/accounting/debit-note/debit-note-pdf.service.ts +681 -0
  53. package/src/accounting/debit-note/debit-note-print.service.ts +276 -0
  54. package/src/accounting/debit-note/debit-note-totals.service.ts +361 -0
  55. package/src/accounting/invoice/hc-inv-pdf.service.ts +880 -0
  56. package/src/accounting/invoice/inv-pdf.service.ts +812 -0
  57. package/src/accounting/invoice/inv-print.service.ts +532 -0
  58. package/src/accounting/invoice/invoice-landscape-pdf.service.ts +947 -0
  59. package/src/accounting/invoice/invoice-letterhead-pdf.service.ts +813 -0
  60. package/src/accounting/invoice/invoice-pdf/invoice-pdf.service.ts +359 -0
  61. package/src/accounting/invoice/invoice-portrait-pdf.ts +972 -0
  62. package/src/accounting/invoice/invoice-print.service.ts +2906 -0
  63. package/src/accounting/invoice/invoice-total.service.ts +834 -0
  64. package/src/accounting/invoice/reports/excel/analysis-excel.service.ts +291 -0
  65. package/src/accounting/invoice/reports/excel/category-wise-item-excel.service.ts +267 -0
  66. package/src/accounting/invoice/reports/excel/cust-wise-sales-details.ts +321 -0
  67. package/src/accounting/invoice/reports/excel/cust-wise-sales-summary-excel.service.ts +300 -0
  68. package/src/accounting/invoice/reports/excel/invoice-wise-excel.service.ts +859 -0
  69. package/src/accounting/invoice/reports/excel/item-wise-doctor-sale-excel.service.ts +255 -0
  70. package/src/accounting/invoice/reports/excel/items-wise-sales-excel.service.ts +312 -0
  71. package/src/accounting/invoice/reports/excel/manf-wise-sales-excel.service.ts +273 -0
  72. package/src/accounting/invoice/reports/excel/operator-wise-details.ts +258 -0
  73. package/src/accounting/invoice/reports/excel/operator-wise-summary.ts +259 -0
  74. package/src/accounting/invoice/reports/excel/sa-wise-labor-sales-excel.service.ts +230 -0
  75. package/src/accounting/invoice/reports/excel/sa-wise-part-sales-excel.service.ts +231 -0
  76. package/src/accounting/invoice/reports/excel/sale-summary-excel.service.ts +326 -0
  77. package/src/accounting/invoice/reports/excel/sales-by-service-details-excel.service.ts +0 -0
  78. package/src/accounting/invoice/reports/excel/sales-by-service-summary-excel.service.ts +432 -0
  79. package/src/accounting/invoice/reports/excel/scheduled-drug-summary-excel.service.ts +373 -0
  80. package/src/accounting/invoice/reports/excel/scheduled-drugs-excel.service.ts +372 -0
  81. package/src/accounting/invoice/reports/pdf/analysis-pdf.service.ts +113 -0
  82. package/src/accounting/invoice/reports/pdf/category-wise-item-pdf.service.ts +107 -0
  83. package/src/accounting/invoice/reports/pdf/cust-wise-sales-details-pdf.service.ts +125 -0
  84. package/src/accounting/invoice/reports/pdf/cust-wise-sales-summary-pdf.service.ts +119 -0
  85. package/src/accounting/invoice/reports/pdf/item-wise-doctor-sale-pdf.service.ts +180 -0
  86. package/src/accounting/invoice/reports/pdf/item-wise-sales-pdf.service.ts +193 -0
  87. package/src/accounting/invoice/reports/pdf/manf-wise-sales-pdf.service.ts +188 -0
  88. package/src/accounting/invoice/reports/pdf/operator-wise-details-pdf.service.ts +118 -0
  89. package/src/accounting/invoice/reports/pdf/operator-wise-summary-pdf.ts +116 -0
  90. package/src/accounting/invoice/reports/pdf/sales-by-service-pdf.service.ts +132 -0
  91. package/src/accounting/invoice/reports/pdf/scheduled-drug-pdf.service.ts +191 -0
  92. package/src/accounting/invoice/reports/pdf/scheduled-drug-summary-pdf.service.ts +202 -0
  93. package/src/accounting/invoice/shared-inv-pdf.service.ts +787 -0
  94. package/src/accounting/invoice/unified-invoice-pdf.service.ts +937 -0
  95. package/src/accounting/payment-receive/payment-pdf.service.ts +410 -0
  96. package/src/accounting/payment-receive/payment-receipt-pdf/receipt-pdf.service.ts +470 -0
  97. package/src/accounting/payment-receive/receipt-print.service.ts +71 -0
  98. package/src/accounting/payment-receive/reports/excel/cust-balance-excel.service.ts +298 -0
  99. package/src/accounting/payment-receive/reports/excel/payment-receive-excel.service.ts +221 -0
  100. package/src/accounting/payment-receive/reports/pdf/customer-balances-pdf.service.ts +182 -0
  101. package/src/accounting/payment-receive/reports/pdf/payment-report-pdf.service.ts +116 -0
  102. package/src/aggregation/aggregation.ts +58 -0
  103. package/src/appointments/appointments/appointment-total.service.ts +298 -0
  104. package/src/appointments/consultations/consultation-fee-receipt.service.ts +407 -0
  105. package/src/appointments/consultations/consultation-full-pdf.service.ts +238 -0
  106. package/src/appointments/consultations/consultation-letterhead-pdf.service.ts +430 -0
  107. package/src/appointments/consultations/consultation-pdf.service.ts +417 -0
  108. package/src/common/reports/excel/product-without-owner-excel.service.ts +308 -0
  109. package/src/common/reports/pdf/product-without-owner-pdf.service.ts +146 -0
  110. package/src/enums/cache-enums.ts +33 -0
  111. package/src/enums/code-enums.ts +291 -0
  112. package/src/enums/country-enums.ts +9 -0
  113. package/src/enums/enums.ts +364 -0
  114. package/src/enums/industry-enums.ts +26 -0
  115. package/src/enums/treatment-enums.ts +9 -0
  116. package/src/gst/excel/GSTR-RO-excel.service.ts +926 -0
  117. package/src/gst/excel/GSTR1-excel.service.ts +313 -0
  118. package/src/gst/excel/GSTR2-excel.service.ts +314 -0
  119. package/src/gst/excel/hsn-summary.ts +314 -0
  120. package/src/gst/excel/tally-sales-import.service.ts +767 -0
  121. package/src/gst/pdf/hsn-summary-pdf.ts +176 -0
  122. package/src/index.ts +194 -0
  123. package/src/inventory/items/adjustment-pdf.service.ts +177 -0
  124. package/src/inventory/items/issue-parts-pdf.service.ts +795 -0
  125. package/src/inventory/items/item-bar-code-label-pdf.ts +194 -0
  126. package/src/inventory/items/item-detais-pdf.ts +141 -0
  127. package/src/inventory/items/item-price-for-pricelist.ts +368 -0
  128. package/src/inventory/items/reports/excel/expiring-drugs-excel.service.ts +290 -0
  129. package/src/inventory/items/reports/excel/item-wise-mout-details.ts +284 -0
  130. package/src/inventory/items/reports/excel/item-wise-mout-summary.ts +279 -0
  131. package/src/inventory/items/reports/excel/spares-issue-excel.service.ts +494 -0
  132. package/src/inventory/items/reports/excel/stock-excel.service.ts +319 -0
  133. package/src/inventory/items/reports/pdf/expiring-drugs-pdf.service.ts +172 -0
  134. package/src/inventory/items/reports/pdf/item-wise-mout-details-pdf.ts +122 -0
  135. package/src/inventory/items/reports/pdf/item-wise-mout-summary-pdf.ts +115 -0
  136. package/src/inventory/items/reports/pdf/reorder-point-pdf.service.ts +163 -0
  137. package/src/inventory/material-out/mout-pdf.service.ts +545 -0
  138. package/src/inventory/transfer-order/transfer-order-pdf.service.ts +154 -0
  139. package/src/purchases/bills/bill-pdf/bill-pdf.service.ts +211 -0
  140. package/src/purchases/bills/bill-pdf.service.ts +21 -0
  141. package/src/purchases/payment-made/reports/excel/payments-made-excel.service.ts +313 -0
  142. package/src/purchases/payment-made/reports/excel/ven-balance-excel.service.ts +307 -0
  143. package/src/purchases/payment-made/reports/pdf/vendor-balances-pdf.service.ts +114 -0
  144. package/src/purchases/purchase-order/po-totals.service.ts +343 -0
  145. package/src/purchases/purchase-order/purchase-order-pdf.service.ts +1016 -0
  146. package/src/purchases/purchase-order/purchase-order-print.service.ts +279 -0
  147. package/src/purchases/purchase-order/purchase-order-totals.service.ts +637 -0
  148. package/src/purchases/vendor-credit-note/vendor-credit-note-pdf.service.ts +1055 -0
  149. package/src/purchases/vendor-credit-note/vendor-credit-note-print.service.ts +145 -0
  150. package/src/purchases/vendor-credit-note/vendor-credit-note-totals.service.ts +399 -0
  151. package/src/purchases/vendor-debit-note/vendor-debit-note-pdf.service.ts +582 -0
  152. package/src/purchases/vendor-debit-note/vendor-debit-note-print.service.ts +295 -0
  153. package/src/purchases/vendor-debit-note/vendor-debit-note-totals.service.ts +377 -0
  154. package/src/sales/delivery-challan/dc-landscape-pdf.service.ts +922 -0
  155. package/src/sales/delivery-challan/dc-landscape-without-price-pdf.service.ts +869 -0
  156. package/src/sales/delivery-challan/dc-without-price-pdf.service.ts +505 -0
  157. package/src/sales/delivery-challan/delivery-challan-pdf.service.ts +461 -0
  158. package/src/sales/delivery-challan/delivery-challan-print.service.ts +229 -0
  159. package/src/sales/delivery-challan/delivery-challan-totals.ts +466 -0
  160. package/src/sales/sales/equipment-design-pdf.service.ts +153 -0
  161. package/src/sales/sales/pack-ship-pdf.service.ts +128 -0
  162. package/src/sales/sales/pack-ship-print.service.ts +198 -0
  163. package/src/sales/sales/sales-pdf.service.ts +658 -0
  164. package/src/sales/sales/sales-print.service.ts +376 -0
  165. package/src/sales/sales/sales-totals.service.ts +500 -0
  166. package/src/sales-receive/sales-receive-pdf.service.ts +602 -0
  167. package/src/sales-receive/sales-receive-print.service.ts +242 -0
  168. package/src/sales-receive/sales-receive-totals.service.ts +651 -0
  169. package/src/services/checklist-pdf.ts +151 -0
  170. package/src/services/checklists-pdf.ts +133 -0
  171. package/src/services/est.print-service.ts +1155 -0
  172. package/src/services/reports/excel/insurance-expire-excel.service.ts +292 -0
  173. package/src/services/reports/excel/next-service-date-excel.service.ts +317 -0
  174. package/src/services/reports/excel/repair-orders-excel.service.ts +249 -0
  175. package/src/services/reports/pdf/insurance-expire-pdf.service.ts +115 -0
  176. package/src/services/reports/pdf/next-service-date-pdf.service.ts +198 -0
  177. package/src/services/reports/pdf/repair-orders-pdf.service.ts +184 -0
  178. package/src/services/ro-pdf.service.ts +1917 -0
  179. package/src/services/ro-print-service.ts +881 -0
  180. package/src/services/ro-totals.service.ts +1314 -0
  181. package/src/services/separate-wo-print.service.ts +396 -0
  182. package/src/services/service-history-pdf.service.ts +145 -0
  183. package/src/services/service-price-for-pricelist.ts +649 -0
  184. package/src/services/technician-pdf.service.ts +234 -0
  185. package/src/services/technician-print.service.ts +95 -0
  186. package/src/shared/header-footer-section/pdf-header-footer.section.ts +519 -0
  187. package/src/shared/header-footer-section/pdf-shared.utils.ts +46 -0
  188. package/src/shared/math-operations.ts +208 -0
  189. package/src/shared/party-details-section/pdf-party-details.section.ts +602 -0
  190. package/src/shared/shared-pdf.service.ts +3042 -0
  191. package/src/shared/shared-print.service.ts +879 -0
  192. package/src/shared/table-section/pdf-table.config.ts +8 -0
  193. package/src/shared/table-section/pdf-table.header.ts +396 -0
  194. package/src/shared/table-section/pdf-table.row.ts +248 -0
  195. package/src/shared/table-section/pdf-table.section.ts +447 -0
  196. package/src/shared/totals-section/pdf-totals.section.ts +921 -0
  197. package/src/shared/transactions-pdf.service.ts +191 -0
  198. package/src/shared/util.ts +101 -0
  199. package/src/tasks/meetings/meeting-pdf.ts +410 -0
  200. package/src/tasks/tasks/task-pdf.service.ts +238 -0
  201. package/src/tasks/tasks/task-reports-pdf.service.ts +313 -0
  202. package/src/tax/index.ts +86 -0
  203. package/src/tax/tax-calculator.ts +1025 -0
  204. package/src/tax/tax.types.ts +535 -0
  205. package/src/transaction-calculations/discounts-distribution.ts +343 -0
  206. package/src/transaction-calculations/index.ts +3 -0
  207. package/src/transaction-calculations/total-calculation.ts +443 -0
  208. package/src/transaction-calculations/transaction-calculation-engine.ts +903 -0
  209. package/src/utils/my-date.ts +111 -0
  210. package/src/utils/tr-utils.ts +104 -0
  211. package/tsconfig.json +2 -2
  212. /package/dist/{accounting/invoice/invoice-pdf.service.d.ts → shared/transactions-pdf.service.d.ts} +0 -0
@@ -0,0 +1,151 @@
1
+ import { SharedPDFService } from "../shared/shared-pdf.service";
2
+ import { PrintSharedService } from "../shared/shared-print.service";
3
+ import { TrUtils } from "../utils/tr-utils";
4
+ declare var pdfMake: any;
5
+ declare var document: any;
6
+
7
+ export class CheckListPrintService {
8
+
9
+ static PrintFile: any;
10
+
11
+ static CheckListPrint(CheckListData: any, win: any) {
12
+ let dd = {
13
+ info: {
14
+ title: 'CheckList',
15
+ },
16
+ background: function (currentPage: any, pageSize: any) {
17
+ return SharedPDFService.GetWatermarkImage(CheckListData.Image, pageSize, CheckListData.Entity.Wmark);
18
+ },
19
+ header: function (currentPage: any, pageCount: any) {
20
+ return { text: currentPage.toString() + ' of ' + pageCount, alignment: 'right', marginRight: 7, fontSize: 8, marginTop: 2 };
21
+ },
22
+ pageMargins: [10, 15, 10, 15],
23
+ content: [
24
+ // SharedPDFService.MainHeading(CheckListData.Entity.CName, CheckListData.Entity.Header, CheckListData.Image, CheckListData.HColor, null),
25
+ SharedPDFService.GetMainHeader(CheckListData.Entity, CheckListData.Image, CheckListData.AColor, CheckListData.HColor, null),
26
+ SharedPDFService.GetPrintType('INSPECTION'),
27
+ SharedPDFService.HeaderAfterLine(),
28
+ this.RODetails(CheckListData),
29
+ this.CheckListTable(CheckListData.Sections)
30
+ ],
31
+ styles: SharedPDFService.GetStyles()
32
+ };
33
+ this.PrintFile = TrUtils.Stringify(dd);
34
+ pdfMake.createPdf(dd).getDataUrl((DataURL: any) => {
35
+ document.getElementById('pdf').setAttribute('src', DataURL);
36
+ });
37
+ }
38
+
39
+ static RODetails(CheckListData: any) {
40
+ return {
41
+ marginTop: 5,
42
+ columns: [
43
+ { stack: [SharedPDFService.GetCustomerDetails(CheckListData.Customer, null, null, null, 'Customer Name & Address')], width: 250 }, { text: '', width: 40 }, { stack: [this.VehicleDetails(CheckListData)], width: 250 },
44
+ ]
45
+ }
46
+ }
47
+
48
+ static VehicleDetails(CheckListData: any) {
49
+ let id: any;
50
+ let vehicleData: any;
51
+
52
+ vehicleData = [
53
+ { name: 'RO#', value: this.CheckAndSetString(CheckListData.ROId) }
54
+ ];
55
+ vehicleData.push({ name: 'Regn. No', value: this.CheckAndSetString(CheckListData.RegNo) });
56
+ let a: any = [
57
+ { name: 'Vehicle', value: this.CheckAndSetString(CheckListData.Vehicle.Make) + ' ' + this.CheckAndSetString(CheckListData.Vehicle.Model) + ' ' + this.CheckAndSetString(CheckListData.Vehicle.Var) },
58
+ { name: 'Service Advisor Name', value: this.CheckAndSetString(CheckListData.SAName) }
59
+ ];
60
+ for (let i = 0; i < a.length; i++) {
61
+ vehicleData.push(a[i]);
62
+ }
63
+ return SharedPDFService.GetVehicleDataTable(vehicleData);
64
+ }
65
+
66
+
67
+ static CheckAndSetString(Value: any) {
68
+ if (TrUtils.IsNull(Value)) {
69
+ Value = '';
70
+ }
71
+ return Value;
72
+ }
73
+
74
+ static CheckListTable(CheckList: any) {
75
+ return {
76
+ columns: [
77
+ this.SectionItemsTable(CheckList)
78
+ ]
79
+ };
80
+ }
81
+
82
+ static SectionItemsTable(sections: any) {
83
+ return {
84
+ style: 'tableExample',
85
+ marginTop: 10,
86
+ table: {
87
+ widths: [95, 15, 180, 40, 40, 40, 100],
88
+ // headerRows: 2,
89
+ body: this.ItemsTable(sections)
90
+ },
91
+ layout: PrintSharedService.LayOutStyle()
92
+ };
93
+ }
94
+
95
+ static ItemsTable(sections: any) {
96
+ let body: any = [];
97
+ let column = this.sectionname();
98
+ body.push(column);
99
+ sections.forEach((section: any) => {
100
+ section.Items.forEach((item: any, index: any) => {
101
+ let dataRow: any = [];
102
+ if (index === 0) {
103
+ dataRow.push({ text: section.Name.toString(), noWrap: true, rowSpan: section.Items.length, alignment: "center", height: 60 });
104
+ } else {
105
+ dataRow.push({});
106
+ }
107
+ dataRow.push({ text: item.SNo.toString(), noWrap: true, alignment: 'center' });
108
+ dataRow.push({ text: item.Desc.toString() });
109
+
110
+ let TickImage: any = {
111
+ image: 'data:image/jpeg;base64,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',
112
+ width: 20,
113
+ alignment: 'center'
114
+ };
115
+ if (item.Action === 'G') {
116
+ dataRow.push(TickImage);
117
+ } else {
118
+ dataRow.push({ text: '', noWrap: true });
119
+ }
120
+
121
+ if (item.Action === 'O') {
122
+ dataRow.push(TickImage);
123
+ } else {
124
+ dataRow.push({ text: '', noWrap: true });
125
+ }
126
+
127
+ if (item.Action === 'R') {
128
+ dataRow.push(TickImage);
129
+ } else {
130
+ dataRow.push({ text: '', noWrap: true });
131
+ }
132
+ dataRow.push({ text: '', noWrap: true });
133
+ body.push(dataRow);
134
+ })
135
+ })
136
+
137
+ return body;
138
+ }
139
+
140
+ static sectionname() {
141
+ let headersNames: any = [{ text: 'Section', style: 'tableheader' },
142
+ { text: 'Sno', style: 'tableheader' },
143
+ { text: 'CHECK ITEMS', style: 'tableheader' },
144
+ { text: 'Good', style: 'tableheader' },
145
+ { text: 'Average', style: 'tableheader' },
146
+ { text: 'Bad', style: 'tableheader' },
147
+ { text: 'Remarks', style: 'tableheader' }];
148
+ // let HeaderName = [{ text: 'Section', colSpan: 5, color: 'white', fillColor: 'black',fontSize:10 }, {}, {}, {}, {}]
149
+ return headersNames;
150
+ }
151
+ }
@@ -0,0 +1,133 @@
1
+ import { SharedPDFService } from "../shared/shared-pdf.service";
2
+
3
+ declare var pdfMake: any;
4
+
5
+ export class ChecklistsPDFService {
6
+
7
+ static GetCheckListPrintData(CheckListData: any, win: any) {
8
+ setTimeout(() => {
9
+ let dd = {
10
+ info: {
11
+ title: 'CheckList',
12
+ },
13
+ background: function (currentPage: any, pageSize: any) {
14
+ return SharedPDFService.GetWatermarkImage(CheckListData.Image, pageSize, CheckListData.Entity.Wmark);
15
+ },
16
+ header: function (currentPage: any, pageCount: any) {
17
+ return { text: currentPage.toString() + ' of ' + pageCount, alignment: 'right', marginRight: 7, fontSize: 8, marginTop: 2 };
18
+ },
19
+ pageMargins: [10, 15, 10, 15],
20
+ // alignment: 'center',
21
+ content: [
22
+ // SharedPDFService.MainHeading(CheckListData.Entity.CName, CheckListData.Entity.Header, CheckListData.Image, CheckListData.HColor, null),
23
+ SharedPDFService.GetMainHeader(CheckListData.Entity, CheckListData.Image, CheckListData.AColor, CheckListData.HColor, null),
24
+ SharedPDFService.GetPrintType(CheckListData.Name),
25
+ SharedPDFService.HeaderAfterLine(),
26
+ this.PrepareTableForCheckList(CheckListData),
27
+ ],
28
+ styles: SharedPDFService.GetStyles()
29
+ };
30
+
31
+ pdfMake.createPdf(dd).open();
32
+ }, 400)
33
+ }
34
+
35
+ static PrepareTableForCheckList(CheckListData: any) {
36
+ var tables: any = [];
37
+ let SectionsList: any = this.GetItemsForSections(CheckListData.Sections, CheckListData.Items);
38
+ // let SectionsList: any = this.GetSectionListWithSNo(Sections);
39
+ let SNo = 1;
40
+ SectionsList.forEach((section: any) => {
41
+ section.Items.forEach((Item: any) => {
42
+ Item.SNo = SNo;
43
+ SNo += 1;
44
+ });
45
+ });
46
+ SectionsList.forEach((section: any, index: any) => {
47
+ var item = {
48
+ style: 'tableExamplemargin',
49
+ headerRows: 2,
50
+ widths: [370, 40, 40, 40],
51
+ table: {
52
+ widths: [370, 40, 40, 40],
53
+ body: this.CreateTableForSection(section, index)
54
+ },
55
+ layout: this.getlayoutStyles()
56
+ }
57
+ tables.push(item)
58
+ })
59
+ return tables;
60
+ }
61
+
62
+ static GetSectionListWithSNo(SectionsList: any) {
63
+ let SNo: number = 1;
64
+ SectionsList.forEach((section: any) => {
65
+ section.Items.forEach((Item: any) => {
66
+ Item.SNo = SNo;
67
+ SNo += 1;
68
+ });
69
+ });
70
+ }
71
+
72
+ static getlayoutStyles() {
73
+ return {
74
+ hLineColor: function (i: any, node: any) {
75
+ return ((i == 0 || i === 1) || i === node.table.body.length) ? 'grey' : 'white';
76
+ },
77
+ vLineColor: function (i: any, node: any) {
78
+ return (i == 0 || i === node.table.widths.length) ? 'grey' : 'white';
79
+ }
80
+ }
81
+ }
82
+
83
+ static CreateTableForSection(SectionData: any, index: number) {
84
+ var body = []
85
+ var datarow = [];
86
+ datarow.push({ text: index + 1 + '.' + ' ' + SectionData.Name, margin: [0, 1, 0, 0], style: 'tableheader', colSpan: 4, alignment: 'start', bold: true, fillColor: 'grey', color: 'white' }, {}, {}, {});
87
+ body.push(datarow);
88
+
89
+ if (SectionData.Items.length != 0) {
90
+ let column: any = this.GetItemHeaders();
91
+ body.push(column);
92
+ SectionData.Items.forEach((Item: any) => {
93
+ body.push([{ text: Item.SNo + '.' + ' ' + Item.Desc, lineHeight: 1, margin: [0, 0, 0, 2] },
94
+ {
95
+ image: 'data:image/png;base64,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',
96
+ width: 15,
97
+ alignment: 'center'
98
+ },
99
+ {
100
+ image: 'data:image/png;base64,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',
101
+ width: 15,
102
+ alignment: 'center'
103
+ },
104
+ {
105
+ image: 'data:image/png;base64,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',
106
+ width: 15,
107
+ alignment: 'center'
108
+ }]);
109
+ });
110
+ }
111
+ return body;
112
+ }
113
+
114
+ static GetItemsForSections(SectionsList: any, ItemsList: any) {
115
+ SectionsList.forEach((Section: any) => {
116
+ Section.Items = ItemsList.filter((Item: any) => {
117
+ return Item.SecId === Section._id;
118
+ });
119
+ });
120
+ return SectionsList;
121
+ }
122
+
123
+ static GetItemHeaders() {
124
+ let headersNames: any = [
125
+ { text: ' ', style: 'tableHeader', Field: 'Desc' },
126
+ { text: 'Passed', style: 'tableHeader', Field: 'check', alignment: 'center' },
127
+ { text: 'Repaired', style: 'tableHeader', Field: 'check', alignment: 'center' },
128
+ { text: 'Replaced', style: 'tableHeader', Field: 'check', alignment: 'center' },
129
+ ];
130
+ return headersNames;
131
+ }
132
+
133
+ }