feat: implement master data service and seed scripts for reference table management
This commit is contained in:
@@ -230,6 +230,7 @@ SELECT code, name, "tableName", description, "displayOrder", true FROM (VALUES
|
||||
('passenger-type', 'Passenger Type', 'tbl_passenger_types', 'Passenger Type master', 1),
|
||||
('cabin-class', 'Cabin Class', 'tbl_cabin_classes', 'Cabin Class master', 2),
|
||||
('booking-channel', 'Booking Channel', 'tbl_booking_channels', 'Booking Channel master', 3),
|
||||
('membership-tier', 'Membership Tier', 'tbl_membership_tiers', 'Membership Tier master', 4),
|
||||
('loyalty-tier', 'Loyalty Tier', 'tbl_membership_tiers', 'Loyalty Tier master', 4),
|
||||
('flight-type', 'Flight Type', 'tbl_flight_types', 'Flight Type master', 5),
|
||||
('journey-type', 'Journey Type', 'tbl_journey_types', 'Journey Type master', 6),
|
||||
@@ -253,7 +254,13 @@ SELECT code, name, "tableName", description, "displayOrder", true FROM (VALUES
|
||||
('technical-fault-category', 'Technical Fault Category', 'tbl_technical_fault_categories', 'Technical Fault Category master', 24),
|
||||
('refund-basis', 'Refund Basis', 'tbl_refund_bases', 'Refund Basis master', 25),
|
||||
('currency', 'Currency', 'tbl_currencies', 'Currency master', 26),
|
||||
('refund-method', 'Refund Method', 'tbl_refund_methods', 'Refund Method master', 27)
|
||||
('refund-method', 'Refund Method', 'tbl_refund_methods', 'Refund Method master', 27),
|
||||
('ancillary-purchase', 'Ancillary Purchase', 'tbl_ancillary_purchases', 'Ancillary Purchase master', 28),
|
||||
('customer-value', 'Customer Value', 'tbl_customer_values', 'Customer Value master', 29),
|
||||
('region', 'Region', 'tbl_regions', 'Region master', 30),
|
||||
('revenue-segment', 'Revenue Segment', 'tbl_revenue_segments', 'Revenue Segment master', 31),
|
||||
('jurisdiction', 'Jurisdiction', 'tbl_jurisdictions', 'Jurisdiction master', 32),
|
||||
('operator', 'Operator', 'tbl_operators', 'Operator master', 33)
|
||||
) AS t(code, name, "tableName", description, "displayOrder")
|
||||
WHERE NOT EXISTS (SELECT 1 FROM masters.tbl_rules_categories WHERE masters.tbl_rules_categories.code = t.code);
|
||||
|
||||
@@ -263,6 +270,7 @@ FROM (VALUES
|
||||
('passenger-type', 'tbl_passenger_types'),
|
||||
('cabin-class', 'tbl_cabin_classes'),
|
||||
('booking-channel', 'tbl_booking_channels'),
|
||||
('membership-tier', 'tbl_membership_tiers'),
|
||||
('loyalty-tier', 'tbl_membership_tiers'),
|
||||
('flight-type', 'tbl_flight_types'),
|
||||
('journey-type', 'tbl_journey_types'),
|
||||
@@ -286,7 +294,13 @@ FROM (VALUES
|
||||
('technical-fault-category', 'tbl_technical_fault_categories'),
|
||||
('refund-basis', 'tbl_refund_bases'),
|
||||
('currency', 'tbl_currencies'),
|
||||
('refund-method', 'tbl_refund_methods')
|
||||
('refund-method', 'tbl_refund_methods'),
|
||||
('ancillary-purchase', 'tbl_ancillary_purchases'),
|
||||
('customer-value', 'tbl_customer_values'),
|
||||
('region', 'tbl_regions'),
|
||||
('revenue-segment', 'tbl_revenue_segments'),
|
||||
('jurisdiction', 'tbl_jurisdictions'),
|
||||
('operator', 'tbl_operators')
|
||||
) AS v(code, "tableName")
|
||||
WHERE c.code = v.code AND (c."tableName" IS NULL OR c."tableName" != v."tableName");
|
||||
|
||||
|
||||
@@ -15,8 +15,6 @@ async function bootstrap() {
|
||||
|
||||
const tenants = await tenantService.seedDemoTenants();
|
||||
logger.log(`Seeded ${tenants.length} demo tenant(s)`);
|
||||
|
||||
await masterDataService.seedData();
|
||||
logger.log('Master data ready (common across all tenants).');
|
||||
|
||||
logger.log('Seeding complete. Exiting...');
|
||||
|
||||
@@ -143,6 +143,7 @@ export class MasterDataService implements OnModuleInit {
|
||||
case 'TBL_RULES_CATEGORIES':
|
||||
return this.ruleCategoryRepo;
|
||||
|
||||
case 'OPERATOR':
|
||||
case 'OPERATORS':
|
||||
case 'TBL_OPERATORS':
|
||||
return this.operatorRepo;
|
||||
|
||||
Reference in New Issue
Block a user