feat: create report demography
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
49b98cd56c
commit
90ab3668b4
|
@ -0,0 +1,111 @@
|
|||
import {
|
||||
DATA_FORMAT,
|
||||
DATA_TYPE,
|
||||
FILTER_FIELD_TYPE,
|
||||
FILTER_TYPE,
|
||||
REPORT_GROUP,
|
||||
} from '../../../constant';
|
||||
import { ReportConfigEntity } from '../../../entities/report-config.entity';
|
||||
import { TransactionType } from 'src/modules/transaction/transaction/constants';
|
||||
import { STATUS } from 'src/core/strings/constants/base.constants';
|
||||
|
||||
export default <ReportConfigEntity>{
|
||||
group_name: REPORT_GROUP.transaction_report,
|
||||
unique_name: `${REPORT_GROUP.transaction_report}__demography`,
|
||||
label: 'Demography',
|
||||
table_schema: `transactions main
|
||||
left join transaction_demographies demography on demography.transaction_id::uuid = main.id`,
|
||||
main_table_alias: 'main',
|
||||
whereDefaultConditions: [
|
||||
{
|
||||
column: 'main.status',
|
||||
filter_type: FILTER_TYPE.TEXT_IN_MEMBER,
|
||||
values: [STATUS.SETTLED],
|
||||
},
|
||||
{
|
||||
column: 'main.is_recap_transaction',
|
||||
filter_type: FILTER_TYPE.TEXT_EQUAL,
|
||||
values: [false],
|
||||
},
|
||||
],
|
||||
defaultOrderBy: [],
|
||||
lowLevelOrderBy: [],
|
||||
filter_period_config: {
|
||||
hidden: true,
|
||||
},
|
||||
|
||||
column_configs: [
|
||||
{
|
||||
column: 'main__date',
|
||||
query: `CASE WHEN main.type ='counter' THEN to_char(main.payment_date, 'DD-MM-YYYY') ELSE to_char(main.booking_date, 'DD-MM-YYYY') END`,
|
||||
label: 'Tanggal',
|
||||
type: DATA_TYPE.DIMENSION,
|
||||
format: DATA_FORMAT.TEXT,
|
||||
},
|
||||
{
|
||||
column: 'main__type',
|
||||
query: 'main.type',
|
||||
label: 'Sumber',
|
||||
type: DATA_TYPE.DIMENSION,
|
||||
format: DATA_FORMAT.TEXT,
|
||||
},
|
||||
{
|
||||
column: 'main__code',
|
||||
query: `CASE WHEN main.invoice_code is not null THEN main.invoice_code ELSE main.payment_code END`,
|
||||
label: 'Kode',
|
||||
type: DATA_TYPE.DIMENSION,
|
||||
format: DATA_FORMAT.TEXT,
|
||||
},
|
||||
{
|
||||
column: 'demography__woman',
|
||||
query: `demography.woman`,
|
||||
label: 'Wanita',
|
||||
type: DATA_TYPE.MEASURE,
|
||||
format: DATA_FORMAT.NUMBER,
|
||||
},
|
||||
{
|
||||
column: 'demography__man',
|
||||
query: `demography.man`,
|
||||
label: 'Pria',
|
||||
type: DATA_TYPE.MEASURE,
|
||||
format: DATA_FORMAT.NUMBER,
|
||||
},
|
||||
{
|
||||
column: 'demography__teen',
|
||||
query: `demography.teen`,
|
||||
label: 'Remaja',
|
||||
type: DATA_TYPE.MEASURE,
|
||||
format: DATA_FORMAT.NUMBER,
|
||||
},
|
||||
{
|
||||
column: 'demography__child',
|
||||
query: `demography.child`,
|
||||
label: 'Anak-anak',
|
||||
type: DATA_TYPE.MEASURE,
|
||||
format: DATA_FORMAT.NUMBER,
|
||||
},
|
||||
],
|
||||
filter_configs: [
|
||||
{
|
||||
filed_label: 'Tanggal',
|
||||
filter_column: 'main__date',
|
||||
field_type: FILTER_FIELD_TYPE.date_range_picker,
|
||||
filter_type: FILTER_TYPE.DATE_IN_RANGE_TIMESTAMP,
|
||||
date_format: 'DD-MM-YYYY',
|
||||
},
|
||||
|
||||
{
|
||||
filed_label: 'Sumber',
|
||||
filter_column: 'main__type',
|
||||
field_type: FILTER_FIELD_TYPE.select,
|
||||
filter_type: FILTER_TYPE.TEXT_IN_MEMBER,
|
||||
select_custom_options: [...Object.values(TransactionType)],
|
||||
},
|
||||
{
|
||||
filed_label: 'Kode',
|
||||
filter_column: 'main__code',
|
||||
field_type: FILTER_FIELD_TYPE.input_tag,
|
||||
filter_type: FILTER_TYPE.TEXT_MULTIPLE_CONTAINS,
|
||||
},
|
||||
],
|
||||
};
|
|
@ -13,6 +13,7 @@ import CashierLogReport from './configs/cashier-log';
|
|||
import CashWithdrawalsReport from './configs/cash-withdrawals';
|
||||
import ReconciliationReport from './configs/reconciliation';
|
||||
import TaxReport from './configs/tax';
|
||||
import DemographyReport from './configs/demography';
|
||||
|
||||
export const TransactionReportConfig: ReportConfigEntity[] = [
|
||||
IncomeReport,
|
||||
|
@ -28,4 +29,5 @@ export const TransactionReportConfig: ReportConfigEntity[] = [
|
|||
CashWithdrawalsReport,
|
||||
ReconciliationReport,
|
||||
TaxReport,
|
||||
DemographyReport,
|
||||
];
|
||||
|
|
Loading…
Reference in New Issue