Compare commits

..

2 Commits

Author SHA1 Message Date
Aswin Ashar Abdullah 688be5828d fix(SPG-601) Confirm data status draft error - Cannot read properties of null (reading 'count')
continuous-integration/drone/tag Build is passing Details
2024-07-15 12:43:57 +07:00
Aswin Ashar Abdullah 001f371244 fix(SPG-600) Filter Sumber, Tipe, Kontak pada index booking belum berjalan 2024-07-15 12:43:17 +07:00
4 changed files with 81 additions and 9 deletions

View File

@ -33,4 +33,6 @@ export interface FilterTransactionEntity extends BaseFilterEntity {
invoice_date_to?: Date; invoice_date_to?: Date;
settlement_date_from?: Date; settlement_date_from?: Date;
settlement_date_to?: Date; settlement_date_to?: Date;
request_refund_date_from?: Date;
request_refund_date_to?: Date;
} }

View File

@ -9,14 +9,14 @@ export async function generateInvoiceCodeHelper(dataService) {
const char = generateRandom(1); const char = generateRandom(1);
const number = generateRandom(1, true); const number = generateRandom(1, true);
const invoice_code = await dataService.getOneByOptions({ const invoice_code = await dataService.getManyByOptions({
where: { where: {
invoice_code: ILike(`%${month_year}%`), invoice_code: ILike(`%${month_year}%`),
}, },
}); });
const current_number = invoice_code.length + 1;
return `INV-${month_year}${char}${number}/${invoice_code return `INV-${month_year}${char}${number}/${current_number
.count()
.toString() .toString()
.padStart(5, '0')}`; .padStart(5, '0')}`;
} }

View File

@ -81,9 +81,6 @@ export function mappingRevertTransaction(data, type) {
booking_date: data.created_at, booking_date: data.created_at,
settlement_date: data.created_at, settlement_date: data.created_at,
payment_type: data.payment_type, payment_type: data.payment_type,
payment_type_method_id: data.payment_type_bank?._id,
payment_type_method_name: data.payment_type_bank?.issuer_name,
payment_type_method_number: data.payment_type_bank?.account_number,
payment_card_information: data.card_information, payment_card_information: data.card_information,
payment_code_reference: data.payment_code, payment_code_reference: data.payment_code,
discount_code_id: data.discount_code?.id, discount_code_id: data.discount_code?.id,
@ -109,7 +106,7 @@ export function mappingRevertTransaction(data, type) {
data.payment_type_method?.id ?? data.payment_type_bank?.id, data.payment_type_method?.id ?? data.payment_type_bank?.id,
payment_type_method_number: payment_type_method_number:
data.payment_type_method?.account_number ?? data.payment_type_method?.account_number ??
data.payment_type?.account_number, data.payment_type_bank?.account_number,
payment_type_method_name: payment_type_method_name:
data.payment_type_method?.issuer_name ?? data.payment_type_method?.issuer_name ??
data.payment_type_bank?.issuer_name, data.payment_type_bank?.issuer_name,

View File

@ -6,6 +6,7 @@ import {
Param, Param,
RelationParam, RelationParam,
} from 'src/core/modules/domain/entities/base-filter.entity'; } from 'src/core/modules/domain/entities/base-filter.entity';
import { BetweenQueryHelper } from 'src/core/helpers/query/between-query.helper';
@Injectable() @Injectable()
export class IndexTransactionManager extends BaseIndexManager<TransactionEntity> { export class IndexTransactionManager extends BaseIndexManager<TransactionEntity> {
@ -75,14 +76,43 @@ export class IndexTransactionManager extends BaseIndexManager<TransactionEntity>
`refund.id`, `refund.id`,
`refund.code`, `refund.code`,
`refund.refund_date`, `refund.refund_date`,
`refund.request_date`,
]; ];
} }
get specificFilter(): Param[] { get specificFilter(): Param[] {
return [ return [
{ {
cols: `${this.tableName}.name`, cols: `${this.tableName}.invoice_code`,
data: this.filterParam.names, data: this.filterParam.invoice_codes,
},
{
cols: `${this.tableName}.type`,
data: this.filterParam.types,
},
{
cols: `${this.tableName}.customer_type`,
data: this.filterParam.customer_types,
},
{
cols: `${this.tableName}.customer_name`,
data: this.filterParam.customer_names,
},
{
cols: `${this.tableName}.payment_type`,
data: this.filterParam.payment_types,
},
{
cols: `${this.tableName}.payment_bank`,
data: this.filterParam.payment_banks,
},
{
cols: `refund.code`,
data: this.filterParam.refund_codes,
},
{
cols: `${this.tableName}.creator_name`,
data: this.filterParam.creator_names,
}, },
]; ];
} }
@ -90,6 +120,49 @@ export class IndexTransactionManager extends BaseIndexManager<TransactionEntity>
setQueryFilter( setQueryFilter(
queryBuilder: SelectQueryBuilder<TransactionEntity>, queryBuilder: SelectQueryBuilder<TransactionEntity>,
): SelectQueryBuilder<TransactionEntity> { ): SelectQueryBuilder<TransactionEntity> {
if (this.filterParam.booking_date_from) {
new BetweenQueryHelper(
queryBuilder,
this.tableName,
'booking_date',
this.filterParam.booking_date_from,
this.filterParam.booking_date_to,
'booking_date',
).getQuery();
}
if (this.filterParam.invoice_date_from) {
new BetweenQueryHelper(
queryBuilder,
this.tableName,
'invoice_date',
this.filterParam.invoice_date_from,
this.filterParam.invoice_date_to,
'invoice_date',
).getQuery();
}
if (this.filterParam.settlement_date_from) {
new BetweenQueryHelper(
queryBuilder,
this.tableName,
'settlement_date',
this.filterParam.settlement_date_from,
this.filterParam.settlement_date_to,
'settlement_date',
).getQuery();
}
if (this.filterParam.request_refund_date_from) {
new BetweenQueryHelper(
queryBuilder,
this.tableName,
'request_refund_date',
this.filterParam.request_refund_date_from,
this.filterParam.request_refund_date_to,
'request_refund',
).getQuery();
}
queryBuilder.andWhere(`${this.tableName}.is_recap_transaction is false`); queryBuilder.andWhere(`${this.tableName}.is_recap_transaction is false`);
return queryBuilder; return queryBuilder;
} }