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,539 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SalesReceiptprintService = void 0;
4
+ const my_date_1 = require("../utils/my-date");
5
+ const tr_utils_1 = require("../utils/tr-utils");
6
+ const shared_pdf_service_1 = require("./shared-pdf.service");
7
+ const shared_print_service_1 = require("./shared-print.service");
8
+ class SalesReceiptprintService {
9
+ constructor() {
10
+ this.FontSize = 8;
11
+ }
12
+ static GetInvoicePrint(ROPrintData, numberofCopies, isotherIndustry, withPass, isAuto) {
13
+ var contents = [];
14
+ if (tr_utils_1.TrUtils.IsNull(numberofCopies) || numberofCopies.length === 0) {
15
+ contents.push(this.CommonHeaderDetails(ROPrintData, null, isotherIndustry), this.PreparesparePartsTable(ROPrintData, isAuto), this.CommonTotalDetails(ROPrintData, null, numberofCopies, withPass));
16
+ }
17
+ else {
18
+ numberofCopies.forEach((text, index) => {
19
+ contents.push(this.CommonHeaderDetails(ROPrintData, text, isotherIndustry), this.PreparesparePartsTable(ROPrintData, isAuto), this.CommonTotalDetails(ROPrintData, index, numberofCopies, withPass));
20
+ });
21
+ }
22
+ var dd = {
23
+ info: {
24
+ title: this.GetFileName(ROPrintData),
25
+ },
26
+ background: function (currentPage, pageSize) {
27
+ return shared_pdf_service_1.SharedPDFService.GetWatermarkImage(ROPrintData.Image, pageSize, ROPrintData.Entity.Wmark);
28
+ },
29
+ header: function (currentPage, pageCount) {
30
+ return { text: currentPage.toString() + ' of ' + pageCount, alignment: 'right', marginRight: 7, fontSize: 8, marginTop: 2 };
31
+ },
32
+ pageBreakBefore: function (currentNode, followingNodesOnPage, nodesOnNextPage, previousNodesOnPage) {
33
+ return currentNode.startPosition.top >= 700 && !tr_utils_1.TrUtils.IsNull(currentNode === null || currentNode === void 0 ? void 0 : currentNode.id) && (currentNode === null || currentNode === void 0 ? void 0 : currentNode.id) === '567';
34
+ },
35
+ pageMargins: [10, 15, 10, 15],
36
+ content: contents,
37
+ styles: shared_pdf_service_1.SharedPDFService.GetStyles()
38
+ };
39
+ return dd;
40
+ }
41
+ static GetFileName(ROPrintData) {
42
+ let fileName = ROPrintData.HeaderName;
43
+ if (!tr_utils_1.TrUtils.IsNull(ROPrintData.Product) && !tr_utils_1.TrUtils.IsEmpty(ROPrintData.Product.RegNo)) {
44
+ fileName = fileName + '-' + ROPrintData.Product.RegNo;
45
+ }
46
+ return fileName;
47
+ }
48
+ static CommonHeaderDetails(ROPrintData, text, isotherIndustry) {
49
+ return [
50
+ this.GetMainHeaderDetails(ROPrintData.Entity, ROPrintData.HeaderName, ROPrintData.Image, ROPrintData.HColor, ROPrintData.AColor, text),
51
+ shared_pdf_service_1.SharedPDFService.GetCustomerAndVehicleDetails(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, null, null, null, null),
52
+ shared_pdf_service_1.SharedPDFService.GetOwnerDetails(ROPrintData.Cust, ROPrintData.Type, ROPrintData.For),
53
+ shared_pdf_service_1.SharedPDFService.CustomerAndVehicleDetailsAfterLine(),
54
+ shared_pdf_service_1.SharedPDFService.GetDisplayTable(),
55
+ ];
56
+ }
57
+ static GetMainHeaderDetails(Entity, HeaderName, Image, HColor, AColor, text) {
58
+ return [
59
+ // SharedPDFService.MainHeading(Entity.CName, Entity.Header, Image, HColor, text),
60
+ shared_pdf_service_1.SharedPDFService.GetMainHeader(Entity, Image, AColor, HColor, text),
61
+ shared_pdf_service_1.SharedPDFService.GetPrintType(HeaderName),
62
+ shared_pdf_service_1.SharedPDFService.HeaderAfterLine()
63
+ ];
64
+ }
65
+ static PreparesparePartsTable(ROPrintData, isAuto) {
66
+ let List = [];
67
+ if (ROPrintData.Entity.Body === 1) {
68
+ for (let i = 0; i < ROPrintData.PrintInfo.length; i++) {
69
+ if (tr_utils_1.TrUtils.IsNull(ROPrintData.PrintInfo[i].Text)) {
70
+ ROPrintData.PrintInfo[i].Text = '';
71
+ }
72
+ 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));
73
+ }
74
+ }
75
+ else {
76
+ if (ROPrintData.Entity.Body === 2) {
77
+ for (let i = 0; i < ROPrintData.PrintInfo.length; i++) {
78
+ if (tr_utils_1.TrUtils.IsNull(ROPrintData.PrintInfo[i].Text)) {
79
+ ROPrintData.PrintInfo[i].Text = '';
80
+ }
81
+ 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, isAuto));
82
+ }
83
+ }
84
+ else {
85
+ if (ROPrintData.Summary) {
86
+ List.push('', this.GetLaborPartsTableForView(ROPrintData.Items, ROPrintData.Ops, ROPrintData.Entity.MPN));
87
+ }
88
+ else {
89
+ for (let i = 0; i < ROPrintData.PrintInfo.length; i++) {
90
+ if (tr_utils_1.TrUtils.IsNull(ROPrintData.PrintInfo[i].Text)) {
91
+ ROPrintData.PrintInfo[i].Text = '';
92
+ }
93
+ 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, isAuto));
94
+ }
95
+ }
96
+ }
97
+ }
98
+ return List;
99
+ }
100
+ static GetLaborPartsTableForView(Parts, Ops, PrintPartNo) {
101
+ if (Parts.length !== 0 || Ops.length !== 0) {
102
+ if (PrintPartNo) {
103
+ return {
104
+ style: 'tableExample',
105
+ // marginLeft: 20,
106
+ table: {
107
+ widths: [25, 30, 170, 85, 15, 20, 50, 30, 30, 50],
108
+ // headerRows: 2,
109
+ body: this.buildTableForCustomerLabor(Parts, Ops, PrintPartNo, false)
110
+ },
111
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
112
+ };
113
+ }
114
+ else {
115
+ return {
116
+ style: 'tableExample',
117
+ // marginLeft: 20,
118
+ table: {
119
+ widths: [25, 200, 55, 25, 55, 55, 40, 15, 50],
120
+ // headerRows: 2,
121
+ body: this.buildTableForCustomerLabor(Parts, Ops, PrintPartNo, false)
122
+ },
123
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
124
+ };
125
+ }
126
+ }
127
+ else {
128
+ let a = '';
129
+ return a;
130
+ }
131
+ }
132
+ static WithOutDiscountFieldTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto) {
133
+ if (Parts.length !== 0 || Ops.length !== 0) {
134
+ if (PrintPartNo) {
135
+ return {
136
+ style: 'tableExample',
137
+ marginLeft: 20,
138
+ table: {
139
+ widths: [25, 60, 155, 30, 50, 60, 30, 50],
140
+ headerRows: 1,
141
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
142
+ },
143
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
144
+ };
145
+ }
146
+ else {
147
+ return {
148
+ style: 'tableExample',
149
+ marginLeft: 20,
150
+ table: {
151
+ widths: [25, 215, 25, 50, 60, 45, 50],
152
+ headerRows: 1,
153
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
154
+ },
155
+ layout: shared_print_service_1.PrintSharedService.LayOutStyleanother()
156
+ };
157
+ }
158
+ }
159
+ else {
160
+ let a = '';
161
+ return a;
162
+ }
163
+ }
164
+ static BuildTableBodyForLaborAndParts(Parts, Labor, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto) {
165
+ var body = [];
166
+ let columns = shared_print_service_1.PrintSharedService.GetWithOutDiscountFieldHeader(PrintPartNo, ShowTaxColumn, Body, ShowIGST, ShowDiscountColumn);
167
+ // if (ShowTaxColumn) {
168
+ for (let i = 0; i < columns.length; i++) {
169
+ body.push(columns[i]);
170
+ }
171
+ columns = columns[1];
172
+ // } else {
173
+ // body.push(columns);
174
+ // }
175
+ let DummyOps = [];
176
+ let SNo = 1;
177
+ Parts.forEach((part) => {
178
+ var dataRow = [];
179
+ columns.forEach((column) => {
180
+ if ((!tr_utils_1.TrUtils.IsFixedZero(part[column.Field]) && !tr_utils_1.TrUtils.IsNull(part[column.Field]))
181
+ || (column.text === 'Line Total')) {
182
+ if (part[column.Field] === 'Spare Parts') {
183
+ dataRow.push({ text: part[column.Field].toString(), marginLeft: 50, style: 'InlineHeader' });
184
+ }
185
+ else {
186
+ if (((column.Field === 'CGSTAmt' || column.Field === 'SGSTAmt' || column.Field === 'CGSTPerc' || column.Field === 'SGSTPerc' || column.Field === 'IGSTAmt' || column.Field === 'IGSTPerc')
187
+ && tr_utils_1.TrUtils.CheckInvalidSelect(part.TCode))) {
188
+ part[column.Field] = '';
189
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'center' });
190
+ }
191
+ else {
192
+ if (column.text === 'Line Total' || column.Field === 'UnPr' || column.Field === 'QtyAndUoM'
193
+ || column.text === 'Tax' || column.Field === 'Disc' || column.Field === 'Perc' || column.Field === 'CGSTAmt' || column.Field === 'SGSTAmt'
194
+ || column.Field === 'CGSTPerc' || column.Field === 'SGSTPerc' || column.Field === 'IGSTAmt' || column.Field === 'IGSTPerc') {
195
+ if (column.Field === 'Disc') {
196
+ if (column.type === 'percentage') {
197
+ if (!tr_utils_1.TrUtils.IsEmpty(part[column.Field])) {
198
+ dataRow.push({ text: part[column.Field].toString(), noWrap: true });
199
+ }
200
+ else {
201
+ dataRow.push({ text: '', noWrap: true });
202
+ }
203
+ }
204
+ else {
205
+ if (!tr_utils_1.TrUtils.IsNull(part[column.Field])) {
206
+ dataRow.push({ text: part[column.Field].toString(), noWrap: true });
207
+ }
208
+ else {
209
+ dataRow.push({ text: '', noWrap: true });
210
+ }
211
+ }
212
+ }
213
+ else {
214
+ if (!tr_utils_1.TrUtils.IsNull(part[column.Field])) {
215
+ dataRow.push({ text: part[column.Field].toString(), bold: part.bold, alignment: 'right', nowrap: true });
216
+ }
217
+ else {
218
+ dataRow.push({ text: '', noWrap: true });
219
+ }
220
+ }
221
+ }
222
+ else {
223
+ // dataRow.push(part[column.Field].toString());
224
+ if (column.Field === 'Desc') {
225
+ let DescData = [];
226
+ DescData.push({ text: part[column.Field].toString(), bold: part.bold });
227
+ if (!tr_utils_1.TrUtils.IsEmpty(part['EDesc'])) {
228
+ DescData.push({ text: part['EDesc'].toString(), color: 'grey' });
229
+ }
230
+ dataRow.push({ stack: DescData });
231
+ }
232
+ else {
233
+ dataRow.push({ text: part[column.Field].toString() });
234
+ }
235
+ }
236
+ }
237
+ }
238
+ }
239
+ else {
240
+ if (column.Field === 'SNo') {
241
+ part[column.Field] = SNo;
242
+ SNo = SNo + 1;
243
+ }
244
+ else {
245
+ if (tr_utils_1.TrUtils.IsNull(part[column.Field])) {
246
+ part[column.Field] = '';
247
+ }
248
+ }
249
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'center' });
250
+ }
251
+ });
252
+ body.push(dataRow);
253
+ });
254
+ return body;
255
+ }
256
+ static GetWithOutDiscAndTaxFieldHeader(Parts, Ops, ShowTaxColumn, PrintPartNo, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto) {
257
+ if (Parts.length !== 0 || Ops.length !== 0) {
258
+ if (ShowTaxColumn) {
259
+ return this.TaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto);
260
+ }
261
+ else {
262
+ if (ConsolidateGST) {
263
+ return this.ConsolidateDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto);
264
+ }
265
+ else {
266
+ return this.NoTaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto);
267
+ }
268
+ }
269
+ }
270
+ else {
271
+ let a = '';
272
+ return a;
273
+ }
274
+ }
275
+ static TaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto) {
276
+ if (PrintPartNo) {
277
+ if (ShowIGST) {
278
+ return {
279
+ style: 'tableExample',
280
+ table: {
281
+ widths: shared_print_service_1.PrintSharedService.TaxTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
282
+ // headerRows: 2,
283
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
284
+ },
285
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
286
+ };
287
+ }
288
+ else {
289
+ return {
290
+ style: 'tableExample',
291
+ table: {
292
+ widths: shared_print_service_1.PrintSharedService.TaxTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
293
+ // headerRows: 2,
294
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
295
+ },
296
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
297
+ };
298
+ }
299
+ }
300
+ else {
301
+ if (ShowIGST) {
302
+ return {
303
+ style: 'tableExample',
304
+ table: {
305
+ widths: shared_print_service_1.PrintSharedService.TaxTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
306
+ // headerRows: 2,
307
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
308
+ },
309
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
310
+ };
311
+ }
312
+ else {
313
+ return {
314
+ style: 'tableExample',
315
+ table: {
316
+ widths: shared_print_service_1.PrintSharedService.TaxTableWidths(PrintPartNo, ShowIGST, ShowDiscountColumn),
317
+ // headerRows: 2,
318
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
319
+ },
320
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
321
+ };
322
+ }
323
+ }
324
+ }
325
+ static ConsolidateDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto) {
326
+ if (PrintPartNo) {
327
+ return {
328
+ style: 'tableExample',
329
+ table: {
330
+ widths: [25, 70, 263, 25, 60, 80, 10, 40],
331
+ // headerRows: 1,
332
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
333
+ },
334
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
335
+ };
336
+ }
337
+ else {
338
+ return {
339
+ style: 'tableExample',
340
+ table: {
341
+ widths: [25, 295, 50, 80, 80, 10, 40],
342
+ // headerRows: 1,
343
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
344
+ },
345
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
346
+ };
347
+ }
348
+ }
349
+ static NoTaxDataTable(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto) {
350
+ if (PrintPartNo) {
351
+ return {
352
+ style: 'tableExample',
353
+ table: {
354
+ widths: shared_print_service_1.PrintSharedService.WidthForInsuranceOrNot(ShowDiscountColumn, PrintPartNo),
355
+ // headerRows: 1,
356
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
357
+ },
358
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
359
+ };
360
+ }
361
+ else {
362
+ return {
363
+ style: 'tableExample',
364
+ table: {
365
+ widths: shared_print_service_1.PrintSharedService.WidthForInsuranceOrNot(ShowDiscountColumn, PrintPartNo),
366
+ // headerRows: 1,
367
+ body: this.BuildTableBodyForLaborAndParts(Parts, Ops, PrintPartNo, ShowTaxColumn, Body, ShowIGST, ConsolidateGST, ShowDiscountColumn, isAuto)
368
+ },
369
+ layout: shared_print_service_1.PrintSharedService.LayOutStyle()
370
+ };
371
+ }
372
+ }
373
+ static buildTableForCustomerLabor(Parts, Ops, PrintPartNo, customerorInsurance) {
374
+ var body = [];
375
+ let columns;
376
+ columns = this.getSummaryHeaders(PrintPartNo);
377
+ body.push(columns);
378
+ let SNo = 1;
379
+ Parts.forEach((part) => {
380
+ var dataRow = [];
381
+ columns.forEach((column) => {
382
+ if (!tr_utils_1.TrUtils.IsFixedZero(part[column.Field]) && !tr_utils_1.TrUtils.IsNull(part[column.Field])
383
+ || column.text === 'Line Total') {
384
+ if (part[column.Field] === 'Spare Parts') {
385
+ dataRow.push({ text: part[column.Field].toString(), marginLeft: 50, style: 'InlineHeader' });
386
+ }
387
+ else {
388
+ // tslint:disable-next-line:max-line-length
389
+ if (column.text === 'Line Total' || column.Field === 'QtyAndUoM' || column.Field === 'CustPrice' || column.Field === 'InsPrice' ||
390
+ column.Field === 'DiscountedPrice' || column.Field === 'TaxAmount' || column.Field === 'UnPr') {
391
+ if (column.Field === 'Disc Amt') {
392
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'right', noWrap: true });
393
+ }
394
+ else {
395
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'right', nowrap: true });
396
+ }
397
+ }
398
+ else {
399
+ if (column.Field === 'Desc') {
400
+ let DescData = [];
401
+ DescData.push(part[column.Field].toString());
402
+ if (!tr_utils_1.TrUtils.IsEmpty(part['EDesc'])) {
403
+ DescData.push({ text: part['EDesc'].toString(), color: 'grey' });
404
+ }
405
+ dataRow.push({ stack: DescData });
406
+ }
407
+ else {
408
+ dataRow.push({ text: part[column.Field].toString() });
409
+ }
410
+ }
411
+ }
412
+ }
413
+ else {
414
+ if (column.Field === 'SNo') {
415
+ part[column.Field] = SNo;
416
+ SNo = SNo + 1;
417
+ }
418
+ else {
419
+ if (tr_utils_1.TrUtils.IsNull(part[column.Field])) {
420
+ part[column.Field] = '';
421
+ }
422
+ }
423
+ dataRow.push({ text: part[column.Field].toString(), alignment: 'center' });
424
+ }
425
+ });
426
+ body.push(dataRow);
427
+ });
428
+ return body;
429
+ }
430
+ static getSummaryHeaders(permission) {
431
+ let headersNames = [{ text: 'Description', style: 'tableheader', Field: 'Desc' },
432
+ { text: 'HSN / SAC', style: 'tableheader', Field: 'SAC' },
433
+ { text: 'Qty', style: 'tableheader', Field: 'QtyAndUoM' },
434
+ // { text: 'Rate / Unit', style: 'tableheader', Field: 'UnPr' },
435
+ { text: 'Ins. Amt', style: 'tableheader', Field: 'AssPr' },
436
+ { text: 'Cust. Amt', style: 'tableheader', Field: 'Pr' },
437
+ { text: 'Disc.(Rs)', style: 'tableheader', Field: 'DiscountedPrice' },
438
+ { text: 'Tax %', style: 'tableheader', Field: 'TaxAmount' },
439
+ { text: 'Line Total', style: 'tableheader', Field: 'LineTotal' }];
440
+ if (permission) {
441
+ let sno = { text: 'S.No.', style: 'tableheader', Field: 'SNo' };
442
+ let MPN = { text: 'Part No', style: 'tableheader', Field: 'MPN' };
443
+ headersNames.unshift(sno, MPN);
444
+ }
445
+ else {
446
+ let sno = { text: 'S.No.', style: 'tableheader', Field: 'SNo' };
447
+ headersNames.unshift(sno);
448
+ }
449
+ return headersNames;
450
+ }
451
+ static CommonTotalDetails(ROPrintData, index, numberofCopies, withPass) {
452
+ // console.log('ROPrintData', ROPrintData);
453
+ let CommonDetails = [
454
+ shared_pdf_service_1.SharedPDFService.GetFinalTotalDetails(ROPrintData.CustLaborTotalAfterDisc, ROPrintData.CustLaborDiscTotal, ROPrintData.CustLaborCGST, ROPrintData.CustLaborSGST, ROPrintData.CustLaborIGST, ROPrintData.CustPartIGST, ROPrintData.ShowIGST, ROPrintData.ShowTaxColumn, ROPrintData.CustPartsTotalAfterDisc, 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),
455
+ shared_pdf_service_1.SharedPDFService.InvoiceDueStatus(ROPrintData.Type, ROPrintData.Paid, ROPrintData.Due, ROPrintData.Sts, ROPrintData.isCountersale),
456
+ shared_pdf_service_1.SharedPDFService.GetTemsAndConditions(ROPrintData.Entity.Terms),
457
+ shared_pdf_service_1.SharedPDFService.GetBankDetials(ROPrintData.Entity.Bank, ROPrintData.Entity.PrBank),
458
+ shared_pdf_service_1.SharedPDFService.GetUnderLine(),
459
+ shared_pdf_service_1.SharedPDFService.GetInvSignatures(ROPrintData.Entity.CName, ROPrintData.isCountersale),
460
+ // this.PageBrake(ROPrintData, withPass),
461
+ shared_pdf_service_1.SharedPDFService.GetUnderLine1(withPass),
462
+ this.GetGatePass(withPass, ROPrintData)
463
+ ];
464
+ if (ROPrintData.Type !== 'Invoice') {
465
+ CommonDetails.splice(2, 0, shared_pdf_service_1.SharedPDFService.GetUnderLine());
466
+ }
467
+ if (!tr_utils_1.TrUtils.IsNull(numberofCopies) && numberofCopies.length !== 0 && (index !== (numberofCopies.length - 1))) {
468
+ CommonDetails.push({ text: '', pageBreak: 'after' });
469
+ }
470
+ return CommonDetails;
471
+ }
472
+ static GetGatePass(isGatepass, ROPrintData) {
473
+ // console.log('ROPrintData', ROPrintData);
474
+ if (isGatepass) {
475
+ return {
476
+ columns: [{
477
+ id: '567',
478
+ text: [{ text: '', id: '1234' }],
479
+ stack: [
480
+ {
481
+ columns: [{ text: '' }, { text: 'Gate Pass', bold: true, fontSize: 9, alignment: 'center', marginTop: 5 },
482
+ { text: 'Date: ' + my_date_1.MyDate.ConvertUTCDateToReadable(my_date_1.MyDate.GetDateTimeNowInUTC()), marginTop: 5, fontSize: 9, alignment: 'right' }]
483
+ },
484
+ { text: ROPrintData.Entity.CName, alignment: 'center', bold: true, fontSize: 12, marginTop: 5, marginBottom: 5 },
485
+ {
486
+ marginTop: 5,
487
+ columns: [
488
+ // {
489
+ // stack: [{ text: 'Customer Name :' + ROPrintData.Customer.Name, fontSize: 9 }, { text: 'Service Advisor :', fontSize: 9, marginBottom: 10 },
490
+ // { text: 'Vehicle has been received from workshop and work done as per my satisfaction.', fontSize: 6 }]
491
+ // }
492
+ { text: '', width: 60 },
493
+ this.GetCustomerDetails(ROPrintData, false),
494
+ this.GetVehicleDetails(ROPrintData.Product, false)
495
+ // {
496
+ // stack: [{ text: 'Chassis No :' + ROPrintData.Product.VIN, fontSize: 9 },
497
+ // { text: 'Vehicle No :' + ROPrintData.Product.RegNo, fontSize: 9 }, { text: 'Vehicle Model :' + ROPrintData.Product.Model, fontSize: 9 }, { text: 'Repair Order No :', fontSize: 9 }]
498
+ // }
499
+ ]
500
+ },
501
+ { text: 'Vehicle has been received from workshop and work done as per my satisfaction.', fontSize: 7, marginTop: 10, marginLeft: 60 },
502
+ { columns: [shared_pdf_service_1.SharedPDFService.CustomerSignature(), { text: '' }, shared_pdf_service_1.SharedPDFService.Accountantsignature()] }
503
+ ]
504
+ }],
505
+ };
506
+ }
507
+ else {
508
+ return shared_pdf_service_1.SharedPDFService.emptyObject();
509
+ }
510
+ }
511
+ static GetCustomerDetails(ROPrintData, isOtherIndustry) {
512
+ let CustomerData = [
513
+ { name: 'Customer Name', value: ROPrintData.Customer.Name },
514
+ { name: 'Service Advisor', value: ROPrintData.Name },
515
+ ];
516
+ return shared_pdf_service_1.SharedPDFService.GetVehicleDataTable(CustomerData);
517
+ }
518
+ static GetVehicleDetails(Vehicle, isOtherIndustry) {
519
+ let vehicleData;
520
+ vehicleData = [];
521
+ if (isOtherIndustry) {
522
+ vehicleData.push({ name: 'Serial No', value: shared_pdf_service_1.SharedPDFService.CheckAndSetString(Vehicle.SNo) });
523
+ }
524
+ let a = [
525
+ { name: 'Vehicle Model', value: shared_pdf_service_1.SharedPDFService.CheckAndSetString(Vehicle.Model) },
526
+ ];
527
+ if (!isOtherIndustry) {
528
+ a.unshift({ name: 'Regn. No', value: shared_pdf_service_1.SharedPDFService.CheckAndSetString(Vehicle.RegNo) });
529
+ if (!tr_utils_1.TrUtils.IsEmpty(Vehicle.VIN)) {
530
+ a.unshift({ name: 'Chassis No', value: shared_pdf_service_1.SharedPDFService.CheckAndSetString(Vehicle.VIN) });
531
+ }
532
+ }
533
+ for (let i = 0; i < a.length; i++) {
534
+ vehicleData.push(a[i]);
535
+ }
536
+ return shared_pdf_service_1.SharedPDFService.GetVehicleDataTable(vehicleData);
537
+ }
538
+ }
539
+ exports.SalesReceiptprintService = SalesReceiptprintService;
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CategoryWiseItemPDFService = void 0;
4
+ const tr_utils_1 = require("../utils/tr-utils");
5
+ const shared_pdf_service_1 = require("./shared-pdf.service");
6
+ class CategoryWiseItemPDFService {
7
+ static GetCategoryWiseItemSales(InvoicesData, CName, isPhar, isHC, isSale, searchValue) {
8
+ var dd = {
9
+ info: {
10
+ title: isSale ? 'CategoryWiseItem' : 'CategoryWiseService',
11
+ },
12
+ header: function (currentPage, pageCount) {
13
+ return { text: currentPage.toString() + ' of ' + pageCount, alignment: 'right', marginRight: 7, fontSize: 8, marginTop: 2 };
14
+ },
15
+ pageMargins: [10, 15, 10, 15],
16
+ content: [
17
+ { text: '' + CName + '', style: ['header'] },
18
+ { text: isSale ? 'Category Wise Item Sales' : 'Category Wise Service Sales', alignment: 'center', fontSize: 15, bold: true },
19
+ // { text: 'As of ' + MyDate.ConvertUTCDateToReadable(MyDate.GetDateTimeNowInUTC()), alignment: 'center', fontSize: 10 },
20
+ // SharedPDFService.HeaderAfterLine(),
21
+ shared_pdf_service_1.SharedPDFService.GetSearchValueDetails(searchValue),
22
+ this.GetInvoiceDataTable(InvoicesData, isPhar, isHC, isSale),
23
+ ],
24
+ styles: shared_pdf_service_1.SharedPDFService.GetStyles()
25
+ };
26
+ return dd;
27
+ }
28
+ static GetInvoiceDataTable(InvoicesData, isPhar, isHC, isSale) {
29
+ let Data = [];
30
+ Data.push(this.GetItemsTable(InvoicesData, isPhar, isHC, isSale));
31
+ return Data;
32
+ }
33
+ static getTableWidths(isHC) {
34
+ // if (isHC) {
35
+ // return [25, '*', '*', '*', '*'];
36
+ // } else {
37
+ return [22, '*', 25, 25, 50, 35, 40, 50, 60];
38
+ // }
39
+ }
40
+ static GetItemsTable(InvoiceData, isPhar, isHC, isSale) {
41
+ return {
42
+ style: 'tableExample',
43
+ marginTop: 3,
44
+ marginBottom: 5,
45
+ table: {
46
+ widths: this.getTableWidths(isHC),
47
+ headerRows: 1,
48
+ body: this.BuildTableBodyForLaborAndParts(InvoiceData, isPhar, isHC, isSale)
49
+ },
50
+ layout: {
51
+ hLineWidth: function (i, node) {
52
+ return (i === 0 || i === 1 || i === node.table.body.length) ? 1 : 0.5;
53
+ },
54
+ vLineWidth: function (i, node) {
55
+ return (i === 0 || i === node.table.widths.length) ? 1 : 0.5;
56
+ },
57
+ hLineColor: function (i, node) {
58
+ return (i === 0 || i === 1 || i === node.table.body.length) ? 'gray' : 'lightgrey';
59
+ },
60
+ vLineColor: function (i, node) {
61
+ return 'gray';
62
+ },
63
+ }
64
+ };
65
+ }
66
+ static BuildTableBodyForLaborAndParts(InvoiceData, isPhar, isHC, isSale) {
67
+ let body = this.GetHeaderNames(isPhar, isHC, isSale);
68
+ InvoiceData.forEach((invoice, index) => {
69
+ let dataRow = [];
70
+ dataRow.push({ text: index + 1 });
71
+ dataRow.push({ text: invoice.Name });
72
+ dataRow.push({ text: invoice.Count });
73
+ dataRow.push({ text: invoice.Qty });
74
+ dataRow.push({ text: tr_utils_1.TrUtils.FixPriceValue(invoice.UnAmt), alignment: 'right' });
75
+ dataRow.push({ text: tr_utils_1.TrUtils.FixPriceValue(invoice.Disc), alignment: 'right' });
76
+ dataRow.push({ text: tr_utils_1.TrUtils.FixPriceValue(invoice.Tax), alignment: 'right' });
77
+ dataRow.push({ text: tr_utils_1.TrUtils.FixPriceValue(invoice.NetAmt), alignment: 'right' });
78
+ dataRow.push({ text: tr_utils_1.TrUtils.FixPriceValue(invoice.AvgAmt), alignment: 'right' });
79
+ body.push(dataRow);
80
+ });
81
+ return body;
82
+ }
83
+ static GetHeaderNames(isPhar, isHC, isSale) {
84
+ let HeadingNames;
85
+ HeadingNames = [[{ text: 'S.No', style: 'tableheader1', Field: 'SNo', alignment: 'left', line: true },
86
+ { text: 'Category', style: 'tableheader1', Field: 'Code' },
87
+ { text: 'Count', style: 'tableheader1', Field: 'CrDate' },
88
+ { text: 'Qty', style: 'tableheader1', Field: 'Name' },
89
+ { text: 'Unit Amount', style: 'tableheader1', Field: 'SubTotal', alignment: 'right' },
90
+ { text: 'Discount', style: 'tableheader1', Field: 'Disc', alignment: 'right' },
91
+ { text: 'Tax', style: 'tableheader1', Field: 'Tax', alignment: 'right' },
92
+ { text: 'Net Amount', style: 'tableheader1', Field: 'Adjust', alignment: 'right' },
93
+ { text: 'Avarage Amount', style: 'tableheader1', Field: 'Round', alignment: 'right' },
94
+ ]];
95
+ return HeadingNames;
96
+ }
97
+ }
98
+ exports.CategoryWiseItemPDFService = CategoryWiseItemPDFService;