feat: add percent value configuration

pull/172/head
shancheas 2025-07-07 15:38:13 +07:00
parent be24ac02f7
commit 10dafec13d
4 changed files with 32 additions and 1 deletions

View File

@ -0,0 +1,17 @@
import { MigrationInterface, QueryRunner } from 'typeorm';
export class AddKeyColumToSetting1751353749678 implements MigrationInterface {
name = 'AddKeyColumToSetting1751353749678';
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(
`ALTER TABLE "transaction_settings" ADD "key" character varying`,
);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(
`ALTER TABLE "transaction_settings" DROP COLUMN "key"`,
);
}
}

View File

@ -42,4 +42,12 @@ export class TransactionSettingModel
{ {
@Column('numeric', { default: 100 }) @Column('numeric', { default: 100 })
value: number; value: number;
@Column('varchar', { nullable: true })
key: string;
//TODO: add logic to get value from key
percentValue(): number {
return this.value ?? 100;
}
} }

View File

@ -52,7 +52,7 @@ export class SalesPriceFormulaDataService extends BaseDataService<SalesPriceForm
const transactionSettingData = await this.transactionSetting.findOne({ const transactionSettingData = await this.transactionSetting.findOne({
where: {}, where: {},
}); });
const percentage = transactionSettingData?.value ?? 100; const percentage = transactionSettingData?.percentValue() ?? 100;
// const transactionPercentage = Math.floor(Math.random() * 100) + 1; // const transactionPercentage = Math.floor(Math.random() * 100) + 1;
const transactionPercentage = await this.dataSaveFactor(); const transactionPercentage = await this.dataSaveFactor();

View File

@ -46,6 +46,12 @@ export class TransactionSettingDto implements TransactionSetting {
required: true, required: true,
}) })
value: number; value: number;
@ApiProperty({
type: String,
required: false,
})
key: string;
} }
export class SalesPriceFormulaDto export class SalesPriceFormulaDto