Feat: add insert product history status at upload product csv

This commit is contained in:
mfadiln2018 2022-08-25 23:01:59 +07:00
parent cfaaa6ce64
commit 9e51516519
2 changed files with 19 additions and 1 deletions

View File

@ -10,6 +10,7 @@ import { ProductSubCategories } from './entities/product-sub-category.entity';
import { ProductSubCategoriesService } from './product-sub-categories.service';
import { UsersModule } from '../users/users.module';
import { ProductHistoryPriceService } from './history-price/history-price.service';
import {ProductHistoryStatus} from "./entities/product-history-status.entity";
@Module({
imports: [
@ -17,6 +18,7 @@ import { ProductHistoryPriceService } from './history-price/history-price.servic
Product,
ProductCategories,
ProductHistoryPrice,
ProductHistoryStatus,
ProductSubCategories,
]),
forwardRef(() => UsersModule),

View File

@ -13,6 +13,7 @@ import { SupplierService } from '../users/supplier/supplier.service';
import { parsingFile } from '../helper/csv-parser';
import { PartnerService } from '../users/partner/partner.service';
import { mapSeries } from 'bluebird';
import { ProductHistoryStatus } from './entities/product-history-status.entity';
export class ProductService {
constructor(
@ -20,6 +21,8 @@ export class ProductService {
private productRepository: Repository<Product>,
@InjectRepository(ProductHistoryPrice)
private productHistoryPrice: Repository<ProductHistoryPrice>,
@InjectRepository(ProductHistoryStatus)
private productHistoryStatus: Repository<ProductHistoryStatus>,
private productSubCategoriesService: ProductSubCategoriesService,
private usersService: UsersService,
private supplierService: SupplierService,
@ -103,6 +106,13 @@ export class ProductService {
});
}
await this.productHistoryStatus.insert({
product: productData,
partner: it[6] != '-' ? partnerData : null,
status: it[5] == 'active' ? 'ACTIVE' : 'NOT ACTIVE',
});
await this.productHistoryPrice.insert({
product: productData,
mark_up_price: it[4],
@ -123,12 +133,18 @@ export class ProductService {
const savedProduct = await this.productRepository.insert({
name: it[1],
code: it[0],
status: it[5] == 'active' ? 'ACTIVE' : 'NOT ACTIVE',
status: null,
sub_categories: subCategories,
supplier: supplierData,
type: it[7] == 'postpaid' ? 'postpaid' : 'prepaid',
});
await this.productHistoryStatus.insert({
product: savedProduct.identifiers[0],
partner: partnerData,
status: it[5] == 'active' ? 'ACTIVE' : 'NOT ACTIVE',
});
return await this.productHistoryPrice.insert({
product: savedProduct.identifiers[0],
mark_up_price: it[4],