shareneus 1.0.5

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 (125) hide show
  1. package/dist/aggregation/aggregation.js +60 -0
  2. package/dist/enums/cache-enums.js +37 -0
  3. package/dist/enums/code-enums.js +288 -0
  4. package/dist/enums/enums.js +362 -0
  5. package/dist/enums/industry-enums.js +24 -0
  6. package/dist/excel-files/GSTR-RO-excel.service.js +935 -0
  7. package/dist/excel-files/GSTR1-excel.service.js +295 -0
  8. package/dist/excel-files/GSTR2-excel.service.js +295 -0
  9. package/dist/excel-files/analysis-excel.service.js +297 -0
  10. package/dist/excel-files/category-wise-item-excel.service.js +274 -0
  11. package/dist/excel-files/cust-balance-excel.service.js +287 -0
  12. package/dist/excel-files/cust-wise-sales-details.js +320 -0
  13. package/dist/excel-files/cust-wise-sales-summary-excel.service.js +302 -0
  14. package/dist/excel-files/expiring-drugs-excel.service.js +292 -0
  15. package/dist/excel-files/insurance-expire-excel.service.js +301 -0
  16. package/dist/excel-files/invoice-wise-excel.service.js +857 -0
  17. package/dist/excel-files/item-wise-doctor-sale-excel.service.js +258 -0
  18. package/dist/excel-files/item-wise-mout-details.js +292 -0
  19. package/dist/excel-files/item-wise-mout-summary.js +286 -0
  20. package/dist/excel-files/items-wise-sales-excel.service.js +314 -0
  21. package/dist/excel-files/manf-wise-sales-excel.service.js +276 -0
  22. package/dist/excel-files/operator-wise-details.js +265 -0
  23. package/dist/excel-files/operator-wise-summary.js +266 -0
  24. package/dist/excel-files/payment-receive-excel.service.js +225 -0
  25. package/dist/excel-files/payments-made-excel.service.js +302 -0
  26. package/dist/excel-files/repair-orders-excel.service.js +255 -0
  27. package/dist/excel-files/sa-wise-labor-sales-excel.service.js +232 -0
  28. package/dist/excel-files/sa-wise-part-sales-excel.service.js +232 -0
  29. package/dist/excel-files/sale-summary-excel.service.js +326 -0
  30. package/dist/excel-files/sales-by-service-details-excel.service.js +1 -0
  31. package/dist/excel-files/sales-by-service-summary-excel.service.js +422 -0
  32. package/dist/excel-files/scheduled-drug-summary-excel.service.js +367 -0
  33. package/dist/excel-files/scheduled-drugs-excel.service.js +366 -0
  34. package/dist/excel-files/spares-issue-excel.service.js +492 -0
  35. package/dist/excel-files/stock-excel.service.js +283 -0
  36. package/dist/excel-files/tally-sales-import.service.js +765 -0
  37. package/dist/excel-files/ven-balance-excel.service.js +293 -0
  38. package/dist/index.js +237 -0
  39. package/dist/services/analysis-pdf.service.js +105 -0
  40. package/dist/services/appointment-total.service.js +253 -0
  41. package/dist/services/auto-sales-receipt-pdf.service.js +539 -0
  42. package/dist/services/category-wise-item-pdf.service.js +98 -0
  43. package/dist/services/checklist-pdf.js +140 -0
  44. package/dist/services/checklists-pdf.js +124 -0
  45. package/dist/services/cn-print.service.js +211 -0
  46. package/dist/services/consultation-fee-receipt.service.js +378 -0
  47. package/dist/services/consultation-full-pdf.service.js +220 -0
  48. package/dist/services/consultation-pdf.service.js +360 -0
  49. package/dist/services/credit-note-pdf.service.js +578 -0
  50. package/dist/services/credit-note-totals.service.js +328 -0
  51. package/dist/services/cust-wise-sales-details-pdf.service.js +118 -0
  52. package/dist/services/cust-wise-sales-summary-pdf.service.js +111 -0
  53. package/dist/services/customer-balances-pdf.service.js +169 -0
  54. package/dist/services/dc-landscape-pdf.service.js +903 -0
  55. package/dist/services/dc-landscape-without-price-pdf.service.js +853 -0
  56. package/dist/services/dc-without-price-pdf.service.js +489 -0
  57. package/dist/services/debit-note-pdf.service.js +673 -0
  58. package/dist/services/debit-note-print.service.js +234 -0
  59. package/dist/services/debit-note-totals.service.js +293 -0
  60. package/dist/services/delivery-challan-pdf.service.js +434 -0
  61. package/dist/services/delivery-challan-print.service.js +177 -0
  62. package/dist/services/delivery-challan-totals.js +339 -0
  63. package/dist/services/equipment-design-pdf.service.js +144 -0
  64. package/dist/services/est.print-service.js +1053 -0
  65. package/dist/services/expiring-drugs-pdf.service.js +156 -0
  66. package/dist/services/hc-inv-pdf.service.js +837 -0
  67. package/dist/services/insurance-expire-pdf.service.js +99 -0
  68. package/dist/services/inv-pdf.service.js +785 -0
  69. package/dist/services/inv-print.service.js +415 -0
  70. package/dist/services/invoice-landscape-pdf.service.js +909 -0
  71. package/dist/services/invoice-total.service.js +659 -0
  72. package/dist/services/issue-parts-pdf.service.js +763 -0
  73. package/dist/services/item-detais-pdf.js +136 -0
  74. package/dist/services/item-wise-doctor-sale-pdf.service.js +164 -0
  75. package/dist/services/item-wise-mout-details-pdf.js +107 -0
  76. package/dist/services/item-wise-mout-summary-pdf.js +99 -0
  77. package/dist/services/item-wise-sales-pdf.service.js +178 -0
  78. package/dist/services/manf-wise-sales-pdf.service.js +173 -0
  79. package/dist/services/meeting-pdf.js +369 -0
  80. package/dist/services/mout-pdf.service.js +503 -0
  81. package/dist/services/operator-wise-details-pdf.service.js +103 -0
  82. package/dist/services/operator-wise-summary-pdf.js +101 -0
  83. package/dist/services/pack-ship-pdf.service.js +105 -0
  84. package/dist/services/pack-ship-print.service.js +167 -0
  85. package/dist/services/payment-pdf.service.js +373 -0
  86. package/dist/services/payment-report-pdf.service.js +106 -0
  87. package/dist/services/po-totals.service.js +279 -0
  88. package/dist/services/pos-receipt-pdf.js +438 -0
  89. package/dist/services/purchase-order-pdf.service.js +924 -0
  90. package/dist/services/purchase-order-print.service.js +150 -0
  91. package/dist/services/purchase-order-totals.service.js +280 -0
  92. package/dist/services/receipt-print.service.js +50 -0
  93. package/dist/services/reorder-point-pdf.service.js +151 -0
  94. package/dist/services/repair-orders-pdf.service.js +172 -0
  95. package/dist/services/ro-pdf.service.js +1764 -0
  96. package/dist/services/ro-print-service.js +737 -0
  97. package/dist/services/ro-totals.service.js +1241 -0
  98. package/dist/services/sales-by-service-pdf.service.js +116 -0
  99. package/dist/services/sales-pdf.service.js +630 -0
  100. package/dist/services/sales-print.service.js +305 -0
  101. package/dist/services/sales-receipt-pdf.service.js +611 -0
  102. package/dist/services/sales-receipt-print.service.js +425 -0
  103. package/dist/services/sales-totals.service.js +339 -0
  104. package/dist/services/scheduled-drug-pdf.service.js +176 -0
  105. package/dist/services/scheduled-drug-summary-pdf.service.js +188 -0
  106. package/dist/services/separate-wo-print.service.js +351 -0
  107. package/dist/services/shared-inv-pdf.service.js +763 -0
  108. package/dist/services/shared-pdf.service.js +2569 -0
  109. package/dist/services/shared-print.service.js +885 -0
  110. package/dist/services/task-pdf.service.js +220 -0
  111. package/dist/services/task-reports-pdf.service.js +296 -0
  112. package/dist/services/technician-pdf.service.js +238 -0
  113. package/dist/services/technician-print.service.js +87 -0
  114. package/dist/services/transfer-order-pdf.service.js +139 -0
  115. package/dist/services/vendor-balances-pdf.service.js +101 -0
  116. package/dist/services/vendor-credit-note-pdf.service.js +1007 -0
  117. package/dist/services/vendor-credit-note-print.service.js +104 -0
  118. package/dist/services/vendor-credit-note-totals.service.js +327 -0
  119. package/dist/services/vendor-debit-note-pdf.service.js +561 -0
  120. package/dist/services/vendor-debit-note-print.service.js +245 -0
  121. package/dist/services/vendor-debit-note-totals.service.js +305 -0
  122. package/dist/utils/my-date.js +652 -0
  123. package/dist/utils/tr-utils.js +354 -0
  124. package/package.json +24 -0
  125. package/tsconfig.json +109 -0
@@ -0,0 +1,611 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalesReceiptpdfService = void 0;
4
+ const tr_utils_1 = require("../utils/tr-utils");
5
+ const shared_pdf_service_1 = require("./shared-pdf.service");
6
+ const shared_print_service_1 = require("./shared-print.service");
7
+ class SalesReceiptpdfService {
8
+ constructor() {
9
+ this.FontSize = 8;
10
+ }
11
+ static GetInvoicePrint(ROPrintData, numberofCopies, isotherIndustry) {
12
+ var contents = [];
13
+ if (tr_utils_1.TrUtils.IsNull(numberofCopies) || numberofCopies.length === 0) {
14
+ contents.push(this.CommonHeaderDetails(ROPrintData, null, isotherIndustry), this.PreparesparePartsTable(ROPrintData), this.CommonTotalDetails(ROPrintData, null, numberofCopies));
15
+ }
16
+ else {
17
+ numberofCopies.forEach((text, index) => {
18
+ contents.push(this.CommonHeaderDetails(ROPrintData, text, isotherIndustry), this.PreparesparePartsTable(ROPrintData), this.CommonTotalDetails(ROPrintData, index, numberofCopies));
19
+ });
20
+ }
21
+ var dd = {
22
+ info: {
23
+ title: this.GetFileName(ROPrintData),
24
+ },
25
+ background: function (currentPage, pageSize) {
26
+ return shared_pdf_service_1.SharedPDFService.GetWatermarkImage(ROPrintData.Image, pageSize, ROPrintData.Entity.Wmark);
27
+ },
28
+ header: function (currentPage, pageCount) {
29
+ return { text: currentPage.toString() + ' of ' + pageCount, alignment: 'right', marginRight: 7, fontSize: 8, marginTop: 2 };
30
+ },
31
+ pageMargins: [10, 15, 10, 15],
32
+ content: contents,
33
+ styles: shared_pdf_service_1.SharedPDFService.GetStyles()
34
+ };
35
+ return dd;
36
+ }
37
+ static GetFileName(ROPrintData) {
38
+ let fileName = ROPrintData.HeaderName;
39
+ if (!tr_utils_1.TrUtils.IsNull(ROPrintData.Product) && !tr_utils_1.TrUtils.IsEmpty(ROPrintData.Product.RegNo)) {
40
+ fileName = fileName + '-' + ROPrintData.Product.RegNo;
41
+ }
42
+ return fileName;
43
+ }
44
+ static CommonHeaderDetails(ROPrintData, text, isotherIndustry) {
45
+ return [
46
+ this.GetMainHeaderDetails(ROPrintData.Entity, ROPrintData.HeaderName, ROPrintData.Image, ROPrintData.HColor, ROPrintData.AColor, text),
47
+ shared_pdf_service_1.SharedPDFService.GetReceiptCustomerAndVehicleDetails(ROPrintData._id, ROPrintData.CrDate, ROPrintData.PrDate, ROPrintData.MOut, ROPrintData.MIn, ROPrintData.Product, ROPrintData.PrintType, ROPrintData.For, ROPrintData.SurName, ROPrintData.SurPhone, ROPrintData.Type, ROPrintData.SurEmail, ROPrintData.InsComp, ROPrintData.PolNo, ROPrintData.PolType, ROPrintData.Customer, ROPrintData.IsProforma, ROPrintData.Settings, ROPrintData.Location, isotherIndustry),
48
+ shared_pdf_service_1.SharedPDFService.GetOwnerDetails(ROPrintData.BillTo, ROPrintData.Type, ROPrintData.For),
49
+ shared_pdf_service_1.SharedPDFService.CustomerAndVehicleDetailsAfterLine(),
50
+ shared_pdf_service_1.SharedPDFService.GetDisplayTable(),
51
+ ];
52
+ }
53
+ static GetMainHeaderDetails(Entity, HeaderName, Image, HColor, AColor, text) {
54
+ return [
55
+ shared_pdf_service_1.SharedPDFService.GetMainHeader(Entity, Image, AColor, HColor, text),
56
+ shared_pdf_service_1.SharedPDFService.GetPrintType(HeaderName),
57
+ shared_pdf_service_1.SharedPDFService.HeaderAfterLine()
58
+ ];
59
+ }
60
+ static PreparesparePartsTable(ROPrintData) {
61
+ let List = [];
62
+ // console.log('PreparesparePartsTable', ROPrintData.Entity.Body);
63
+ if (ROPrintData.Entity.Body === 1) {
64
+ for (let i = 0; i < ROPrintData.PrintInfo.length; i++) {
65
+ if (tr_utils_1.TrUtils.IsNull(ROPrintData.PrintInfo[i].Text)) {
66
+ ROPrintData.PrintInfo[i].Text = '';
67
+ }
68
+ List.push(ROPrintData.PrintInfo[i].Text, this.GetLaborPartsTableForView(tr_utils_1.TrUtils.Stringify(ROPrintData.PrintInfo[i].Items), tr_utils_1.TrUtils.Stringify(ROPrintData.PrintInfo[i].Ops), ROPrintData.Entity.MPN));
69
+ }
70
+ }
71
+ else {
72
+ if (ROPrintData.Entity.Body === 2) {
73
+ for (let i = 0; i < ROPrintData.PrintInfo.length; i++) {
74
+ if (tr_utils_1.TrUtils.IsNull(ROPrintData.PrintInfo[i].Text)) {
75
+ ROPrintData.PrintInfo[i].Text = '';
76
+ }
77
+ List.push(ROPrintData.PrintInfo[i].Text, this.WithOutDiscountFieldTable(tr_utils_1.TrUtils.Stringify(ROPrintData.PrintInfo[i].Items), tr_utils_1.TrUtils.Stringify(ROPrintData.PrintInfo[i].Ops), ROPrintData.ShowTaxColumn, ROPrintData.Entity.MPN, ROPrintData.Entity.Body, ROPrintData.ShowIGST, ROPrintData.ConsolidateGST, ROPrintData.ShowDiscountColumn));
78
+ }
79
+ }
80
+ else {
81
+ if (ROPrintData.Summary) {
82
+ List.push('', this.GetLaborPartsTableForView(ROPrintData.Items, ROPrintData.Ops, ROPrintData.Entity.MPN));
83
+ }
84
+ else {
85
+ for (let i = 0; i < ROPrintData.PrintInfo.length; i++) {
86
+ if (tr_utils_1.TrUtils.IsNull(ROPrintData.PrintInfo[i].Text)) {
87
+ ROPrintData.PrintInfo[i].Text = '';
88
+ }
89
+ List.push(ROPrintData.PrintInfo[i].Text, this.GetWithOutDiscAndTaxFieldHeader(tr_utils_1.TrUtils.Stringify(ROPrintData.PrintInfo[i].Items), tr_utils_1.TrUtils.Stringify(ROPrintData.PrintInfo[i].Ops), ROPrintData.ShowTaxColumn, ROPrintData.Entity.MPN, ROPrintData.Entity.Body, ROPrintData.ShowIGST, ROPrintData.ConsolidateGST, ROPrintData.ShowDiscountColumn));
90
+ }
91
+ }
92
+ }
93
+ }
94
+ return List;
95
+ }
96
+ static GetLaborPartsTableForView(Parts, Ops, PrintPartNo) {
97
+ if (Parts.length !== 0 || Ops.length !== 0) {
98
+ if (PrintPartNo) {
99
+ return {
100
+ style: 'tableExample',
101
+ // marginLeft: 20,
102
+ table: {
103
+ widths: [25, 30, 170, 85, 15, 20, 50, 30, 30, 50],
104
+ // headerRows: 2,
105
+ body: this.buildTableForCustomerLabor(Parts, Ops, PrintPartNo, false)
106
+ },
107
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
108
+ };
109
+ }
110
+ else {
111
+ return {
112
+ style: 'tableExample',
113
+ // marginLeft: 20,
114
+ table: {
115
+ widths: [25, 200, 55, 25, 55, 55, 40, 15, 50],
116
+ // headerRows: 2,
117
+ body: this.buildTableForCustomerLabor(Parts, Ops, PrintPartNo, false)
118
+ },
119
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
120
+ };
121
+ }
122
+ }
123
+ else {
124
+ let a = '';
125
+ return a;
126
+ }
127
+ }
128
+ static WithOutDiscountFieldTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn) {
129
+ if (Parts.length !== 0 || Ops.length !== 0) {
130
+ if (PrintPartNo) {
131
+ return {
132
+ style: 'tableExample',
133
+ marginLeft: 20,
134
+ table: {
135
+ widths: [25, 60, 160, 25, 50, 60, 30, 50, 50, 50],
136
+ headerRows: 1,
137
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
138
+ },
139
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
140
+ };
141
+ }
142
+ else {
143
+ return {
144
+ style: 'tableExample',
145
+ marginLeft: 20,
146
+ table: {
147
+ widths: [25, 215, 25, 50, 60, 45, 50, 50, 50],
148
+ headerRows: 1,
149
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
150
+ },
151
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
152
+ };
153
+ }
154
+ }
155
+ else {
156
+ let a = '';
157
+ return a;
158
+ }
159
+ }
160
+ static BuildTableBodyForLaborAndParts(Parts, Labor, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn) {
161
+ var body = [];
162
+ let columns = shared_print_service_1.PrintSharedService.GetReceiptWithOutDiscountFieldHeader(PrintPartNo, ShowTaxColumn, Body, ShowIGST, ShowDiscountColumn);
163
+ // if (ShowTaxColumn) {
164
+ for (let i = 0; i < columns.length; i++) {
165
+ body.push(columns[i]);
166
+ }
167
+ columns = columns[1];
168
+ // } else {
169
+ // body.push(columns[1]);
170
+ // }
171
+ let DummyOps = [];
172
+ if (Parts.length !== 0) {
173
+ let dummypartadding1 = {};
174
+ dummypartadding1.SNo = '';
175
+ dummypartadding1.Desc = 'Spare Parts';
176
+ dummypartadding1.Qty = '';
177
+ dummypartadding1.UnPr = '';
178
+ dummypartadding1.LineTotal = '';
179
+ Parts.unshift(dummypartadding1);
180
+ }
181
+ let SNo = 1;
182
+ Parts.forEach((part) => {
183
+ var dataRow = [];
184
+ columns.forEach((column) => {
185
+ if ((!tr_utils_1.TrUtils.IsFixedZero(part[column.Field]) && !tr_utils_1.TrUtils.IsNull(part[column.Field]))
186
+ || (column.text === 'Line Total')) {
187
+ if (part[column.Field] === 'Spare Parts') {
188
+ dataRow.push({ text: part[column.Field].toString(), marginLeft: 10, style: 'InlineHeader' });
189
+ }
190
+ else {
191
+ if (((column.Field === 'CGSTAmt' || column.Field === 'SGSTAmt' || column.Field === 'CGSTPerc' || column.Field === 'SGSTPerc' || column.Field === 'IGSTAmt' || column.Field === 'IGSTPerc')
192
+ && tr_utils_1.TrUtils.CheckInvalidSelect(part.TCode))) {
193
+ part[column.Field] = '';
194
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'center' });
195
+ }
196
+ else {
197
+ if (column.text === 'Line Total' || column.Field === 'UnPr' || column.Field === 'QtyAndUoM'
198
+ || column.text === 'Tax' || column.Field === 'Disc' || column.Field === 'Perc' || column.Field === 'CGSTAmt' || column.Field === 'SGSTAmt'
199
+ || column.Field === 'CGSTPerc' || column.Field === 'SGSTPerc' || column.Field === 'IGSTAmt' || column.Field === 'IGSTPerc') {
200
+ if (column.Field === 'Disc') {
201
+ if (column.type === 'percentage') {
202
+ if (!tr_utils_1.TrUtils.IsEmpty(part[column.Field])) {
203
+ dataRow.push({ text: part[column.Field].toString(), noWrap: true });
204
+ }
205
+ else {
206
+ dataRow.push({ text: '', noWrap: true });
207
+ }
208
+ }
209
+ else {
210
+ if (!tr_utils_1.TrUtils.IsZero(part[column.Field])) {
211
+ dataRow.push({ text: part[column.Field].toString(), noWrap: true });
212
+ }
213
+ else {
214
+ dataRow.push({ text: '', noWrap: true });
215
+ }
216
+ }
217
+ }
218
+ else {
219
+ if (!tr_utils_1.TrUtils.IsZero(part[column.Field])) {
220
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'right', nowrap: true });
221
+ }
222
+ else {
223
+ dataRow.push({ text: '', noWrap: true });
224
+ }
225
+ }
226
+ }
227
+ else {
228
+ // dataRow.push(part[column.Field].toString());
229
+ if (column.Field === 'Desc') {
230
+ let DescData = [];
231
+ DescData.push(part[column.Field].toString());
232
+ if (!tr_utils_1.TrUtils.IsEmpty(part['EDesc'])) {
233
+ DescData.push({ text: part['EDesc'].toString(), color: 'grey' });
234
+ }
235
+ dataRow.push({ stack: DescData });
236
+ }
237
+ else {
238
+ dataRow.push({ text: part[column.Field].toString() });
239
+ }
240
+ }
241
+ }
242
+ }
243
+ }
244
+ else {
245
+ if (column.Field === 'SNo') {
246
+ part[column.Field] = SNo;
247
+ SNo = SNo + 1;
248
+ }
249
+ else {
250
+ part[column.Field] = '';
251
+ }
252
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'center' });
253
+ }
254
+ });
255
+ body.push(dataRow);
256
+ });
257
+ if (Labor.length !== 0) {
258
+ let dummypartadding1 = {};
259
+ dummypartadding1.SNo = '';
260
+ dummypartadding1.Desc = 'Labor';
261
+ dummypartadding1.Qty = '';
262
+ dummypartadding1.UnPr = '';
263
+ dummypartadding1.LineTotal = '';
264
+ Labor.unshift(dummypartadding1);
265
+ // DummyOps.unshift(dummypartadding1);
266
+ }
267
+ if (Body === 2) {
268
+ for (let i = 0; i < Labor.length; i++) {
269
+ Labor[i].UnPr = '';
270
+ }
271
+ }
272
+ Labor.forEach((Ops) => {
273
+ var dataRow = [];
274
+ columns.forEach((column) => {
275
+ if ((!tr_utils_1.TrUtils.IsFixedZero(Ops[column.Field]) && !tr_utils_1.TrUtils.IsNull(Ops[column.Field]))
276
+ || (column.text === 'Line Total')) {
277
+ if (Ops[column.Field] === 'Labor') {
278
+ dataRow.push({ text: Ops[column.Field].toString(), marginLeft: 50, style: 'InlineHeader' });
279
+ }
280
+ else {
281
+ if (((column.Field === 'CGSTAmt' || column.Field === 'SGSTAmt' || column.Field === 'CGSTPerc' || column.Field === 'SGSTPerc' || column.Field === 'IGSTAmt' || column.Field === 'IGSTPerc')
282
+ && tr_utils_1.TrUtils.CheckInvalidSelect(Ops.TCode))) {
283
+ Ops[column.Field] = '';
284
+ dataRow.push({ text: Ops[column.Field].toString(), alignment: 'center' });
285
+ }
286
+ else {
287
+ if (column.text === 'Line Total' || column.Field === 'Price' || column.text === 'Tax' || column.Field === 'UnPr'
288
+ || column.Field === 'QtyAndUoM' || column.Field === 'Disc' || column.Field === 'Perc' || column.Field === 'CGSTAmt' || column.Field === 'SGSTAmt'
289
+ || column.Field === 'CGSTPerc' || column.Field === 'SGSTPerc' || column.Field === 'IGSTAmt' || column.Field === 'IGSTPerc') {
290
+ if (column.Field === 'Disc') {
291
+ if (column.type === 'percentage') {
292
+ if (Ops.Perc && !tr_utils_1.TrUtils.IsZero(Ops[column.Field])) {
293
+ dataRow.push({ text: Ops[column.Field].toString(), noWrap: true });
294
+ }
295
+ else {
296
+ dataRow.push({ text: '', noWrap: true });
297
+ }
298
+ }
299
+ else {
300
+ if (!Ops.Perc && !tr_utils_1.TrUtils.IsZero(Ops[column.Field])) {
301
+ dataRow.push({ text: Ops[column.Field].toString(), noWrap: true });
302
+ }
303
+ else {
304
+ dataRow.push({ text: '', noWrap: true });
305
+ }
306
+ }
307
+ }
308
+ else {
309
+ if (!tr_utils_1.TrUtils.IsZero(Ops[column.Field])) {
310
+ dataRow.push({ text: Ops[column.Field].toString(), alignment: 'right', nowrap: true });
311
+ }
312
+ else {
313
+ dataRow.push({ text: '', noWrap: true });
314
+ }
315
+ }
316
+ }
317
+ else {
318
+ dataRow.push(Ops[column.Field].toString());
319
+ }
320
+ }
321
+ }
322
+ }
323
+ else {
324
+ if (column.Field === 'SNo') {
325
+ Ops[column.Field] = SNo;
326
+ SNo = SNo + 1;
327
+ }
328
+ else {
329
+ Ops[column.Field] = '';
330
+ }
331
+ dataRow.push({ text: Ops[column.Field].toString(), alignment: 'center' });
332
+ }
333
+ });
334
+ body.push(dataRow);
335
+ });
336
+ return body;
337
+ }
338
+ static GetWithOutDiscAndTaxFieldHeader(Parts, Ops, ShowTaxColumn, PrintPartNo, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn) {
339
+ if (Parts.length !== 0 || Ops.length !== 0) {
340
+ if (ShowTaxColumn) {
341
+ return this.TaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn);
342
+ }
343
+ else {
344
+ if (ConsolidateGST) {
345
+ return this.ConsolidateDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn);
346
+ }
347
+ else {
348
+ return this.NoTaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn);
349
+ }
350
+ }
351
+ }
352
+ else {
353
+ let a = '';
354
+ return a;
355
+ }
356
+ }
357
+ static TaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn) {
358
+ if (PrintPartNo) {
359
+ if (ShowIGST) {
360
+ return {
361
+ style: 'tableExample',
362
+ table: {
363
+ widths: shared_print_service_1.PrintSharedService.TaxReceiptTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
364
+ // headerRows: 2,
365
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
366
+ },
367
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
368
+ };
369
+ }
370
+ else {
371
+ return {
372
+ style: 'tableExample',
373
+ table: {
374
+ widths: shared_print_service_1.PrintSharedService.TaxReceiptTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
375
+ // headerRows: 2,
376
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
377
+ },
378
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
379
+ };
380
+ }
381
+ }
382
+ else {
383
+ if (ShowIGST) {
384
+ return {
385
+ style: 'tableExample',
386
+ table: {
387
+ widths: shared_print_service_1.PrintSharedService.TaxReceiptTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
388
+ // headerRows: 2,
389
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
390
+ },
391
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
392
+ };
393
+ }
394
+ else {
395
+ return {
396
+ style: 'tableExample',
397
+ table: {
398
+ widths: shared_print_service_1.PrintSharedService.TaxTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
399
+ // headerRows: 2,
400
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
401
+ },
402
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
403
+ };
404
+ }
405
+ }
406
+ }
407
+ static ConsolidateDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn) {
408
+ if (PrintPartNo) {
409
+ return {
410
+ style: 'tableExample',
411
+ table: {
412
+ widths: [25, 70, 263, 25, 60, 80, 10, 40],
413
+ // headerRows: 1,
414
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
415
+ },
416
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
417
+ };
418
+ }
419
+ else {
420
+ return {
421
+ style: 'tableExample',
422
+ table: {
423
+ widths: [25, 295, 50, 80, 80, 10, 40],
424
+ // headerRows: 1,
425
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
426
+ },
427
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
428
+ };
429
+ }
430
+ }
431
+ static NoTaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn) {
432
+ if (PrintPartNo) {
433
+ return {
434
+ style: 'tableExample',
435
+ table: {
436
+ widths: shared_print_service_1.PrintSharedService.WidthForInsuranceOrNot(ShowDiscountColumn, PrintPartNo),
437
+ // headerRows: 1,
438
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
439
+ },
440
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
441
+ };
442
+ }
443
+ else {
444
+ return {
445
+ style: 'tableExample',
446
+ table: {
447
+ widths: shared_print_service_1.PrintSharedService.WidthForInsuranceOrNot(ShowDiscountColumn, PrintPartNo),
448
+ // headerRows: 1,
449
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn)
450
+ },
451
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
452
+ };
453
+ }
454
+ }
455
+ static buildTableForCustomerLabor(Parts, Ops, PrintPartNo, customerorInsurance) {
456
+ var body = [];
457
+ let columns;
458
+ columns = this.getSummaryHeaders(PrintPartNo);
459
+ body.push(columns);
460
+ if (Parts.length !== 0) {
461
+ let dummypartadding1 = {};
462
+ dummypartadding1.SNo = '';
463
+ dummypartadding1.Desc = 'Spare Parts';
464
+ dummypartadding1.Qty = '';
465
+ dummypartadding1.UnPr = '';
466
+ dummypartadding1.Price = '';
467
+ dummypartadding1.DiscountedPrice = '';
468
+ dummypartadding1.LineTotal = '';
469
+ dummypartadding1.QtyAndUoM = '';
470
+ dummypartadding1.HSN = '';
471
+ dummypartadding1.MPN = '';
472
+ Parts.unshift(dummypartadding1);
473
+ }
474
+ let SNo = 1;
475
+ Parts.forEach((part) => {
476
+ var dataRow = [];
477
+ columns.forEach((column) => {
478
+ if (!tr_utils_1.TrUtils.IsFixedZero(part[column.Field]) && !tr_utils_1.TrUtils.IsNull(part[column.Field])
479
+ || column.text === 'Line Total') {
480
+ if (part[column.Field] === 'Spare Parts') {
481
+ dataRow.push({ text: part[column.Field].toString(), marginLeft: 10, style: 'InlineHeader' });
482
+ }
483
+ else {
484
+ // tslint:disable-next-line:max-line-length
485
+ if (column.text === 'Line Total' || column.Field === 'QtyAndUoM' || column.Field === 'CustPrice' || column.Field === 'InsPrice' ||
486
+ column.Field === 'DiscountedPrice' || column.Field === 'TaxAmount' || column.Field === 'UnPr') {
487
+ if (column.Field === 'Disc Amt') {
488
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'right', noWrap: true });
489
+ }
490
+ else {
491
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'right', nowrap: true });
492
+ }
493
+ }
494
+ else {
495
+ if (column.Field === 'Desc') {
496
+ let DescData = [];
497
+ DescData.push(part[column.Field].toString());
498
+ if (!tr_utils_1.TrUtils.IsEmpty(part['EDesc'])) {
499
+ DescData.push({ text: part['EDesc'].toString(), color: 'grey' });
500
+ }
501
+ dataRow.push({ stack: DescData });
502
+ }
503
+ else {
504
+ dataRow.push({ text: part[column.Field].toString() });
505
+ }
506
+ }
507
+ }
508
+ }
509
+ else {
510
+ if (column.Field === 'SNo') {
511
+ part[column.Field] = SNo;
512
+ SNo = SNo + 1;
513
+ }
514
+ else {
515
+ part[column.Field] = '';
516
+ }
517
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'center' });
518
+ }
519
+ });
520
+ body.push(dataRow);
521
+ });
522
+ if (Ops.length !== 0) {
523
+ let dummypartadding1 = {};
524
+ dummypartadding1.SNo = '';
525
+ dummypartadding1.Desc = 'Labor';
526
+ dummypartadding1.Qty = '';
527
+ dummypartadding1.UnPr = '';
528
+ dummypartadding1.Price = '';
529
+ dummypartadding1.DiscountedPrice = '';
530
+ dummypartadding1.LineTotal = '';
531
+ dummypartadding1.QtyAndUoM = '';
532
+ dummypartadding1.HSN = '';
533
+ Ops.unshift(dummypartadding1);
534
+ }
535
+ Ops.forEach((labor) => {
536
+ var dataRow = [];
537
+ columns.forEach((column) => {
538
+ if (!tr_utils_1.TrUtils.IsFixedZero(labor[column.Field]) && !tr_utils_1.TrUtils.IsNull(labor[column.Field])
539
+ || column.text === 'Line Total') {
540
+ if (labor[column.Field] === 'Labor') {
541
+ dataRow.push({ text: labor[column.Field].toString(), marginLeft: 50, style: 'InlineHeader' });
542
+ }
543
+ else {
544
+ if (column.text === 'Line Total' || column.Field === 'QtyAndUoM' || column.Field === 'DiscountedPrice' || column.Field === 'TaxAmount'
545
+ || column.Field === 'UnPr' || column.Field === 'CustPrice' || column.Field === 'InsPrice') {
546
+ if (column.Field === 'Disc Amt') {
547
+ dataRow.push({ text: labor[column.Field].toString(), alignment: 'right', noWrap: true });
548
+ }
549
+ else {
550
+ dataRow.push({ text: labor[column.Field].toString(), alignment: 'right', nowrap: true });
551
+ }
552
+ }
553
+ else {
554
+ dataRow.push({ text: labor[column.Field].toString() });
555
+ }
556
+ }
557
+ }
558
+ else {
559
+ if (column.Field === 'SNo') {
560
+ labor[column.Field] = SNo;
561
+ SNo = SNo + 1;
562
+ }
563
+ else {
564
+ labor[column.Field] = '';
565
+ }
566
+ dataRow.push({ text: labor[column.Field].toString(), alignment: 'center' });
567
+ }
568
+ });
569
+ body.push(dataRow);
570
+ });
571
+ return body;
572
+ }
573
+ static getSummaryHeaders(permission) {
574
+ let headersNames = [{ text: 'Description', style: 'tableheader', Field: 'Desc' },
575
+ { text: 'HSN / SAC', style: 'tableheader', Field: 'SAC' },
576
+ { text: 'Qty', style: 'tableheader', Field: 'QtyAndUoM' },
577
+ // { text: 'Rate / Unit', style: 'tableheader', Field: 'UnPr' },
578
+ { text: 'Ins. Amt', style: 'tableheader', Field: 'AssPr' },
579
+ { text: 'Cust. Amt', style: 'tableheader', Field: 'Pr' },
580
+ { text: 'Disc.(Rs)', style: 'tableheader', Field: 'DiscountedPrice' },
581
+ { text: 'Tax %', style: 'tableheader', Field: 'TaxAmount' },
582
+ { text: 'Line Total', style: 'tableheader', Field: 'LineTotal' }];
583
+ if (permission) {
584
+ let sno = { text: 'S.No.', style: 'tableheader', Field: 'SNo' };
585
+ let MPN = { text: 'Part No', style: 'tableheader', Field: 'MPN' };
586
+ headersNames.unshift(sno, MPN);
587
+ }
588
+ else {
589
+ let sno = { text: 'S.No.', style: 'tableheader', Field: 'SNo' };
590
+ headersNames.unshift(sno);
591
+ }
592
+ return headersNames;
593
+ }
594
+ static CommonTotalDetails(ROPrintData, index, numberofCopies) {
595
+ let CommonDetails = [
596
+ shared_pdf_service_1.SharedPDFService.GetFinalTotalDetails(ROPrintData.CustLaborTotalBeforeDisc, ROPrintData.CustLaborDiscTotal, ROPrintData.CustLaborCGST, ROPrintData.CustLaborSGST, ROPrintData.CustLaborIGST, ROPrintData.CustPartIGST, ROPrintData.ShowIGST, ROPrintData.ShowTaxColumn, ROPrintData.CustPartsTotalBeforeDisc, ROPrintData.CustPartsDiscTotal, ROPrintData.CustPartCGST, ROPrintData.CustPartSGST, ROPrintData.CustTaxGroupData, ROPrintData.ShowAccParts, ROPrintData.CustLaborAfterTax, ROPrintData.CustPartAfterTax, ROPrintData.FixedDisc, ROPrintData.For, ROPrintData.FixedTotal, ROPrintData.CustTotalRoundedBy, ROPrintData.CustRoundedTotal, ROPrintData.ShowTaxColumn, ROPrintData.ShowTaxColumn, tr_utils_1.TrUtils.isTaxable(ROPrintData.Settings.Tax), ROPrintData.CustLaborITax, ROPrintData.CustPartITax, ROPrintData.Consolidate, ROPrintData.From, ROPrintData.Adj, null),
597
+ shared_pdf_service_1.SharedPDFService.InvoiceDueStatus(ROPrintData.Type, ROPrintData.Paid, ROPrintData.Due, ROPrintData.Sts, false),
598
+ shared_pdf_service_1.SharedPDFService.GetTemsAndConditions(ROPrintData.Entity.Terms),
599
+ shared_pdf_service_1.SharedPDFService.GetUnderLine(),
600
+ shared_pdf_service_1.SharedPDFService.GetSignatures(ROPrintData.Entity.CName, ROPrintData.Type, ROPrintData.For),
601
+ ];
602
+ if (ROPrintData.Type !== 'Invoice') {
603
+ CommonDetails.splice(2, 0, shared_pdf_service_1.SharedPDFService.GetUnderLine());
604
+ }
605
+ if (!tr_utils_1.TrUtils.IsNull(numberofCopies) && numberofCopies.length !== 0 && (index !== (numberofCopies.length - 1))) {
606
+ CommonDetails.push({ text: '', pageBreak: 'after' });
607
+ }
608
+ return CommonDetails;
609
+ }
610
+ }
611
+ exports.SalesReceiptpdfService = SalesReceiptpdfService;