@tmscloud/tbt-knex 0.0.18 → 0.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -35,4 +35,31 @@ export declare class EventDAO implements IBaseDAO<IEvent> {
|
|
|
35
35
|
* Hard delete an event by ID
|
|
36
36
|
*/
|
|
37
37
|
hardDelete(id: number): Promise<boolean>;
|
|
38
|
+
/**
|
|
39
|
+
* Locks on event_id (same lock as the GTFS importer) so hard-delete
|
|
40
|
+
* and an in-flight import can't race. The first two DELETEs clear
|
|
41
|
+
* RESTRICT walls (duty_item_progress, cross-event duty_template_items
|
|
42
|
+
* pointing at this event's routes); CASCADE handles the rest via
|
|
43
|
+
* duties and duty_templates. Pre-delete COUNTs because rowCount loses
|
|
44
|
+
* CASCADE wipes (we never DELETE segments/track/tracking directly).
|
|
45
|
+
*
|
|
46
|
+
* Known limit: million-row driver_tracking events can deadlock active
|
|
47
|
+
* drivers under the single-transaction CASCADE storm.
|
|
48
|
+
*/
|
|
49
|
+
hardDeleteWithCascade(id: number): Promise<{
|
|
50
|
+
acquired: false;
|
|
51
|
+
} | {
|
|
52
|
+
acquired: true;
|
|
53
|
+
deleted: boolean;
|
|
54
|
+
cascaded: {
|
|
55
|
+
duty_item_progress: number;
|
|
56
|
+
duty_template_items: number;
|
|
57
|
+
duty_template_segments: number;
|
|
58
|
+
duty_templates: number;
|
|
59
|
+
duty_track: number;
|
|
60
|
+
driver_tracking: number;
|
|
61
|
+
duties: number;
|
|
62
|
+
routes: number;
|
|
63
|
+
};
|
|
64
|
+
}>;
|
|
38
65
|
}
|
|
@@ -157,6 +157,88 @@ class EventDAO {
|
|
|
157
157
|
return result > 0;
|
|
158
158
|
});
|
|
159
159
|
}
|
|
160
|
+
/**
|
|
161
|
+
* Locks on event_id (same lock as the GTFS importer) so hard-delete
|
|
162
|
+
* and an in-flight import can't race. The first two DELETEs clear
|
|
163
|
+
* RESTRICT walls (duty_item_progress, cross-event duty_template_items
|
|
164
|
+
* pointing at this event's routes); CASCADE handles the rest via
|
|
165
|
+
* duties and duty_templates. Pre-delete COUNTs because rowCount loses
|
|
166
|
+
* CASCADE wipes (we never DELETE segments/track/tracking directly).
|
|
167
|
+
*
|
|
168
|
+
* Known limit: million-row driver_tracking events can deadlock active
|
|
169
|
+
* drivers under the single-transaction CASCADE storm.
|
|
170
|
+
*/
|
|
171
|
+
hardDeleteWithCascade(id) {
|
|
172
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
173
|
+
if (!Number.isInteger(id) || id <= 0) {
|
|
174
|
+
throw new Error(`hardDeleteWithCascade: invalid event id ${id}`);
|
|
175
|
+
}
|
|
176
|
+
return yield this.knex.transaction((trx) => __awaiter(this, void 0, void 0, function* () {
|
|
177
|
+
var _a, _b, _c;
|
|
178
|
+
const lockRow = yield trx.raw(`SELECT pg_try_advisory_xact_lock(?, ?) AS got`, [1, id]);
|
|
179
|
+
const got = ((_b = (_a = lockRow === null || lockRow === void 0 ? void 0 : lockRow.rows) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.got) === true;
|
|
180
|
+
if (!got)
|
|
181
|
+
return { acquired: false };
|
|
182
|
+
const c = (sql, bindings) => __awaiter(this, void 0, void 0, function* () {
|
|
183
|
+
var _a, _b, _c;
|
|
184
|
+
const r = yield trx.raw(sql, bindings);
|
|
185
|
+
return Number((_c = (_b = (_a = r === null || r === void 0 ? void 0 : r.rows) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.c) !== null && _c !== void 0 ? _c : 0);
|
|
186
|
+
});
|
|
187
|
+
const dipCount = yield c(`SELECT count(*)::int AS c FROM duty_item_progress
|
|
188
|
+
WHERE duty_id IN (SELECT id FROM duties WHERE event_id = ?)
|
|
189
|
+
OR route_id IN (SELECT id FROM routes WHERE event_id = ?)
|
|
190
|
+
OR template_item_id IN (
|
|
191
|
+
SELECT dti.id FROM duty_template_items dti
|
|
192
|
+
LEFT JOIN duty_template_segments dts ON dti.segment_id = dts.id
|
|
193
|
+
WHERE dts.duty_template_id IN (SELECT id FROM duty_templates WHERE event_id = ?)
|
|
194
|
+
OR dti.route_id IN (SELECT id FROM routes WHERE event_id = ?)
|
|
195
|
+
)`, [id, id, id, id]);
|
|
196
|
+
const dtiCrossEventCount = yield c(`SELECT count(*)::int AS c FROM duty_template_items
|
|
197
|
+
WHERE route_id IN (SELECT id FROM routes WHERE event_id = ?)`, [id]);
|
|
198
|
+
const dtiInEventCount = yield c(`SELECT count(*)::int AS c FROM duty_template_items dti
|
|
199
|
+
JOIN duty_template_segments dts ON dti.segment_id = dts.id
|
|
200
|
+
WHERE dts.duty_template_id IN (SELECT id FROM duty_templates WHERE event_id = ?)`, [id]);
|
|
201
|
+
const dtsCount = yield c(`SELECT count(*)::int AS c FROM duty_template_segments
|
|
202
|
+
WHERE duty_template_id IN (SELECT id FROM duty_templates WHERE event_id = ?)`, [id]);
|
|
203
|
+
const dtCount = yield c(`SELECT count(*)::int AS c FROM duty_templates WHERE event_id = ?`, [id]);
|
|
204
|
+
const dutiesCount = yield c(`SELECT count(*)::int AS c FROM duties WHERE event_id = ?`, [id]);
|
|
205
|
+
const dutyTrackCount = yield c(`SELECT count(*)::int AS c FROM duty_track
|
|
206
|
+
WHERE duty_id IN (SELECT id FROM duties WHERE event_id = ?)`, [id]);
|
|
207
|
+
const driverTrackingCount = yield c(`SELECT count(*)::int AS c FROM driver_tracking
|
|
208
|
+
WHERE duty_id IN (SELECT id FROM duties WHERE event_id = ?)`, [id]);
|
|
209
|
+
const routesCount = yield c(`SELECT count(*)::int AS c FROM routes WHERE event_id = ?`, [id]);
|
|
210
|
+
yield trx.raw(`DELETE FROM duty_item_progress
|
|
211
|
+
WHERE duty_id IN (SELECT id FROM duties WHERE event_id = ?)
|
|
212
|
+
OR route_id IN (SELECT id FROM routes WHERE event_id = ?)
|
|
213
|
+
OR template_item_id IN (
|
|
214
|
+
SELECT dti.id FROM duty_template_items dti
|
|
215
|
+
LEFT JOIN duty_template_segments dts ON dti.segment_id = dts.id
|
|
216
|
+
WHERE dts.duty_template_id IN (SELECT id FROM duty_templates WHERE event_id = ?)
|
|
217
|
+
OR dti.route_id IN (SELECT id FROM routes WHERE event_id = ?)
|
|
218
|
+
)`, [id, id, id, id]);
|
|
219
|
+
yield trx.raw(`DELETE FROM duty_template_items
|
|
220
|
+
WHERE route_id IN (SELECT id FROM routes WHERE event_id = ?)`, [id]);
|
|
221
|
+
yield trx.raw(`DELETE FROM duties WHERE event_id = ?`, [id]);
|
|
222
|
+
yield trx.raw(`DELETE FROM duty_templates WHERE event_id = ?`, [id]);
|
|
223
|
+
yield trx.raw(`DELETE FROM routes WHERE event_id = ?`, [id]);
|
|
224
|
+
const eventResult = yield trx.raw(`DELETE FROM events WHERE id = ?`, [id]);
|
|
225
|
+
return {
|
|
226
|
+
acquired: true,
|
|
227
|
+
deleted: ((_c = eventResult.rowCount) !== null && _c !== void 0 ? _c : 0) > 0,
|
|
228
|
+
cascaded: {
|
|
229
|
+
duty_item_progress: dipCount,
|
|
230
|
+
duty_template_items: dtiCrossEventCount + dtiInEventCount,
|
|
231
|
+
duty_template_segments: dtsCount,
|
|
232
|
+
duty_templates: dtCount,
|
|
233
|
+
duty_track: dutyTrackCount,
|
|
234
|
+
driver_tracking: driverTrackingCount,
|
|
235
|
+
duties: dutiesCount,
|
|
236
|
+
routes: routesCount,
|
|
237
|
+
},
|
|
238
|
+
};
|
|
239
|
+
}));
|
|
240
|
+
});
|
|
241
|
+
}
|
|
160
242
|
}
|
|
161
243
|
exports.EventDAO = EventDAO;
|
|
162
244
|
//# sourceMappingURL=event.dao.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.dao.js","sourceRoot":"","sources":["../../../src/dao/event/event.dao.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"event.dao.js","sourceRoot":"","sources":["../../../src/dao/event/event.dao.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { IRoute } from "../../interfaces/route/route.interfaces";
|
|
2
2
|
import { IBaseDAO, IDataPaginator } from "../../d.types";
|
|
3
|
+
/**
|
|
4
|
+
* Routes with `geojson.properties.max_divergence_m > THRESHOLD` (set by the
|
|
5
|
+
* GTFS importer) are sorted to the front of every paginated list so the
|
|
6
|
+
* webapp can surface "Verify path" warnings on page 1. Editor-created routes
|
|
7
|
+
* lack the field; Postgres treats the missing-key cast as NULL, which falls
|
|
8
|
+
* through CASE → ELSE → the non-warned tier.
|
|
9
|
+
*/
|
|
10
|
+
export declare const ROUTE_WARNING_DIVERGENCE_THRESHOLD_M = 25;
|
|
3
11
|
export declare class RouteDAO implements IBaseDAO<IRoute> {
|
|
4
12
|
private _knex?;
|
|
5
13
|
private get knex();
|
|
@@ -44,6 +52,21 @@ export declare class RouteDAO implements IBaseDAO<IRoute> {
|
|
|
44
52
|
* Hard delete a route by ID
|
|
45
53
|
*/
|
|
46
54
|
hardDelete(id: number): Promise<boolean>;
|
|
55
|
+
/**
|
|
56
|
+
* Locks on parent event_id (same lock as the GTFS importer) so a
|
|
57
|
+
* route delete and an in-flight import can't race. Pre-delete COUNTs
|
|
58
|
+
* because rowCount loses the indirect template_item_id wipe.
|
|
59
|
+
*/
|
|
60
|
+
hardDeleteWithCascade(id: number): Promise<{
|
|
61
|
+
acquired: false;
|
|
62
|
+
} | {
|
|
63
|
+
acquired: true;
|
|
64
|
+
deleted: boolean;
|
|
65
|
+
cascaded: {
|
|
66
|
+
duty_item_progress: number;
|
|
67
|
+
duty_template_items: number;
|
|
68
|
+
};
|
|
69
|
+
}>;
|
|
47
70
|
/**
|
|
48
71
|
* Get all routes by event ID with pagination
|
|
49
72
|
*/
|
|
@@ -12,8 +12,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.RouteDAO = void 0;
|
|
15
|
+
exports.RouteDAO = exports.ROUTE_WARNING_DIVERGENCE_THRESHOLD_M = void 0;
|
|
16
16
|
const KnexConnection_1 = __importDefault(require("../../KnexConnection"));
|
|
17
|
+
/**
|
|
18
|
+
* Routes with `geojson.properties.max_divergence_m > THRESHOLD` (set by the
|
|
19
|
+
* GTFS importer) are sorted to the front of every paginated list so the
|
|
20
|
+
* webapp can surface "Verify path" warnings on page 1. Editor-created routes
|
|
21
|
+
* lack the field; Postgres treats the missing-key cast as NULL, which falls
|
|
22
|
+
* through CASE → ELSE → the non-warned tier.
|
|
23
|
+
*/
|
|
24
|
+
exports.ROUTE_WARNING_DIVERGENCE_THRESHOLD_M = 25;
|
|
25
|
+
function applyRouteListSort(query, alias = "r") {
|
|
26
|
+
const divergenceExpr = `(${alias}.geojson->'properties'->>'max_divergence_m')::numeric`;
|
|
27
|
+
return query
|
|
28
|
+
.orderByRaw(`CASE WHEN ${divergenceExpr} > ? THEN 0 ELSE 1 END ASC`, [exports.ROUTE_WARNING_DIVERGENCE_THRESHOLD_M])
|
|
29
|
+
.orderByRaw(`CASE WHEN ${divergenceExpr} > ? THEN ${divergenceExpr} ELSE 0 END DESC`, [exports.ROUTE_WARNING_DIVERGENCE_THRESHOLD_M])
|
|
30
|
+
.orderBy(`${alias}.created_at`, "desc");
|
|
31
|
+
}
|
|
17
32
|
class RouteDAO {
|
|
18
33
|
get knex() {
|
|
19
34
|
if (!this._knex) {
|
|
@@ -42,13 +57,11 @@ class RouteDAO {
|
|
|
42
57
|
getAll() {
|
|
43
58
|
return __awaiter(this, arguments, void 0, function* (page = 1, limit = 10) {
|
|
44
59
|
const offset = (page - 1) * limit;
|
|
45
|
-
|
|
46
|
-
const rawData = yield this.knex("routes")
|
|
60
|
+
const rawData = yield applyRouteListSort(this.knex("routes")
|
|
47
61
|
.select("*")
|
|
48
62
|
.where("is_active", true)
|
|
49
63
|
.limit(limit)
|
|
50
|
-
.offset(offset)
|
|
51
|
-
.orderBy("created_at", "desc");
|
|
64
|
+
.offset(offset), "routes");
|
|
52
65
|
// Parse JSON fields
|
|
53
66
|
const data = rawData.map((route) => this.parseRouteJson(route));
|
|
54
67
|
// Get total count separately
|
|
@@ -206,21 +219,73 @@ class RouteDAO {
|
|
|
206
219
|
return result > 0;
|
|
207
220
|
});
|
|
208
221
|
}
|
|
222
|
+
/**
|
|
223
|
+
* Locks on parent event_id (same lock as the GTFS importer) so a
|
|
224
|
+
* route delete and an in-flight import can't race. Pre-delete COUNTs
|
|
225
|
+
* because rowCount loses the indirect template_item_id wipe.
|
|
226
|
+
*/
|
|
227
|
+
hardDeleteWithCascade(id) {
|
|
228
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
229
|
+
if (!Number.isInteger(id) || id <= 0) {
|
|
230
|
+
throw new Error(`hardDeleteWithCascade: invalid route id ${id}`);
|
|
231
|
+
}
|
|
232
|
+
return yield this.knex.transaction((trx) => __awaiter(this, void 0, void 0, function* () {
|
|
233
|
+
var _a, _b, _c;
|
|
234
|
+
const routeRow = yield trx("routes")
|
|
235
|
+
.select("event_id")
|
|
236
|
+
.where("id", id)
|
|
237
|
+
.first();
|
|
238
|
+
if (!routeRow) {
|
|
239
|
+
return {
|
|
240
|
+
acquired: true,
|
|
241
|
+
deleted: false,
|
|
242
|
+
cascaded: { duty_item_progress: 0, duty_template_items: 0 },
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
const eventId = routeRow.event_id;
|
|
246
|
+
const lockRow = yield trx.raw(`SELECT pg_try_advisory_xact_lock(?, ?) AS got`, [1, eventId]);
|
|
247
|
+
const got = ((_b = (_a = lockRow === null || lockRow === void 0 ? void 0 : lockRow.rows) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.got) === true;
|
|
248
|
+
if (!got)
|
|
249
|
+
return { acquired: false };
|
|
250
|
+
const c = (sql, bindings) => __awaiter(this, void 0, void 0, function* () {
|
|
251
|
+
var _a, _b, _c;
|
|
252
|
+
const r = yield trx.raw(sql, bindings);
|
|
253
|
+
return Number((_c = (_b = (_a = r === null || r === void 0 ? void 0 : r.rows) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.c) !== null && _c !== void 0 ? _c : 0);
|
|
254
|
+
});
|
|
255
|
+
const dipCount = yield c(`SELECT count(*)::int AS c FROM duty_item_progress
|
|
256
|
+
WHERE route_id = ?
|
|
257
|
+
OR template_item_id IN (SELECT id FROM duty_template_items WHERE route_id = ?)`, [id, id]);
|
|
258
|
+
const dtiCount = yield c(`SELECT count(*)::int AS c FROM duty_template_items WHERE route_id = ?`, [id]);
|
|
259
|
+
// template_item_id matches block the items DELETE below (RESTRICT FK).
|
|
260
|
+
yield trx.raw(`DELETE FROM duty_item_progress
|
|
261
|
+
WHERE route_id = ?
|
|
262
|
+
OR template_item_id IN (SELECT id FROM duty_template_items WHERE route_id = ?)`, [id, id]);
|
|
263
|
+
yield trx.raw(`DELETE FROM duty_template_items WHERE route_id = ?`, [id]);
|
|
264
|
+
const routeResult = yield trx.raw(`DELETE FROM routes WHERE id = ?`, [id]);
|
|
265
|
+
return {
|
|
266
|
+
acquired: true,
|
|
267
|
+
deleted: ((_c = routeResult.rowCount) !== null && _c !== void 0 ? _c : 0) > 0,
|
|
268
|
+
cascaded: {
|
|
269
|
+
duty_item_progress: dipCount,
|
|
270
|
+
duty_template_items: dtiCount,
|
|
271
|
+
},
|
|
272
|
+
};
|
|
273
|
+
}));
|
|
274
|
+
});
|
|
275
|
+
}
|
|
209
276
|
/**
|
|
210
277
|
* Get all routes by event ID with pagination
|
|
211
278
|
*/
|
|
212
279
|
getAllByEventId(eventId_1) {
|
|
213
280
|
return __awaiter(this, arguments, void 0, function* (eventId, page = 1, limit = 10) {
|
|
214
281
|
const offset = (page - 1) * limit;
|
|
215
|
-
|
|
216
|
-
const rawData = yield this.knex("routes as r")
|
|
282
|
+
const rawData = yield applyRouteListSort(this.knex("routes as r")
|
|
217
283
|
.leftJoin("events as e", "r.event_id", "e.id")
|
|
218
284
|
.select("r.*", this.knex.raw("to_jsonb(e.*) as event"))
|
|
219
285
|
.where("r.is_active", true)
|
|
220
286
|
.where("r.event_id", eventId)
|
|
221
287
|
.limit(limit)
|
|
222
|
-
.offset(offset)
|
|
223
|
-
.orderBy("r.created_at", "desc");
|
|
288
|
+
.offset(offset), "r");
|
|
224
289
|
// Parse JSON fields
|
|
225
290
|
const data = rawData.map((route) => this.parseRouteJson(route));
|
|
226
291
|
// Get total count
|
|
@@ -249,15 +314,13 @@ class RouteDAO {
|
|
|
249
314
|
getAllByEventUuid(eventUuid_1) {
|
|
250
315
|
return __awaiter(this, arguments, void 0, function* (eventUuid, page = 1, limit = 10) {
|
|
251
316
|
const offset = (page - 1) * limit;
|
|
252
|
-
|
|
253
|
-
const rawData = yield this.knex("routes as r")
|
|
317
|
+
const rawData = yield applyRouteListSort(this.knex("routes as r")
|
|
254
318
|
.leftJoin("events as e", "r.event_id", "e.id")
|
|
255
319
|
.select("r.*", this.knex.raw("to_jsonb(e.*) as event"))
|
|
256
320
|
.where("r.is_active", true)
|
|
257
321
|
.where("e.uuid", eventUuid)
|
|
258
322
|
.limit(limit)
|
|
259
|
-
.offset(offset)
|
|
260
|
-
.orderBy("r.created_at", "desc");
|
|
323
|
+
.offset(offset), "r");
|
|
261
324
|
// Parse JSON fields
|
|
262
325
|
const data = rawData.map((route) => this.parseRouteJson(route));
|
|
263
326
|
// Get total count
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.dao.js","sourceRoot":"","sources":["../../../src/dao/route/route.dao.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"route.dao.js","sourceRoot":"","sources":["../../../src/dao/route/route.dao.ts"],"names":[],"mappings":"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"}
|