sort occupancy type fields

deepsource-autofix-76c6eb20
Dan Gowans 2022-09-19 10:55:21 -04:00
parent db790d2e8a
commit 6ae44e00bc
19 changed files with 349 additions and 29 deletions

View File

@ -0,0 +1,3 @@
import type { RequestHandler } from "express";
export declare const handler: RequestHandler;
export default handler;

View File

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

View File

@ -0,0 +1,20 @@
import type { RequestHandler } from "express";
import { moveOccupancyTypeFieldDown } from "../../helpers/lotOccupancyDB/moveOccupancyTypeFieldDown.js";
import { getAllOccupancyTypeFields, getOccupancyTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = moveOccupancyTypeFieldDown(request.body.occupancyTypeFieldId);
const occupancyTypes = getOccupancyTypes();
const allOccupancyTypeFields = getAllOccupancyTypeFields();
response.json({
success,
occupancyTypes,
allOccupancyTypeFields
});
};
export default handler;

View File

@ -0,0 +1,3 @@
import type { RequestHandler } from "express";
export declare const handler: RequestHandler;
export default handler;

View File

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

View File

@ -0,0 +1,20 @@
import type { RequestHandler } from "express";
import { moveOccupancyTypeFieldUp } from "../../helpers/lotOccupancyDB/moveOccupancyTypeFieldUp.js";
import { getAllOccupancyTypeFields, getOccupancyTypes } from "../../helpers/functions.cache.js";
export const handler: RequestHandler = async (request, response) => {
const success = moveOccupancyTypeFieldUp(request.body.occupancyTypeFieldId);
const occupancyTypes = getOccupancyTypes();
const allOccupancyTypeFields = getAllOccupancyTypeFields();
response.json({
success,
occupancyTypes,
allOccupancyTypeFields
});
};
export default handler;

View File

@ -10,9 +10,10 @@ export const getLotOccupancyFields = (lotOccupancyId, connectedDatabase) => {
" o.occupancyTypeFieldId, o.lotOccupancyFieldValue," + " o.occupancyTypeFieldId, o.lotOccupancyFieldValue," +
" f.occupancyTypeField," + " f.occupancyTypeField," +
" f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," + " f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," +
" f.orderNumber" + " f.orderNumber, t.orderNumber as occupancyTypeOrderNumber" +
" from LotOccupancyFields o" + " from LotOccupancyFields o" +
" left join OccupancyTypeFields f on o.occupancyTypeFieldId = f.occupancyTypeFieldId" + " left join OccupancyTypeFields f on o.occupancyTypeFieldId = f.occupancyTypeFieldId" +
" left join OccupancyTypes t on f.occupancyTypeId = t.occupancyTypeId" +
" where o.recordDelete_timeMillis is null" + " where o.recordDelete_timeMillis is null" +
" and o.lotOccupancyId = ?" + " and o.lotOccupancyId = ?" +
" union" + " union" +
@ -20,12 +21,13 @@ export const getLotOccupancyFields = (lotOccupancyId, connectedDatabase) => {
" f.occupancyTypeFieldId, '' as lotOccupancyFieldValue," + " f.occupancyTypeFieldId, '' as lotOccupancyFieldValue," +
" f.occupancyTypeField," + " f.occupancyTypeField," +
" f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," + " f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," +
" f.orderNumber" + " f.orderNumber, t.orderNumber as occupancyTypeOrderNumber" +
" from OccupancyTypeFields f" + " from OccupancyTypeFields f" +
" left join OccupancyTypes t on f.occupancyTypeId = t.occupancyTypeId" +
" where f.recordDelete_timeMillis is null" + " where f.recordDelete_timeMillis is null" +
" and (f.occupancyTypeId is null or f.occupancyTypeId in (select occupancyTypeId from LotOccupancies where lotOccupancyId = ?))" + " and (f.occupancyTypeId is null or f.occupancyTypeId in (select occupancyTypeId from LotOccupancies where lotOccupancyId = ?))" +
" and f.occupancyTypeFieldId not in (select occupancyTypeFieldId from LotOccupancyFields where lotOccupancyId = ? and recordDelete_timeMillis is null)" + " and f.occupancyTypeFieldId not in (select occupancyTypeFieldId from LotOccupancyFields where lotOccupancyId = ? and recordDelete_timeMillis is null)" +
" order by orderNumber, occupancyTypeField") " order by occupancyTypeOrderNumber, f.orderNumber, f.occupancyTypeField")
.all(lotOccupancyId, lotOccupancyId, lotOccupancyId, lotOccupancyId); .all(lotOccupancyId, lotOccupancyId, lotOccupancyId, lotOccupancyId);
if (!connectedDatabase) { if (!connectedDatabase) {
database.close(); database.close();

View File

@ -20,9 +20,10 @@ export const getLotOccupancyFields = (
" o.occupancyTypeFieldId, o.lotOccupancyFieldValue," + " o.occupancyTypeFieldId, o.lotOccupancyFieldValue," +
" f.occupancyTypeField," + " f.occupancyTypeField," +
" f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," + " f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," +
" f.orderNumber" + " f.orderNumber, t.orderNumber as occupancyTypeOrderNumber" +
" from LotOccupancyFields o" + " from LotOccupancyFields o" +
" left join OccupancyTypeFields f on o.occupancyTypeFieldId = f.occupancyTypeFieldId" + " left join OccupancyTypeFields f on o.occupancyTypeFieldId = f.occupancyTypeFieldId" +
" left join OccupancyTypes t on f.occupancyTypeId = t.occupancyTypeId" +
" where o.recordDelete_timeMillis is null" + " where o.recordDelete_timeMillis is null" +
" and o.lotOccupancyId = ?" + " and o.lotOccupancyId = ?" +
" union" + " union" +
@ -30,12 +31,13 @@ export const getLotOccupancyFields = (
" f.occupancyTypeFieldId, '' as lotOccupancyFieldValue," + " f.occupancyTypeFieldId, '' as lotOccupancyFieldValue," +
" f.occupancyTypeField," + " f.occupancyTypeField," +
" f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," + " f.occupancyTypeFieldValues, f.isRequired, f.pattern, f.minimumLength, f.maximumLength," +
" f.orderNumber" + " f.orderNumber, t.orderNumber as occupancyTypeOrderNumber" +
" from OccupancyTypeFields f" + " from OccupancyTypeFields f" +
" left join OccupancyTypes t on f.occupancyTypeId = t.occupancyTypeId" +
" where f.recordDelete_timeMillis is null" + " where f.recordDelete_timeMillis is null" +
" and (f.occupancyTypeId is null or f.occupancyTypeId in (select occupancyTypeId from LotOccupancies where lotOccupancyId = ?))" + " and (f.occupancyTypeId is null or f.occupancyTypeId in (select occupancyTypeId from LotOccupancies where lotOccupancyId = ?))" +
" and f.occupancyTypeFieldId not in (select occupancyTypeFieldId from LotOccupancyFields where lotOccupancyId = ? and recordDelete_timeMillis is null)" + " and f.occupancyTypeFieldId not in (select occupancyTypeFieldId from LotOccupancyFields where lotOccupancyId = ? and recordDelete_timeMillis is null)" +
" order by orderNumber, occupancyTypeField" " order by occupancyTypeOrderNumber, f.orderNumber, f.occupancyTypeField"
) )
.all(lotOccupancyId, lotOccupancyId, lotOccupancyId, lotOccupancyId); .all(lotOccupancyId, lotOccupancyId, lotOccupancyId, lotOccupancyId);

View File

@ -0,0 +1,2 @@
export declare const moveOccupancyTypeFieldDown: (occupancyTypeFieldId: number | string) => boolean;
export default moveOccupancyTypeFieldDown;

View File

@ -0,0 +1,29 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
export const moveOccupancyTypeFieldDown = (occupancyTypeFieldId) => {
const database = sqlite(databasePath);
const currentField = database
.prepare("select occupancyTypeId, orderNumber" +
" from OccupancyTypeFields" +
" where occupancyTypeFieldId = ?")
.get(occupancyTypeFieldId);
database
.prepare("update OccupancyTypeFields" +
" set orderNumber = orderNumber - 1" +
" where recordDelete_timeMillis is null" +
(currentField.occupancyTypeId
? " and occupancyTypeId = '" + currentField.occupancyTypeId + "'"
: " and occupancyTypeId is null") +
" and orderNumber = ? + 1")
.run(currentField.orderNumber);
const result = database
.prepare("update OccupancyTypeFields" +
" set orderNumber = ? + 1" +
" where occupancyTypeFieldId = ?")
.run(currentField.orderNumber, occupancyTypeFieldId);
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
};
export default moveOccupancyTypeFieldDown;

View File

@ -0,0 +1,47 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
export const moveOccupancyTypeFieldDown = (
occupancyTypeFieldId: number | string
): boolean => {
const database = sqlite(databasePath);
const currentField: { occupancyTypeId?: number; orderNumber: number } = database
.prepare(
"select occupancyTypeId, orderNumber" +
" from OccupancyTypeFields" +
" where occupancyTypeFieldId = ?"
)
.get(occupancyTypeFieldId);
database
.prepare(
"update OccupancyTypeFields" +
" set orderNumber = orderNumber - 1" +
" where recordDelete_timeMillis is null" +
(currentField.occupancyTypeId
? " and occupancyTypeId = '" + currentField.occupancyTypeId + "'"
: " and occupancyTypeId is null") +
" and orderNumber = ? + 1"
)
.run(currentField.orderNumber);
const result = database
.prepare(
"update OccupancyTypeFields" +
" set orderNumber = ? + 1" +
" where occupancyTypeFieldId = ?"
)
.run(currentField.orderNumber, occupancyTypeFieldId);
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
};
export default moveOccupancyTypeFieldDown;

View File

@ -0,0 +1,2 @@
export declare const moveOccupancyTypeFieldUp: (occupancyTypeFieldId: number | string) => boolean;
export default moveOccupancyTypeFieldUp;

View File

@ -0,0 +1,36 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
export const moveOccupancyTypeFieldUp = (occupancyTypeFieldId) => {
const database = sqlite(databasePath);
const currentField = database
.prepare("select occupancyTypeId, orderNumber" +
" from OccupancyTypeFields" +
" where occupancyTypeFieldId = ?")
.get(occupancyTypeFieldId);
if (currentField.orderNumber <= 0) {
database.close();
return true;
}
database
.prepare("update OccupancyTypeFields" +
" set orderNumber = orderNumber + 1" +
" where recordDelete_timeMillis is null" +
(currentField.occupancyTypeId
? " and occupancyTypeId = '" + currentField.occupancyTypeId + "'"
: " and occupancyTypeId is null") +
" and orderNumber = ? - 1")
.run(currentField.orderNumber);
const result = database
.prepare("update OccupancyTypeFields" +
" set orderNumber = ? - 1" +
" where occupancyTypeFieldId = ?" +
(currentField.occupancyTypeId
? " and occupancyTypeId = '" + currentField.occupancyTypeId + "'"
: " and occupancyTypeId is null"))
.run(currentField.orderNumber, occupancyTypeFieldId);
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
};
export default moveOccupancyTypeFieldUp;

View File

@ -0,0 +1,53 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { clearOccupancyTypesCache } from "../functions.cache.js";
export const moveOccupancyTypeFieldUp = (occupancyTypeFieldId: number | string): boolean => {
const database = sqlite(databasePath);
const currentField: { occupancyTypeId?: number; orderNumber: number } = database
.prepare(
"select occupancyTypeId, orderNumber" +
" from OccupancyTypeFields" +
" where occupancyTypeFieldId = ?"
)
.get(occupancyTypeFieldId);
if (currentField.orderNumber <= 0) {
database.close();
return true;
}
database
.prepare(
"update OccupancyTypeFields" +
" set orderNumber = orderNumber + 1" +
" where recordDelete_timeMillis is null" +
(currentField.occupancyTypeId
? " and occupancyTypeId = '" + currentField.occupancyTypeId + "'"
: " and occupancyTypeId is null") +
" and orderNumber = ? - 1"
)
.run(currentField.orderNumber);
const result = database
.prepare(
"update OccupancyTypeFields" +
" set orderNumber = ? - 1" +
" where occupancyTypeFieldId = ?" +
(currentField.occupancyTypeId
? " and occupancyTypeId = '" + currentField.occupancyTypeId + "'"
: " and occupancyTypeId is null")
)
.run(currentField.orderNumber, occupancyTypeFieldId);
database.close();
clearOccupancyTypesCache();
return result.changes > 0;
};
export default moveOccupancyTypeFieldUp;

View File

@ -139,20 +139,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
}, occupancyTypeResponseHandler); }, occupancyTypeResponseHandler);
}; };
const openEditOccupancyTypeField = (occupancyTypeId, occupancyTypeFieldId) => { const openEditOccupancyTypeField = (occupancyTypeId, occupancyTypeFieldId) => {
let occupancyTypeField; let occupancyType;
if (occupancyTypeId) { if (occupancyTypeId) {
const occupancyType = occupancyTypes.find((currentOccupancyType) => { occupancyType = occupancyTypes.find((currentOccupancyType) => {
return currentOccupancyType.occupancyTypeId === occupancyTypeId; return currentOccupancyType.occupancyTypeId === occupancyTypeId;
}); });
occupancyTypeField = occupancyType.occupancyTypeFields.find((currentOccupancyTypeField) => {
return currentOccupancyTypeField.occupancyTypeFieldId === occupancyTypeFieldId;
});
}
else {
occupancyTypeField = allOccupancyTypeFields.find((currentOccupancyTypeField) => {
return currentOccupancyTypeField.occupancyTypeFieldId === occupancyTypeFieldId;
});
} }
const occupancyTypeField = (occupancyType ? occupancyType.occupancyTypeFields : allOccupancyTypeFields).find((currentOccupancyTypeField) => {
return currentOccupancyTypeField.occupancyTypeFieldId === occupancyTypeFieldId;
});
let minimumLengthElement; let minimumLengthElement;
let maximumLengthElement; let maximumLengthElement;
let patternElement; let patternElement;
@ -244,6 +239,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
const occupancyTypeId = Number.parseInt(clickEvent.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId, 10); const occupancyTypeId = Number.parseInt(clickEvent.currentTarget.closest(".container--occupancyType").dataset.occupancyTypeId, 10);
openEditOccupancyTypeField(occupancyTypeId, occupancyTypeFieldId); openEditOccupancyTypeField(occupancyTypeId, occupancyTypeFieldId);
}; };
const moveOccupancyTypeFieldUp = (clickEvent) => {
clickEvent.preventDefault();
const occupancyTypeFieldId = clickEvent.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId;
cityssm.postJSON(urlPrefix + "/admin/doMoveOccupancyTypeFieldUp", {
occupancyTypeFieldId
}, occupancyTypeResponseHandler);
};
const moveOccupancyTypeFieldDown = (clickEvent) => {
clickEvent.preventDefault();
const occupancyTypeFieldId = clickEvent.currentTarget.closest(".container--occupancyTypeField").dataset.occupancyTypeFieldId;
cityssm.postJSON(urlPrefix + "/admin/doMoveOccupancyTypeFieldDown", {
occupancyTypeFieldId
}, occupancyTypeResponseHandler);
};
const renderOccupancyTypeFields = (panelElement, occupancyTypeId, occupancyTypeFields) => { const renderOccupancyTypeFields = (panelElement, occupancyTypeId, occupancyTypeFields) => {
if (occupancyTypeFields.length === 0) { if (occupancyTypeFields.length === 0) {
panelElement.insertAdjacentHTML("beforeend", '<div class="panel-block is-block' + panelElement.insertAdjacentHTML("beforeend", '<div class="panel-block is-block' +
@ -294,6 +303,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
panelBlockElement panelBlockElement
.querySelector(".button--editOccupancyTypeField") .querySelector(".button--editOccupancyTypeField")
.addEventListener("click", openEditOccupancyTypeFieldByClick); .addEventListener("click", openEditOccupancyTypeFieldByClick);
panelBlockElement
.querySelector(".button--moveOccupancyTypeFieldUp")
.addEventListener("click", moveOccupancyTypeFieldUp);
panelBlockElement
.querySelector(".button--moveOccupancyTypeFieldDown")
.addEventListener("click", moveOccupancyTypeFieldDown);
panelElement.append(panelBlockElement); panelElement.append(panelBlockElement);
} }
} }

View File

@ -282,24 +282,20 @@ declare const bulmaJS: BulmaJS;
}; };
const openEditOccupancyTypeField = (occupancyTypeId: number, occupancyTypeFieldId: number) => { const openEditOccupancyTypeField = (occupancyTypeId: number, occupancyTypeFieldId: number) => {
let occupancyTypeField: recordTypes.OccupancyTypeField; let occupancyType: recordTypes.OccupancyType;
if (occupancyTypeId) { if (occupancyTypeId) {
const occupancyType = occupancyTypes.find((currentOccupancyType) => { occupancyType = occupancyTypes.find((currentOccupancyType) => {
return currentOccupancyType.occupancyTypeId === occupancyTypeId; return currentOccupancyType.occupancyTypeId === occupancyTypeId;
}); });
occupancyTypeField = occupancyType.occupancyTypeFields.find(
(currentOccupancyTypeField) => {
return currentOccupancyTypeField.occupancyTypeFieldId === occupancyTypeFieldId;
}
);
} else {
occupancyTypeField = allOccupancyTypeFields.find((currentOccupancyTypeField) => {
return currentOccupancyTypeField.occupancyTypeFieldId === occupancyTypeFieldId;
});
} }
const occupancyTypeField = (
occupancyType ? occupancyType.occupancyTypeFields : allOccupancyTypeFields
).find((currentOccupancyTypeField) => {
return currentOccupancyTypeField.occupancyTypeFieldId === occupancyTypeFieldId;
});
let minimumLengthElement: HTMLInputElement; let minimumLengthElement: HTMLInputElement;
let maximumLengthElement: HTMLInputElement; let maximumLengthElement: HTMLInputElement;
let patternElement: HTMLInputElement; let patternElement: HTMLInputElement;
@ -469,6 +465,44 @@ declare const bulmaJS: BulmaJS;
openEditOccupancyTypeField(occupancyTypeId, occupancyTypeFieldId); openEditOccupancyTypeField(occupancyTypeId, occupancyTypeFieldId);
}; };
const moveOccupancyTypeFieldUp = (clickEvent: Event) => {
clickEvent.preventDefault();
const occupancyTypeFieldId = (
(clickEvent.currentTarget as HTMLElement).closest(
".container--occupancyTypeField"
) as HTMLElement
).dataset.occupancyTypeFieldId;
cityssm.postJSON(
urlPrefix + "/admin/doMoveOccupancyTypeFieldUp",
{
occupancyTypeFieldId
},
occupancyTypeResponseHandler
);
};
const moveOccupancyTypeFieldDown = (clickEvent: Event) => {
clickEvent.preventDefault();
const occupancyTypeFieldId = (
(clickEvent.currentTarget as HTMLElement).closest(
".container--occupancyTypeField"
) as HTMLElement
).dataset.occupancyTypeFieldId;
cityssm.postJSON(
urlPrefix + "/admin/doMoveOccupancyTypeFieldDown",
{
occupancyTypeFieldId
},
occupancyTypeResponseHandler
);
};
const renderOccupancyTypeFields = ( const renderOccupancyTypeFields = (
panelElement: HTMLElement, panelElement: HTMLElement,
occupancyTypeId: number | undefined, occupancyTypeId: number | undefined,
@ -530,6 +564,14 @@ declare const bulmaJS: BulmaJS;
.querySelector(".button--editOccupancyTypeField") .querySelector(".button--editOccupancyTypeField")
.addEventListener("click", openEditOccupancyTypeFieldByClick); .addEventListener("click", openEditOccupancyTypeFieldByClick);
panelBlockElement
.querySelector(".button--moveOccupancyTypeFieldUp")
.addEventListener("click", moveOccupancyTypeFieldUp);
panelBlockElement
.querySelector(".button--moveOccupancyTypeFieldDown")
.addEventListener("click", moveOccupancyTypeFieldDown);
panelElement.append(panelBlockElement); panelElement.append(panelBlockElement);
} }
} }

File diff suppressed because one or more lines are too long

View File

@ -19,6 +19,8 @@ import handler_doMoveOccupancyTypeDown from "../handlers/admin-post/doMoveOccupa
import handler_doDeleteOccupancyType from "../handlers/admin-post/doDeleteOccupancyType.js"; import handler_doDeleteOccupancyType from "../handlers/admin-post/doDeleteOccupancyType.js";
import handler_doAddOccupancyTypeField from "../handlers/admin-post/doAddOccupancyTypeField.js"; import handler_doAddOccupancyTypeField from "../handlers/admin-post/doAddOccupancyTypeField.js";
import handler_doUpdateOccupancyTypeField from "../handlers/admin-post/doUpdateOccupancyTypeField.js"; import handler_doUpdateOccupancyTypeField from "../handlers/admin-post/doUpdateOccupancyTypeField.js";
import handler_doMoveOccupancyTypeFieldUp from "../handlers/admin-post/doMoveOccupancyTypeFieldUp.js";
import handler_doMoveOccupancyTypeFieldDown from "../handlers/admin-post/doMoveOccupancyTypeFieldDown.js";
import handler_doDeleteOccupancyTypeField from "../handlers/admin-post/doDeleteOccupancyTypeField.js"; import handler_doDeleteOccupancyTypeField from "../handlers/admin-post/doDeleteOccupancyTypeField.js";
import handler_tables from "../handlers/admin-get/tables.js"; import handler_tables from "../handlers/admin-get/tables.js";
import handler_doAddWorkOrderType from "../handlers/admin-post/doAddWorkOrderType.js"; import handler_doAddWorkOrderType from "../handlers/admin-post/doAddWorkOrderType.js";
@ -61,6 +63,8 @@ router.post("/doMoveOccupancyTypeDown", permissionHandlers.adminPostHandler, han
router.post("/doDeleteOccupancyType", permissionHandlers.adminPostHandler, handler_doDeleteOccupancyType); router.post("/doDeleteOccupancyType", permissionHandlers.adminPostHandler, handler_doDeleteOccupancyType);
router.post("/doAddOccupancyTypeField", permissionHandlers.adminPostHandler, handler_doAddOccupancyTypeField); router.post("/doAddOccupancyTypeField", permissionHandlers.adminPostHandler, handler_doAddOccupancyTypeField);
router.post("/doUpdateOccupancyTypeField", permissionHandlers.adminPostHandler, handler_doUpdateOccupancyTypeField); router.post("/doUpdateOccupancyTypeField", permissionHandlers.adminPostHandler, handler_doUpdateOccupancyTypeField);
router.post("/doMoveOccupancyTypeFieldUp", permissionHandlers.adminPostHandler, handler_doMoveOccupancyTypeFieldUp);
router.post("/doMoveOccupancyTypeFieldDown", permissionHandlers.adminPostHandler, handler_doMoveOccupancyTypeFieldDown);
router.post("/doDeleteOccupancyTypeField", permissionHandlers.adminPostHandler, handler_doDeleteOccupancyTypeField); router.post("/doDeleteOccupancyTypeField", permissionHandlers.adminPostHandler, handler_doDeleteOccupancyTypeField);
router.get("/tables", permissionHandlers.adminGetHandler, handler_tables); router.get("/tables", permissionHandlers.adminGetHandler, handler_tables);
router.post("/doAddWorkOrderType", permissionHandlers.adminPostHandler, handler_doAddWorkOrderType); router.post("/doAddWorkOrderType", permissionHandlers.adminPostHandler, handler_doAddWorkOrderType);

View File

@ -30,6 +30,8 @@ import handler_doDeleteOccupancyType from "../handlers/admin-post/doDeleteOccupa
import handler_doAddOccupancyTypeField from "../handlers/admin-post/doAddOccupancyTypeField.js"; import handler_doAddOccupancyTypeField from "../handlers/admin-post/doAddOccupancyTypeField.js";
import handler_doUpdateOccupancyTypeField from "../handlers/admin-post/doUpdateOccupancyTypeField.js"; import handler_doUpdateOccupancyTypeField from "../handlers/admin-post/doUpdateOccupancyTypeField.js";
import handler_doMoveOccupancyTypeFieldUp from "../handlers/admin-post/doMoveOccupancyTypeFieldUp.js";
import handler_doMoveOccupancyTypeFieldDown from "../handlers/admin-post/doMoveOccupancyTypeFieldDown.js";
import handler_doDeleteOccupancyTypeField from "../handlers/admin-post/doDeleteOccupancyTypeField.js"; import handler_doDeleteOccupancyTypeField from "../handlers/admin-post/doDeleteOccupancyTypeField.js";
// Config Table Management // Config Table Management
@ -178,6 +180,18 @@ router.post(
handler_doUpdateOccupancyTypeField handler_doUpdateOccupancyTypeField
); );
router.post(
"/doMoveOccupancyTypeFieldUp",
permissionHandlers.adminPostHandler,
handler_doMoveOccupancyTypeFieldUp
);
router.post(
"/doMoveOccupancyTypeFieldDown",
permissionHandlers.adminPostHandler,
handler_doMoveOccupancyTypeFieldDown
);
router.post( router.post(
"/doDeleteOccupancyTypeField", "/doDeleteOccupancyTypeField",
permissionHandlers.adminPostHandler, permissionHandlers.adminPostHandler,