收口V4 OWNER RATE目录数据
This commit is contained in:
@@ -25,7 +25,8 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
@Order(Ordered.HIGHEST_PRECEDENCE + 100)
|
||||
public class ReservationV4CatalogBootstrapRunner implements ApplicationRunner {
|
||||
|
||||
private static final String SEED_CATALOG_VERSION = "seed-20260719-v1";
|
||||
private static final String ACCOUNT_SEED_CATALOG_VERSION = "seed-20260719-v1";
|
||||
private static final String OWNER_RATE_CATALOG_VERSION = "owner-rate-20260721-v1";
|
||||
private static final String MARKET_CODE = "LEISURE";
|
||||
private static final String SOURCE_CODE = "TRAVEL_AGENT";
|
||||
|
||||
@@ -35,21 +36,112 @@ public class ReservationV4CatalogBootstrapRunner implements ApplicationRunner {
|
||||
new AccountSeed("HANATOUR_TD", "HANATOUR TD CO., LTD."));
|
||||
|
||||
private static final List<CodeSeed> CODE_SEEDS = List.of(
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "TWN", "TWN", 10, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "KING", "KING", 20, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "DBL", "DBL", 30, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "SGL", "SGL", 40, "{\"adult_capacity\":1}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "TRP", "TRP", 50, "{\"adult_capacity\":3}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "RM1", "RM1", 60, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "RM2", "RM2", 70, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "RM3", "RM3", 80, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "BAR", "BAR", 10, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "RACK", "RACK", 20, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "PACKAGE", "PACKAGE", 30, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GROUP", "GROUP", 40, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "FIT", "FIT", 50, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.MARKET.name(), MARKET_CODE, MARKET_CODE, 10, null),
|
||||
new CodeSeed(ReservationV4CatalogType.SOURCE.name(), SOURCE_CODE, SOURCE_CODE, 10, null));
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "RM2", "RM2", 10,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "RM3", "RM3", 20,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "RM4", "RM4", 30,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"adult_capacity\":4}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "SU1", "SU1", 40,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "SU2", "SU2", 50,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"adult_capacity\":2}"),
|
||||
new CodeSeed(ReservationV4CatalogType.ROOM_TYPE.name(), "SU3", "SU3", 60,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"adult_capacity\":4}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA2-850UP", "GRPA2-850UP", 10,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA2-1275", "GRPA2-1275", 20,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA2-1400", "GRPA2-1400", 30,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA2-1800", "GRPA2-1800", 40,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA2-2400", "GRPA2-2400", 50,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA1-900", "GRPA1-900", 60,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA1-1400", "GRPA1-1400", 70,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA1-1300", "GRPA1-1300", 80,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA1-1150", "GRPA1-1150", 90,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA1-1725", "GRPA1-1725", 100,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRPA1-2300", "GRPA1-2300", 110,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA3-1200*B'FAST BUALUANG", "GRPA3-1200*B'FAST BUALUANG", 120,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA3-2000*B'FAST BUALUANG", "GRPA3-2000*B'FAST BUALUANG", 130,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA3-1400*B'FAST BUALUANG", "GRPA3-1400*B'FAST BUALUANG", 140,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA3-1800*B'FAST BUALUANG", "GRPA3-1800*B'FAST BUALUANG", 150,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA3-2400*B'FAST BUALUANG", "GRPA3-2400*B'FAST BUALUANG", 160,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA4-1200*B'FAST LEELA", "GRPA4-1200*B'FAST LEELA", 170,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA4-2000*B'FAST LEELA", "GRPA4-2000*B'FAST LEELA", 180,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA4-1400*B'FAST LEELA", "GRPA4-1400*B'FAST LEELA", 190,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA4-1800*B'FAST LEELA", "GRPA4-1800*B'FAST LEELA", 200,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(),
|
||||
"GRPA4-2400*B'FAST LEELA", "GRPA4-2400*B'FAST LEELA", 210,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO1-850UP", "WHO1-850UP", 220,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO1-1275", "WHO1-1275", 230,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO1-1400", "WHO1-1400", 240,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO1-1800", "WHO1-1800", 250,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO1-2400", "WHO1-2400", 260,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRP1-900", "GRP1-900", 270,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRP1-1400", "GRP1-1400", 280,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRP1-1300", "GRP1-1300", 290,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRP1-1800", "GRP1-1800", 300,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "GRP1-2400", "GRP1-2400", 310,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO2-1100", "WHO2-1100", 320,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO2-1600", "WHO2-1600", 330,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO2-1400", "WHO2-1400", 340,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO2-1800", "WHO2-1800", 350,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO2-2400", "WHO2-2400", 360,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO3-1200", "WHO3-1200", 370,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO3-1800", "WHO3-1800", 380,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO3-1400", "WHO3-1400", 390,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.RATE_CODE.name(), "WHO3-2400", "WHO3-2400", 400,
|
||||
OWNER_RATE_CATALOG_VERSION, "{\"pricing_available\":false}"),
|
||||
new CodeSeed(ReservationV4CatalogType.MARKET.name(), MARKET_CODE, MARKET_CODE, 10,
|
||||
ACCOUNT_SEED_CATALOG_VERSION, null),
|
||||
new CodeSeed(ReservationV4CatalogType.SOURCE.name(), SOURCE_CODE, SOURCE_CODE, 10,
|
||||
ACCOUNT_SEED_CATALOG_VERSION, null));
|
||||
|
||||
private final PlatformHotelRepository hotelRepository;
|
||||
private final ReservationV4CatalogRepository catalogRepository;
|
||||
@@ -112,7 +204,7 @@ public class ReservationV4CatalogBootstrapRunner implements ApplicationRunner {
|
||||
entity.setSourceCode(SOURCE_CODE);
|
||||
entity.setStatus(ReservationV4CatalogStatus.ACTIVE.name());
|
||||
entity.setSourceSystem(ReservationV4CatalogSourceSystem.FIXED_SEED_IMPORT.name());
|
||||
entity.setCatalogVersion(SEED_CATALOG_VERSION);
|
||||
entity.setCatalogVersion(ACCOUNT_SEED_CATALOG_VERSION);
|
||||
entity.setVersion(0L);
|
||||
entity.setCreatedAt(now);
|
||||
entity.setUpdatedAt(now);
|
||||
@@ -131,7 +223,7 @@ public class ReservationV4CatalogBootstrapRunner implements ApplicationRunner {
|
||||
entity.setStatus(ReservationV4CatalogStatus.ACTIVE.name());
|
||||
entity.setSourceSystem(ReservationV4CatalogSourceSystem.FIXED_SEED_IMPORT.name());
|
||||
entity.setSortOrder(seed.sortOrder());
|
||||
entity.setCatalogVersion(SEED_CATALOG_VERSION);
|
||||
entity.setCatalogVersion(seed.catalogVersion());
|
||||
entity.setMetadataJson(seed.metadataJson());
|
||||
entity.setVersion(0L);
|
||||
entity.setCreatedAt(now);
|
||||
@@ -152,6 +244,12 @@ public class ReservationV4CatalogBootstrapRunner implements ApplicationRunner {
|
||||
private record AccountSeed(String accountCode, String accountName) {
|
||||
}
|
||||
|
||||
private record CodeSeed(String catalogType, String code, String displayName, int sortOrder, String metadataJson) {
|
||||
private record CodeSeed(
|
||||
String catalogType,
|
||||
String code,
|
||||
String displayName,
|
||||
int sortOrder,
|
||||
String catalogVersion,
|
||||
String metadataJson) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
-- M002 V4 OWNER RATE 目录收口:替换系统固定 Room Type / Rate Code 种子,不清理账号、权限、SourceMessage 或 V4 业务数据。
|
||||
DELETE FROM workflow_reservation_catalog_code
|
||||
WHERE catalog_type IN ('ROOM_TYPE', 'RATE_CODE')
|
||||
AND source_system = 'FIXED_SEED_IMPORT'
|
||||
AND (
|
||||
hotel_id IN ('HOTEL-TEST', 'HOTEL-DEV')
|
||||
OR hotel_id IN (
|
||||
SELECT hotel_id
|
||||
FROM platform_hotel
|
||||
WHERE hotel_status = 'ACTIVE'
|
||||
)
|
||||
);
|
||||
|
||||
INSERT INTO workflow_reservation_catalog_code (
|
||||
id, hotel_id, catalog_type, code, display_name, status, source_system, external_id, sort_order,
|
||||
catalog_version, last_synced_at, metadata_json, version, created_at, updated_at, logic_deleted_at,
|
||||
logic_deleted_reason
|
||||
)
|
||||
SELECT
|
||||
2500000000000000 + ROW_NUMBER() OVER (ORDER BY owner_rate_hotels.hotel_id, seed.sort_order),
|
||||
owner_rate_hotels.hotel_id,
|
||||
seed.catalog_type,
|
||||
seed.code,
|
||||
seed.display_name,
|
||||
'ACTIVE',
|
||||
'FIXED_SEED_IMPORT',
|
||||
NULL,
|
||||
seed.sort_order,
|
||||
'owner-rate-20260721-v1',
|
||||
NULL,
|
||||
seed.metadata_json,
|
||||
0,
|
||||
'2026-07-21 00:00:00.000000',
|
||||
'2026-07-21 00:00:00.000000',
|
||||
NULL,
|
||||
NULL
|
||||
FROM (
|
||||
SELECT hotel_id
|
||||
FROM (
|
||||
SELECT 'HOTEL-TEST' AS hotel_id
|
||||
UNION ALL SELECT 'HOTEL-DEV'
|
||||
UNION ALL
|
||||
SELECT hotel_id
|
||||
FROM platform_hotel
|
||||
WHERE hotel_status = 'ACTIVE'
|
||||
) raw_hotels
|
||||
WHERE hotel_id IS NOT NULL
|
||||
AND hotel_id <> ''
|
||||
GROUP BY hotel_id
|
||||
) owner_rate_hotels
|
||||
JOIN (
|
||||
SELECT 10 AS sort_order, 'ROOM_TYPE' AS catalog_type, 'RM2' AS code, 'RM2' AS display_name, '{"adult_capacity":2}' AS metadata_json
|
||||
UNION ALL SELECT 20, 'ROOM_TYPE', 'RM3', 'RM3', '{"adult_capacity":2}'
|
||||
UNION ALL SELECT 30, 'ROOM_TYPE', 'RM4', 'RM4', '{"adult_capacity":4}'
|
||||
UNION ALL SELECT 40, 'ROOM_TYPE', 'SU1', 'SU1', '{"adult_capacity":2}'
|
||||
UNION ALL SELECT 50, 'ROOM_TYPE', 'SU2', 'SU2', '{"adult_capacity":2}'
|
||||
UNION ALL SELECT 60, 'ROOM_TYPE', 'SU3', 'SU3', '{"adult_capacity":4}'
|
||||
UNION ALL SELECT 70, 'RATE_CODE', 'GRPA2-850UP', 'GRPA2-850UP', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 80, 'RATE_CODE', 'GRPA2-1275', 'GRPA2-1275', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 90, 'RATE_CODE', 'GRPA2-1400', 'GRPA2-1400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 100, 'RATE_CODE', 'GRPA2-1800', 'GRPA2-1800', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 110, 'RATE_CODE', 'GRPA2-2400', 'GRPA2-2400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 120, 'RATE_CODE', 'GRPA1-900', 'GRPA1-900', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 130, 'RATE_CODE', 'GRPA1-1400', 'GRPA1-1400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 140, 'RATE_CODE', 'GRPA1-1300', 'GRPA1-1300', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 150, 'RATE_CODE', 'GRPA1-1150', 'GRPA1-1150', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 160, 'RATE_CODE', 'GRPA1-1725', 'GRPA1-1725', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 170, 'RATE_CODE', 'GRPA1-2300', 'GRPA1-2300', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 180, 'RATE_CODE', 'GRPA3-1200*B''FAST BUALUANG', 'GRPA3-1200*B''FAST BUALUANG', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 190, 'RATE_CODE', 'GRPA3-2000*B''FAST BUALUANG', 'GRPA3-2000*B''FAST BUALUANG', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 200, 'RATE_CODE', 'GRPA3-1400*B''FAST BUALUANG', 'GRPA3-1400*B''FAST BUALUANG', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 210, 'RATE_CODE', 'GRPA3-1800*B''FAST BUALUANG', 'GRPA3-1800*B''FAST BUALUANG', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 220, 'RATE_CODE', 'GRPA3-2400*B''FAST BUALUANG', 'GRPA3-2400*B''FAST BUALUANG', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 230, 'RATE_CODE', 'GRPA4-1200*B''FAST LEELA', 'GRPA4-1200*B''FAST LEELA', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 240, 'RATE_CODE', 'GRPA4-2000*B''FAST LEELA', 'GRPA4-2000*B''FAST LEELA', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 250, 'RATE_CODE', 'GRPA4-1400*B''FAST LEELA', 'GRPA4-1400*B''FAST LEELA', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 260, 'RATE_CODE', 'GRPA4-1800*B''FAST LEELA', 'GRPA4-1800*B''FAST LEELA', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 270, 'RATE_CODE', 'GRPA4-2400*B''FAST LEELA', 'GRPA4-2400*B''FAST LEELA', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 280, 'RATE_CODE', 'WHO1-850UP', 'WHO1-850UP', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 290, 'RATE_CODE', 'WHO1-1275', 'WHO1-1275', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 300, 'RATE_CODE', 'WHO1-1400', 'WHO1-1400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 310, 'RATE_CODE', 'WHO1-1800', 'WHO1-1800', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 320, 'RATE_CODE', 'WHO1-2400', 'WHO1-2400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 330, 'RATE_CODE', 'GRP1-900', 'GRP1-900', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 340, 'RATE_CODE', 'GRP1-1400', 'GRP1-1400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 350, 'RATE_CODE', 'GRP1-1300', 'GRP1-1300', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 360, 'RATE_CODE', 'GRP1-1800', 'GRP1-1800', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 370, 'RATE_CODE', 'GRP1-2400', 'GRP1-2400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 380, 'RATE_CODE', 'WHO2-1100', 'WHO2-1100', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 390, 'RATE_CODE', 'WHO2-1600', 'WHO2-1600', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 400, 'RATE_CODE', 'WHO2-1400', 'WHO2-1400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 410, 'RATE_CODE', 'WHO2-1800', 'WHO2-1800', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 420, 'RATE_CODE', 'WHO2-2400', 'WHO2-2400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 430, 'RATE_CODE', 'WHO3-1200', 'WHO3-1200', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 440, 'RATE_CODE', 'WHO3-1800', 'WHO3-1800', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 450, 'RATE_CODE', 'WHO3-1400', 'WHO3-1400', '{"pricing_available":false}'
|
||||
UNION ALL SELECT 460, 'RATE_CODE', 'WHO3-2400', 'WHO3-2400', '{"pricing_available":false}'
|
||||
) seed ON 1 = 1
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM workflow_reservation_catalog_code existing
|
||||
WHERE existing.hotel_id = owner_rate_hotels.hotel_id
|
||||
AND existing.catalog_type = seed.catalog_type
|
||||
AND existing.code = seed.code
|
||||
);
|
||||
Reference in New Issue
Block a user