product verity
This commit is contained in:
@@ -2,9 +2,7 @@ import { EventEmitter } from "events";
|
||||
|
||||
import { HydratedDocument, Types } from "mongoose";
|
||||
|
||||
import { ColorModel } from "../modules/category/models/color.model";
|
||||
import { MeterageModel } from "../modules/category/models/meterage.model";
|
||||
import { SizeModel } from "../modules/category/models/size.model";
|
||||
import { ThemeValueModel } from "../modules/category/models/themeValue.model";
|
||||
import { IPriceHistory } from "../modules/product/models/Abstraction/IPriceHistory";
|
||||
import { PriceHistoryModel } from "../modules/product/models/priceHistory.model";
|
||||
import { ProductObserveModel } from "../modules/product/models/productObserve.model";
|
||||
@@ -24,9 +22,7 @@ type PriceDetails = {
|
||||
retail_price: number;
|
||||
variantId: string;
|
||||
isSpecial?: boolean;
|
||||
colorId?: number;
|
||||
sizeId?: number;
|
||||
meterageId?: number;
|
||||
themeValueId?: string;
|
||||
};
|
||||
|
||||
type historyDetail = { shop: string; selling_price: number; retail_price: number };
|
||||
@@ -66,7 +62,7 @@ class PriceChangeEventService extends EventEmitter {
|
||||
try {
|
||||
const title = await this.findVariantTitle(priceDetails);
|
||||
const now = TimeService.getCurrentPersianDate();
|
||||
const { colorId, sizeId, meterageId, product, ...history } = priceDetails;
|
||||
const { themeValueId, product, ...history } = priceDetails;
|
||||
|
||||
const existingHistory = await PriceHistoryModel.findOne({ title, product });
|
||||
|
||||
@@ -137,15 +133,9 @@ class PriceChangeEventService extends EventEmitter {
|
||||
}
|
||||
//**** */
|
||||
private async findVariantTitle(priceDetails: PriceDetails): Promise<string> {
|
||||
if (priceDetails.colorId) {
|
||||
const color = await ColorModel.findById(priceDetails.colorId).lean();
|
||||
return color?.name || "Unknown color";
|
||||
} else if (priceDetails.sizeId) {
|
||||
const size = await SizeModel.findById(priceDetails.sizeId).lean();
|
||||
return size?.value || "Unknown size";
|
||||
} else if (priceDetails.meterageId) {
|
||||
const meterage = await MeterageModel.findById(priceDetails.meterageId).lean();
|
||||
return meterage?.value || "Unknown meterage";
|
||||
if (priceDetails.themeValueId) {
|
||||
const themeValue = await ThemeValueModel.findById(priceDetails.themeValueId).lean();
|
||||
return themeValue?.name || "Unknown variant";
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user