shareneus 1.4.37 → 1.4.38

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/index.d.ts CHANGED
@@ -121,4 +121,5 @@ export { NextServiceDateXlsxFileService } from './excel-files/next-service-date-
121
121
  export { NextServiceDatePDFService } from './services/next-service-date-pdf.service';
122
122
  export { ItemBarCodeLabelPdf } from './inventory/items/item-bar-code-label-pdf';
123
123
  export { GetItemPriceForPriceList } from "./inventory/items/item-price-for-pricelist";
124
+ export { CalcItemFinalSalePrice } from "./inventory/items/item-price-for-pricelist";
124
125
  export { IsNotNull, IsNull } from "./shared/util";
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DebitNotePdfService = exports.DCWithoutPricePdfService = exports.DCLandscapeWithoutPricePdfService = exports.DCLandscapePdfService = exports.CustomerBalancesService = exports.SalesByCustomerPDFService = exports.CustWiseSalesDetailsService = exports.CreditNoteTotalsService = exports.CreditNotePdfService = exports.ConsultationPDFService = exports.ConsultationFullPrintService = exports.ConsultationFeeReceiptPrintService = exports.CNPrintService = exports.ChecklistsPDFService = exports.CheckListPrintService = exports.CategoryWiseItemPDFService = exports.SalesReceiptprintService = exports.AppointmentTotalsService = exports.AnalysisPDFService = exports.VenBalanceXlsxFileService = exports.TallySalesImportXlsxFileService = exports.StockXlsxFileService = exports.IssueSparesXlsxFileService = exports.ScheduledDrugXlsxFileService = exports.ScheduledDrugSummaryXlsxFileService = exports.SalesByServiceSummaryXlsxFileService = exports.SummaryXlsxFileService = exports.ServiceAdvisorWisePartXlsxFileService = exports.ServiceAdvisorWiseLaborXlsxFileService = exports.RepairOrdersXlsxFileService = exports.PaymentsMadeXlsxFileService = exports.PaymentReceiveXlsxFileService = exports.OperatorWiseSummaryXlsxFileService = exports.OperatorWiseDetailsXlsxFileService = exports.ManfWiseSalesXlsxFileService = exports.ItemsWiseSalesXlsxFileService = exports.ItemWiseMOSummaryXlsxFileService = exports.ItemWiseMODetailsXlsxFileService = exports.ItemWiseDoctorSaleXlsxFileService = exports.InvoicesWiseXlsxFileService = exports.InsuranceExpireXlsxFileService = exports.GSTR2ExcelService = exports.GSTR1ExcelService = exports.GSTROXlsxFileService = exports.ExpiringDrugsXlsxFileService = exports.SalesByCustomerXlsxFileService = exports.CustWiseSalesXlsxFileService = exports.CustBalanceXlsxFileService = exports.CategoryWiseItemXlsxFileService = exports.AnalysisXlsxFileService = void 0;
4
4
  exports.SharedPDFService = exports.SharedInvoiceprintService = exports.WOPrintService = exports.ScheduledDrugSummaryPDFService = exports.ScheduledDrugPDFService = exports.SalesTotalsService = exports.SaleReceiptPrintService = exports.SalesReceiptpdfService = exports.SalesPrintService = exports.SalesPdfService = exports.SalesByServiceSummaryPDF = exports.ROTotalsService = exports.ROPrintService = exports.RoprintService = exports.RepairOrdersReportsPDFService = exports.ReorderPointPDFService = exports.ReceiptPrintService = exports.PurchaseOrderPDFService = exports.PurchaseOrderTotalsService = exports.PurchaseOrderPrintService = exports.PosReceiptPrintService = exports.POTotalsService = exports.PaymentsReportPDFService = exports.ReceiptPDFService = exports.PackShipPrintService = exports.PackShipPDFService = exports.OperatorWiseSalesSummaryPDF = exports.OperatorWiseSalesDetailsPDF = exports.MaterialOutprintService = exports.MeetingPdfService = exports.ManfWiseSalesService = exports.ItemWiseSalesPDFService = exports.ItemWiseMOSummaryPDF = exports.ItemWiseMODetailsPDF = exports.ItemWiseDoctorSalePDFService = exports.ItemDetaisPdf = exports.IssuePartsprintService = exports.InvoiceTotalsService = exports.InvoiceLandscapePdfService = exports.InvPrintService = exports.InvoiceprintService = exports.InsuranceExpirePDF = exports.ExpiringDrugPDFService = exports.EstPrintService = exports.EquipmentDesignPdf = exports.DeliveryChallanTotalsService = exports.DeliveryChallanPrintService = exports.DeliveryChallanPdfService = exports.DebitNoteTotalsService = exports.DebitNotePrintService = void 0;
5
- exports.IsNull = exports.IsNotNull = exports.GetItemPriceForPriceList = exports.ItemBarCodeLabelPdf = exports.NextServiceDatePDFService = exports.NextServiceDateXlsxFileService = exports.ConsultationLetterHeadPDFService = exports.InvoiceLetterheadPdfService = exports.HCInvoiceprintService = exports.InvoicePortraitPrintService = exports.MyDate = exports.TrUtils = exports.VendorDebitNoteTotalsService = exports.VendorDebitNotePrintService = exports.VendorDebitNotePdfService = exports.VendorCreditNoteTotalsService = exports.VendorCreditNotePrintService = exports.VendorCreditNotePDFService = exports.VendorBalancesService = exports.TransferOrderPrintService = exports.TechnicianPrintService = exports.TechnicianpdfService = exports.TaskReportsPDfService = exports.TaskPDfService = exports.PrintSharedService = void 0;
5
+ exports.IsNull = exports.IsNotNull = exports.CalcItemFinalSalePrice = exports.GetItemPriceForPriceList = exports.ItemBarCodeLabelPdf = exports.NextServiceDatePDFService = exports.NextServiceDateXlsxFileService = exports.ConsultationLetterHeadPDFService = exports.InvoiceLetterheadPdfService = exports.HCInvoiceprintService = exports.InvoicePortraitPrintService = exports.MyDate = exports.TrUtils = exports.VendorDebitNoteTotalsService = exports.VendorDebitNotePrintService = exports.VendorDebitNotePdfService = exports.VendorCreditNoteTotalsService = exports.VendorCreditNotePrintService = exports.VendorCreditNotePDFService = exports.VendorBalancesService = exports.TransferOrderPrintService = exports.TechnicianPrintService = exports.TechnicianpdfService = exports.TaskReportsPDfService = exports.TaskPDfService = exports.PrintSharedService = void 0;
6
6
  var analysis_excel_service_1 = require("./sales/reports/excel/analysis-excel.service");
7
7
  Object.defineProperty(exports, "AnalysisXlsxFileService", { enumerable: true, get: function () { return analysis_excel_service_1.AnalysisXlsxFileService; } });
8
8
  var category_wise_item_excel_service_1 = require("./sales/reports/excel/category-wise-item-excel.service");
@@ -249,6 +249,8 @@ var item_bar_code_label_pdf_1 = require("./inventory/items/item-bar-code-label-p
249
249
  Object.defineProperty(exports, "ItemBarCodeLabelPdf", { enumerable: true, get: function () { return item_bar_code_label_pdf_1.ItemBarCodeLabelPdf; } });
250
250
  var item_price_for_pricelist_1 = require("./inventory/items/item-price-for-pricelist");
251
251
  Object.defineProperty(exports, "GetItemPriceForPriceList", { enumerable: true, get: function () { return item_price_for_pricelist_1.GetItemPriceForPriceList; } });
252
+ var item_price_for_pricelist_2 = require("./inventory/items/item-price-for-pricelist");
253
+ Object.defineProperty(exports, "CalcItemFinalSalePrice", { enumerable: true, get: function () { return item_price_for_pricelist_2.CalcItemFinalSalePrice; } });
252
254
  var util_1 = require("./shared/util");
253
255
  Object.defineProperty(exports, "IsNotNull", { enumerable: true, get: function () { return util_1.IsNotNull; } });
254
256
  Object.defineProperty(exports, "IsNull", { enumerable: true, get: function () { return util_1.IsNull; } });
@@ -1 +1,14 @@
1
- export declare function GetItemPriceForPriceList(item: any, priceList: any, includeMargin: boolean): any;
1
+ export declare function GetItemPriceForPriceList(item: any, priceList: any, includeMargin?: boolean): any;
2
+ /**
3
+ * Calculates the final sale price of an item after applying a discount and optional markup.
4
+ * Optionally includes margin calculation based on cost.
5
+ *
6
+ * @param price - The original price of the item.
7
+ * @param disc - The discount percentage to apply.
8
+ * @param priceList - The price list object containing rounding and other configurations.
9
+ * @param markup - Whether to apply markup instead of discount (default is false).
10
+ * @param includeMargin - Whether to include margin calculation in the result (default is false).
11
+ * @param cost - The cost of the item, used for margin calculation (default is 0).
12
+ * @returns The final price or an object containing margin and final price if includeMargin is true.
13
+ */
14
+ export declare function CalcItemFinalSalePrice(price: number, disc: number, priceList: any, markup?: boolean, includeMargin?: boolean, cost?: number): any;
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GetItemPriceForPriceList = GetItemPriceForPriceList;
4
+ exports.CalcItemFinalSalePrice = CalcItemFinalSalePrice;
4
5
  const math_operations_1 = require("../../shared/math-operations");
5
6
  const util_1 = require("../../shared/util");
6
- function GetItemPriceForPriceList(item, priceList, includeMargin) {
7
+ function GetItemPriceForPriceList(item, priceList, includeMargin = false) {
8
+ var _a, _b;
7
9
  let salePricesByPriceListId = [];
10
+ const calcDisc = (_a = priceList.CalcDisc) !== null && _a !== void 0 ? _a : {};
11
+ let markUp = (_b = calcDisc.Mark) !== null && _b !== void 0 ? _b : false;
8
12
  if ((0, util_1.IsNotNull)(item.SalePrices) && item.SalePrices.length > 0) {
9
13
  salePricesByPriceListId = item.SalePrices.filter((price) => priceList._id.toString() == price.PrListId.toString());
10
14
  }
@@ -13,15 +17,13 @@ function GetItemPriceForPriceList(item, priceList, includeMargin) {
13
17
  if (item.Track == 'TR' || item.Track == 'SN') {
14
18
  item.Sale["MRP"] = item.Sale.Price;
15
19
  if ((0, util_1.IsNotNull)(item.SalePrices[0].Price) && (0, util_1.IsNotNull)(item.SalePrices[0].Disc)) {
16
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(item.SalePrices[0].Price, item.SalePrices[0].Disc);
17
- item.Sale.Price = ApplyRounding(calculatedPrice, priceList);
20
+ item.Sale.Price = CalcItemFinalSalePrice(item.SalePrices[0].Price, item.SalePrices[0].Disc, priceList, markUp);
18
21
  }
19
22
  else if ((0, util_1.IsNotNull)(item.SalePrices[0].Price) && (0, util_1.IsNull)(item.SalePrices[0].Disc)) {
20
23
  item.Sale.Price = ApplyRounding(item.SalePrices[0].Price, priceList);
21
24
  }
22
25
  else if ((0, util_1.IsNull)(item.SalePrices[0].Price) && (0, util_1.IsNotNull)(item.SalePrices[0].Disc)) {
23
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(item.Sale.Price, item.SalePrices[0].Disc);
24
- item.Sale.Price = ApplyRounding(calculatedPrice, priceList);
26
+ item.Sale.Price = CalcItemFinalSalePrice(item.Sale.Price, item.SalePrices[0].Disc, priceList, markUp);
25
27
  }
26
28
  if (includeMargin) {
27
29
  item.Margin = (0, math_operations_1.GetMarginValue)(item.Sale.Price, item.Pur.Cost);
@@ -37,15 +39,13 @@ function GetItemPriceForPriceList(item, priceList, includeMargin) {
37
39
  element.MRP = element.Price;
38
40
  if (batchSalePrice.length > 0) {
39
41
  if ((0, util_1.IsNotNull)(batchSalePrice[0].Price) && (0, util_1.IsNotNull)(batchSalePrice[0].Disc)) {
40
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(batchSalePrice[0].Price, batchSalePrice[0].Disc);
41
- element.Price = ApplyRounding(calculatedPrice, priceList);
42
+ element.Price = CalcItemFinalSalePrice(batchSalePrice[0].Price, batchSalePrice[0].Disc, priceList, markUp);
42
43
  }
43
44
  else if ((0, util_1.IsNotNull)(batchSalePrice[0].Price) && (0, util_1.IsNull)(batchSalePrice[0].Disc)) {
44
45
  element.Price = ApplyRounding(batchSalePrice[0].Price, priceList);
45
46
  }
46
47
  else if ((0, util_1.IsNull)(batchSalePrice[0].Price) && (0, util_1.IsNotNull)(batchSalePrice[0].Disc)) {
47
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(element.Price, batchSalePrice[0].Disc);
48
- element.Price = ApplyRounding(calculatedPrice, priceList);
48
+ element.Price = CalcItemFinalSalePrice(element.Price, batchSalePrice[0].Disc, priceList, markUp);
49
49
  }
50
50
  }
51
51
  if (includeMargin) {
@@ -57,6 +57,31 @@ function GetItemPriceForPriceList(item, priceList, includeMargin) {
57
57
  }
58
58
  return CalculatePriceBasedOnPriceList(item, priceList, includeMargin);
59
59
  }
60
+ /**
61
+ * Calculates the final sale price of an item after applying a discount and optional markup.
62
+ * Optionally includes margin calculation based on cost.
63
+ *
64
+ * @param price - The original price of the item.
65
+ * @param disc - The discount percentage to apply.
66
+ * @param priceList - The price list object containing rounding and other configurations.
67
+ * @param markup - Whether to apply markup instead of discount (default is false).
68
+ * @param includeMargin - Whether to include margin calculation in the result (default is false).
69
+ * @param cost - The cost of the item, used for margin calculation (default is 0).
70
+ * @returns The final price or an object containing margin and final price if includeMargin is true.
71
+ */
72
+ function CalcItemFinalSalePrice(price, disc, priceList, markup = false, includeMargin = false, cost = 0) {
73
+ // Calculate the price after applying discount or markup
74
+ const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(price, disc, markup);
75
+ // Apply rounding rules from the price list
76
+ const finalPrice = ApplyRounding(calculatedPrice, priceList);
77
+ // If margin calculation is requested, calculate and return both margin and final price
78
+ if (includeMargin) {
79
+ const margin = (0, math_operations_1.GetMarginValue)(finalPrice, cost);
80
+ return { margin: margin, finalPrice: finalPrice };
81
+ }
82
+ // Otherwise, return only the final price
83
+ return finalPrice;
84
+ }
60
85
  function CalculatePriceBasedOnPriceList(item, priceList, includeMargin) {
61
86
  var _a, _b;
62
87
  if (priceList != null) {
@@ -67,8 +92,7 @@ function CalculatePriceBasedOnPriceList(item, priceList, includeMargin) {
67
92
  if (item.Track == 'TR' || item.Track == 'SN') {
68
93
  item.Sale["MRP"] = item.Sale.Price;
69
94
  if ((0, util_1.IsNotNull)(fixedDisc) && fixedDisc > 0) {
70
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(fixedPrice, fixedDisc);
71
- item.Sale.Price = ApplyRounding(calculatedPrice, priceList);
95
+ item.Sale.Price = CalcItemFinalSalePrice(fixedPrice, fixedDisc, priceList);
72
96
  }
73
97
  else {
74
98
  item.Sale.Price = ApplyRounding(fixedPrice, priceList);
@@ -81,8 +105,7 @@ function CalculatePriceBasedOnPriceList(item, priceList, includeMargin) {
81
105
  for (let batch of item.Batches) {
82
106
  batch.MRP = batch.Price;
83
107
  if ((0, util_1.IsNotNull)(fixedDisc) && fixedDisc > 0) {
84
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(fixedPrice, fixedDisc);
85
- batch.Price = ApplyRounding(calculatedPrice, priceList);
108
+ batch.Price = CalcItemFinalSalePrice(fixedPrice, fixedDisc, priceList);
86
109
  }
87
110
  else {
88
111
  batch.Price = ApplyRounding(fixedPrice, priceList);
@@ -101,8 +124,7 @@ function CalculatePriceBasedOnPriceList(item, priceList, includeMargin) {
101
124
  if (priceList.BasedOn == "SP") {
102
125
  if (item.Track == 'TR' || item.Track == 'SN') {
103
126
  item.Sale["MRP"] = item.Sale.Price;
104
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(item.Sale.Price, discPerc, markUp);
105
- item.Sale.Price = ApplyRounding(calculatedPrice, priceList);
127
+ item.Sale.Price = CalcItemFinalSalePrice(item.Sale.Price, discPerc, priceList, markUp);
106
128
  if (includeMargin) {
107
129
  item.Margin = (0, math_operations_1.GetMarginValue)(item.Sale.Price, item.Pur.Cost);
108
130
  }
@@ -110,8 +132,7 @@ function CalculatePriceBasedOnPriceList(item, priceList, includeMargin) {
110
132
  else if (item.Track == 'BN') {
111
133
  for (let batch of item.Batches) {
112
134
  batch.MRP = batch.Price;
113
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(batch.Price, discPerc, markUp);
114
- batch.Price = ApplyRounding(calculatedPrice, priceList);
135
+ batch.Price = CalcItemFinalSalePrice(batch.Price, discPerc, priceList, markUp);
115
136
  if (includeMargin) {
116
137
  batch.Margin = (0, math_operations_1.GetMarginValue)(batch.Price, batch.Cost);
117
138
  }
@@ -122,8 +143,7 @@ function CalculatePriceBasedOnPriceList(item, priceList, includeMargin) {
122
143
  if (item.Track == 'TR' || item.Track == 'SN') {
123
144
  item.Sale["MRP"] = item.Sale.Price;
124
145
  if ((0, util_1.IsNotNull)(item.Pur) && (0, util_1.IsNotNull)(item.Pur.Cost)) {
125
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(item.Pur.Cost, discPerc, markUp);
126
- item.Sale.Price = ApplyRounding(calculatedPrice, priceList);
146
+ item.Sale.Price = CalcItemFinalSalePrice(item.Pur.Cost, discPerc, priceList, markUp);
127
147
  if (includeMargin) {
128
148
  item.Margin = (0, math_operations_1.GetMarginValue)(item.Sale.Price, item.Pur.Cost);
129
149
  }
@@ -133,8 +153,7 @@ function CalculatePriceBasedOnPriceList(item, priceList, includeMargin) {
133
153
  for (let batch of item.Batches) {
134
154
  batch.MRP = batch.Price;
135
155
  if ((0, util_1.IsNotNull)(batch.Cost)) {
136
- const calculatedPrice = (0, math_operations_1.CalcDiscPrice)(batch.Cost, discPerc, markUp);
137
- batch.Price = ApplyRounding(calculatedPrice, priceList);
156
+ batch.Price = CalcItemFinalSalePrice(batch.Cost, discPerc, priceList, markUp);
138
157
  if (includeMargin) {
139
158
  batch.Margin = (0, math_operations_1.GetMarginValue)(batch.Price, batch.Cost);
140
159
  }
@@ -36,6 +36,5 @@ export declare class TrUtils {
36
36
  static IsItemFromEstimate(ItemId: string): boolean;
37
37
  static IsItemInsurance(PayBy: string): boolean;
38
38
  static GetMonthsArray(): any[];
39
- static IsEqual(arg1: any, arg2: any): any;
40
39
  static GetDurationInHrsAndMins(duration: number): string;
41
40
  }
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TrUtils = void 0;
4
4
  // import { HttpClient } from '@angular/common/http';
5
5
  const enums_1 = require("../enums/enums");
6
- var deepEqual = require('deep-equal');
7
6
  // import { LaborStatusEnum } from '../enums/enums';
8
7
  class TrUtils {
9
8
  static IsNull(Value) {
@@ -327,9 +326,6 @@ class TrUtils {
327
326
  MonthName[11] = 'Dec';
328
327
  return MonthName;
329
328
  }
330
- static IsEqual(arg1, arg2) {
331
- return deepEqual(arg1, arg2, true);
332
- }
333
329
  static GetDurationInHrsAndMins(duration) {
334
330
  let Durationhr = Math.floor(duration / 60);
335
331
  let Durationmin = duration % 60;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shareneus",
3
- "version": "1.4.37",
3
+ "version": "1.4.38",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",