Isolate device row transactions
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { CircuitDeviceRowRepository } from "../src/db/repositories/circuit-device-row.repository.js";
|
||||
import { db } from "../src/db/client.js";
|
||||
import { CircuitDeviceRowTransactionRepository } from "../src/db/repositories/circuit-device-row-transaction.repository.js";
|
||||
import { CircuitRepository } from "../src/db/repositories/circuit.repository.js";
|
||||
|
||||
async function run() {
|
||||
@@ -9,7 +10,7 @@ async function run() {
|
||||
}
|
||||
|
||||
const circuitRepository = new CircuitRepository();
|
||||
const rowRepository = new CircuitDeviceRowRepository();
|
||||
const rowTransactionRepository = new CircuitDeviceRowTransactionRepository(db);
|
||||
|
||||
const circuit = await circuitRepository.findById(circuitId);
|
||||
if (!circuit) {
|
||||
@@ -17,10 +18,8 @@ async function run() {
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const rowCount = await rowRepository.countByCircuit(circuitId);
|
||||
const createdRowId = await rowRepository.create({
|
||||
const createdRowId = rowTransactionRepository.createInCircuit({
|
||||
circuitId,
|
||||
sortOrder: (rowCount + 1) * 10,
|
||||
name: "Test sub device",
|
||||
displayName: "Beleuchtung WC",
|
||||
phaseType: "single_phase",
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { db } from "../src/db/client.js";
|
||||
import { CircuitDeviceRowRepository } from "../src/db/repositories/circuit-device-row.repository.js";
|
||||
import { CircuitDeviceRowTransactionRepository } from "../src/db/repositories/circuit-device-row-transaction.repository.js";
|
||||
|
||||
async function run() {
|
||||
const rowId = process.argv[2];
|
||||
@@ -8,13 +10,14 @@ async function run() {
|
||||
}
|
||||
|
||||
const rowRepository = new CircuitDeviceRowRepository();
|
||||
const rowTransactionRepository = new CircuitDeviceRowTransactionRepository(db);
|
||||
const row = await rowRepository.findById(rowId);
|
||||
if (!row) {
|
||||
console.error(`Row not found: ${rowId}`);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
await rowRepository.delete(rowId);
|
||||
rowTransactionRepository.deleteFromCircuit(rowId, row.circuitId);
|
||||
console.log(`Deleted row id: ${rowId}`);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user