pods_rates_migration
New JSON schema
{
"extraGuests": {
"private": {
"minGuests": 6,
"maxGuests": 8,
"rate": {
"MEMBER": { "OFF_PEAK": 2.5, "REDUCED": 2.5, "PEAK": 5 },
"NON_MEMBER": { "OFF_PEAK": 5, "REDUCED": 5, "PEAK": 10 }
}
},
"coach": {
"minGuests": 2,
"maxGuests": 4,
"rate": {
"MEMBER": { "OFF_PEAK": 0, "PEAK": 0, "REDUCED": 0 },
"NON_MEMBER": { "OFF_PEAK": 0, "PEAK": 0, "REDUCED": 0 }
}
}
},
"defaultRate": {
"id": "OFF_PEAK",
"displayName": "OFF PEAK",
"rate": 20,
"lockingFee": 10
},
"specialRates": [
{
"id": "PEAK",
"displayName": "PEAK",
"rate": 30,
"lockingFee": 10,
"ranges": [
{ "days": [1, 2, 3, 4, 5], "from": { "hour": 17 }, "to": { "hour": 24 } },
{ "days": [1, 2, 3, 4, 5, 6, 0], "from": { "hour": 0 }, "to": { "hour": 6 } },
{ "days": [6, 0], "from": { "hour": 10 }, "to": { "hour": 24 } }
]
},
{
"id": "REDUCED",
"displayName": "REDUCED",
"rate": 30,
"lockingFee": 10,
"ranges": [
]
}
],
"membershipOverrides":{
"default": {
"defaultRate": {
"id": "OFF_PEAK",
"displayName": "OFF PEAK",
"rate": 0,
"lockingFee": 0
},
"specialRates": [
{
"id": "PEAK",
"displayName": "PEAK",
"rate": 30,
"lockingFee": 10,
"ranges": [
{ "days": [1, 2, 3, 4, 5], "from": { "hour": 17 }, "to": { "hour": 24 } },
{ "days": [1, 2, 3, 4, 5, 6, 0], "from": { "hour": 0 }, "to": { "hour": 6 } },
{ "days": [6, 0], "from": { "hour": 10 }, "to": { "hour": 24 } }
]
},
{
"id": "REDUCED",
"displayName": "REDUCED",
"rate": 30,
"lockingFee": 10,
"ranges": [
]
}
]
},
"HOME_ASTORIA": {
"defaultRate": {
"id": "OFF_PEAK",
"displayName": "OFF PEAK",
"rate": 0,
"lockingFee": 10
},
"specialRates": [
{
"id": "PEAK",
"displayName": "PEAK",
"rate": 20,
"lockingFee": 10,
"ranges": [
{ "days": [1, 2, 3, 4, 5], "from": { "hour": 17 }, "to": { "hour": 24 } },
{ "days": [1, 2, 3, 4, 5, 6, 0], "from": { "hour": 0 }, "to": { "hour": 6 } },
{ "days": [6, 0], "from": { "hour": 10 }, "to": { "hour": 24 } }
]
},
{
"id": "REDUCED",
"displayName": "REDUCED",
"rate": 30,
"lockingFee": 10,
"ranges": [
]
}
]
},
"HOME_DOBRO": {
"defaultRate": {
"id": "OFF_PEAK",
"displayName": "OFF PEAK",
"rate": 0,
"lockingFee": 10
},
"specialRates": [
{
"id": "PEAK",
"displayName": "PEAK",
"rate": 30,
"lockingFee": 10,
"ranges": [
{ "days": [1, 2, 3, 4, 5, 6, 0], "from": { "hour": 15.0}, "to": { "hour": 24 } }
]
},
{
"id": "REDUCED",
"displayName": "REDUCED",
"rate": 30,
"lockingFee": 10,
"ranges": [
]
}
]
}
}
}Migration Script
This script generates update statements for each pod using a JSON export from the pods table including pods.id and pods.pricing
Example exported json:
Script
Usage:
Example output
Last updated
Was this helpful?

