shareneus 1.3.8 → 1.3.9

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.
@@ -43,10 +43,10 @@ class PurchaseOrderPrintService {
43
43
  PurchaseOrderPDFData.Items = this.GetQtyWithUoM(PurchaseOrderPDFData.Items);
44
44
  let DetailedTotalsInfo;
45
45
  if (IsFormPO) {
46
- DetailedTotalsInfo = purchase_order_totals_service_1.PurchaseOrderTotalsService.GetTotalsValue(PurchaseOrderPDFData.Items, IsTaxable, true, TaxCodes, PurchaseOrderPDFData.Tax, true, PurchaseOrderPDFData.HasNoTax, false, 0, false, PurchaseOrderPDFData.Adjust);
46
+ DetailedTotalsInfo = purchase_order_totals_service_1.PurchaseOrderTotalsService.GetTotalsValue(PurchaseOrderPDFData.Ops, PurchaseOrderPDFData.Items, IsTaxable, true, TaxCodes, PurchaseOrderPDFData.Tax, true, PurchaseOrderPDFData.HasNoTax, false, 0, false, PurchaseOrderPDFData.Adjust);
47
47
  }
48
48
  else {
49
- DetailedTotalsInfo = purchase_order_totals_service_1.PurchaseOrderTotalsService.GetTotalsValue(PurchaseOrderPDFData.Items, IsTaxable, true, TaxCodes, PurchaseOrderPDFData.Tax, true, PurchaseOrderPDFData.HasNoTax, true, PurchaseOrderData.Disc, PurchaseOrderData.Perc, PurchaseOrderPDFData.Adjust);
49
+ DetailedTotalsInfo = purchase_order_totals_service_1.PurchaseOrderTotalsService.GetTotalsValue(PurchaseOrderPDFData.Ops, PurchaseOrderPDFData.Items, IsTaxable, true, TaxCodes, PurchaseOrderPDFData.Tax, true, PurchaseOrderPDFData.HasNoTax, true, PurchaseOrderData.Disc, PurchaseOrderData.Perc, PurchaseOrderPDFData.Adjust);
50
50
  }
51
51
  PurchaseOrderPDFData = this.ConcatTotalsInfo(PurchaseOrderPDFData, DetailedTotalsInfo);
52
52
  PurchaseOrderPDFData.Entity = shared_print_service_1.PrintSharedService.GetFormattedEntityDataForPrint(EntityData, code_enums_1.PrintTypesEnum.PurOrder, PurchaseOrderData);
@@ -5,22 +5,62 @@ const aggregation_1 = require("../aggregation/aggregation");
5
5
  const code_enums_1 = require("../enums/code-enums");
6
6
  const tr_utils_1 = require("../utils/tr-utils");
7
7
  class PurchaseOrderTotalsService {
8
- static GetTotalsValue(argPartsList, IsTaxable, DetailedTotalsInfo, TaxCodes, Tax, ReturnPartsAlso, HasNoTax, GetSubTotal, Discount, DiscInPerc, Adjust) {
8
+ static GetTotalsValue(opCodesList, argPartsList, IsTaxable, DetailedTotalsInfo, TaxCodes, Tax, ReturnPartsAlso, HasNoTax, GetSubTotal, Discount, DiscInPerc, Adjust) {
9
9
  let PartsList = tr_utils_1.TrUtils.IsNull(argPartsList) ? [] : tr_utils_1.TrUtils.Stringify(argPartsList);
10
10
  // PartsList = this.ResetPartValuesIfInvalid(PartsList);
11
11
  // PartsList = this.GetPartsDiscountPrice(PartsList);
12
12
  // PartsList = this.GetPartsAfterDiscount(PartsList);
13
+ if (tr_utils_1.TrUtils.IsNull(opCodesList)) {
14
+ opCodesList = [];
15
+ }
16
+ opCodesList = this.CalculateLaborValues(opCodesList, IsTaxable);
13
17
  PartsList = this.GetPartsTaxAmount(PartsList, IsTaxable, TaxCodes);
14
18
  // PartsList = this.GetPartsAfterTax(PartsList);
15
- let finalTotalsData = this.GetTotalsInfo(PartsList, IsTaxable, TaxCodes, HasNoTax, GetSubTotal, Discount, DiscInPerc, Adjust);
19
+ let finalTotalsData = this.GetTotalsInfo(PartsList, opCodesList, IsTaxable, TaxCodes, HasNoTax, GetSubTotal, Discount, DiscInPerc, Adjust);
16
20
  if (ReturnPartsAlso) {
21
+ finalTotalsData.Ops = opCodesList;
17
22
  finalTotalsData.Items = PartsList;
18
23
  }
19
24
  if (DetailedTotalsInfo === true) {
20
- finalTotalsData = this.GetDetailedTotalsData(finalTotalsData, IsTaxable, PartsList, TaxCodes, Tax, HasNoTax);
25
+ finalTotalsData = this.GetDetailedTotalsData(finalTotalsData, IsTaxable, PartsList, opCodesList, TaxCodes, Tax, HasNoTax);
21
26
  }
22
27
  return finalTotalsData;
23
28
  }
29
+ static CalculateLaborValues(opCodesList, IsIndependentTax) {
30
+ opCodesList = this.ResetLaborValues(opCodesList, IsIndependentTax);
31
+ // opCodesList = this.GetOperationsDiscountPrice(opCodesList);
32
+ // opCodesList = this.GetOperationsAfterDiscount(opCodesList,IsIndependentTax);
33
+ // opCodesList = this.GetOperationsAfterTax(opCodesList, IsIndependentTax);
34
+ return opCodesList;
35
+ }
36
+ static ResetLaborValues(opCodesList, IsIndependentTax) {
37
+ opCodesList.forEach((Operation) => {
38
+ Operation = this.ResetLaborValueIfInvalid(Operation);
39
+ Operation.DiscountedPrice = (0, aggregation_1.addition)(Operation.Disc, Operation.RecDisc);
40
+ if (tr_utils_1.TrUtils.IsNull(Operation.Amt)) {
41
+ Operation.Amt = Operation.Pr;
42
+ }
43
+ if (IsIndependentTax) {
44
+ let NetAmt = (0, aggregation_1.subtraction)(Operation.Amt, Operation.Disc, Operation.RecDisc);
45
+ Operation.AfterLaborDisc = NetAmt;
46
+ Operation.AfterLaborTax = (0, aggregation_1.addition)(Operation.AfterLaborDisc, Operation.CGST, Operation.SGST, Operation.IGST);
47
+ }
48
+ else {
49
+ Operation.AfterLaborDisc = (0, aggregation_1.subtraction)(Operation.Amt, Operation.Disc);
50
+ Operation.AfterLaborTax = Operation.AfterLaborDisc;
51
+ }
52
+ });
53
+ return opCodesList;
54
+ }
55
+ static ResetLaborValueIfInvalid(Operation) {
56
+ Operation.Pr = tr_utils_1.TrUtils.SetValueToZeroIfNull(Operation.Pr);
57
+ Operation.RecDisc = tr_utils_1.TrUtils.SetValueToZeroIfNull(Operation.RecDisc);
58
+ Operation.Disc = tr_utils_1.TrUtils.SetValueToZeroIfNull(Operation.Disc);
59
+ Operation.CGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(Operation.CGST);
60
+ Operation.SGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(Operation.SGST);
61
+ Operation.IGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(Operation.IGST);
62
+ return Operation;
63
+ }
24
64
  static CheckPartStatusAndReturn(PartsList) {
25
65
  PartsList = PartsList.filter((Part) => {
26
66
  return Part.Sts !== code_enums_1.POPartStatusEnum.Del && Part.Sts !== code_enums_1.POPartStatusEnum.Deleted;
@@ -107,13 +147,17 @@ class PurchaseOrderTotalsService {
107
147
  return [0, 0, 0];
108
148
  }
109
149
  }
110
- static GetTotalsInfo(PartsList, IsTaxable, TaxCodes, HasNoTax, GetSubTotal, Discount, DiscInPerc, Adjust) {
150
+ static GetTotalsInfo(PartsList, LaborList, IsTaxable, TaxCodes, HasNoTax, GetSubTotal, Discount, DiscInPerc, Adjust) {
111
151
  let finalTotalsData = {};
112
152
  let PartsInfo = this.GetPartsTotalTaxAndAfterDiscount(PartsList);
113
153
  let PartsTotalAfterDisc = tr_utils_1.TrUtils.SetValueToZeroIfNull(PartsInfo[0]);
114
154
  let PartsDiscTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(PartsInfo[1]);
115
155
  let PartsTaxTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(PartsInfo[2]);
116
- finalTotalsData.SubTotal = (0, aggregation_1.addition)(PartsTotalAfterDisc, PartsDiscTotal);
156
+ let ServicesInfo = this.GetServiceTotalTaxAndAfterDiscount(LaborList);
157
+ let ServicesTotalAfterDisc = tr_utils_1.TrUtils.SetValueToZeroIfNull(ServicesInfo[0]);
158
+ let ServicesDiscTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(ServicesInfo[1]);
159
+ let ServicesTaxTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(ServicesInfo[2]);
160
+ finalTotalsData.SubTotal = (0, aggregation_1.addition)(PartsTotalAfterDisc, PartsDiscTotal, ServicesTotalAfterDisc, ServicesDiscTotal);
117
161
  finalTotalsData.Adj = tr_utils_1.TrUtils.FixPriceValue(Adjust);
118
162
  // if (GetSubTotal) {
119
163
  // finalTotalsData.SubTotal = this.GetTotalBasedOnTaxType(PartsTotalAfterDisc, PartsTaxTotal,
@@ -129,12 +173,23 @@ class PurchaseOrderTotalsService {
129
173
  // }
130
174
  // finalTotalsData.Total = Total;
131
175
  // } else {
132
- finalTotalsData.Total = this.GetTotalBasedOnTaxType(PartsTotalAfterDisc, PartsTaxTotal, IsTaxable, Adjust);
176
+ finalTotalsData.Total = this.GetTotalBasedOnTaxType(PartsTotalAfterDisc, PartsTaxTotal, ServicesTotalAfterDisc, ServicesTaxTotal, IsTaxable, Adjust);
133
177
  // }
134
178
  // finalTotalsData.Round = TrUtils.FixedTo(Math.round(finalTotalsData.Total) - finalTotalsData.Total);
135
179
  // finalTotalsData.Total = Math.round(finalTotalsData.Total);
136
180
  return finalTotalsData;
137
181
  }
182
+ static GetServiceTotalTaxAndAfterDiscount(LaborList) {
183
+ let ServicesTotalAfterDisc = 0;
184
+ let ServicesDiscountedTotal = 0;
185
+ let TotalTaxAmt = 0;
186
+ LaborList.forEach((Part) => {
187
+ ServicesTotalAfterDisc = (0, aggregation_1.addition)(ServicesTotalAfterDisc, Part.AfterLaborDisc);
188
+ ServicesDiscountedTotal = (0, aggregation_1.addition)(ServicesDiscountedTotal, Part.DiscountedPrice);
189
+ TotalTaxAmt = (0, aggregation_1.addition)(TotalTaxAmt, Part.GSTAmt);
190
+ });
191
+ return [ServicesTotalAfterDisc, ServicesDiscountedTotal, TotalTaxAmt];
192
+ }
138
193
  static GetPartsTotalTaxAndAfterDiscount(PartsList) {
139
194
  let PartsTotalAfterDisc = 0;
140
195
  let PartsDiscountedTotal = 0;
@@ -146,24 +201,29 @@ class PurchaseOrderTotalsService {
146
201
  });
147
202
  return [PartsTotalAfterDisc, PartsDiscountedTotal, TotalTaxAmt];
148
203
  }
149
- static GetTotalBasedOnTaxType(PartsTotalAfterDisc, PartsTaxAmount, IsTaxable, Adjust) {
204
+ static GetTotalBasedOnTaxType(PartsTotalAfterDisc, PartsTaxAmount, ServicesTotalAfterDisc, ServicesTaxTotal, IsTaxable, Adjust) {
150
205
  let Total = 0;
151
206
  if (IsTaxable) {
152
- Total = (0, aggregation_1.addition)(PartsTotalAfterDisc, PartsTaxAmount);
207
+ Total = (0, aggregation_1.addition)(PartsTotalAfterDisc, PartsTaxAmount, ServicesTotalAfterDisc, ServicesTaxTotal);
153
208
  }
154
209
  else {
155
- Total = PartsTotalAfterDisc;
210
+ Total = (0, aggregation_1.addition)(PartsTotalAfterDisc, ServicesTotalAfterDisc);
156
211
  }
157
212
  let finalTotal = (0, aggregation_1.addition)(Total, tr_utils_1.TrUtils.SetValueToZeroIfNull(Adjust));
158
213
  return tr_utils_1.TrUtils.FixedTo(finalTotal);
159
214
  }
160
- static GetDetailedTotalsData(finalTotalsData, IsTaxable, PartsList, TaxCodes, Tax, HasNoTax) {
215
+ static GetDetailedTotalsData(finalTotalsData, IsTaxable, PartsList, LaborList, TaxCodes, Tax, HasNoTax) {
161
216
  let PartsInfo = this.GetPartsTotalTaxAndAfterDiscount(PartsList);
217
+ let ServicesInfo = this.GetServiceTotalTaxAndAfterDiscount(LaborList);
162
218
  finalTotalsData.PartsDiscTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(PartsInfo[1]);
163
219
  finalTotalsData.PartsTotalAfterDisc = tr_utils_1.TrUtils.SetValueToZeroIfNull(PartsInfo[0]);
164
220
  finalTotalsData.PartsTotalBeforeDisc = (0, aggregation_1.addition)(finalTotalsData.PartsTotalAfterDisc, finalTotalsData.PartsDiscTotal);
165
221
  // finalTotalsData.TaxTotal = this.GetPartsTaxTotal(PartsList);
166
222
  finalTotalsData.TaxTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(PartsInfo[2]);
223
+ finalTotalsData.ServiceTotalAfterDisc = tr_utils_1.TrUtils.SetValueToZeroIfNull(ServicesInfo[0]);
224
+ finalTotalsData.ServiceDiscTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(ServicesInfo[1]);
225
+ finalTotalsData.ServiceTaxTotal = tr_utils_1.TrUtils.SetValueToZeroIfNull(ServicesInfo[2]);
226
+ finalTotalsData.ServiceTotalBeforeDisc = (0, aggregation_1.addition)(finalTotalsData.ServiceTotalAfterDisc, finalTotalsData.ServiceDiscTotal);
167
227
  let TaxAmt = this.GetPartGSTTaxTotal(PartsList);
168
228
  // finalTotalsData.PartCGST = this.GetPartCGSTTaxTotal(PartsList);
169
229
  // finalTotalsData.PartIGST = this.GetPartIGSTTaxTotal(PartsList);
@@ -171,7 +231,12 @@ class PurchaseOrderTotalsService {
171
231
  finalTotalsData.PartCGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(TaxAmt[0]);
172
232
  finalTotalsData.PartSGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(TaxAmt[1]);
173
233
  finalTotalsData.PartIGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(TaxAmt[2]);
234
+ let ServiceTaxAmt = this.GetServicesGSTTaxTotal(LaborList);
235
+ finalTotalsData.ServieCGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(TaxAmt[0]);
236
+ finalTotalsData.ServieSGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(TaxAmt[1]);
237
+ finalTotalsData.ServieIGST = tr_utils_1.TrUtils.SetValueToZeroIfNull(TaxAmt[2]);
174
238
  finalTotalsData.PartAfterTax = (0, aggregation_1.addition)(finalTotalsData.PartsTotalAfterDisc, finalTotalsData.TaxTotal);
239
+ finalTotalsData.ServiceAfterTax = (0, aggregation_1.addition)(finalTotalsData.ServiceTotalAfterDisc, finalTotalsData.ServiceTaxTotal);
175
240
  finalTotalsData.IsTaxable = IsTaxable;
176
241
  finalTotalsData.Tax = Tax;
177
242
  finalTotalsData.HasNoTax = HasNoTax;
@@ -193,6 +258,17 @@ class PurchaseOrderTotalsService {
193
258
  });
194
259
  return [CGSTAmt, SGSTAmt, IGSTAmt];
195
260
  }
261
+ static GetServicesGSTTaxTotal(ServicesList) {
262
+ let CGSTAmt = 0;
263
+ let SGSTAmt = 0;
264
+ let IGSTAmt = 0;
265
+ ServicesList.forEach((labor) => {
266
+ CGSTAmt = (0, aggregation_1.addition)(CGSTAmt, labor.CGST);
267
+ SGSTAmt = (0, aggregation_1.addition)(SGSTAmt, labor.SGST);
268
+ IGSTAmt = (0, aggregation_1.addition)(IGSTAmt, labor.IGST);
269
+ });
270
+ return [CGSTAmt, SGSTAmt, IGSTAmt];
271
+ }
196
272
  static GetPartsTaxGroupingFor(PartsList, TaxCodes) {
197
273
  return this.GetTaxGroupingForPartsByHSN(tr_utils_1.TrUtils.Stringify(PartsList), TaxCodes);
198
274
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shareneus",
3
- "version": "1.3.8",
3
+ "version": "1.3.9",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",