work order lot occupancies

deepsource-autofix-76c6eb20
Dan Gowans 2022-08-30 13:23:42 -04:00
parent 2b16d6233d
commit a80b7ec45b
9 changed files with 197 additions and 44 deletions

View File

@ -11,7 +11,7 @@ const recordColumns = " recordCreate_userName varchar(30) not null," +
export const initializeDatabase = () => { export const initializeDatabase = () => {
const lotOccupancyDB = sqlite(databasePath); const lotOccupancyDB = sqlite(databasePath);
const row = lotOccupancyDB const row = lotOccupancyDB
.prepare("select name from sqlite_master where type = 'table' and name = 'Fees'") .prepare("select name from sqlite_master where type = 'table' and name = 'WorkOrderComments'")
.get(); .get();
if (!row) { if (!row) {
debugSQL("Creating " + databasePath); debugSQL("Creating " + databasePath);
@ -251,6 +251,14 @@ export const initializeDatabase = () => {
" foreign key (workOrderId) references WorkOrders (workOrderId)," + " foreign key (workOrderId) references WorkOrders (workOrderId)," +
" foreign key (lotId) references Lots (lotId)" + " foreign key (lotId) references Lots (lotId)" +
") without rowid").run(); ") without rowid").run();
lotOccupancyDB.prepare("create table if not exists WorkOrderLotOccupancies (" +
"workOrderId integer not null," +
" lotOccupancyId integer not null," +
recordColumns + "," +
" primary key (workOrderId, lotOccupancyId)," +
" foreign key (workOrderId) references WorkOrders (workOrderId)," +
" foreign key (lotOccupancyId) references LotOccupancies (lotOccupancyId)" +
") without rowid").run();
lotOccupancyDB.prepare("create table if not exists WorkOrderComments (" + lotOccupancyDB.prepare("create table if not exists WorkOrderComments (" +
"workOrderCommentId integer not null primary key autoincrement," + "workOrderCommentId integer not null primary key autoincrement," +
" workOrderId integer not null," + " workOrderId integer not null," +

View File

@ -21,7 +21,7 @@ export const initializeDatabase = (): boolean => {
const lotOccupancyDB = sqlite(databasePath); const lotOccupancyDB = sqlite(databasePath);
const row = lotOccupancyDB const row = lotOccupancyDB
.prepare("select name from sqlite_master where type = 'table' and name = 'Fees'") .prepare("select name from sqlite_master where type = 'table' and name = 'WorkOrderComments'")
.get(); .get();
if (!row) { if (!row) {
@ -313,6 +313,15 @@ export const initializeDatabase = (): boolean => {
" foreign key (lotId) references Lots (lotId)" + " foreign key (lotId) references Lots (lotId)" +
") without rowid").run(); ") without rowid").run();
lotOccupancyDB.prepare("create table if not exists WorkOrderLotOccupancies (" +
"workOrderId integer not null," +
" lotOccupancyId integer not null," +
recordColumns + "," +
" primary key (workOrderId, lotOccupancyId)," +
" foreign key (workOrderId) references WorkOrders (workOrderId)," +
" foreign key (lotOccupancyId) references LotOccupancies (lotOccupancyId)" +
") without rowid").run();
lotOccupancyDB.prepare("create table if not exists WorkOrderComments (" + lotOccupancyDB.prepare("create table if not exists WorkOrderComments (" +
"workOrderCommentId integer not null primary key autoincrement," + "workOrderCommentId integer not null primary key autoincrement," +
" workOrderId integer not null," + " workOrderId integer not null," +

View File

@ -0,0 +1,7 @@
import type * as recordTypes from "../../types/recordTypes";
interface AddWorkOrderLotOccupancyForm {
workOrderId: number | string;
lotOccupancyId: number | string;
}
export declare const addWorkOrderLotOccupancy: (workOrderLotOccupancyForm: AddWorkOrderLotOccupancyForm, requestSession: recordTypes.PartialSession) => boolean;
export default addWorkOrderLotOccupancy;

View File

@ -0,0 +1,16 @@
import sqlite from "better-sqlite3";
import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
export const addWorkOrderLotOccupancy = (workOrderLotOccupancyForm, requestSession) => {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare("insert into WorkOrderLotOccupancies (" +
"workOrderId, lotOccupancyId," +
" recordCreate_userName, recordCreate_timeMillis," +
" recordUpdate_userName, recordUpdate_timeMillis)" +
" values (?, ?, ?, ?, ?, ?)")
.run(workOrderLotOccupancyForm.workOrderId, workOrderLotOccupancyForm.lotOccupancyId, requestSession.user.userName, rightNowMillis, requestSession.user.userName, rightNowMillis);
database.close();
return result.changes > 0;
};
export default addWorkOrderLotOccupancy;

View File

@ -0,0 +1,42 @@
import sqlite from "better-sqlite3";
import {
lotOccupancyDB as databasePath
} from "../../data/databasePaths.js";
import type * as recordTypes from "../../types/recordTypes";
interface AddWorkOrderLotOccupancyForm {
workOrderId: number | string;
lotOccupancyId: number | string;
}
export const addWorkOrderLotOccupancy =
(workOrderLotOccupancyForm: AddWorkOrderLotOccupancyForm, requestSession: recordTypes.PartialSession): boolean => {
const database = sqlite(databasePath);
const rightNowMillis = Date.now();
const result = database
.prepare("insert into WorkOrderLotOccupancies (" +
"workOrderId, lotOccupancyId," +
" recordCreate_userName, recordCreate_timeMillis," +
" recordUpdate_userName, recordUpdate_timeMillis)" +
" values (?, ?, ?, ?, ?, ?)")
.run(workOrderLotOccupancyForm.workOrderId,
workOrderLotOccupancyForm.lotOccupancyId,
requestSession.user.userName,
rightNowMillis,
requestSession.user.userName,
rightNowMillis);
database.close();
return result.changes > 0;
};
export default addWorkOrderLotOccupancy;

View File

@ -18,6 +18,7 @@ import { addLotOccupancyFee } from "../helpers/lotOccupancyDB/addLotOccupancyFee
import { addLotOccupancyTransaction } from "../helpers/lotOccupancyDB/addLotOccupancyTransaction.js"; import { addLotOccupancyTransaction } from "../helpers/lotOccupancyDB/addLotOccupancyTransaction.js";
import { addWorkOrder } from "../helpers/lotOccupancyDB/addWorkOrder.js"; import { addWorkOrder } from "../helpers/lotOccupancyDB/addWorkOrder.js";
import { addWorkOrderLot } from "../helpers/lotOccupancyDB/addWorkOrderLot.js"; import { addWorkOrderLot } from "../helpers/lotOccupancyDB/addWorkOrderLot.js";
import { addWorkOrderLotOccupancy } from "../helpers/lotOccupancyDB/addWorkOrderLotOccupancy.js";
const user = { const user = {
user: { user: {
userName: "import.unix", userName: "import.unix",
@ -29,6 +30,10 @@ const user = {
}; };
function purgeTables() { function purgeTables() {
const database = sqlite(databasePath); const database = sqlite(databasePath);
database.prepare("delete from WorkOrderComments").run();
database.prepare("delete from WorkOrderLots").run();
database.prepare("delete from WorkOrderLotOccupancies").run();
database.prepare("delete from WorkOrders").run();
database.prepare("delete from LotOccupancyTransactions").run(); database.prepare("delete from LotOccupancyTransactions").run();
database.prepare("delete from LotOccupancyFees").run(); database.prepare("delete from LotOccupancyFees").run();
database.prepare("delete from LotOccupancyFields").run(); database.prepare("delete from LotOccupancyFields").run();
@ -37,7 +42,7 @@ function purgeTables() {
database.prepare("delete from LotOccupancies").run(); database.prepare("delete from LotOccupancies").run();
database.prepare("delete from LotComments").run(); database.prepare("delete from LotComments").run();
database.prepare("delete from Lots").run(); database.prepare("delete from Lots").run();
database.prepare("delete from sqlite_sequence where name in ('Lots', 'LotComments', 'LotOccupancies', 'LotOccupancyComments')").run(); database.prepare("delete from sqlite_sequence where name in ('Lots', 'LotComments', 'LotOccupancies', 'LotOccupancyComments', 'WorkOrders', 'WorkOrderComments')").run();
database.close(); database.close();
} }
function purgeConfigTables() { function purgeConfigTables() {
@ -210,6 +215,7 @@ function importFromMasterCSV() {
}, user); }, user);
} }
let preneedOccupancyStartDateString; let preneedOccupancyStartDateString;
let preneedLotOccupancyId;
if (masterRow.CM_PRENEED_ORDER) { if (masterRow.CM_PRENEED_ORDER) {
preneedOccupancyStartDateString = formatDateString(masterRow.CM_PURCHASE_YR, masterRow.CM_PURCHASE_MON, masterRow.CM_PURCHASE_DAY); preneedOccupancyStartDateString = formatDateString(masterRow.CM_PURCHASE_YR, masterRow.CM_PURCHASE_MON, masterRow.CM_PURCHASE_DAY);
let occupancyEndDateString = ""; let occupancyEndDateString = "";
@ -225,7 +231,7 @@ function importFromMasterCSV() {
if (preneedOccupancyStartDateString === "" || preneedOccupancyStartDateString === "0000-00-00") { if (preneedOccupancyStartDateString === "" || preneedOccupancyStartDateString === "0000-00-00") {
preneedOccupancyStartDateString = "0001-01-01"; preneedOccupancyStartDateString = "0001-01-01";
} }
const lotOccupancyId = addLotOccupancy({ preneedLotOccupancyId = addLotOccupancy({
occupancyTypeId: preneedOccupancyType.occupancyTypeId, occupancyTypeId: preneedOccupancyType.occupancyTypeId,
lotId, lotId,
occupancyStartDateString: preneedOccupancyStartDateString, occupancyStartDateString: preneedOccupancyStartDateString,
@ -234,7 +240,7 @@ function importFromMasterCSV() {
}, user); }, user);
const occupantPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim(); const occupantPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim();
addLotOccupancyOccupant({ addLotOccupancyOccupant({
lotOccupancyId, lotOccupancyId: preneedLotOccupancyId,
lotOccupantTypeId: preneedOwnerLotOccupantType.lotOccupantTypeId, lotOccupantTypeId: preneedOwnerLotOccupantType.lotOccupantTypeId,
occupantName: masterRow.CM_PRENEED_OWNER, occupantName: masterRow.CM_PRENEED_OWNER,
occupantAddress1: masterRow.CM_ADDRESS, occupantAddress1: masterRow.CM_ADDRESS,
@ -246,7 +252,7 @@ function importFromMasterCSV() {
}, user); }, user);
if (masterRow.CM_REMARK1 !== "") { if (masterRow.CM_REMARK1 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: preneedLotOccupancyId,
lotOccupancyCommentDateString: preneedOccupancyStartDateString, lotOccupancyCommentDateString: preneedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK1 lotOccupancyComment: masterRow.CM_REMARK1
@ -254,7 +260,7 @@ function importFromMasterCSV() {
} }
if (masterRow.CM_REMARK2 !== "") { if (masterRow.CM_REMARK2 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: preneedLotOccupancyId,
lotOccupancyCommentDateString: preneedOccupancyStartDateString, lotOccupancyCommentDateString: preneedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK2 lotOccupancyComment: masterRow.CM_REMARK2
@ -265,6 +271,7 @@ function importFromMasterCSV() {
} }
} }
let deceasedOccupancyStartDateString; let deceasedOccupancyStartDateString;
let deceasedLotOccupancyId;
if (masterRow.CM_DECEASED_NAME) { if (masterRow.CM_DECEASED_NAME) {
deceasedOccupancyStartDateString = formatDateString(masterRow.CM_INTERMENT_YR, masterRow.CM_INTERMENT_MON, masterRow.CM_INTERMENT_DAY); deceasedOccupancyStartDateString = formatDateString(masterRow.CM_INTERMENT_YR, masterRow.CM_INTERMENT_MON, masterRow.CM_INTERMENT_DAY);
const occupancyEndDateString = ""; const occupancyEndDateString = "";
@ -274,7 +281,7 @@ function importFromMasterCSV() {
if (deceasedOccupancyStartDateString === "" || deceasedOccupancyStartDateString === "0000-00-00") { if (deceasedOccupancyStartDateString === "" || deceasedOccupancyStartDateString === "0000-00-00") {
deceasedOccupancyStartDateString = "0001-01-01"; deceasedOccupancyStartDateString = "0001-01-01";
} }
const lotOccupancyId = addLotOccupancy({ deceasedLotOccupancyId = addLotOccupancy({
occupancyTypeId: lotId ? deceasedOccupancyType.occupancyTypeId : cremationOccupancyType.occupancyTypeId, occupancyTypeId: lotId ? deceasedOccupancyType.occupancyTypeId : cremationOccupancyType.occupancyTypeId,
lotId, lotId,
occupancyStartDateString: deceasedOccupancyStartDateString, occupancyStartDateString: deceasedOccupancyStartDateString,
@ -283,7 +290,7 @@ function importFromMasterCSV() {
}, user); }, user);
const deceasedPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim(); const deceasedPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim();
addLotOccupancyOccupant({ addLotOccupancyOccupant({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
lotOccupantTypeId: deceasedLotOccupantType.lotOccupantTypeId, lotOccupantTypeId: deceasedLotOccupantType.lotOccupantTypeId,
occupantName: masterRow.CM_DECEASED_NAME, occupantName: masterRow.CM_DECEASED_NAME,
occupantAddress1: masterRow.CM_ADDRESS, occupantAddress1: masterRow.CM_ADDRESS,
@ -296,7 +303,7 @@ function importFromMasterCSV() {
if (masterRow.CM_DEATH_YR !== "") { if (masterRow.CM_DEATH_YR !== "") {
const lotOccupancyFieldValue = formatDateString(masterRow.CM_DEATH_YR, masterRow.CM_DEATH_MON, masterRow.CM_DEATH_DAY); const lotOccupancyFieldValue = formatDateString(masterRow.CM_DEATH_YR, masterRow.CM_DEATH_MON, masterRow.CM_DEATH_DAY);
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Death Date"; return occupancyTypeField.occupancyTypeField === "Death Date";
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -305,7 +312,7 @@ function importFromMasterCSV() {
} }
if (masterRow.CM_AGE !== "") { if (masterRow.CM_AGE !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Death Age"; return occupancyTypeField.occupancyTypeField === "Death Age";
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -314,7 +321,7 @@ function importFromMasterCSV() {
} }
if (masterRow.CM_PERIOD !== "") { if (masterRow.CM_PERIOD !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Death Age Period"; return occupancyTypeField.occupancyTypeField === "Death Age Period";
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -323,7 +330,7 @@ function importFromMasterCSV() {
} }
if (masterRow.CM_FUNERAL_HOME !== "") { if (masterRow.CM_FUNERAL_HOME !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Funeral Home"; return occupancyTypeField.occupancyTypeField === "Funeral Home";
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -333,7 +340,7 @@ function importFromMasterCSV() {
if (masterRow.CM_FUNERAL_YR !== "") { if (masterRow.CM_FUNERAL_YR !== "") {
const lotOccupancyFieldValue = formatDateString(masterRow.CM_FUNERAL_YR, masterRow.CM_FUNERAL_MON, masterRow.CM_FUNERAL_DAY); const lotOccupancyFieldValue = formatDateString(masterRow.CM_FUNERAL_YR, masterRow.CM_FUNERAL_MON, masterRow.CM_FUNERAL_DAY);
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Funeral Date"; return occupancyTypeField.occupancyTypeField === "Funeral Date";
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -342,7 +349,7 @@ function importFromMasterCSV() {
} }
if (masterRow.CM_CONTAINER_TYPE !== "") { if (masterRow.CM_CONTAINER_TYPE !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Container Type"; return occupancyTypeField.occupancyTypeField === "Container Type";
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -355,7 +362,7 @@ function importFromMasterCSV() {
commitalType = "Graveside"; commitalType = "Graveside";
} }
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Committal Type"; return occupancyTypeField.occupancyTypeField === "Committal Type";
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -364,7 +371,7 @@ function importFromMasterCSV() {
} }
if (masterRow.CM_REMARK1 !== "") { if (masterRow.CM_REMARK1 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
lotOccupancyCommentDateString: deceasedOccupancyStartDateString, lotOccupancyCommentDateString: deceasedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK1 lotOccupancyComment: masterRow.CM_REMARK1
@ -372,7 +379,7 @@ function importFromMasterCSV() {
} }
if (masterRow.CM_REMARK2 !== "") { if (masterRow.CM_REMARK2 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
lotOccupancyCommentDateString: deceasedOccupancyStartDateString, lotOccupancyCommentDateString: deceasedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK2 lotOccupancyComment: masterRow.CM_REMARK2
@ -393,6 +400,18 @@ function importFromMasterCSV() {
lotId lotId
}, user); }, user);
} }
if (deceasedLotOccupancyId) {
addWorkOrderLotOccupancy({
workOrderId,
lotOccupancyId: deceasedLotOccupancyId
}, user);
}
else if (preneedLotOccupancyId) {
addWorkOrderLotOccupancy({
workOrderId,
lotOccupancyId: preneedLotOccupancyId
}, user);
}
} }
} }
} }

View File

@ -69,6 +69,10 @@ import {
addWorkOrderLot addWorkOrderLot
} from "../helpers/lotOccupancyDB/addWorkOrderLot.js"; } from "../helpers/lotOccupancyDB/addWorkOrderLot.js";
import {
addWorkOrderLotOccupancy
} from "../helpers/lotOccupancyDB/addWorkOrderLotOccupancy.js";
import type * as recordTypes from "../types/recordTypes"; import type * as recordTypes from "../types/recordTypes";
@ -180,6 +184,10 @@ const user: recordTypes.PartialSession = {
function purgeTables() { function purgeTables() {
const database = sqlite(databasePath); const database = sqlite(databasePath);
database.prepare("delete from WorkOrderComments").run();
database.prepare("delete from WorkOrderLots").run();
database.prepare("delete from WorkOrderLotOccupancies").run();
database.prepare("delete from WorkOrders").run();
database.prepare("delete from LotOccupancyTransactions").run(); database.prepare("delete from LotOccupancyTransactions").run();
database.prepare("delete from LotOccupancyFees").run(); database.prepare("delete from LotOccupancyFees").run();
database.prepare("delete from LotOccupancyFields").run(); database.prepare("delete from LotOccupancyFields").run();
@ -188,7 +196,7 @@ function purgeTables() {
database.prepare("delete from LotOccupancies").run(); database.prepare("delete from LotOccupancies").run();
database.prepare("delete from LotComments").run(); database.prepare("delete from LotComments").run();
database.prepare("delete from Lots").run(); database.prepare("delete from Lots").run();
database.prepare("delete from sqlite_sequence where name in ('Lots', 'LotComments', 'LotOccupancies', 'LotOccupancyComments')").run(); database.prepare("delete from sqlite_sequence where name in ('Lots', 'LotComments', 'LotOccupancies', 'LotOccupancyComments', 'WorkOrders', 'WorkOrderComments')").run();
database.close(); database.close();
} }
@ -445,6 +453,7 @@ function importFromMasterCSV() {
} }
let preneedOccupancyStartDateString: string; let preneedOccupancyStartDateString: string;
let preneedLotOccupancyId: number;
if (masterRow.CM_PRENEED_ORDER) { if (masterRow.CM_PRENEED_ORDER) {
@ -476,7 +485,7 @@ function importFromMasterCSV() {
preneedOccupancyStartDateString = "0001-01-01"; preneedOccupancyStartDateString = "0001-01-01";
} }
const lotOccupancyId = addLotOccupancy({ preneedLotOccupancyId = addLotOccupancy({
occupancyTypeId: preneedOccupancyType.occupancyTypeId, occupancyTypeId: preneedOccupancyType.occupancyTypeId,
lotId, lotId,
occupancyStartDateString: preneedOccupancyStartDateString, occupancyStartDateString: preneedOccupancyStartDateString,
@ -487,7 +496,7 @@ function importFromMasterCSV() {
const occupantPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim(); const occupantPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim();
addLotOccupancyOccupant({ addLotOccupancyOccupant({
lotOccupancyId, lotOccupancyId: preneedLotOccupancyId,
lotOccupantTypeId: preneedOwnerLotOccupantType.lotOccupantTypeId, lotOccupantTypeId: preneedOwnerLotOccupantType.lotOccupantTypeId,
occupantName: masterRow.CM_PRENEED_OWNER, occupantName: masterRow.CM_PRENEED_OWNER,
occupantAddress1: masterRow.CM_ADDRESS, occupantAddress1: masterRow.CM_ADDRESS,
@ -500,7 +509,7 @@ function importFromMasterCSV() {
if (masterRow.CM_REMARK1 !== "") { if (masterRow.CM_REMARK1 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: preneedLotOccupancyId,
lotOccupancyCommentDateString: preneedOccupancyStartDateString, lotOccupancyCommentDateString: preneedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK1 lotOccupancyComment: masterRow.CM_REMARK1
@ -509,7 +518,7 @@ function importFromMasterCSV() {
if (masterRow.CM_REMARK2 !== "") { if (masterRow.CM_REMARK2 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: preneedLotOccupancyId,
lotOccupancyCommentDateString: preneedOccupancyStartDateString, lotOccupancyCommentDateString: preneedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK2 lotOccupancyComment: masterRow.CM_REMARK2
@ -522,6 +531,7 @@ function importFromMasterCSV() {
} }
let deceasedOccupancyStartDateString: string; let deceasedOccupancyStartDateString: string;
let deceasedLotOccupancyId: number;
if (masterRow.CM_DECEASED_NAME) { if (masterRow.CM_DECEASED_NAME) {
@ -542,7 +552,7 @@ function importFromMasterCSV() {
deceasedOccupancyStartDateString = "0001-01-01"; deceasedOccupancyStartDateString = "0001-01-01";
} }
const lotOccupancyId = addLotOccupancy({ deceasedLotOccupancyId = addLotOccupancy({
occupancyTypeId: lotId ? deceasedOccupancyType.occupancyTypeId : cremationOccupancyType.occupancyTypeId, occupancyTypeId: lotId ? deceasedOccupancyType.occupancyTypeId : cremationOccupancyType.occupancyTypeId,
lotId, lotId,
occupancyStartDateString: deceasedOccupancyStartDateString, occupancyStartDateString: deceasedOccupancyStartDateString,
@ -553,7 +563,7 @@ function importFromMasterCSV() {
const deceasedPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim(); const deceasedPostalCode = ((masterRow.CM_POST1 || "") + " " + (masterRow.CM_POST2 || "")).trim();
addLotOccupancyOccupant({ addLotOccupancyOccupant({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
lotOccupantTypeId: deceasedLotOccupantType.lotOccupantTypeId, lotOccupantTypeId: deceasedLotOccupantType.lotOccupantTypeId,
occupantName: masterRow.CM_DECEASED_NAME, occupantName: masterRow.CM_DECEASED_NAME,
occupantAddress1: masterRow.CM_ADDRESS, occupantAddress1: masterRow.CM_ADDRESS,
@ -571,7 +581,7 @@ function importFromMasterCSV() {
masterRow.CM_DEATH_DAY); masterRow.CM_DEATH_DAY);
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Death Date" return occupancyTypeField.occupancyTypeField === "Death Date"
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -582,7 +592,7 @@ function importFromMasterCSV() {
if (masterRow.CM_AGE !== "") { if (masterRow.CM_AGE !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Death Age" return occupancyTypeField.occupancyTypeField === "Death Age"
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -593,7 +603,7 @@ function importFromMasterCSV() {
if (masterRow.CM_PERIOD !== "") { if (masterRow.CM_PERIOD !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Death Age Period" return occupancyTypeField.occupancyTypeField === "Death Age Period"
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -604,7 +614,7 @@ function importFromMasterCSV() {
if (masterRow.CM_FUNERAL_HOME !== "") { if (masterRow.CM_FUNERAL_HOME !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Funeral Home" return occupancyTypeField.occupancyTypeField === "Funeral Home"
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -619,7 +629,7 @@ function importFromMasterCSV() {
masterRow.CM_FUNERAL_DAY); masterRow.CM_FUNERAL_DAY);
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Funeral Date" return occupancyTypeField.occupancyTypeField === "Funeral Date"
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -630,7 +640,7 @@ function importFromMasterCSV() {
if (masterRow.CM_CONTAINER_TYPE !== "") { if (masterRow.CM_CONTAINER_TYPE !== "") {
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Container Type" return occupancyTypeField.occupancyTypeField === "Container Type"
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -647,7 +657,7 @@ function importFromMasterCSV() {
} }
addOrUpdateLotOccupancyField({ addOrUpdateLotOccupancyField({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => { occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
return occupancyTypeField.occupancyTypeField === "Committal Type" return occupancyTypeField.occupancyTypeField === "Committal Type"
}).occupancyTypeFieldId, }).occupancyTypeFieldId,
@ -657,7 +667,7 @@ function importFromMasterCSV() {
if (masterRow.CM_REMARK1 !== "") { if (masterRow.CM_REMARK1 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
lotOccupancyCommentDateString: deceasedOccupancyStartDateString, lotOccupancyCommentDateString: deceasedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK1 lotOccupancyComment: masterRow.CM_REMARK1
@ -666,7 +676,7 @@ function importFromMasterCSV() {
if (masterRow.CM_REMARK2 !== "") { if (masterRow.CM_REMARK2 !== "") {
addLotOccupancyComment({ addLotOccupancyComment({
lotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
lotOccupancyCommentDateString: deceasedOccupancyStartDateString, lotOccupancyCommentDateString: deceasedOccupancyStartDateString,
lotOccupancyCommentTimeString: "00:00", lotOccupancyCommentTimeString: "00:00",
lotOccupancyComment: masterRow.CM_REMARK2 lotOccupancyComment: masterRow.CM_REMARK2
@ -691,6 +701,21 @@ function importFromMasterCSV() {
lotId lotId
}, user); }, user);
} }
if (deceasedLotOccupancyId) {
addWorkOrderLotOccupancy({
workOrderId,
lotOccupancyId: deceasedLotOccupancyId
}, user);
} else if (preneedLotOccupancyId) {
addWorkOrderLotOccupancy({
workOrderId,
lotOccupancyId: preneedLotOccupancyId
}, user);
}
} }
} }
} catch (error) { } catch (error) {

View File

@ -190,6 +190,15 @@ export interface WorkOrderType extends Record {
workOrderType?: string; workOrderType?: string;
orderNumber?: number; orderNumber?: number;
} }
export interface WorkOrderComment extends Record {
workOrderCommentId?: number;
workOrderId?: number;
workOrderCommentDate?: number;
workOrderCommentDateString?: string;
workOrderCommentTime?: number;
workOrderCommentTimeString?: string;
workOrderComment?: string;
}
export interface WorkOrder extends Record { export interface WorkOrder extends Record {
workOrderId?: number; workOrderId?: number;
workOrderTypeId?: number; workOrderTypeId?: number;
@ -200,7 +209,9 @@ export interface WorkOrder extends Record {
workOrderOpenDateString?: string; workOrderOpenDateString?: string;
workOrderCloseDate?: number; workOrderCloseDate?: number;
workOrderCloseDateString?: string; workOrderCloseDateString?: string;
workOrderComments?: WorkOrderComment[];
workOrderLots?: Lot[]; workOrderLots?: Lot[];
workOrderLotOccupancies?: LotOccupancy[];
} }
export interface User { export interface User {
userName: string; userName: string;

View File

@ -276,22 +276,38 @@ export interface WorkOrderType extends Record {
} }
export interface WorkOrderComment extends Record {
workOrderCommentId ? : number;
workOrderId ? : number;
workOrderCommentDate ? : number;
workOrderCommentDateString ? : string;
workOrderCommentTime ? : number;
workOrderCommentTimeString ? : string;
workOrderComment ? : string;
}
export interface WorkOrder extends Record { export interface WorkOrder extends Record {
workOrderId?: number; workOrderId ? : number;
workOrderTypeId?: number; workOrderTypeId ? : number;
workOrderType?: string; workOrderType ? : string;
workOrderNumber?: string; workOrderNumber ? : string;
workOrderDescription?: string; workOrderDescription ? : string;
workOrderOpenDate?: number; workOrderOpenDate ? : number;
workOrderOpenDateString?: string; workOrderOpenDateString ? : string;
workOrderCloseDate?: number; workOrderCloseDate ? : number;
workOrderCloseDateString?: string; workOrderCloseDateString ? : string;
workOrderLots?: Lot[]; workOrderComments ? : WorkOrderComment[];
workOrderLots ? : Lot[];
workOrderLotOccupancies ? : LotOccupancy[];
} }