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.
- package/dist/aggregation/aggregation.js +60 -0
- package/dist/enums/cache-enums.js +37 -0
- package/dist/enums/code-enums.js +288 -0
- package/dist/enums/enums.js +362 -0
- package/dist/enums/industry-enums.js +24 -0
- package/dist/excel-files/GSTR-RO-excel.service.js +935 -0
- package/dist/excel-files/GSTR1-excel.service.js +295 -0
- package/dist/excel-files/GSTR2-excel.service.js +295 -0
- package/dist/excel-files/analysis-excel.service.js +297 -0
- package/dist/excel-files/category-wise-item-excel.service.js +274 -0
- package/dist/excel-files/cust-balance-excel.service.js +287 -0
- package/dist/excel-files/cust-wise-sales-details.js +320 -0
- package/dist/excel-files/cust-wise-sales-summary-excel.service.js +302 -0
- package/dist/excel-files/expiring-drugs-excel.service.js +292 -0
- package/dist/excel-files/insurance-expire-excel.service.js +301 -0
- package/dist/excel-files/invoice-wise-excel.service.js +857 -0
- package/dist/excel-files/item-wise-doctor-sale-excel.service.js +258 -0
- package/dist/excel-files/item-wise-mout-details.js +292 -0
- package/dist/excel-files/item-wise-mout-summary.js +286 -0
- package/dist/excel-files/items-wise-sales-excel.service.js +314 -0
- package/dist/excel-files/manf-wise-sales-excel.service.js +276 -0
- package/dist/excel-files/operator-wise-details.js +265 -0
- package/dist/excel-files/operator-wise-summary.js +266 -0
- package/dist/excel-files/payment-receive-excel.service.js +225 -0
- package/dist/excel-files/payments-made-excel.service.js +302 -0
- package/dist/excel-files/repair-orders-excel.service.js +255 -0
- package/dist/excel-files/sa-wise-labor-sales-excel.service.js +232 -0
- package/dist/excel-files/sa-wise-part-sales-excel.service.js +232 -0
- package/dist/excel-files/sale-summary-excel.service.js +326 -0
- package/dist/excel-files/sales-by-service-details-excel.service.js +1 -0
- package/dist/excel-files/sales-by-service-summary-excel.service.js +422 -0
- package/dist/excel-files/scheduled-drug-summary-excel.service.js +367 -0
- package/dist/excel-files/scheduled-drugs-excel.service.js +366 -0
- package/dist/excel-files/spares-issue-excel.service.js +492 -0
- package/dist/excel-files/stock-excel.service.js +283 -0
- package/dist/excel-files/tally-sales-import.service.js +765 -0
- package/dist/excel-files/ven-balance-excel.service.js +293 -0
- package/dist/index.js +237 -0
- package/dist/services/analysis-pdf.service.js +105 -0
- package/dist/services/appointment-total.service.js +253 -0
- package/dist/services/auto-sales-receipt-pdf.service.js +539 -0
- package/dist/services/category-wise-item-pdf.service.js +98 -0
- package/dist/services/checklist-pdf.js +140 -0
- package/dist/services/checklists-pdf.js +124 -0
- package/dist/services/cn-print.service.js +211 -0
- package/dist/services/consultation-fee-receipt.service.js +378 -0
- package/dist/services/consultation-full-pdf.service.js +220 -0
- package/dist/services/consultation-pdf.service.js +360 -0
- package/dist/services/credit-note-pdf.service.js +578 -0
- package/dist/services/credit-note-totals.service.js +328 -0
- package/dist/services/cust-wise-sales-details-pdf.service.js +118 -0
- package/dist/services/cust-wise-sales-summary-pdf.service.js +111 -0
- package/dist/services/customer-balances-pdf.service.js +169 -0
- package/dist/services/dc-landscape-pdf.service.js +903 -0
- package/dist/services/dc-landscape-without-price-pdf.service.js +853 -0
- package/dist/services/dc-without-price-pdf.service.js +489 -0
- package/dist/services/debit-note-pdf.service.js +673 -0
- package/dist/services/debit-note-print.service.js +234 -0
- package/dist/services/debit-note-totals.service.js +293 -0
- package/dist/services/delivery-challan-pdf.service.js +434 -0
- package/dist/services/delivery-challan-print.service.js +177 -0
- package/dist/services/delivery-challan-totals.js +339 -0
- package/dist/services/equipment-design-pdf.service.js +144 -0
- package/dist/services/est.print-service.js +1053 -0
- package/dist/services/expiring-drugs-pdf.service.js +156 -0
- package/dist/services/hc-inv-pdf.service.js +837 -0
- package/dist/services/insurance-expire-pdf.service.js +99 -0
- package/dist/services/inv-pdf.service.js +785 -0
- package/dist/services/inv-print.service.js +415 -0
- package/dist/services/invoice-landscape-pdf.service.js +909 -0
- package/dist/services/invoice-total.service.js +659 -0
- package/dist/services/issue-parts-pdf.service.js +763 -0
- package/dist/services/item-detais-pdf.js +136 -0
- package/dist/services/item-wise-doctor-sale-pdf.service.js +164 -0
- package/dist/services/item-wise-mout-details-pdf.js +107 -0
- package/dist/services/item-wise-mout-summary-pdf.js +99 -0
- package/dist/services/item-wise-sales-pdf.service.js +178 -0
- package/dist/services/manf-wise-sales-pdf.service.js +173 -0
- package/dist/services/meeting-pdf.js +369 -0
- package/dist/services/mout-pdf.service.js +503 -0
- package/dist/services/operator-wise-details-pdf.service.js +103 -0
- package/dist/services/operator-wise-summary-pdf.js +101 -0
- package/dist/services/pack-ship-pdf.service.js +105 -0
- package/dist/services/pack-ship-print.service.js +167 -0
- package/dist/services/payment-pdf.service.js +373 -0
- package/dist/services/payment-report-pdf.service.js +106 -0
- package/dist/services/po-totals.service.js +279 -0
- package/dist/services/pos-receipt-pdf.js +438 -0
- package/dist/services/purchase-order-pdf.service.js +924 -0
- package/dist/services/purchase-order-print.service.js +150 -0
- package/dist/services/purchase-order-totals.service.js +280 -0
- package/dist/services/receipt-print.service.js +50 -0
- package/dist/services/reorder-point-pdf.service.js +151 -0
- package/dist/services/repair-orders-pdf.service.js +172 -0
- package/dist/services/ro-pdf.service.js +1764 -0
- package/dist/services/ro-print-service.js +737 -0
- package/dist/services/ro-totals.service.js +1241 -0
- package/dist/services/sales-by-service-pdf.service.js +116 -0
- package/dist/services/sales-pdf.service.js +630 -0
- package/dist/services/sales-print.service.js +305 -0
- package/dist/services/sales-receipt-pdf.service.js +611 -0
- package/dist/services/sales-receipt-print.service.js +425 -0
- package/dist/services/sales-totals.service.js +339 -0
- package/dist/services/scheduled-drug-pdf.service.js +176 -0
- package/dist/services/scheduled-drug-summary-pdf.service.js +188 -0
- package/dist/services/separate-wo-print.service.js +351 -0
- package/dist/services/shared-inv-pdf.service.js +763 -0
- package/dist/services/shared-pdf.service.js +2569 -0
- package/dist/services/shared-print.service.js +885 -0
- package/dist/services/task-pdf.service.js +220 -0
- package/dist/services/task-reports-pdf.service.js +296 -0
- package/dist/services/technician-pdf.service.js +238 -0
- package/dist/services/technician-print.service.js +87 -0
- package/dist/services/transfer-order-pdf.service.js +139 -0
- package/dist/services/vendor-balances-pdf.service.js +101 -0
- package/dist/services/vendor-credit-note-pdf.service.js +1007 -0
- package/dist/services/vendor-credit-note-print.service.js +104 -0
- package/dist/services/vendor-credit-note-totals.service.js +327 -0
- package/dist/services/vendor-debit-note-pdf.service.js +561 -0
- package/dist/services/vendor-debit-note-print.service.js +245 -0
- package/dist/services/vendor-debit-note-totals.service.js +305 -0
- package/dist/utils/my-date.js +652 -0
- package/dist/utils/tr-utils.js +354 -0
- package/package.json +24 -0
- package/tsconfig.json +109 -0
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CheckListPrintService = 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 CheckListPrintService {
|
|
8
|
+
static CheckListPrint(CheckListData, win) {
|
|
9
|
+
let dd = {
|
|
10
|
+
info: {
|
|
11
|
+
title: 'CheckList',
|
|
12
|
+
},
|
|
13
|
+
background: function (currentPage, pageSize) {
|
|
14
|
+
return shared_pdf_service_1.SharedPDFService.GetWatermarkImage(CheckListData.Image, pageSize, CheckListData.Entity.Wmark);
|
|
15
|
+
},
|
|
16
|
+
header: function (currentPage, pageCount) {
|
|
17
|
+
return { text: currentPage.toString() + ' of ' + pageCount, alignment: 'right', marginRight: 7, fontSize: 8, marginTop: 2 };
|
|
18
|
+
},
|
|
19
|
+
pageMargins: [10, 15, 10, 15],
|
|
20
|
+
content: [
|
|
21
|
+
// SharedPDFService.MainHeading(CheckListData.Entity.CName, CheckListData.Entity.Header, CheckListData.Image, CheckListData.HColor, null),
|
|
22
|
+
shared_pdf_service_1.SharedPDFService.GetMainHeader(CheckListData.Entity, CheckListData.Image, CheckListData.AColor, CheckListData.HColor, null),
|
|
23
|
+
shared_pdf_service_1.SharedPDFService.GetPrintType('INSPECTION'),
|
|
24
|
+
shared_pdf_service_1.SharedPDFService.HeaderAfterLine(),
|
|
25
|
+
this.RODetails(CheckListData),
|
|
26
|
+
this.CheckListTable(CheckListData.Sections)
|
|
27
|
+
],
|
|
28
|
+
styles: shared_pdf_service_1.SharedPDFService.GetStyles()
|
|
29
|
+
};
|
|
30
|
+
this.PrintFile = tr_utils_1.TrUtils.Stringify(dd);
|
|
31
|
+
pdfMake.createPdf(dd).getDataUrl((DataURL) => {
|
|
32
|
+
document.getElementById('pdf').setAttribute('src', DataURL);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
static RODetails(CheckListData) {
|
|
36
|
+
return {
|
|
37
|
+
marginTop: 5,
|
|
38
|
+
columns: [
|
|
39
|
+
{ stack: [shared_pdf_service_1.SharedPDFService.GetCustomerDetails(CheckListData.Customer, null, null, null, 'Customer Name & Address')], width: 250 }, { text: '', width: 40 }, { stack: [this.VehicleDetails(CheckListData)], width: 250 },
|
|
40
|
+
]
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
static VehicleDetails(CheckListData) {
|
|
44
|
+
let id;
|
|
45
|
+
let vehicleData;
|
|
46
|
+
vehicleData = [
|
|
47
|
+
{ name: 'RO#', value: this.CheckAndSetString(CheckListData.ROId) }
|
|
48
|
+
];
|
|
49
|
+
vehicleData.push({ name: 'Regn. No', value: this.CheckAndSetString(CheckListData.RegNo) });
|
|
50
|
+
let a = [
|
|
51
|
+
{ name: 'Vehicle', value: this.CheckAndSetString(CheckListData.Vehicle.Make) + ' ' + this.CheckAndSetString(CheckListData.Vehicle.Model) + ' ' + this.CheckAndSetString(CheckListData.Vehicle.Var) },
|
|
52
|
+
{ name: 'Service Advisor Name', value: this.CheckAndSetString(CheckListData.SAName) }
|
|
53
|
+
];
|
|
54
|
+
for (let i = 0; i < a.length; i++) {
|
|
55
|
+
vehicleData.push(a[i]);
|
|
56
|
+
}
|
|
57
|
+
return shared_pdf_service_1.SharedPDFService.GetVehicleDataTable(vehicleData);
|
|
58
|
+
}
|
|
59
|
+
static CheckAndSetString(Value) {
|
|
60
|
+
if (tr_utils_1.TrUtils.IsNull(Value)) {
|
|
61
|
+
Value = '';
|
|
62
|
+
}
|
|
63
|
+
return Value;
|
|
64
|
+
}
|
|
65
|
+
static CheckListTable(CheckList) {
|
|
66
|
+
return {
|
|
67
|
+
columns: [
|
|
68
|
+
this.SectionItemsTable(CheckList)
|
|
69
|
+
]
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
static SectionItemsTable(sections) {
|
|
73
|
+
return {
|
|
74
|
+
style: 'tableExample',
|
|
75
|
+
marginTop: 10,
|
|
76
|
+
table: {
|
|
77
|
+
widths: [95, 15, 180, 40, 40, 40, 100],
|
|
78
|
+
// headerRows: 2,
|
|
79
|
+
body: this.ItemsTable(sections)
|
|
80
|
+
},
|
|
81
|
+
layout: shared_print_service_1.PrintSharedService.LayOutStyle()
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
static ItemsTable(sections) {
|
|
85
|
+
let body = [];
|
|
86
|
+
let column = this.sectionname();
|
|
87
|
+
body.push(column);
|
|
88
|
+
sections.forEach((section) => {
|
|
89
|
+
section.Items.forEach((item, index) => {
|
|
90
|
+
let dataRow = [];
|
|
91
|
+
if (index === 0) {
|
|
92
|
+
dataRow.push({ text: section.Name.toString(), noWrap: true, rowSpan: section.Items.length, alignment: "center", height: 60 });
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
dataRow.push({});
|
|
96
|
+
}
|
|
97
|
+
dataRow.push({ text: item.SNo.toString(), noWrap: true, alignment: 'center' });
|
|
98
|
+
dataRow.push({ text: item.Desc.toString() });
|
|
99
|
+
let TickImage = {
|
|
100
|
+
image: 'data:image/jpeg;base64,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',
|
|
101
|
+
width: 20,
|
|
102
|
+
alignment: 'center'
|
|
103
|
+
};
|
|
104
|
+
if (item.Action === 'G') {
|
|
105
|
+
dataRow.push(TickImage);
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
dataRow.push({ text: '', noWrap: true });
|
|
109
|
+
}
|
|
110
|
+
if (item.Action === 'O') {
|
|
111
|
+
dataRow.push(TickImage);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
dataRow.push({ text: '', noWrap: true });
|
|
115
|
+
}
|
|
116
|
+
if (item.Action === 'R') {
|
|
117
|
+
dataRow.push(TickImage);
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
dataRow.push({ text: '', noWrap: true });
|
|
121
|
+
}
|
|
122
|
+
dataRow.push({ text: '', noWrap: true });
|
|
123
|
+
body.push(dataRow);
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
return body;
|
|
127
|
+
}
|
|
128
|
+
static sectionname() {
|
|
129
|
+
let headersNames = [{ text: 'Section', style: 'tableheader' },
|
|
130
|
+
{ text: 'Sno', style: 'tableheader' },
|
|
131
|
+
{ text: 'CHECK ITEMS', style: 'tableheader' },
|
|
132
|
+
{ text: 'Good', style: 'tableheader' },
|
|
133
|
+
{ text: 'Average', style: 'tableheader' },
|
|
134
|
+
{ text: 'Bad', style: 'tableheader' },
|
|
135
|
+
{ text: 'Remarks', style: 'tableheader' }];
|
|
136
|
+
// let HeaderName = [{ text: 'Section', colSpan: 5, color: 'white', fillColor: 'black',fontSize:10 }, {}, {}, {}, {}]
|
|
137
|
+
return headersNames;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
exports.CheckListPrintService = CheckListPrintService;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ChecklistsPDFService = void 0;
|
|
4
|
+
const shared_pdf_service_1 = require("./shared-pdf.service");
|
|
5
|
+
class ChecklistsPDFService {
|
|
6
|
+
static GetCheckListPrintData(CheckListData, win) {
|
|
7
|
+
setTimeout(() => {
|
|
8
|
+
let dd = {
|
|
9
|
+
info: {
|
|
10
|
+
title: 'CheckList',
|
|
11
|
+
},
|
|
12
|
+
background: function (currentPage, pageSize) {
|
|
13
|
+
return shared_pdf_service_1.SharedPDFService.GetWatermarkImage(CheckListData.Image, pageSize, CheckListData.Entity.Wmark);
|
|
14
|
+
},
|
|
15
|
+
header: function (currentPage, pageCount) {
|
|
16
|
+
return { text: currentPage.toString() + ' of ' + pageCount, alignment: 'right', marginRight: 7, fontSize: 8, marginTop: 2 };
|
|
17
|
+
},
|
|
18
|
+
pageMargins: [10, 15, 10, 15],
|
|
19
|
+
// alignment: 'center',
|
|
20
|
+
content: [
|
|
21
|
+
// SharedPDFService.MainHeading(CheckListData.Entity.CName, CheckListData.Entity.Header, CheckListData.Image, CheckListData.HColor, null),
|
|
22
|
+
shared_pdf_service_1.SharedPDFService.GetMainHeader(CheckListData.Entity, CheckListData.Image, CheckListData.AColor, CheckListData.HColor, null),
|
|
23
|
+
shared_pdf_service_1.SharedPDFService.GetPrintType(CheckListData.Name),
|
|
24
|
+
shared_pdf_service_1.SharedPDFService.HeaderAfterLine(),
|
|
25
|
+
this.PrepareTableForCheckList(CheckListData),
|
|
26
|
+
],
|
|
27
|
+
styles: shared_pdf_service_1.SharedPDFService.GetStyles()
|
|
28
|
+
};
|
|
29
|
+
pdfMake.createPdf(dd).open();
|
|
30
|
+
}, 400);
|
|
31
|
+
}
|
|
32
|
+
static PrepareTableForCheckList(CheckListData) {
|
|
33
|
+
var tables = [];
|
|
34
|
+
let SectionsList = this.GetItemsForSections(CheckListData.Sections, CheckListData.Items);
|
|
35
|
+
// let SectionsList: any = this.GetSectionListWithSNo(Sections);
|
|
36
|
+
let SNo = 1;
|
|
37
|
+
SectionsList.forEach((section) => {
|
|
38
|
+
section.Items.forEach((Item) => {
|
|
39
|
+
Item.SNo = SNo;
|
|
40
|
+
SNo += 1;
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
SectionsList.forEach((section, index) => {
|
|
44
|
+
var item = {
|
|
45
|
+
style: 'tableExamplemargin',
|
|
46
|
+
headerRows: 2,
|
|
47
|
+
widths: [370, 40, 40, 40],
|
|
48
|
+
table: {
|
|
49
|
+
widths: [370, 40, 40, 40],
|
|
50
|
+
body: this.CreateTableForSection(section, index)
|
|
51
|
+
},
|
|
52
|
+
layout: this.getlayoutStyles()
|
|
53
|
+
};
|
|
54
|
+
tables.push(item);
|
|
55
|
+
});
|
|
56
|
+
return tables;
|
|
57
|
+
}
|
|
58
|
+
static GetSectionListWithSNo(SectionsList) {
|
|
59
|
+
let SNo = 1;
|
|
60
|
+
SectionsList.forEach((section) => {
|
|
61
|
+
section.Items.forEach((Item) => {
|
|
62
|
+
Item.SNo = SNo;
|
|
63
|
+
SNo += 1;
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
static getlayoutStyles() {
|
|
68
|
+
return {
|
|
69
|
+
hLineColor: function (i, node) {
|
|
70
|
+
return ((i == 0 || i === 1) || i === node.table.body.length) ? 'grey' : 'white';
|
|
71
|
+
},
|
|
72
|
+
vLineColor: function (i, node) {
|
|
73
|
+
return (i == 0 || i === node.table.widths.length) ? 'grey' : 'white';
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
static CreateTableForSection(SectionData, index) {
|
|
78
|
+
var body = [];
|
|
79
|
+
var datarow = [];
|
|
80
|
+
datarow.push({ text: index + 1 + '.' + ' ' + SectionData.Name, margin: [0, 1, 0, 0], style: 'tableheader', colSpan: 4, alignment: 'start', bold: true, fillColor: 'grey', color: 'white' }, {}, {}, {});
|
|
81
|
+
body.push(datarow);
|
|
82
|
+
if (SectionData.Items.length != 0) {
|
|
83
|
+
let column = this.GetItemHeaders();
|
|
84
|
+
body.push(column);
|
|
85
|
+
SectionData.Items.forEach((Item) => {
|
|
86
|
+
body.push([{ text: Item.SNo + '.' + ' ' + Item.Desc, lineHeight: 1, margin: [0, 0, 0, 2] },
|
|
87
|
+
{
|
|
88
|
+
image: 'data:image/png;base64,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',
|
|
89
|
+
width: 15,
|
|
90
|
+
alignment: 'center'
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
image: 'data:image/png;base64,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',
|
|
94
|
+
width: 15,
|
|
95
|
+
alignment: 'center'
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
image: 'data:image/png;base64,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',
|
|
99
|
+
width: 15,
|
|
100
|
+
alignment: 'center'
|
|
101
|
+
}]);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
return body;
|
|
105
|
+
}
|
|
106
|
+
static GetItemsForSections(SectionsList, ItemsList) {
|
|
107
|
+
SectionsList.forEach((Section) => {
|
|
108
|
+
Section.Items = ItemsList.filter((Item) => {
|
|
109
|
+
return Item.SecId === Section._id;
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
return SectionsList;
|
|
113
|
+
}
|
|
114
|
+
static GetItemHeaders() {
|
|
115
|
+
let headersNames = [
|
|
116
|
+
{ text: ' ', style: 'tableHeader', Field: 'Desc' },
|
|
117
|
+
{ text: 'Passed', style: 'tableHeader', Field: 'check', alignment: 'center' },
|
|
118
|
+
{ text: 'Repaired', style: 'tableHeader', Field: 'check', alignment: 'center' },
|
|
119
|
+
{ text: 'Replaced', style: 'tableHeader', Field: 'check', alignment: 'center' },
|
|
120
|
+
];
|
|
121
|
+
return headersNames;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
exports.ChecklistsPDFService = ChecklistsPDFService;
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CNPrintService = void 0;
|
|
4
|
+
const shared_print_service_1 = require("./shared-print.service");
|
|
5
|
+
const credit_note_totals_service_1 = require("./credit-note-totals.service");
|
|
6
|
+
const tr_utils_1 = require("../utils/tr-utils");
|
|
7
|
+
const code_enums_1 = require("../enums/code-enums");
|
|
8
|
+
const enums_1 = require("../enums/enums");
|
|
9
|
+
const my_date_1 = require("../utils/my-date");
|
|
10
|
+
const aggregation_1 = require("../aggregation/aggregation");
|
|
11
|
+
class CNPrintService {
|
|
12
|
+
static GetCreditNotePrintInfo(OriginalInvoiceData, OriginalEntityData, image, IncludeGST, ConsolidateGST, TaxCodes, IsProforma) {
|
|
13
|
+
var _a, _b;
|
|
14
|
+
let ForInsurance = !tr_utils_1.TrUtils.IsNull(OriginalInvoiceData.BillTo.InsId);
|
|
15
|
+
let InvoicePrintData = {};
|
|
16
|
+
let argInvoiceData = tr_utils_1.TrUtils.Stringify(OriginalInvoiceData);
|
|
17
|
+
if (!IncludeGST) {
|
|
18
|
+
argInvoiceData.Settings.Tax = 'NO';
|
|
19
|
+
}
|
|
20
|
+
InvoicePrintData.IsProforma = IsProforma;
|
|
21
|
+
InvoicePrintData.Settings = tr_utils_1.TrUtils.Stringify(argInvoiceData.Settings);
|
|
22
|
+
let SType;
|
|
23
|
+
if (!tr_utils_1.TrUtils.IsNull(argInvoiceData.Settings) && !tr_utils_1.TrUtils.IsNull(argInvoiceData.Settings.PoS)) {
|
|
24
|
+
SType = argInvoiceData.Settings.PoS.SType;
|
|
25
|
+
}
|
|
26
|
+
InvoicePrintData = this.GetPrintConditionsBasedOnInput(InvoicePrintData, IncludeGST, ConsolidateGST, ForInsurance, SType, argInvoiceData, IsProforma);
|
|
27
|
+
InvoicePrintData.Entity = shared_print_service_1.PrintSharedService.GetFormattedEntityDataForPrint(OriginalEntityData, "Invoice", OriginalInvoiceData);
|
|
28
|
+
InvoicePrintData = shared_print_service_1.PrintSharedService.GetEntityHeaderStyles(InvoicePrintData, OriginalEntityData, image);
|
|
29
|
+
InvoicePrintData = this.GetInvoiceOtherDetailsForPrint(InvoicePrintData, argInvoiceData);
|
|
30
|
+
let IsTaxable = (IncludeGST && tr_utils_1.TrUtils.isTaxable(argInvoiceData.Settings.Tax)) ? true : false;
|
|
31
|
+
let finalTotalsData = credit_note_totals_service_1.CreditNoteTotalsService.GetTotalsValue([], argInvoiceData.Items, IsTaxable, true, argInvoiceData.Disc, argInvoiceData.Perc, TaxCodes, true, argInvoiceData.Settings);
|
|
32
|
+
if (ConsolidateGST) {
|
|
33
|
+
finalTotalsData.CustLaborTotalBeforeDisc = finalTotalsData.CustLaborAfterTax;
|
|
34
|
+
finalTotalsData.CustPartsTotalBeforeDisc = finalTotalsData.CustPartAfterTax;
|
|
35
|
+
}
|
|
36
|
+
InvoicePrintData = tr_utils_1.TrUtils.ConcatObjects(InvoicePrintData, finalTotalsData);
|
|
37
|
+
InvoicePrintData.Items = this.GetItemsPrintInfo(InvoicePrintData.Items, ConsolidateGST, TaxCodes, (_b = (_a = OriginalEntityData.Entity.Settings) === null || _a === void 0 ? void 0 : _a.Acc) === null || _b === void 0 ? void 0 : _b.LTot);
|
|
38
|
+
argInvoiceData = this.ReverseItemsForInvoicePrint(argInvoiceData);
|
|
39
|
+
InvoicePrintData.PrintInfo = this.PrepareFormatForInvoicePrint(InvoicePrintData, code_enums_1.ROTypeEnum.Invoice, argInvoiceData.Sts);
|
|
40
|
+
InvoicePrintData = this.GetFormattedProductDataForPrint(argInvoiceData, InvoicePrintData);
|
|
41
|
+
InvoicePrintData = this.GetBillNameForInvoicePrint(argInvoiceData, InvoicePrintData);
|
|
42
|
+
InvoicePrintData.Consolidate = ConsolidateGST;
|
|
43
|
+
return InvoicePrintData;
|
|
44
|
+
}
|
|
45
|
+
static GetPrintConditionsBasedOnInput(InvoicePrintData, IncludeGST, ConsolidateGST, ForInsurance, SType, OriginalInvoiceData, IsProforma) {
|
|
46
|
+
InvoicePrintData.ForInsurance = ForInsurance;
|
|
47
|
+
InvoicePrintData.For = ForInsurance ? enums_1.PayTypeEnum.Insurance : enums_1.PayTypeEnum.Customer;
|
|
48
|
+
InvoicePrintData.IncludeGST = IncludeGST;
|
|
49
|
+
InvoicePrintData.ConsolidateGST = ConsolidateGST;
|
|
50
|
+
InvoicePrintData.ShowAccParts = false;
|
|
51
|
+
InvoicePrintData.ShowIGST = (tr_utils_1.TrUtils.IsNull(SType) || (SType === 'Intra')) ? false : true;
|
|
52
|
+
InvoicePrintData.ShowTaxColumn = (IncludeGST && !ConsolidateGST) ? true : false;
|
|
53
|
+
// InvoicePrintData.ShowDiscountColumn = (!ForInsurance && !ConsolidateGST) ? true : false;
|
|
54
|
+
InvoicePrintData = this.GetInvoiceTypeHeading(InvoicePrintData, OriginalInvoiceData, IncludeGST, ConsolidateGST, IsProforma);
|
|
55
|
+
InvoicePrintData.PrDate = tr_utils_1.TrUtils.IsNull(OriginalInvoiceData.PrDate) ? '' : my_date_1.MyDate.ConvertUTCDateToReadable(OriginalInvoiceData.PrDate);
|
|
56
|
+
return InvoicePrintData;
|
|
57
|
+
}
|
|
58
|
+
static GetInvoiceTypeHeading(InvoicePrintData, OriginalInvoiceData, IncludeGST, ConsolidateGST, IsProforma) {
|
|
59
|
+
InvoicePrintData.HeaderName = 'Credit Notes';
|
|
60
|
+
return InvoicePrintData;
|
|
61
|
+
}
|
|
62
|
+
static GetInvoiceOtherDetailsForPrint(InvoicePrintData, OriginalInvoiceData) {
|
|
63
|
+
InvoicePrintData.Type = 'Credit Notes';
|
|
64
|
+
InvoicePrintData._id = OriginalInvoiceData.Code;
|
|
65
|
+
InvoicePrintData.Sts = OriginalInvoiceData.Sts;
|
|
66
|
+
InvoicePrintData.CrDate = my_date_1.MyDate.ConvertUTCDateToReadable(OriginalInvoiceData.CrDate);
|
|
67
|
+
return InvoicePrintData;
|
|
68
|
+
}
|
|
69
|
+
static GetItemsPrintInfo(Items, Consolidate, TaxCodes, LineTotal) {
|
|
70
|
+
Items.forEach((Item) => {
|
|
71
|
+
if (Consolidate) {
|
|
72
|
+
let AfterDiscForEach = (0, aggregation_1.division)(Item.AfterPartDisc, Item.Qty);
|
|
73
|
+
let CTaxAmtPerItem = (0, aggregation_1.division)(Item.CGST, Item.Qty);
|
|
74
|
+
let STaxAmtPerItem = (0, aggregation_1.division)(Item.SGST, Item.Qty);
|
|
75
|
+
let ITaxAmtPerItem = (0, aggregation_1.division)(Item.IGST, Item.Qty);
|
|
76
|
+
Item.UnPr = tr_utils_1.TrUtils.FixedTo((0, aggregation_1.addition)(AfterDiscForEach, CTaxAmtPerItem, STaxAmtPerItem, ITaxAmtPerItem));
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
Item.UnPr = tr_utils_1.TrUtils.FixPriceValue(Item.UnPr);
|
|
80
|
+
}
|
|
81
|
+
Item.CGSTAmt = tr_utils_1.TrUtils.FixPriceValue(Item.CGST);
|
|
82
|
+
Item.SGSTAmt = tr_utils_1.TrUtils.FixPriceValue(Item.SGST);
|
|
83
|
+
Item.IGSTAmt = tr_utils_1.TrUtils.FixPriceValue(Item.IGST);
|
|
84
|
+
Item.CGSTPerc = shared_print_service_1.PrintSharedService.GetCGSTValueBasedOnTaxCode(Item.TCode, TaxCodes);
|
|
85
|
+
Item.SGSTPerc = shared_print_service_1.PrintSharedService.GetSGSTValueBasedOnTaxCode(Item.TCode, TaxCodes);
|
|
86
|
+
Item.IGSTPerc = shared_print_service_1.PrintSharedService.GetIGSTValueBasedOnTaxCode(Item.TCode, TaxCodes);
|
|
87
|
+
if (LineTotal === 'AT') {
|
|
88
|
+
Item.LineTotal = tr_utils_1.TrUtils.FixPriceValue(Item.AfterPartTax);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
Item.LineTotal = tr_utils_1.TrUtils.FixPriceValue((0, aggregation_1.subtraction)(Item.UnAmt, Item.Disc));
|
|
92
|
+
}
|
|
93
|
+
if (!tr_utils_1.TrUtils.IsZero(Item.Qty) && !tr_utils_1.TrUtils.CheckInvalidSelect(Item.UoM)) {
|
|
94
|
+
Item.QtyAndUoM = Item.Qty + ' ' + Item.UoM;
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
return Items;
|
|
98
|
+
}
|
|
99
|
+
static ReverseItemsForInvoicePrint(argInvoiceData) {
|
|
100
|
+
// argInvoiceData.Ops = argInvoiceData.Ops.reverse();
|
|
101
|
+
argInvoiceData.Items = argInvoiceData.Items.reverse();
|
|
102
|
+
return argInvoiceData;
|
|
103
|
+
}
|
|
104
|
+
static PrepareFormatForInvoicePrint(InvoicePrintData, ROType, InvoiceStatus) {
|
|
105
|
+
let PrintInfo = [];
|
|
106
|
+
let ROLaborParts = {};
|
|
107
|
+
// ROLaborParts.Ops = InvoicePrintData.Ops;
|
|
108
|
+
ROLaborParts.Items = InvoicePrintData.Items;
|
|
109
|
+
ROLaborParts.Sts = InvoiceStatus;
|
|
110
|
+
ROLaborParts.Type = ROType;
|
|
111
|
+
PrintInfo.push(ROLaborParts);
|
|
112
|
+
return PrintInfo;
|
|
113
|
+
}
|
|
114
|
+
static GetFormattedProductDataForPrint(OriginalInvoiceData, InvoicePrintData) {
|
|
115
|
+
if (!tr_utils_1.TrUtils.IsNull(OriginalInvoiceData.Prod)) {
|
|
116
|
+
InvoicePrintData.Product = OriginalInvoiceData.Prod;
|
|
117
|
+
if (tr_utils_1.TrUtils.IsNull(InvoicePrintData.Product.VIN)) {
|
|
118
|
+
InvoicePrintData.Product.VIN = '';
|
|
119
|
+
}
|
|
120
|
+
if (tr_utils_1.TrUtils.IsNull(InvoicePrintData.Product.RegNo)) {
|
|
121
|
+
InvoicePrintData.Product.RegNo = '';
|
|
122
|
+
}
|
|
123
|
+
if (tr_utils_1.TrUtils.IsNull(InvoicePrintData.Product.EngNo)) {
|
|
124
|
+
InvoicePrintData.Product.EngNo = '';
|
|
125
|
+
}
|
|
126
|
+
InvoicePrintData.MIn = OriginalInvoiceData.Prod.MIn;
|
|
127
|
+
InvoicePrintData.MOut = OriginalInvoiceData.Prod.MOut;
|
|
128
|
+
}
|
|
129
|
+
return InvoicePrintData;
|
|
130
|
+
}
|
|
131
|
+
static GetBillNameForInvoicePrint(OriginalInvoiceData, InvoicePrintData) {
|
|
132
|
+
let Customer = {};
|
|
133
|
+
Customer.Name = OriginalInvoiceData.BillTo.Name;
|
|
134
|
+
Customer.Adrs = [];
|
|
135
|
+
Customer.Cons = [];
|
|
136
|
+
if (!tr_utils_1.TrUtils.IsNull(OriginalInvoiceData.BillTo.Adrs)) {
|
|
137
|
+
Customer.Adrs.push(OriginalInvoiceData.BillTo.Adrs.A1);
|
|
138
|
+
if (!tr_utils_1.TrUtils.IsEmpty(OriginalInvoiceData.BillTo.Adrs.A2)) {
|
|
139
|
+
Customer.Adrs.push(OriginalInvoiceData.BillTo.Adrs.A2);
|
|
140
|
+
}
|
|
141
|
+
if (!tr_utils_1.TrUtils.IsEmpty(OriginalInvoiceData.BillTo.Adrs.Ct)) {
|
|
142
|
+
Customer.Adrs.push(OriginalInvoiceData.BillTo.Adrs.Ct);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
Customer.GSTIN = OriginalInvoiceData.BillTo.GSTIN;
|
|
146
|
+
if (!tr_utils_1.TrUtils.IsEmpty(OriginalInvoiceData.BillTo.Ph)) {
|
|
147
|
+
Customer.Cons = [
|
|
148
|
+
{
|
|
149
|
+
Type: 'M',
|
|
150
|
+
No: OriginalInvoiceData.BillTo.Ph
|
|
151
|
+
}
|
|
152
|
+
];
|
|
153
|
+
}
|
|
154
|
+
InvoicePrintData.Customer = Customer;
|
|
155
|
+
if (!tr_utils_1.TrUtils.IsNull(OriginalInvoiceData.BillTo.InsId)) {
|
|
156
|
+
InvoicePrintData.Cust = this.GetCustomerDetails(OriginalInvoiceData);
|
|
157
|
+
}
|
|
158
|
+
return InvoicePrintData;
|
|
159
|
+
}
|
|
160
|
+
static GetCustomerDetails(OriginalInvoiceData) {
|
|
161
|
+
let Customer = {};
|
|
162
|
+
Customer.Name = this.GetBillToName(OriginalInvoiceData.Cust.Title, OriginalInvoiceData.Cust.Name);
|
|
163
|
+
Customer.Cons = [];
|
|
164
|
+
if (!tr_utils_1.TrUtils.IsEmpty(OriginalInvoiceData.Cust.Ph)) {
|
|
165
|
+
Customer.Cons = [
|
|
166
|
+
{
|
|
167
|
+
Type: 'M',
|
|
168
|
+
No: OriginalInvoiceData.Cust.Ph
|
|
169
|
+
}
|
|
170
|
+
];
|
|
171
|
+
}
|
|
172
|
+
Customer.GSTIN = OriginalInvoiceData.Cust.GSTIN;
|
|
173
|
+
Customer.Adrs = [];
|
|
174
|
+
if (!tr_utils_1.TrUtils.IsNull(OriginalInvoiceData.Cust.Adrs)) {
|
|
175
|
+
Customer.Adrs.push(OriginalInvoiceData.Cust.Adrs.A1);
|
|
176
|
+
if (!tr_utils_1.TrUtils.IsEmpty(OriginalInvoiceData.Cust.Adrs.A2)) {
|
|
177
|
+
Customer.Adrs.push(OriginalInvoiceData.Cust.Adrs.A2);
|
|
178
|
+
}
|
|
179
|
+
Customer.Adrs.push(OriginalInvoiceData.Cust.Adrs.Ct);
|
|
180
|
+
}
|
|
181
|
+
Customer.ConName = OriginalInvoiceData.Cust.ConName;
|
|
182
|
+
Customer.ConPh = OriginalInvoiceData.Cust.ConPhone;
|
|
183
|
+
return Customer;
|
|
184
|
+
}
|
|
185
|
+
static GetBillToName(Title, Name) {
|
|
186
|
+
return tr_utils_1.TrUtils.IsEmpty(Title) ? Name : Title + ' ' + Name;
|
|
187
|
+
}
|
|
188
|
+
static GetPaymentsTotal(InvoicePayments, Total, InvoiceStatus) {
|
|
189
|
+
var i = 0;
|
|
190
|
+
let Data = {};
|
|
191
|
+
let PaidTotal = 0;
|
|
192
|
+
for (i = 0; i < InvoicePayments.length; i++) {
|
|
193
|
+
PaidTotal += InvoicePayments[i].Paid;
|
|
194
|
+
}
|
|
195
|
+
if (InvoiceStatus === enums_1.InvoiceStatusEnum.Closed) {
|
|
196
|
+
Data.Due = 0;
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
Data.Due = tr_utils_1.TrUtils.FixedTo(Total - PaidTotal);
|
|
200
|
+
}
|
|
201
|
+
if (Data.Due < 0) {
|
|
202
|
+
Data.Due = 0;
|
|
203
|
+
}
|
|
204
|
+
if (Data.Due === 0) {
|
|
205
|
+
Data.Sts = enums_1.InvoiceStatusEnum.Closed;
|
|
206
|
+
}
|
|
207
|
+
Data.Paid = tr_utils_1.TrUtils.FixedTo(PaidTotal);
|
|
208
|
+
return Data;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
exports.CNPrintService = CNPrintService;
|