remove duplicate delete record code

deepsource-autofix-76c6eb20
Dan Gowans 2023-01-06 10:25:34 -05:00
parent 1fdb77747f
commit 941bd571a6
93 changed files with 258 additions and 1082 deletions

View File

@ -1,7 +1,7 @@
import { deleteFee } from "../../helpers/lotOccupancyDB/deleteFee.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getFeeCategories } from "../../helpers/lotOccupancyDB/getFeeCategories.js";
export const handler = async (request, response) => {
const success = deleteFee(request.body.feeId, request.session);
const success = deleteRecord("Fees", request.body.feeId, request.session);
const feeCategories = getFeeCategories({}, {
includeFees: true
});

View File

@ -1,11 +1,11 @@
import type { RequestHandler } from "express";
import { deleteFee } from "../../helpers/lotOccupancyDB/deleteFee.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getFeeCategories } from "../../helpers/lotOccupancyDB/getFeeCategories.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteFee(request.body.feeId, request.session);
const success = deleteRecord("Fees", request.body.feeId, request.session);
const feeCategories = getFeeCategories(
{},

View File

@ -1,7 +1,7 @@
import { deleteFeeCategory } from "../../helpers/lotOccupancyDB/deleteFeeCategory.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getFeeCategories } from "../../helpers/lotOccupancyDB/getFeeCategories.js";
export const handler = async (request, response) => {
const success = deleteFeeCategory(request.body.feeCategoryId, request.session);
const success = deleteRecord("FeeCategories", request.body.feeCategoryId, request.session);
const feeCategories = getFeeCategories({}, {
includeFees: true
});

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteFeeCategory } from "../../helpers/lotOccupancyDB/deleteFeeCategory.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getFeeCategories } from "../../helpers/lotOccupancyDB/getFeeCategories.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteFeeCategory(
request.body.feeCategoryId,
request.session
);
const success = deleteRecord("FeeCategories", request.body.feeCategoryId, request.session);
const feeCategories = getFeeCategories(
{},

View File

@ -1,7 +1,7 @@
import { deleteLotOccupantType } from "../../helpers/lotOccupancyDB/deleteLotOccupantType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotOccupantTypes } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteLotOccupantType(request.body.lotOccupantTypeId, request.session);
const success = deleteRecord("LotOccupantTypes", request.body.lotOccupantTypeId, request.session);
const lotOccupantTypes = getLotOccupantTypes();
response.json({
success,

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteLotOccupantType } from "../../helpers/lotOccupancyDB/deleteLotOccupantType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotOccupantTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLotOccupantType(
request.body.lotOccupantTypeId,
request.session
);
const success = deleteRecord("LotOccupantTypes", request.body.lotOccupantTypeId, request.session);
const lotOccupantTypes = getLotOccupantTypes();

View File

@ -1,7 +1,7 @@
import { deleteLotStatus } from "../../helpers/lotOccupancyDB/deleteLotStatus.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotStatuses } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteLotStatus(request.body.lotStatusId, request.session);
const success = deleteRecord("LotStatuses", request.body.lotStatusId, request.session);
const lotStatuses = getLotStatuses();
response.json({
success,

View File

@ -1,11 +1,11 @@
import type { RequestHandler } from "express";
import { deleteLotStatus } from "../../helpers/lotOccupancyDB/deleteLotStatus.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotStatuses } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLotStatus(request.body.lotStatusId, request.session);
const success = deleteRecord("LotStatuses", request.body.lotStatusId, request.session);
const lotStatuses = getLotStatuses();

View File

@ -1,7 +1,7 @@
import { deleteLotType } from "../../helpers/lotOccupancyDB/deleteLotType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotTypes } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteLotType(request.body.lotTypeId, request.session);
const success = deleteRecord("LotTypes", request.body.lotTypeId, request.session);
const lotTypes = getLotTypes();
response.json({
success,

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteLotType } from "../../helpers/lotOccupancyDB/deleteLotType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLotType(
request.body.lotTypeId,
request.session
);
const success = deleteRecord("LotTypes", request.body.lotTypeId, request.session);
const lotTypes = getLotTypes();

View File

@ -1,7 +1,7 @@
import { deleteLotTypeField } from "../../helpers/lotOccupancyDB/deleteLotTypeField.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotTypes } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteLotTypeField(request.body.lotTypeFieldId, request.session);
const success = deleteRecord("LotTypeFields", request.body.lotTypeFieldId, request.session);
const lotTypes = getLotTypes();
response.json({
success,

View File

@ -1,11 +1,11 @@
import type { RequestHandler } from "express";
import { deleteLotTypeField } from "../../helpers/lotOccupancyDB/deleteLotTypeField.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLotTypeField(request.body.lotTypeFieldId, request.session);
const success = deleteRecord("LotTypeFields", request.body.lotTypeFieldId, request.session);
const lotTypes = getLotTypes();

View File

@ -1,7 +1,7 @@
import { deleteOccupancyType } from "../../helpers/lotOccupancyDB/deleteOccupancyType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getAllOccupancyTypeFields, getOccupancyTypes } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteOccupancyType(request.body.occupancyTypeId, request.session);
const success = deleteRecord("OccupancyTypes", request.body.occupancyTypeId, request.session);
const occupancyTypes = getOccupancyTypes();
const allOccupancyTypeFields = getAllOccupancyTypeFields();
response.json({

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteOccupancyType } from "../../helpers/lotOccupancyDB/deleteOccupancyType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getAllOccupancyTypeFields, getOccupancyTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteOccupancyType(
request.body.occupancyTypeId,
request.session
);
const success = deleteRecord("OccupancyTypes", request.body.occupancyTypeId, request.session);
const occupancyTypes = getOccupancyTypes();
const allOccupancyTypeFields = getAllOccupancyTypeFields();

View File

@ -1,7 +1,7 @@
import { deleteOccupancyTypeField } from "../../helpers/lotOccupancyDB/deleteOccupancyTypeField.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getAllOccupancyTypeFields, getOccupancyTypes } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteOccupancyTypeField(request.body.occupancyTypeFieldId, request.session);
const success = deleteRecord("OccupancyTypeFields", request.body.occupancyTypeFieldId, request.session);
const occupancyTypes = getOccupancyTypes();
const allOccupancyTypeFields = getAllOccupancyTypeFields();
response.json({

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteOccupancyTypeField } from "../../helpers/lotOccupancyDB/deleteOccupancyTypeField.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getAllOccupancyTypeFields, getOccupancyTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteOccupancyTypeField(
request.body.occupancyTypeFieldId,
request.session
);
const success = deleteRecord("OccupancyTypeFields", request.body.occupancyTypeFieldId, request.session);
const occupancyTypes = getOccupancyTypes();
const allOccupancyTypeFields = getAllOccupancyTypeFields();

View File

@ -1,7 +1,7 @@
import { deleteWorkOrderMilestoneType } from "../../helpers/lotOccupancyDB/deleteWorkOrderMilestoneType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderMilestoneTypes } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteWorkOrderMilestoneType(request.body.workOrderMilestoneTypeId, request.session);
const success = deleteRecord("WorkOrderMilestoneTypes", request.body.workOrderMilestoneTypeId, request.session);
const workOrderMilestoneTypes = getWorkOrderMilestoneTypes();
response.json({
success,

View File

@ -1,11 +1,12 @@
import type { RequestHandler } from "express";
import { deleteWorkOrderMilestoneType } from "../../helpers/lotOccupancyDB/deleteWorkOrderMilestoneType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderMilestoneTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteWorkOrderMilestoneType(
const success = deleteRecord(
"WorkOrderMilestoneTypes",
request.body.workOrderMilestoneTypeId,
request.session
);

View File

@ -1,7 +1,7 @@
import { deleteWorkOrderType } from "../../helpers/lotOccupancyDB/deleteWorkOrderType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderTypes } from "../../helpers/functions.cache.js";
export const handler = async (request, response) => {
const success = deleteWorkOrderType(request.body.workOrderTypeId, request.session);
const success = deleteRecord("WorkOrderTypes", request.body.workOrderTypeId, request.session);
const workOrderTypes = getWorkOrderTypes();
response.json({
success,

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteWorkOrderType } from "../../helpers/lotOccupancyDB/deleteWorkOrderType.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteWorkOrderType(
request.body.workOrderTypeId,
request.session
);
const success = deleteRecord("WorkOrderTypes", request.body.workOrderTypeId, request.session);
const workOrderTypes = getWorkOrderTypes();

View File

@ -1,6 +1,6 @@
import { deleteLotOccupancy } from "../../helpers/lotOccupancyDB/deleteLotOccupancy.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler = async (request, response) => {
const success = deleteLotOccupancy(request.body.lotOccupancyId, request.session);
const success = deleteRecord("LotOccupancies", request.body.lotOccupancyId, request.session);
response.json({
success
});

View File

@ -1,12 +1,9 @@
import type { RequestHandler } from "express";
import { deleteLotOccupancy } from "../../helpers/lotOccupancyDB/deleteLotOccupancy.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLotOccupancy(
request.body.lotOccupancyId,
request.session
);
const success = deleteRecord("LotOccupancies", request.body.lotOccupancyId, request.session);
response.json({
success

View File

@ -1,7 +1,7 @@
import { deleteLotOccupancyComment } from "../../helpers/lotOccupancyDB/deleteLotOccupancyComment.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotOccupancyComments } from "../../helpers/lotOccupancyDB/getLotOccupancyComments.js";
export const handler = async (request, response) => {
const success = deleteLotOccupancyComment(request.body.lotOccupancyCommentId, request.session);
const success = deleteRecord("LotOccupancyComments", request.body.lotOccupancyCommentId, request.session);
const lotOccupancyComments = getLotOccupancyComments(request.body.lotOccupancyId);
response.json({
success,

View File

@ -1,18 +1,13 @@
import type { RequestHandler } from "express";
import { deleteLotOccupancyComment } from "../../helpers/lotOccupancyDB/deleteLotOccupancyComment.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotOccupancyComments } from "../../helpers/lotOccupancyDB/getLotOccupancyComments.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLotOccupancyComment(
request.body.lotOccupancyCommentId,
request.session
);
const success = deleteRecord("LotOccupancyComments", request.body.lotOccupancyCommentId, request.session);
const lotOccupancyComments = getLotOccupancyComments(
request.body.lotOccupancyId
);
const lotOccupancyComments = getLotOccupancyComments(request.body.lotOccupancyId);
response.json({
success,

View File

@ -1,6 +1,6 @@
import { deleteLot } from "../../helpers/lotOccupancyDB/deleteLot.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler = async (request, response) => {
const success = deleteLot(request.body.lotId, request.session);
const success = deleteRecord("Lots", request.body.lotId, request.session);
response.json({
success
});

View File

@ -1,12 +1,9 @@
import type { RequestHandler } from "express";
import { deleteLot } from "../../helpers/lotOccupancyDB/deleteLot.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLot(
request.body.lotId,
request.session
);
const success = deleteRecord("Lots", request.body.lotId, request.session);
response.json({
success

View File

@ -1,7 +1,7 @@
import { deleteLotComment } from "../../helpers/lotOccupancyDB/deleteLotComment.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotComments } from "../../helpers/lotOccupancyDB/getLotComments.js";
export const handler = async (request, response) => {
const success = deleteLotComment(request.body.lotCommentId, request.session);
const success = deleteRecord("LotComments", request.body.lotCommentId, request.session);
const lotComments = getLotComments(request.body.lotId);
response.json({
success,

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteLotComment } from "../../helpers/lotOccupancyDB/deleteLotComment.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getLotComments } from "../../helpers/lotOccupancyDB/getLotComments.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteLotComment(
request.body.lotCommentId,
request.session
);
const success = deleteRecord("LotComments", request.body.lotCommentId, request.session);
const lotComments = getLotComments(request.body.lotId);

View File

@ -1,6 +1,6 @@
import { deleteMap } from "../../helpers/lotOccupancyDB/deleteMap.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler = async (request, response) => {
const success = deleteMap(request.body.mapId, request.session);
const success = deleteRecord("Maps", request.body.mapId, request.session);
response.json({
success
});

View File

@ -1,9 +1,9 @@
import type { RequestHandler } from "express";
import { deleteMap } from "../../helpers/lotOccupancyDB/deleteMap.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteMap(request.body.mapId, request.session);
const success = deleteRecord("Maps", request.body.mapId, request.session);
response.json({
success

View File

@ -1,6 +1,6 @@
import { deleteWorkOrder } from "../../helpers/lotOccupancyDB/deleteWorkOrder.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler = async (request, response) => {
const success = deleteWorkOrder(request.body.workOrderId, request.session);
const success = deleteRecord("WorkOrders", request.body.workOrderId, request.session);
response.json({
success
});

View File

@ -1,9 +1,9 @@
import type { RequestHandler } from "express";
import { deleteWorkOrder } from "../../helpers/lotOccupancyDB/deleteWorkOrder.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteWorkOrder(request.body.workOrderId, request.session);
const success = deleteRecord("WorkOrders", request.body.workOrderId, request.session);
response.json({
success

View File

@ -1,7 +1,7 @@
import { deleteWorkOrderComment } from "../../helpers/lotOccupancyDB/deleteWorkOrderComment.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderComments } from "../../helpers/lotOccupancyDB/getWorkOrderComments.js";
export const handler = async (request, response) => {
const success = deleteWorkOrderComment(request.body.workOrderCommentId, request.session);
const success = deleteRecord("WorkOrderComments", request.body.workOrderCommentId, request.session);
const workOrderComments = getWorkOrderComments(request.body.workOrderId);
response.json({
success,

View File

@ -1,11 +1,11 @@
import type { RequestHandler } from "express";
import { deleteWorkOrderComment } from "../../helpers/lotOccupancyDB/deleteWorkOrderComment.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderComments } from "../../helpers/lotOccupancyDB/getWorkOrderComments.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteWorkOrderComment(request.body.workOrderCommentId, request.session);
const success = deleteRecord("WorkOrderComments", request.body.workOrderCommentId, request.session);
const workOrderComments = getWorkOrderComments(request.body.workOrderId);

View File

@ -1,7 +1,7 @@
import { deleteWorkOrderMilestone } from "../../helpers/lotOccupancyDB/deleteWorkOrderMilestone.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderMilestones } from "../../helpers/lotOccupancyDB/getWorkOrderMilestones.js";
export const handler = async (request, response) => {
const success = deleteWorkOrderMilestone(request.body.workOrderMilestoneId, request.session);
const success = deleteRecord("WorkOrderMilestones", request.body.workOrderMilestoneId, request.session);
const workOrderMilestones = getWorkOrderMilestones({
workOrderId: request.body.workOrderId
}, {

View File

@ -1,14 +1,11 @@
import type { RequestHandler } from "express";
import { deleteWorkOrderMilestone } from "../../helpers/lotOccupancyDB/deleteWorkOrderMilestone.js";
import { deleteRecord } from "../../helpers/lotOccupancyDB/deleteRecord.js";
import { getWorkOrderMilestones } from "../../helpers/lotOccupancyDB/getWorkOrderMilestones.js";
export const handler: RequestHandler = async (request, response) => {
const success = deleteWorkOrderMilestone(
request.body.workOrderMilestoneId,
request.session
);
const success = deleteRecord("WorkOrderMilestones", request.body.workOrderMilestoneId, request.session);
const workOrderMilestones = getWorkOrderMilestones(
{

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteFee(feeId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteFee;

View File

@ -1,15 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteFee(feeId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update Fees
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where feeId = ?`)
.run(requestSession.user.userName, rightNowMillis, feeId);
database.close();
return result.changes > 0;
}
export default deleteFee;

View File

@ -1,29 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteFee(
feeId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update Fees
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where feeId = ?`
)
.run(requestSession.user.userName, rightNowMillis, feeId);
database.close();
return result.changes > 0;
}
export default deleteFee;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteFeeCategory(feeCategoryId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteFeeCategory;

View File

@ -1,21 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteFeeCategory(feeCategoryId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update FeeCategories
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where feeCategoryId = ?`)
.run(requestSession.user.userName, rightNowMillis, feeCategoryId);
database
.prepare(`update Fees
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where feeCategoryId = ?`)
.run(requestSession.user.userName, rightNowMillis, feeCategoryId);
database.close();
return result.changes > 0;
}
export default deleteFeeCategory;

View File

@ -1,38 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteFeeCategory(
feeCategoryId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update FeeCategories
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where feeCategoryId = ?`
)
.run(requestSession.user.userName, rightNowMillis, feeCategoryId);
database
.prepare(
`update Fees
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where feeCategoryId = ?`
)
.run(requestSession.user.userName, rightNowMillis, feeCategoryId);
database.close();
return result.changes > 0;
}
export default deleteFeeCategory;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLot(lotId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLot;

View File

@ -1,18 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteLot(lotId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result;
for (const tableName of ["LotFields", "LotComments", "Lots"]) {
result = database
.prepare(`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotId);
}
database.close();
return result.changes > 0;
}
export default deleteLot;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLot(
lotId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result: sqlite.RunResult;
for (const tableName of ["LotFields", "LotComments", "Lots"]) {
result = database
.prepare(
`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotId);
}
database.close();
return result.changes > 0;
}
export default deleteLot;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLotComment(lotCommentId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLotComment;

View File

@ -1,15 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteLotComment(lotCommentId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update LotComments
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotCommentId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotCommentId);
database.close();
return result.changes > 0;
}
export default deleteLotComment;

View File

@ -1,29 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLotComment(
lotCommentId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update LotComments
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotCommentId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotCommentId);
database.close();
return result.changes > 0;
}
export default deleteLotComment;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLotOccupancy(lotOccupancyId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLotOccupancy;

View File

@ -1,23 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteLotOccupancy(lotOccupancyId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result;
for (const tableName of [
"LotOccupancyOccupants",
"LotOccupancyFields",
"LotOccupancyComments",
"LotOccupancies"
]) {
result = database
.prepare(`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotOccupancyId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotOccupancyId);
}
database.close();
return result.changes > 0;
}
export default deleteLotOccupancy;

View File

@ -1,39 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLotOccupancy(
lotOccupancyId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result: sqlite.RunResult;
// Do not auto-delete Fees or Transactions. Maintain financials.
for (const tableName of [
"LotOccupancyOccupants",
"LotOccupancyFields",
"LotOccupancyComments",
"LotOccupancies"
]) {
result = database
.prepare(
`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotOccupancyId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotOccupancyId);
}
database.close();
return result.changes > 0;
}
export default deleteLotOccupancy;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLotOccupancyComment(lotOccupancyCommentId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLotOccupancyComment;

View File

@ -1,15 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteLotOccupancyComment(lotOccupancyCommentId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update LotOccupancyComments
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotOccupancyCommentId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotOccupancyCommentId);
database.close();
return result.changes > 0;
}
export default deleteLotOccupancyComment;

View File

@ -1,29 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLotOccupancyComment(
lotOccupancyCommentId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update LotOccupancyComments
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotOccupancyCommentId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotOccupancyCommentId);
database.close();
return result.changes > 0;
}
export default deleteLotOccupancyComment;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLotOccupantType(lotOccupantTypeId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLotOccupantType;

View File

@ -1,17 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotOccupantTypesCache } from "../functions.cache.js";
export function deleteLotOccupantType(lotOccupantTypeId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update LotOccupantTypes
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotOccupantTypeId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotOccupantTypeId);
database.close();
clearLotOccupantTypesCache();
return result.changes > 0;
}
export default deleteLotOccupantType;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotOccupantTypesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLotOccupantType(
lotOccupantTypeId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update LotOccupantTypes
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotOccupantTypeId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotOccupantTypeId);
database.close();
clearLotOccupantTypesCache();
return result.changes > 0;
}
export default deleteLotOccupantType;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLotStatus(lotStatusId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLotStatus;

View File

@ -1,17 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotStatusesCache } from "../functions.cache.js";
export function deleteLotStatus(lotStatusId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update LotStatuses
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotStatusId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotStatusId);
database.close();
clearLotStatusesCache();
return result.changes > 0;
}
export default deleteLotStatus;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotStatusesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLotStatus(
lotStatusId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update LotStatuses
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotStatusId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotStatusId);
database.close();
clearLotStatusesCache();
return result.changes > 0;
}
export default deleteLotStatus;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLotType(lotTypeId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLotType;

View File

@ -1,20 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotTypesCache } from "../functions.cache.js";
export function deleteLotType(lotTypeId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result;
for (const tableName of ["LotTypeFields", "LotTypes"]) {
result = database
.prepare(`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotTypeId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotTypeId);
}
database.close();
clearLotTypesCache();
return result.changes > 0;
}
export default deleteLotType;

View File

@ -1,37 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotTypesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLotType(
lotTypeId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result: sqlite.RunResult;
for (const tableName of ["LotTypeFields", "LotTypes"]) {
result = database
.prepare(
`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotTypeId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotTypeId);
}
database.close();
clearLotTypesCache();
return result.changes > 0;
}
export default deleteLotType;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteLotTypeField(lotTypeFieldId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteLotTypeField;

View File

@ -1,17 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotTypesCache } from "../functions.cache.js";
export function deleteLotTypeField(lotTypeFieldId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update LotTypeFields
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotTypeFieldId = ?`)
.run(requestSession.user.userName, rightNowMillis, lotTypeFieldId);
database.close();
clearLotTypesCache();
return result.changes > 0;
}
export default deleteLotTypeField;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearLotTypesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteLotTypeField(
lotTypeFieldId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update LotTypeFields
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where lotTypeFieldId = ?`
)
.run(requestSession.user.userName, rightNowMillis, lotTypeFieldId);
database.close();
clearLotTypesCache();
return result.changes > 0;
}
export default deleteLotTypeField;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteMap(mapId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteMap;

View File

@ -1,18 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteMap(mapId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result;
for (const tableName of ["Lots", "Maps"]) {
result = database
.prepare(`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where mapId = ?`)
.run(requestSession.user.userName, rightNowMillis, mapId);
}
database.close();
return result.changes > 0;
}
export default deleteMap;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteMap(
mapId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result: sqlite.RunResult;
for (const tableName of ["Lots", "Maps"]) {
result = database
.prepare(
`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where mapId = ?`
)
.run(requestSession.user.userName, rightNowMillis, mapId);
}
database.close();
return result.changes > 0;
}
export default deleteMap;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteOccupancyType(occupancyTypeId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteOccupancyType;

View File

@ -1,20 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
export function deleteOccupancyType(occupancyTypeId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result;
for (const tableName of ["OccupancyTypePrints", "OccupancyTypeFields", "OccupancyTypes"]) {
result = database
.prepare(`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where occupancyTypeId = ?`)
.run(requestSession.user.userName, rightNowMillis, occupancyTypeId);
}
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
}
export default deleteOccupancyType;

View File

@ -1,37 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteOccupancyType(
occupancyTypeId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result: sqlite.RunResult;
for (const tableName of ["OccupancyTypePrints", "OccupancyTypeFields", "OccupancyTypes"]) {
result = database
.prepare(
`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where occupancyTypeId = ?`
)
.run(requestSession.user.userName, rightNowMillis, occupancyTypeId);
}
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
}
export default deleteOccupancyType;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteOccupancyTypeField(occupancyTypeFieldId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteOccupancyTypeField;

View File

@ -1,17 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
export function deleteOccupancyTypeField(occupancyTypeFieldId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update OccupancyTypeFields
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where occupancyTypeFieldId = ?`)
.run(requestSession.user.userName, rightNowMillis, occupancyTypeFieldId);
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
}
export default deleteOccupancyTypeField;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteOccupancyTypeField(
occupancyTypeFieldId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update OccupancyTypeFields
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where occupancyTypeFieldId = ?`
)
.run(requestSession.user.userName, rightNowMillis, occupancyTypeFieldId);
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
}
export default deleteOccupancyTypeField;

View File

@ -0,0 +1,4 @@
import type * as recordTypes from "../../types/recordTypes";
declare type RecordTable = "FeeCategories" | "Fees" | "Lots" | "LotComments" | "LotOccupancies" | "LotOccupancyComments" | "LotOccupantTypes" | "LotStatuses" | "LotTypes" | "LotTypeFields" | "Maps" | "OccupancyTypes" | "OccupancyTypeFields" | "WorkOrders" | "WorkOrderComments" | "WorkOrderMilestones" | "WorkOrderMilestoneTypes" | "WorkOrderTypes";
export declare function deleteRecord(recordTable: RecordTable, recordId: number | string, requestSession: recordTypes.PartialSession): boolean;
export {};

View File

@ -0,0 +1,69 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import * as cacheFunctions from "../functions.cache.js";
const recordIdColumns = new Map();
recordIdColumns.set("FeeCategories", "feeCategoryId");
recordIdColumns.set("Fees", "feeId");
recordIdColumns.set("Lots", "lotId");
recordIdColumns.set("LotComments", "lotCommentId");
recordIdColumns.set("LotOccupancies", "lotOccupancyId");
recordIdColumns.set("LotOccupancyComments", "lotOccupancyCommentId");
recordIdColumns.set("LotOccupantTypes", "lotOccupantTypeId");
recordIdColumns.set("LotStatuses", "lotStatusId");
recordIdColumns.set("LotTypes", "lotTypeId");
recordIdColumns.set("LotTypeFields", "lotTypeId");
recordIdColumns.set("Maps", "mapId");
recordIdColumns.set("OccupancyTypes", "occupancyTypeId");
recordIdColumns.set("OccupancyTypeFields", "occupancyTypeFieldId");
recordIdColumns.set("WorkOrders", "workOrderId");
recordIdColumns.set("WorkOrderComments", "workOrderCommentId");
recordIdColumns.set("WorkOrderMilestones", "workOrderMilestoneId");
recordIdColumns.set("WorkOrderMilestoneTypes", "workOrderMilestoneTypeId");
recordIdColumns.set("WorkOrderTypes", "workOrderTypeId");
const relatedTables = new Map();
relatedTables.set("FeeCategories", ["Fees"]);
relatedTables.set("Lots", ["LotFields", "LotComments"]);
relatedTables.set("LotOccupancies", ["LotOccupancyOccupants", "LotOccupancyFields", "LotOccupancyComments"]);
relatedTables.set("LotTypes", ["LotTypeFields"]);
relatedTables.set("Maps", ["Lots"]);
relatedTables.set("OccupancyTypes", ["OccupancyTypePrints", "OccupancyTypeFields"]);
relatedTables.set("WorkOrders", [
"WorkOrderMilestones",
"WorkOrderLots",
"WorkOrderLotOccupancies",
"WorkOrderComments"
]);
const clearCacheFunctions = new Map();
clearCacheFunctions.set("LotOccupantTypes", cacheFunctions.clearLotOccupantTypesCache);
clearCacheFunctions.set("LotStatuses", cacheFunctions.clearLotStatusesCache);
clearCacheFunctions.set("LotTypes", cacheFunctions.clearLotTypesCache);
clearCacheFunctions.set("LotTypeFields", cacheFunctions.clearLotTypesCache);
clearCacheFunctions.set("OccupancyTypes", cacheFunctions.clearOccupancyTypesCache);
clearCacheFunctions.set("OccupancyTypeFields", cacheFunctions.clearOccupancyTypesCache);
clearCacheFunctions.set("WorkOrderMilestoneTypes", cacheFunctions.clearWorkOrderMilestoneTypesCache);
clearCacheFunctions.set("WorkOrderTypes", cacheFunctions.clearWorkOrderTypesCache);
export function deleteRecord(recordTable, recordId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update ${recordTable}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where ${recordIdColumns.get(recordTable)} = ?
and recordDelete_timeMillis is null`)
.run(requestSession.user.userName, rightNowMillis, recordId);
for (const relatedTable of relatedTables.get(recordTable) || []) {
database
.prepare(`update ${relatedTable}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where ${recordIdColumns.get(recordTable)} = ?
and recordDelete_timeMillis is null`)
.run(requestSession.user.userName, rightNowMillis, recordId);
}
database.close();
if (clearCacheFunctions.has(recordTable)) {
clearCacheFunctions.get(recordTable)();
}
return result.changes > 0;
}

View File

@ -0,0 +1,111 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import * as cacheFunctions from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
type RecordTable =
| "FeeCategories"
| "Fees"
| "Lots"
| "LotComments"
| "LotOccupancies"
| "LotOccupancyComments"
| "LotOccupantTypes"
| "LotStatuses"
| "LotTypes"
| "LotTypeFields"
| "Maps"
| "OccupancyTypes"
| "OccupancyTypeFields"
| "WorkOrders"
| "WorkOrderComments"
| "WorkOrderMilestones"
| "WorkOrderMilestoneTypes"
| "WorkOrderTypes";
const recordIdColumns: Map<RecordTable, string> = new Map();
recordIdColumns.set("FeeCategories", "feeCategoryId");
recordIdColumns.set("Fees", "feeId");
recordIdColumns.set("Lots", "lotId");
recordIdColumns.set("LotComments", "lotCommentId");
recordIdColumns.set("LotOccupancies", "lotOccupancyId");
recordIdColumns.set("LotOccupancyComments", "lotOccupancyCommentId");
recordIdColumns.set("LotOccupantTypes", "lotOccupantTypeId");
recordIdColumns.set("LotStatuses", "lotStatusId");
recordIdColumns.set("LotTypes", "lotTypeId");
recordIdColumns.set("LotTypeFields", "lotTypeId");
recordIdColumns.set("Maps", "mapId");
recordIdColumns.set("OccupancyTypes", "occupancyTypeId");
recordIdColumns.set("OccupancyTypeFields", "occupancyTypeFieldId");
recordIdColumns.set("WorkOrders", "workOrderId");
recordIdColumns.set("WorkOrderComments", "workOrderCommentId");
recordIdColumns.set("WorkOrderMilestones", "workOrderMilestoneId");
recordIdColumns.set("WorkOrderMilestoneTypes", "workOrderMilestoneTypeId");
recordIdColumns.set("WorkOrderTypes", "workOrderTypeId");
const relatedTables: Map<RecordTable, string[]> = new Map();
relatedTables.set("FeeCategories", ["Fees"]);
relatedTables.set("Lots", ["LotFields", "LotComments"]);
relatedTables.set("LotOccupancies", ["LotOccupancyOccupants", "LotOccupancyFields", "LotOccupancyComments"]);
relatedTables.set("LotTypes", ["LotTypeFields"]);
relatedTables.set("Maps", ["Lots"]);
relatedTables.set("OccupancyTypes", ["OccupancyTypePrints", "OccupancyTypeFields"]);
relatedTables.set("WorkOrders", [
"WorkOrderMilestones",
"WorkOrderLots",
"WorkOrderLotOccupancies",
"WorkOrderComments"
]);
const clearCacheFunctions: Map<RecordTable, () => void> = new Map();
clearCacheFunctions.set("LotOccupantTypes", cacheFunctions.clearLotOccupantTypesCache);
clearCacheFunctions.set("LotStatuses", cacheFunctions.clearLotStatusesCache);
clearCacheFunctions.set("LotTypes", cacheFunctions.clearLotTypesCache);
clearCacheFunctions.set("LotTypeFields", cacheFunctions.clearLotTypesCache);
clearCacheFunctions.set("OccupancyTypes", cacheFunctions.clearOccupancyTypesCache);
clearCacheFunctions.set("OccupancyTypeFields", cacheFunctions.clearOccupancyTypesCache);
clearCacheFunctions.set("WorkOrderMilestoneTypes", cacheFunctions.clearWorkOrderMilestoneTypesCache);
clearCacheFunctions.set("WorkOrderTypes", cacheFunctions.clearWorkOrderTypesCache);
export function deleteRecord(
recordTable: RecordTable,
recordId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update ${recordTable}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where ${recordIdColumns.get(recordTable)} = ?
and recordDelete_timeMillis is null`
)
.run(requestSession.user.userName, rightNowMillis, recordId);
for (const relatedTable of relatedTables.get(recordTable) || []) {
database
.prepare(
`update ${relatedTable}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where ${recordIdColumns.get(recordTable)} = ?
and recordDelete_timeMillis is null`
)
.run(requestSession.user.userName, rightNowMillis, recordId);
}
database.close();
if (clearCacheFunctions.has(recordTable)) {
clearCacheFunctions.get(recordTable)();
}
return result.changes > 0;
}

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteWorkOrder(workOrderId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteWorkOrder;

View File

@ -1,24 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteWorkOrder(workOrderId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result;
for (const tableName of [
"WorkOrderMilestones",
"WorkOrderLots",
"WorkOrderLotOccupancies",
"WorkOrderComments",
"WorkOrders"
]) {
result = database
.prepare(`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderId = ?`)
.run(requestSession.user.userName, rightNowMillis, workOrderId);
}
database.close();
return result.changes > 0;
}
export default deleteWorkOrder;

View File

@ -1,39 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteWorkOrder(
workOrderId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
let result: sqlite.RunResult;
for (const tableName of [
"WorkOrderMilestones",
"WorkOrderLots",
"WorkOrderLotOccupancies",
"WorkOrderComments",
"WorkOrders"
]) {
result = database
.prepare(
`update ${tableName}
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderId = ?`
)
.run(requestSession.user.userName, rightNowMillis, workOrderId);
}
database.close();
return result.changes > 0;
}
export default deleteWorkOrder;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteWorkOrderComment(workOrderCommentId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteWorkOrderComment;

View File

@ -1,15 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteWorkOrderComment(workOrderCommentId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update WorkOrderComments
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderCommentId = ?`)
.run(requestSession.user.userName, rightNowMillis, workOrderCommentId);
database.close();
return result.changes > 0;
}
export default deleteWorkOrderComment;

View File

@ -1,29 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteWorkOrderComment(
workOrderCommentId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update WorkOrderComments
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderCommentId = ?`
)
.run(requestSession.user.userName, rightNowMillis, workOrderCommentId);
database.close();
return result.changes > 0;
}
export default deleteWorkOrderComment;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteWorkOrderMilestone(workOrderMilestoneId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteWorkOrderMilestone;

View File

@ -1,15 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export function deleteWorkOrderMilestone(workOrderMilestoneId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update WorkOrderMilestones
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderMilestoneId = ?`)
.run(requestSession.user.userName, rightNowMillis, workOrderMilestoneId);
database.close();
return result.changes > 0;
}
export default deleteWorkOrderMilestone;

View File

@ -1,29 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteWorkOrderMilestone(
workOrderMilestoneId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update WorkOrderMilestones
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderMilestoneId = ?`
)
.run(requestSession.user.userName, rightNowMillis, workOrderMilestoneId);
database.close();
return result.changes > 0;
}
export default deleteWorkOrderMilestone;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteWorkOrderMilestoneType(workOrderMilestoneTypeId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteWorkOrderMilestoneType;

View File

@ -1,17 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearWorkOrderMilestoneTypesCache } from "../functions.cache.js";
export function deleteWorkOrderMilestoneType(workOrderMilestoneTypeId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update WorkOrderMilestoneTypes
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderMilestoneTypeId = ?`)
.run(requestSession.user.userName, rightNowMillis, workOrderMilestoneTypeId);
database.close();
clearWorkOrderMilestoneTypesCache();
return result.changes > 0;
}
export default deleteWorkOrderMilestoneType;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearWorkOrderMilestoneTypesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteWorkOrderMilestoneType(
workOrderMilestoneTypeId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update WorkOrderMilestoneTypes
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderMilestoneTypeId = ?`
)
.run(requestSession.user.userName, rightNowMillis, workOrderMilestoneTypeId);
database.close();
clearWorkOrderMilestoneTypesCache();
return result.changes > 0;
}
export default deleteWorkOrderMilestoneType;

View File

@ -1,3 +0,0 @@
import type * as recordTypes from "../../types/recordTypes";
export declare function deleteWorkOrderType(workOrderTypeId: number | string, requestSession: recordTypes.PartialSession): boolean;
export default deleteWorkOrderType;

View File

@ -1,17 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearWorkOrderTypesCache } from "../functions.cache.js";
export function deleteWorkOrderType(workOrderTypeId, requestSession) {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(`update WorkOrderTypes
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderTypeId = ?`)
.run(requestSession.user.userName, rightNowMillis, workOrderTypeId);
database.close();
clearWorkOrderTypesCache();
return result.changes > 0;
}
export default deleteWorkOrderType;

View File

@ -1,33 +0,0 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearWorkOrderTypesCache } from "../functions.cache.js";
import type * as recordTypes from "../../types/recordTypes";
export function deleteWorkOrderType(
workOrderTypeId: number | string,
requestSession: recordTypes.PartialSession
): boolean {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare(
`update WorkOrderTypes
set recordDelete_userName = ?,
recordDelete_timeMillis = ?
where workOrderTypeId = ?`
)
.run(requestSession.user.userName, rightNowMillis, workOrderTypeId);
database.close();
clearWorkOrderTypesCache();
return result.changes > 0;
}
export default deleteWorkOrderType;