restructuring import scripts
parent
90e1449a97
commit
0de09187da
|
|
@ -2,7 +2,8 @@ import fs from 'node:fs';
|
|||
import papa from 'papaparse';
|
||||
import sqlite from 'better-sqlite3';
|
||||
import { lotOccupancyDB as databasePath } from '../data/databasePaths.js';
|
||||
import * as cacheFunctions from '../helpers/functions.cache.js';
|
||||
import * as importIds from './legacy.importFromCsv.ids.js';
|
||||
import * as importData from './legacy.importFromCsv.data.js';
|
||||
import { addMap } from '../helpers/lotOccupancyDB/addMap.js';
|
||||
import { getMap as getMapFromDatabase } from '../helpers/lotOccupancyDB/getMap.js';
|
||||
import { addLot } from '../helpers/lotOccupancyDB/addLot.js';
|
||||
|
|
@ -69,7 +70,7 @@ function getMapByMapDescription(mapDescription) {
|
|||
readonly: true
|
||||
});
|
||||
const map = database
|
||||
.prepare('select * from Maps' + ' where mapDescription = ?')
|
||||
.prepare('select * from Maps where mapDescription = ?')
|
||||
.get(mapDescription);
|
||||
database.close();
|
||||
return map;
|
||||
|
|
@ -124,183 +125,6 @@ function getMap(dataRow) {
|
|||
mapCache.set(mapCacheKey, map);
|
||||
return map;
|
||||
}
|
||||
const feeCache = new Map();
|
||||
function getFeeIdByFeeDescription(feeDescription) {
|
||||
if (feeCache.keys.length === 0) {
|
||||
const database = sqlite(databasePath, {
|
||||
readonly: true
|
||||
});
|
||||
const records = database
|
||||
.prepare("select feeId, feeDescription from Fees where feeDescription like 'CMPP_FEE_%'")
|
||||
.all();
|
||||
for (const record of records) {
|
||||
feeCache.set(record.feeDescription, record.feeId);
|
||||
}
|
||||
database.close();
|
||||
}
|
||||
return feeCache.get(feeDescription);
|
||||
}
|
||||
function buildLotName(lotNamePieces) {
|
||||
return (lotNamePieces.cemetery +
|
||||
'-' +
|
||||
(lotNamePieces.block === '' ? '' : 'B' + lotNamePieces.block + '-') +
|
||||
(lotNamePieces.range1 === '0' && lotNamePieces.range2 === ''
|
||||
? ''
|
||||
: 'R' +
|
||||
(lotNamePieces.range1 === '0' ? '' : lotNamePieces.range1) +
|
||||
lotNamePieces.range2 +
|
||||
'-') +
|
||||
(lotNamePieces.lot1 === '0' && lotNamePieces.lot2 === ''
|
||||
? ''
|
||||
: 'L' + lotNamePieces.lot1 + lotNamePieces.lot2 + '-') +
|
||||
('G' + lotNamePieces.grave1 + lotNamePieces.grave2) +
|
||||
', ' +
|
||||
('Interment ' + lotNamePieces.interment));
|
||||
}
|
||||
const casketLotType = cacheFunctions.getLotTypesByLotType('Casket Grave');
|
||||
const columbariumLotType = cacheFunctions.getLotTypesByLotType('Columbarium');
|
||||
const crematoriumLotType = cacheFunctions.getLotTypesByLotType('Crematorium');
|
||||
const mausoleumLotType = cacheFunctions.getLotTypesByLotType('Mausoleum');
|
||||
const nicheWallLotType = cacheFunctions.getLotTypesByLotType('Niche Wall');
|
||||
const urnGardenLotType = cacheFunctions.getLotTypesByLotType('Urn Garden');
|
||||
function getLotType(dataRow) {
|
||||
switch (dataRow.cemetery) {
|
||||
case '00': {
|
||||
return crematoriumLotType;
|
||||
}
|
||||
case 'GC':
|
||||
case 'HC': {
|
||||
return columbariumLotType;
|
||||
}
|
||||
case 'MA': {
|
||||
return mausoleumLotType;
|
||||
}
|
||||
case 'MN':
|
||||
case 'NW': {
|
||||
return nicheWallLotType;
|
||||
}
|
||||
case 'UG': {
|
||||
return urnGardenLotType;
|
||||
}
|
||||
}
|
||||
return casketLotType;
|
||||
}
|
||||
const availableLotStatus = cacheFunctions.getLotStatusByLotStatus('Available');
|
||||
const reservedLotStatus = cacheFunctions.getLotStatusByLotStatus('Reserved');
|
||||
const takenLotStatus = cacheFunctions.getLotStatusByLotStatus('Taken');
|
||||
const preneedOccupancyType = cacheFunctions.getOccupancyTypeByOccupancyType('Preneed');
|
||||
const deceasedOccupancyType = cacheFunctions.getOccupancyTypeByOccupancyType('Interment');
|
||||
const cremationOccupancyType = cacheFunctions.getOccupancyTypeByOccupancyType('Cremation');
|
||||
const preneedOwnerLotOccupantType = cacheFunctions.getLotOccupantTypeByLotOccupantType('Preneed Owner');
|
||||
const funeralDirectorLotOccupantType = cacheFunctions.getLotOccupantTypeByLotOccupantType('Funeral Director');
|
||||
const deceasedLotOccupantType = cacheFunctions.getLotOccupantTypeByLotOccupantType('Deceased');
|
||||
const purchaserLotOccupantType = cacheFunctions.getLotOccupantTypeByLotOccupantType('Purchaser');
|
||||
const acknowledgedWorkOrderMilestoneType = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Acknowledged');
|
||||
const deathWorkOrderMilestoneType = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Death');
|
||||
const funeralWorkOrderMilestoneType = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Funeral');
|
||||
const cremationWorkOrderMilestoneType = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Cremation');
|
||||
const intermentWorkOrderMilestoneType = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Interment');
|
||||
function getFuneralHome(funeralHomeKey) {
|
||||
switch (funeralHomeKey) {
|
||||
case 'AR': {
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: 'Arthur Funeral Home',
|
||||
occupantAddress1: '492 Wellington Street East',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 2L9',
|
||||
occupantPhoneNumber: '705-759-2522',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'BG': {
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: 'Beggs Funeral Home',
|
||||
occupantAddress1: '175 Main Street',
|
||||
occupantAddress2: 'P.O. Box 280',
|
||||
occupantCity: 'Thessalon',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P0R 1L0',
|
||||
occupantPhoneNumber: '705-842-2520',
|
||||
occupantEmailAddress: 'bfh@beggsfh.ca'
|
||||
};
|
||||
}
|
||||
case 'BK': {
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: 'Barton and Kiteley',
|
||||
occupantAddress1: '',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: '',
|
||||
occupantPhoneNumber: '',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'DA': {
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: 'Damignani Burial, Cremation and Transfer Service',
|
||||
occupantAddress1: '215 St. James Street',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 1P7',
|
||||
occupantPhoneNumber: '705-759-8456',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'GL': {
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: 'Gilmartin P.M. Funeral Home',
|
||||
occupantAddress1: '140 Churchill Avenue',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Wawa',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P0S 1K0',
|
||||
occupantPhoneNumber: '705-856-7340',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'NO': {
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: 'Northwood Funeral Home',
|
||||
occupantAddress1: '942 Great Northern Road',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6B 0B6',
|
||||
occupantPhoneNumber: '705-945-7758',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'OS': {
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: "O'Sullivan Funeral Home",
|
||||
occupantAddress1: '215 St. James Street',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 1P7',
|
||||
occupantPhoneNumber: '705-759-8456',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
}
|
||||
return {
|
||||
lotOccupantTypeId: funeralDirectorLotOccupantType.lotOccupantTypeId,
|
||||
occupantName: funeralHomeKey,
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON'
|
||||
};
|
||||
}
|
||||
function importFromMasterCSV() {
|
||||
console.time('importFromMasterCSV');
|
||||
let masterRow;
|
||||
|
|
@ -318,7 +142,7 @@ function importFromMasterCSV() {
|
|||
const map = getMap({
|
||||
cemetery: masterRow.CM_CEMETERY
|
||||
});
|
||||
const lotName = buildLotName({
|
||||
const lotName = importData.buildLotName({
|
||||
cemetery: masterRow.CM_CEMETERY,
|
||||
block: masterRow.CM_BLOCK,
|
||||
range1: masterRow.CM_RANGE1,
|
||||
|
|
@ -329,15 +153,15 @@ function importFromMasterCSV() {
|
|||
grave2: masterRow.CM_GRAVE2,
|
||||
interment: masterRow.CM_INTERMENT
|
||||
});
|
||||
const lotType = getLotType({
|
||||
const lotTypeId = importIds.getLotTypeId({
|
||||
cemetery: masterRow.CM_CEMETERY
|
||||
});
|
||||
let lotId;
|
||||
if (masterRow.CM_CEMETERY !== '00') {
|
||||
lotId = addLot({
|
||||
lotName: lotName,
|
||||
lotTypeId: lotType.lotTypeId,
|
||||
lotStatusId: availableLotStatus.lotStatusId,
|
||||
lotName,
|
||||
lotTypeId,
|
||||
lotStatusId: importIds.availableLotStatusId,
|
||||
mapId: map.mapId,
|
||||
mapKey: lotName.includes(',') ? lotName.split(',')[0] : lotName,
|
||||
lotLatitude: '',
|
||||
|
|
@ -346,7 +170,7 @@ function importFromMasterCSV() {
|
|||
}
|
||||
let preneedOccupancyStartDateString;
|
||||
let preneedLotOccupancyId;
|
||||
if (masterRow.CM_PRENEED_OWNER || masterRow.CM_STATUS === 'P') {
|
||||
if (masterRow.CM_PRENEED_OWNER !== '' || masterRow.CM_STATUS === 'P') {
|
||||
preneedOccupancyStartDateString = formatDateString(masterRow.CM_PURCHASE_YR, masterRow.CM_PURCHASE_MON, masterRow.CM_PURCHASE_DAY);
|
||||
let occupancyEndDateString = '';
|
||||
if (masterRow.CM_INTERMENT_YR !== '' &&
|
||||
|
|
@ -371,18 +195,16 @@ function importFromMasterCSV() {
|
|||
preneedOccupancyStartDateString = '0001-01-01';
|
||||
}
|
||||
preneedLotOccupancyId = addLotOccupancy({
|
||||
occupancyTypeId: preneedOccupancyType.occupancyTypeId,
|
||||
occupancyTypeId: importIds.preneedOccupancyType.occupancyTypeId,
|
||||
lotId,
|
||||
occupancyStartDateString: preneedOccupancyStartDateString,
|
||||
occupancyEndDateString,
|
||||
occupancyTypeFieldIds: ''
|
||||
}, user);
|
||||
const occupantPostalCode = ((masterRow.CM_POST1 || '') +
|
||||
' ' +
|
||||
(masterRow.CM_POST2 || '')).trim();
|
||||
const occupantPostalCode = `${masterRow.CM_POST1} ${masterRow.CM_POST2}`.trim();
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId: preneedLotOccupancyId,
|
||||
lotOccupantTypeId: preneedOwnerLotOccupantType.lotOccupantTypeId,
|
||||
lotOccupantTypeId: importIds.preneedOwnerLotOccupantTypeId,
|
||||
occupantName: masterRow.CM_PRENEED_OWNER,
|
||||
occupantAddress1: masterRow.CM_ADDRESS,
|
||||
occupantAddress2: '',
|
||||
|
|
@ -409,12 +231,12 @@ function importFromMasterCSV() {
|
|||
}, user);
|
||||
}
|
||||
if (occupancyEndDateString === '') {
|
||||
updateLotStatus(lotId, reservedLotStatus.lotStatusId, user);
|
||||
updateLotStatus(lotId, importIds.reservedLotStatusId, user);
|
||||
}
|
||||
}
|
||||
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);
|
||||
if (deceasedOccupancyStartDateString === '0000-00-00' &&
|
||||
masterRow.CM_DEATH_YR !== '' &&
|
||||
|
|
@ -428,21 +250,20 @@ function importFromMasterCSV() {
|
|||
const deceasedOccupancyEndDateString = lotId
|
||||
? ''
|
||||
: deceasedOccupancyStartDateString;
|
||||
const occupancyType = lotId
|
||||
? importIds.deceasedOccupancyType
|
||||
: importIds.cremationOccupancyType;
|
||||
deceasedLotOccupancyId = addLotOccupancy({
|
||||
occupancyTypeId: lotId
|
||||
? deceasedOccupancyType.occupancyTypeId
|
||||
: cremationOccupancyType.occupancyTypeId,
|
||||
occupancyTypeId: occupancyType.occupancyTypeId,
|
||||
lotId,
|
||||
occupancyStartDateString: deceasedOccupancyStartDateString,
|
||||
occupancyEndDateString: deceasedOccupancyEndDateString,
|
||||
occupancyTypeFieldIds: ''
|
||||
}, user);
|
||||
const deceasedPostalCode = ((masterRow.CM_POST1 || '') +
|
||||
' ' +
|
||||
(masterRow.CM_POST2 || '')).trim();
|
||||
const deceasedPostalCode = `${masterRow.CM_POST1} ${masterRow.CM_POST2}`.trim();
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
lotOccupantTypeId: deceasedLotOccupantType.lotOccupantTypeId,
|
||||
lotOccupantTypeId: importIds.deceasedLotOccupantTypeId,
|
||||
occupantName: masterRow.CM_DECEASED_NAME,
|
||||
occupantAddress1: masterRow.CM_ADDRESS,
|
||||
occupantAddress2: '',
|
||||
|
|
@ -456,9 +277,7 @@ function importFromMasterCSV() {
|
|||
const lotOccupancyFieldValue = formatDateString(masterRow.CM_DEATH_YR, masterRow.CM_DEATH_MON, masterRow.CM_DEATH_DAY);
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: (lotId
|
||||
? deceasedOccupancyType
|
||||
: cremationOccupancyType).occupancyTypeFields.find((occupancyTypeField) => {
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return occupancyTypeField.occupancyTypeField === 'Death Date';
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue
|
||||
|
|
@ -467,9 +286,7 @@ function importFromMasterCSV() {
|
|||
if (masterRow.CM_AGE !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: (lotId
|
||||
? deceasedOccupancyType
|
||||
: cremationOccupancyType).occupancyTypeFields.find((occupancyTypeField) => {
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return occupancyTypeField.occupancyTypeField === 'Death Age';
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: masterRow.CM_AGE
|
||||
|
|
@ -478,16 +295,14 @@ function importFromMasterCSV() {
|
|||
if (masterRow.CM_PERIOD !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: (lotId
|
||||
? deceasedOccupancyType
|
||||
: cremationOccupancyType).occupancyTypeFields.find((occupancyTypeField) => {
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Death Age Period');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: masterRow.CM_PERIOD
|
||||
}, user);
|
||||
}
|
||||
if (masterRow.CM_FUNERAL_HOME !== '') {
|
||||
const funeralHomeOccupant = getFuneralHome(masterRow.CM_FUNERAL_HOME);
|
||||
const funeralHomeOccupant = importData.getFuneralHomeLotOccupancyOccupantData(masterRow.CM_FUNERAL_HOME);
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
lotOccupantTypeId: funeralHomeOccupant.lotOccupantTypeId,
|
||||
|
|
@ -505,39 +320,35 @@ function importFromMasterCSV() {
|
|||
const lotOccupancyFieldValue = formatDateString(masterRow.CM_FUNERAL_YR, masterRow.CM_FUNERAL_MON, masterRow.CM_FUNERAL_DAY);
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: (lotId
|
||||
? deceasedOccupancyType
|
||||
: cremationOccupancyType).occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return occupancyTypeField.occupancyTypeField === 'Funeral Date';
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Funeral Date');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue
|
||||
}, user);
|
||||
}
|
||||
if (masterRow.CM_CONTAINER_TYPE !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: (lotId
|
||||
? deceasedOccupancyType
|
||||
: cremationOccupancyType).occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Container Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: masterRow.CM_CONTAINER_TYPE
|
||||
}, user);
|
||||
}
|
||||
if (masterRow.CM_COMMITTAL_TYPE !== '') {
|
||||
let commitalType = masterRow.CM_COMMITTAL_TYPE;
|
||||
if (commitalType === 'GS') {
|
||||
commitalType = 'Graveside';
|
||||
if (occupancyType.occupancyType !== 'Cremation') {
|
||||
if (masterRow.CM_CONTAINER_TYPE !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Container Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: masterRow.CM_CONTAINER_TYPE
|
||||
}, user);
|
||||
}
|
||||
if (masterRow.CM_COMMITTAL_TYPE !== '') {
|
||||
let commitalType = masterRow.CM_COMMITTAL_TYPE;
|
||||
if (commitalType === 'GS') {
|
||||
commitalType = 'Graveside';
|
||||
}
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Committal Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: commitalType
|
||||
}, user);
|
||||
}
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
occupancyTypeFieldId: (lotId
|
||||
? deceasedOccupancyType
|
||||
: cremationOccupancyType).occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Committal Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: commitalType
|
||||
}, user);
|
||||
}
|
||||
if (masterRow.CM_REMARK1 !== '') {
|
||||
addLotOccupancyComment({
|
||||
|
|
@ -555,11 +366,11 @@ function importFromMasterCSV() {
|
|||
lotOccupancyComment: masterRow.CM_REMARK2
|
||||
}, user);
|
||||
}
|
||||
updateLotStatus(lotId, takenLotStatus.lotStatusId, user);
|
||||
if (masterRow.CM_PRENEED_OWNER) {
|
||||
updateLotStatus(lotId, importIds.takenLotStatusId, user);
|
||||
if (masterRow.CM_PRENEED_OWNER !== '') {
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId: deceasedLotOccupancyId,
|
||||
lotOccupantTypeId: preneedOwnerLotOccupantType.lotOccupantTypeId,
|
||||
lotOccupantTypeId: importIds.preneedOwnerLotOccupantTypeId,
|
||||
occupantName: masterRow.CM_PRENEED_OWNER,
|
||||
occupantAddress1: '',
|
||||
occupantAddress2: '',
|
||||
|
|
@ -597,15 +408,15 @@ function importFromPrepaidCSV() {
|
|||
continue;
|
||||
}
|
||||
let cemetery = prepaidRow.CMPP_CEMETERY;
|
||||
if (cemetery && cemetery === '.m') {
|
||||
if (cemetery === '.m') {
|
||||
cemetery = 'HC';
|
||||
}
|
||||
let lot;
|
||||
if (cemetery) {
|
||||
if (cemetery !== '') {
|
||||
const map = getMap({
|
||||
cemetery
|
||||
});
|
||||
const lotName = buildLotName({
|
||||
const lotName = importData.buildLotName({
|
||||
cemetery,
|
||||
block: prepaidRow.CMPP_BLOCK,
|
||||
range1: prepaidRow.CMPP_RANGE1,
|
||||
|
|
@ -618,13 +429,13 @@ function importFromPrepaidCSV() {
|
|||
});
|
||||
lot = getLotByLotName(lotName);
|
||||
if (!lot) {
|
||||
const lotType = getLotType({
|
||||
const lotTypeId = importIds.getLotTypeId({
|
||||
cemetery
|
||||
});
|
||||
const lotId = addLot({
|
||||
lotName: lotName,
|
||||
lotTypeId: lotType.lotTypeId,
|
||||
lotStatusId: reservedLotStatus.lotStatusId,
|
||||
lotName,
|
||||
lotTypeId,
|
||||
lotStatusId: importIds.reservedLotStatusId,
|
||||
mapId: map.mapId,
|
||||
mapKey: lotName.includes(',') ? lotName.split(',')[0] : lotName,
|
||||
lotLatitude: '',
|
||||
|
|
@ -633,15 +444,15 @@ function importFromPrepaidCSV() {
|
|||
lot = getLot(lotId);
|
||||
}
|
||||
}
|
||||
if (lot && lot.lotStatusId === availableLotStatus.lotStatusId) {
|
||||
updateLotStatus(lot.lotId, reservedLotStatus.lotStatusId, user);
|
||||
if (lot && lot.lotStatusId === importIds.availableLotStatusId) {
|
||||
updateLotStatus(lot.lotId, importIds.reservedLotStatusId, user);
|
||||
}
|
||||
const occupancyStartDateString = formatDateString(prepaidRow.CMPP_PURCH_YR, prepaidRow.CMPP_PURCH_MON, prepaidRow.CMPP_PURCH_DAY);
|
||||
let lotOccupancyId;
|
||||
if (lot) {
|
||||
const possibleLotOccupancies = getLotOccupancies({
|
||||
lotId: lot.lotId,
|
||||
occupancyTypeId: preneedOccupancyType.occupancyTypeId,
|
||||
occupancyTypeId: importIds.preneedOccupancyType.occupancyTypeId,
|
||||
occupantName: prepaidRow.CMPP_PREPAID_FOR_NAME,
|
||||
occupancyStartDateString
|
||||
}, {
|
||||
|
|
@ -657,14 +468,14 @@ function importFromPrepaidCSV() {
|
|||
if (!lotOccupancyId) {
|
||||
lotOccupancyId = addLotOccupancy({
|
||||
lotId: lot ? lot.lotId : '',
|
||||
occupancyTypeId: preneedOccupancyType.occupancyTypeId,
|
||||
occupancyTypeId: importIds.preneedOccupancyType.occupancyTypeId,
|
||||
occupancyStartDateString,
|
||||
occupancyEndDateString: ''
|
||||
}, user);
|
||||
}
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId,
|
||||
lotOccupantTypeId: preneedOwnerLotOccupantType.lotOccupantTypeId,
|
||||
lotOccupantTypeId: importIds.preneedOwnerLotOccupantTypeId,
|
||||
occupantName: prepaidRow.CMPP_PREPAID_FOR_NAME,
|
||||
occupantAddress1: prepaidRow.CMPP_ADDRESS,
|
||||
occupantAddress2: '',
|
||||
|
|
@ -677,7 +488,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_ARRANGED_BY_NAME) {
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId,
|
||||
lotOccupantTypeId: purchaserLotOccupantType.lotOccupantTypeId,
|
||||
lotOccupantTypeId: importIds.purchaserLotOccupantTypeId,
|
||||
occupantName: prepaidRow.CMPP_ARRANGED_BY_NAME,
|
||||
occupantAddress1: '',
|
||||
occupantAddress2: '',
|
||||
|
|
@ -691,7 +502,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_FEE_GRAV_SD !== '0.0') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_GRAV_SD'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_GRAV_SD'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_GRAV_SD,
|
||||
taxAmount: prepaidRow.CMPP_GST_GRAV_SD
|
||||
|
|
@ -700,7 +511,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_FEE_GRAV_DD !== '0.0') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_GRAV_DD'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_GRAV_DD'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_GRAV_DD,
|
||||
taxAmount: prepaidRow.CMPP_GST_GRAV_DD
|
||||
|
|
@ -709,7 +520,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_FEE_CHAP_SD !== '0.0') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_CHAP_SD'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_CHAP_SD'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_CHAP_SD,
|
||||
taxAmount: prepaidRow.CMPP_GST_CHAP_SD
|
||||
|
|
@ -718,7 +529,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_FEE_CHAP_DD !== '0.0') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_CHAP_DD'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_CHAP_DD'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_CHAP_DD,
|
||||
taxAmount: prepaidRow.CMPP_GST_CHAP_DD
|
||||
|
|
@ -727,7 +538,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_FEE_ENTOMBMENT !== '0.0') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_ENTOMBMENT'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_ENTOMBMENT'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_ENTOMBMENT,
|
||||
taxAmount: prepaidRow.CMPP_GST_ENTOMBMENT
|
||||
|
|
@ -736,7 +547,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_FEE_CREM !== '0.0') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_CREM'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_CREM'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_CREM,
|
||||
taxAmount: prepaidRow.CMPP_GST_CREM
|
||||
|
|
@ -745,7 +556,7 @@ function importFromPrepaidCSV() {
|
|||
if (prepaidRow.CMPP_FEE_NICHE !== '0.0') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_NICHE'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_NICHE'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_NICHE,
|
||||
taxAmount: prepaidRow.CMPP_GST_NICHE
|
||||
|
|
@ -755,7 +566,7 @@ function importFromPrepaidCSV() {
|
|||
prepaidRow.CMPP_FEE_DISINTERMENT !== '20202.02') {
|
||||
addLotOccupancyFee({
|
||||
lotOccupancyId,
|
||||
feeId: getFeeIdByFeeDescription('CMPP_FEE_DISINTERMENT'),
|
||||
feeId: importIds.getFeeIdByFeeDescription('CMPP_FEE_DISINTERMENT'),
|
||||
quantity: 1,
|
||||
feeAmount: prepaidRow.CMPP_FEE_DISINTERMENT,
|
||||
taxAmount: prepaidRow.CMPP_GST_DISINTERMENT
|
||||
|
|
@ -838,7 +649,7 @@ function importFromWorkOrderCSV() {
|
|||
else {
|
||||
const workOrderId = addWorkOrder({
|
||||
workOrderNumber,
|
||||
workOrderTypeId: 1,
|
||||
workOrderTypeId: importIds.workOrderTypeId,
|
||||
workOrderDescription: (workOrderRow.WO_REMARK1 +
|
||||
' ' +
|
||||
workOrderRow.WO_REMARK2 +
|
||||
|
|
@ -854,7 +665,7 @@ function importFromWorkOrderCSV() {
|
|||
}
|
||||
let lot;
|
||||
if (workOrderRow.WO_CEMETERY !== '00') {
|
||||
const lotName = buildLotName({
|
||||
const lotName = importData.buildLotName({
|
||||
cemetery: workOrderRow.WO_CEMETERY,
|
||||
block: workOrderRow.WO_BLOCK,
|
||||
range1: workOrderRow.WO_RANGE1,
|
||||
|
|
@ -868,22 +679,22 @@ function importFromWorkOrderCSV() {
|
|||
lot = getLotByLotName(lotName);
|
||||
if (!lot) {
|
||||
const map = getMap({ cemetery: workOrderRow.WO_CEMETERY });
|
||||
const lotType = getLotType({
|
||||
const lotTypeId = importIds.getLotTypeId({
|
||||
cemetery: workOrderRow.WO_CEMETERY
|
||||
});
|
||||
const lotId = addLot({
|
||||
mapId: map.mapId,
|
||||
lotName,
|
||||
mapKey: lotName.includes(',') ? lotName.split(',')[0] : lotName,
|
||||
lotStatusId: takenLotStatus.lotStatusId,
|
||||
lotTypeId: lotType.lotTypeId,
|
||||
lotStatusId: importIds.takenLotStatusId,
|
||||
lotTypeId,
|
||||
lotLatitude: '',
|
||||
lotLongitude: ''
|
||||
}, user);
|
||||
lot = getLot(lotId);
|
||||
}
|
||||
else {
|
||||
updateLotStatus(lot.lotId, takenLotStatus.lotStatusId, user);
|
||||
updateLotStatus(lot.lotId, importIds.takenLotStatusId, user);
|
||||
}
|
||||
const workOrderContainsLot = workOrder.workOrderLots.find((possibleLot) => {
|
||||
return (possibleLot.lotId = lot.lotId);
|
||||
|
|
@ -900,15 +711,18 @@ function importFromWorkOrderCSV() {
|
|||
if (workOrderRow.WO_INTERMENT_YR) {
|
||||
occupancyStartDateString = formatDateString(workOrderRow.WO_INTERMENT_YR, workOrderRow.WO_INTERMENT_MON, workOrderRow.WO_INTERMENT_DAY);
|
||||
}
|
||||
const occupancyType = lot
|
||||
? importIds.deceasedOccupancyType
|
||||
: importIds.cremationOccupancyType;
|
||||
const lotOccupancyId = addLotOccupancy({
|
||||
lotId: lot ? lot.lotId : '',
|
||||
occupancyTypeId: deceasedOccupancyType.occupancyTypeId,
|
||||
occupancyTypeId: occupancyType.occupancyTypeId,
|
||||
occupancyStartDateString,
|
||||
occupancyEndDateString: ''
|
||||
}, user);
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId,
|
||||
lotOccupantTypeId: deceasedLotOccupantType.lotOccupantTypeId,
|
||||
lotOccupantTypeId: importIds.deceasedLotOccupantTypeId,
|
||||
occupantName: workOrderRow.WO_DECEASED_NAME,
|
||||
occupantAddress1: workOrderRow.WO_ADDRESS,
|
||||
occupantAddress2: '',
|
||||
|
|
@ -921,8 +735,8 @@ function importFromWorkOrderCSV() {
|
|||
if (workOrderRow.WO_DEATH_YR !== '') {
|
||||
const lotOccupancyFieldValue = formatDateString(workOrderRow.WO_DEATH_YR, workOrderRow.WO_DEATH_MON, workOrderRow.WO_DEATH_DAY);
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
lotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return occupancyTypeField.occupancyTypeField === 'Death Date';
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue
|
||||
|
|
@ -930,8 +744,8 @@ function importFromWorkOrderCSV() {
|
|||
}
|
||||
if (workOrderRow.WO_DEATH_PLACE !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
lotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return occupancyTypeField.occupancyTypeField === 'Death Place';
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: workOrderRow.WO_DEATH_PLACE
|
||||
|
|
@ -939,8 +753,8 @@ function importFromWorkOrderCSV() {
|
|||
}
|
||||
if (workOrderRow.WO_AGE !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
lotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return occupancyTypeField.occupancyTypeField === 'Death Age';
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: workOrderRow.WO_AGE
|
||||
|
|
@ -948,17 +762,17 @@ function importFromWorkOrderCSV() {
|
|||
}
|
||||
if (workOrderRow.WO_PERIOD !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
lotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Death Age Period');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: workOrderRow.WO_PERIOD
|
||||
}, user);
|
||||
}
|
||||
if (workOrderRow.WO_FUNERAL_HOME !== '') {
|
||||
const funeralHomeOccupant = getFuneralHome(workOrderRow.WO_FUNERAL_HOME);
|
||||
const funeralHomeOccupant = importData.getFuneralHomeLotOccupancyOccupantData(workOrderRow.WO_FUNERAL_HOME);
|
||||
addLotOccupancyOccupant({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
lotOccupancyId,
|
||||
lotOccupantTypeId: funeralHomeOccupant.lotOccupantTypeId,
|
||||
occupantName: funeralHomeOccupant.occupantName,
|
||||
occupantAddress1: funeralHomeOccupant.occupantAddress1,
|
||||
|
|
@ -973,34 +787,36 @@ function importFromWorkOrderCSV() {
|
|||
if (workOrderRow.WO_FUNERAL_YR !== '') {
|
||||
const lotOccupancyFieldValue = formatDateString(workOrderRow.WO_FUNERAL_YR, workOrderRow.WO_FUNERAL_MON, workOrderRow.WO_FUNERAL_DAY);
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Funeral Date');
|
||||
lotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return occupancyTypeField.occupancyTypeField === 'Funeral Date';
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue
|
||||
}, user);
|
||||
}
|
||||
if (workOrderRow.WO_CONTAINER_TYPE !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Container Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: workOrderRow.WO_CONTAINER_TYPE
|
||||
}, user);
|
||||
}
|
||||
if (workOrderRow.WO_COMMITTAL_TYPE !== '') {
|
||||
let commitalType = workOrderRow.WO_COMMITTAL_TYPE;
|
||||
if (commitalType === 'GS') {
|
||||
commitalType = 'Graveside';
|
||||
if (occupancyType.occupancyType !== 'Cremation') {
|
||||
if (workOrderRow.WO_CONTAINER_TYPE !== '') {
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Container Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: workOrderRow.WO_CONTAINER_TYPE
|
||||
}, user);
|
||||
}
|
||||
if (workOrderRow.WO_COMMITTAL_TYPE !== '') {
|
||||
let commitalType = workOrderRow.WO_COMMITTAL_TYPE;
|
||||
if (commitalType === 'GS') {
|
||||
commitalType = 'Graveside';
|
||||
}
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId,
|
||||
occupancyTypeFieldId: occupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Committal Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: commitalType
|
||||
}, user);
|
||||
}
|
||||
addOrUpdateLotOccupancyField({
|
||||
lotOccupancyId: lotOccupancyId,
|
||||
occupancyTypeFieldId: deceasedOccupancyType.occupancyTypeFields.find((occupancyTypeField) => {
|
||||
return (occupancyTypeField.occupancyTypeField === 'Committal Type');
|
||||
}).occupancyTypeFieldId,
|
||||
lotOccupancyFieldValue: commitalType
|
||||
}, user);
|
||||
}
|
||||
addWorkOrderLotOccupancy({
|
||||
workOrderId: workOrder.workOrderId,
|
||||
|
|
@ -1008,10 +824,10 @@ function importFromWorkOrderCSV() {
|
|||
}, user);
|
||||
let hasIncompleteMilestones = !workOrderRow.WO_CONFIRMATION_IN;
|
||||
let maxMilestoneCompletionDateString = workOrderOpenDateString;
|
||||
if (acknowledgedWorkOrderMilestoneType) {
|
||||
if (importIds.acknowledgedWorkOrderMilestoneTypeId) {
|
||||
addWorkOrderMilestone({
|
||||
workOrderId: workOrder.workOrderId,
|
||||
workOrderMilestoneTypeId: acknowledgedWorkOrderMilestoneType.workOrderMilestoneTypeId,
|
||||
workOrderMilestoneTypeId: importIds.acknowledgedWorkOrderMilestoneTypeId,
|
||||
workOrderMilestoneDateString: workOrderOpenDateString,
|
||||
workOrderMilestoneDescription: '',
|
||||
workOrderMilestoneCompletionDateString: workOrderRow.WO_CONFIRMATION_IN
|
||||
|
|
@ -1022,10 +838,10 @@ function importFromWorkOrderCSV() {
|
|||
}
|
||||
if (workOrderRow.WO_DEATH_YR) {
|
||||
const workOrderMilestoneDateString = formatDateString(workOrderRow.WO_DEATH_YR, workOrderRow.WO_DEATH_MON, workOrderRow.WO_DEATH_DAY);
|
||||
if (deathWorkOrderMilestoneType) {
|
||||
if (importIds.deathWorkOrderMilestoneTypeId) {
|
||||
addWorkOrderMilestone({
|
||||
workOrderId: workOrder.workOrderId,
|
||||
workOrderMilestoneTypeId: deathWorkOrderMilestoneType.workOrderMilestoneTypeId,
|
||||
workOrderMilestoneTypeId: importIds.deathWorkOrderMilestoneTypeId,
|
||||
workOrderMilestoneDateString,
|
||||
workOrderMilestoneDescription: 'Death Place: ' + workOrderRow.WO_DEATH_PLACE,
|
||||
workOrderMilestoneCompletionDateString: workOrderMilestoneDateString < currentDateString
|
||||
|
|
@ -1050,10 +866,10 @@ function importFromWorkOrderCSV() {
|
|||
funeralHour += 12;
|
||||
}
|
||||
const workOrderMilestoneTimeString = formatTimeString(funeralHour.toString(), workOrderRow.WO_FUNERAL_MIN);
|
||||
if (funeralWorkOrderMilestoneType) {
|
||||
if (importIds.funeralWorkOrderMilestoneTypeId) {
|
||||
addWorkOrderMilestone({
|
||||
workOrderId: workOrder.workOrderId,
|
||||
workOrderMilestoneTypeId: funeralWorkOrderMilestoneType.workOrderMilestoneTypeId,
|
||||
workOrderMilestoneTypeId: importIds.funeralWorkOrderMilestoneTypeId,
|
||||
workOrderMilestoneDateString,
|
||||
workOrderMilestoneTimeString,
|
||||
workOrderMilestoneDescription: 'Funeral Home: ' + workOrderRow.WO_FUNERAL_HOME,
|
||||
|
|
@ -1073,10 +889,10 @@ function importFromWorkOrderCSV() {
|
|||
}
|
||||
}
|
||||
if (workOrderRow.WO_CREMATION === 'Y' &&
|
||||
cremationWorkOrderMilestoneType) {
|
||||
importIds.cremationWorkOrderMilestoneTypeId) {
|
||||
addWorkOrderMilestone({
|
||||
workOrderId: workOrder.workOrderId,
|
||||
workOrderMilestoneTypeId: cremationWorkOrderMilestoneType.workOrderMilestoneTypeId,
|
||||
workOrderMilestoneTypeId: importIds.cremationWorkOrderMilestoneTypeId,
|
||||
workOrderMilestoneDateString: maxMilestoneCompletionDateString,
|
||||
workOrderMilestoneDescription: '',
|
||||
workOrderMilestoneCompletionDateString: maxMilestoneCompletionDateString < currentDateString
|
||||
|
|
@ -1089,10 +905,10 @@ function importFromWorkOrderCSV() {
|
|||
}
|
||||
if (workOrderRow.WO_INTERMENT_YR) {
|
||||
const workOrderMilestoneDateString = formatDateString(workOrderRow.WO_INTERMENT_YR, workOrderRow.WO_INTERMENT_MON, workOrderRow.WO_INTERMENT_DAY);
|
||||
if (intermentWorkOrderMilestoneType) {
|
||||
if (importIds.intermentWorkOrderMilestoneTypeId) {
|
||||
addWorkOrderMilestone({
|
||||
workOrderId: workOrder.workOrderId,
|
||||
workOrderMilestoneTypeId: intermentWorkOrderMilestoneType.workOrderMilestoneTypeId,
|
||||
workOrderMilestoneTypeId: importIds.intermentWorkOrderMilestoneTypeId,
|
||||
workOrderMilestoneDateString,
|
||||
workOrderMilestoneDescription: 'Depth: ' + workOrderRow.WO_DEPTH,
|
||||
workOrderMilestoneCompletionDateString: workOrderMilestoneDateString < currentDateString
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,13 @@
|
|||
import type * as recordTypes from '../types/recordTypes';
|
||||
export declare function buildLotName(lotNamePieces: {
|
||||
cemetery: string;
|
||||
block: string;
|
||||
range1: string;
|
||||
range2: string;
|
||||
lot1: string;
|
||||
lot2: string;
|
||||
grave1: string;
|
||||
grave2: string;
|
||||
interment: string;
|
||||
}): string;
|
||||
export declare function getFuneralHomeLotOccupancyOccupantData(funeralHomeKey: string): recordTypes.LotOccupancyOccupant;
|
||||
|
|
@ -0,0 +1,119 @@
|
|||
import * as importIds from './legacy.importFromCsv.ids.js';
|
||||
export function buildLotName(lotNamePieces) {
|
||||
return (lotNamePieces.cemetery +
|
||||
'-' +
|
||||
(lotNamePieces.block === '' ? '' : 'B' + lotNamePieces.block + '-') +
|
||||
(lotNamePieces.range1 === '0' && lotNamePieces.range2 === ''
|
||||
? ''
|
||||
: 'R' +
|
||||
(lotNamePieces.range1 === '0' ? '' : lotNamePieces.range1) +
|
||||
lotNamePieces.range2 +
|
||||
'-') +
|
||||
(lotNamePieces.lot1 === '0' && lotNamePieces.lot2 === ''
|
||||
? ''
|
||||
: 'L' + lotNamePieces.lot1 + lotNamePieces.lot2 + '-') +
|
||||
('G' + lotNamePieces.grave1 + lotNamePieces.grave2) +
|
||||
', ' +
|
||||
('Interment ' + lotNamePieces.interment));
|
||||
}
|
||||
export function getFuneralHomeLotOccupancyOccupantData(funeralHomeKey) {
|
||||
switch (funeralHomeKey) {
|
||||
case 'AR': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Arthur Funeral Home',
|
||||
occupantAddress1: '492 Wellington Street East',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 2L9',
|
||||
occupantPhoneNumber: '705-759-2522',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'BG': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Beggs Funeral Home',
|
||||
occupantAddress1: '175 Main Street',
|
||||
occupantAddress2: 'P.O. Box 280',
|
||||
occupantCity: 'Thessalon',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P0R 1L0',
|
||||
occupantPhoneNumber: '705-842-2520',
|
||||
occupantEmailAddress: 'bfh@beggsfh.ca'
|
||||
};
|
||||
}
|
||||
case 'BK': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Barton and Kiteley',
|
||||
occupantAddress1: '',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: '',
|
||||
occupantPhoneNumber: '',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'DA': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Damignani Burial, Cremation and Transfer Service',
|
||||
occupantAddress1: '215 St. James Street',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 1P7',
|
||||
occupantPhoneNumber: '705-759-8456',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'GL': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Gilmartin P.M. Funeral Home',
|
||||
occupantAddress1: '140 Churchill Avenue',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Wawa',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P0S 1K0',
|
||||
occupantPhoneNumber: '705-856-7340',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'NO': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Northwood Funeral Home',
|
||||
occupantAddress1: '942 Great Northern Road',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6B 0B6',
|
||||
occupantPhoneNumber: '705-945-7758',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
case 'OS': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: "O'Sullivan Funeral Home",
|
||||
occupantAddress1: '215 St. James Street',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 1P7',
|
||||
occupantPhoneNumber: '705-759-8456',
|
||||
occupantEmailAddress: ''
|
||||
};
|
||||
}
|
||||
}
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: funeralHomeKey,
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON'
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,138 @@
|
|||
import * as importIds from './legacy.importFromCsv.ids.js'
|
||||
|
||||
import type * as recordTypes from '../types/recordTypes'
|
||||
|
||||
export function buildLotName(lotNamePieces: {
|
||||
cemetery: string
|
||||
block: string
|
||||
range1: string
|
||||
range2: string
|
||||
lot1: string
|
||||
lot2: string
|
||||
grave1: string
|
||||
grave2: string
|
||||
interment: string
|
||||
}): string {
|
||||
return (
|
||||
lotNamePieces.cemetery +
|
||||
'-' +
|
||||
(lotNamePieces.block === '' ? '' : 'B' + lotNamePieces.block + '-') +
|
||||
(lotNamePieces.range1 === '0' && lotNamePieces.range2 === ''
|
||||
? ''
|
||||
: 'R' +
|
||||
(lotNamePieces.range1 === '0' ? '' : lotNamePieces.range1) +
|
||||
lotNamePieces.range2 +
|
||||
'-') +
|
||||
(lotNamePieces.lot1 === '0' && lotNamePieces.lot2 === ''
|
||||
? ''
|
||||
: 'L' + lotNamePieces.lot1 + lotNamePieces.lot2 + '-') +
|
||||
('G' + lotNamePieces.grave1 + lotNamePieces.grave2) +
|
||||
', ' +
|
||||
('Interment ' + lotNamePieces.interment)
|
||||
)
|
||||
}
|
||||
|
||||
export function getFuneralHomeLotOccupancyOccupantData(
|
||||
funeralHomeKey: string
|
||||
): recordTypes.LotOccupancyOccupant {
|
||||
switch (funeralHomeKey) {
|
||||
case 'AR': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Arthur Funeral Home',
|
||||
occupantAddress1: '492 Wellington Street East',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 2L9',
|
||||
occupantPhoneNumber: '705-759-2522',
|
||||
occupantEmailAddress: ''
|
||||
}
|
||||
}
|
||||
case 'BG': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Beggs Funeral Home',
|
||||
occupantAddress1: '175 Main Street',
|
||||
occupantAddress2: 'P.O. Box 280',
|
||||
occupantCity: 'Thessalon',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P0R 1L0',
|
||||
occupantPhoneNumber: '705-842-2520',
|
||||
occupantEmailAddress: 'bfh@beggsfh.ca'
|
||||
}
|
||||
}
|
||||
case 'BK': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Barton and Kiteley',
|
||||
occupantAddress1: '',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: '',
|
||||
occupantPhoneNumber: '',
|
||||
occupantEmailAddress: ''
|
||||
}
|
||||
}
|
||||
case 'DA': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Damignani Burial, Cremation and Transfer Service',
|
||||
occupantAddress1: '215 St. James Street',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 1P7',
|
||||
occupantPhoneNumber: '705-759-8456',
|
||||
occupantEmailAddress: ''
|
||||
}
|
||||
}
|
||||
case 'GL': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Gilmartin P.M. Funeral Home',
|
||||
occupantAddress1: '140 Churchill Avenue',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Wawa',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P0S 1K0',
|
||||
occupantPhoneNumber: '705-856-7340',
|
||||
occupantEmailAddress: ''
|
||||
}
|
||||
}
|
||||
case 'NO': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: 'Northwood Funeral Home',
|
||||
occupantAddress1: '942 Great Northern Road',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6B 0B6',
|
||||
occupantPhoneNumber: '705-945-7758',
|
||||
occupantEmailAddress: ''
|
||||
}
|
||||
}
|
||||
case 'OS': {
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: "O'Sullivan Funeral Home",
|
||||
occupantAddress1: '215 St. James Street',
|
||||
occupantAddress2: '',
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON',
|
||||
occupantPostalCode: 'P6A 1P7',
|
||||
occupantPhoneNumber: '705-759-8456',
|
||||
occupantEmailAddress: ''
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
lotOccupantTypeId: importIds.funeralDirectorLotOccupantTypeId,
|
||||
occupantName: funeralHomeKey,
|
||||
occupantCity: 'Sault Ste. Marie',
|
||||
occupantProvince: 'ON'
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
export declare function getFeeIdByFeeDescription(feeDescription: string): number;
|
||||
export declare const preneedOwnerLotOccupantTypeId: number;
|
||||
export declare const funeralDirectorLotOccupantTypeId: number;
|
||||
export declare const deceasedLotOccupantTypeId: number;
|
||||
export declare const purchaserLotOccupantTypeId: number;
|
||||
export declare const availableLotStatusId: number;
|
||||
export declare const reservedLotStatusId: number;
|
||||
export declare const takenLotStatusId: number;
|
||||
export declare function getLotTypeId(dataRow: {
|
||||
cemetery: string;
|
||||
}): number;
|
||||
export declare const preneedOccupancyType: import("../types/recordTypes.js").OccupancyType;
|
||||
export declare const deceasedOccupancyType: import("../types/recordTypes.js").OccupancyType;
|
||||
export declare const cremationOccupancyType: import("../types/recordTypes.js").OccupancyType;
|
||||
export declare const acknowledgedWorkOrderMilestoneTypeId: number | undefined;
|
||||
export declare const deathWorkOrderMilestoneTypeId: number | undefined;
|
||||
export declare const funeralWorkOrderMilestoneTypeId: number | undefined;
|
||||
export declare const cremationWorkOrderMilestoneTypeId: number | undefined;
|
||||
export declare const intermentWorkOrderMilestoneTypeId: number | undefined;
|
||||
export declare const workOrderTypeId = 1;
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
import sqlite from 'better-sqlite3';
|
||||
import { lotOccupancyDB as databasePath } from '../data/databasePaths.js';
|
||||
import * as cacheFunctions from '../helpers/functions.cache.js';
|
||||
const feeCache = new Map();
|
||||
export function getFeeIdByFeeDescription(feeDescription) {
|
||||
if (feeCache.keys.length === 0) {
|
||||
const database = sqlite(databasePath, {
|
||||
readonly: true
|
||||
});
|
||||
const records = database
|
||||
.prepare("select feeId, feeDescription from Fees where feeDescription like 'CMPP_FEE_%'")
|
||||
.all();
|
||||
for (const record of records) {
|
||||
feeCache.set(record.feeDescription, record.feeId);
|
||||
}
|
||||
database.close();
|
||||
}
|
||||
return feeCache.get(feeDescription);
|
||||
}
|
||||
export const preneedOwnerLotOccupantTypeId = cacheFunctions.getLotOccupantTypeByLotOccupantType('Preneed Owner').lotOccupantTypeId;
|
||||
export const funeralDirectorLotOccupantTypeId = cacheFunctions.getLotOccupantTypeByLotOccupantType('Funeral Director').lotOccupantTypeId;
|
||||
export const deceasedLotOccupantTypeId = cacheFunctions.getLotOccupantTypeByLotOccupantType('Deceased').lotOccupantTypeId;
|
||||
export const purchaserLotOccupantTypeId = cacheFunctions.getLotOccupantTypeByLotOccupantType('Purchaser').lotOccupantTypeId;
|
||||
export const availableLotStatusId = cacheFunctions.getLotStatusByLotStatus('Available').lotStatusId;
|
||||
export const reservedLotStatusId = cacheFunctions.getLotStatusByLotStatus('Reserved').lotStatusId;
|
||||
export const takenLotStatusId = cacheFunctions.getLotStatusByLotStatus('Taken').lotStatusId;
|
||||
const casketLotTypeId = cacheFunctions.getLotTypesByLotType('Casket Grave').lotTypeId;
|
||||
const columbariumLotTypeId = cacheFunctions.getLotTypesByLotType('Columbarium').lotTypeId;
|
||||
const crematoriumLotTypeId = cacheFunctions.getLotTypesByLotType('Crematorium').lotTypeId;
|
||||
const mausoleumLotTypeId = cacheFunctions.getLotTypesByLotType('Mausoleum').lotTypeId;
|
||||
const nicheWallLotTypeId = cacheFunctions.getLotTypesByLotType('Niche Wall').lotTypeId;
|
||||
const urnGardenLotTypeId = cacheFunctions.getLotTypesByLotType('Urn Garden').lotTypeId;
|
||||
export function getLotTypeId(dataRow) {
|
||||
switch (dataRow.cemetery) {
|
||||
case '00': {
|
||||
return crematoriumLotTypeId;
|
||||
}
|
||||
case 'GC':
|
||||
case 'HC': {
|
||||
return columbariumLotTypeId;
|
||||
}
|
||||
case 'MA': {
|
||||
return mausoleumLotTypeId;
|
||||
}
|
||||
case 'MN':
|
||||
case 'NW': {
|
||||
return nicheWallLotTypeId;
|
||||
}
|
||||
case 'UG': {
|
||||
return urnGardenLotTypeId;
|
||||
}
|
||||
}
|
||||
return casketLotTypeId;
|
||||
}
|
||||
export const preneedOccupancyType = cacheFunctions.getOccupancyTypeByOccupancyType('Preneed');
|
||||
export const deceasedOccupancyType = cacheFunctions.getOccupancyTypeByOccupancyType('Interment');
|
||||
export const cremationOccupancyType = cacheFunctions.getOccupancyTypeByOccupancyType('Cremation');
|
||||
export const acknowledgedWorkOrderMilestoneTypeId = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Acknowledged')?.workOrderMilestoneTypeId;
|
||||
export const deathWorkOrderMilestoneTypeId = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Death')?.workOrderMilestoneTypeId;
|
||||
export const funeralWorkOrderMilestoneTypeId = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Funeral')?.workOrderMilestoneTypeId;
|
||||
export const cremationWorkOrderMilestoneTypeId = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Cremation')?.workOrderMilestoneTypeId;
|
||||
export const intermentWorkOrderMilestoneTypeId = cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType('Interment')?.workOrderMilestoneTypeId;
|
||||
export const workOrderTypeId = 1;
|
||||
|
|
@ -0,0 +1,159 @@
|
|||
import sqlite from 'better-sqlite3'
|
||||
import { lotOccupancyDB as databasePath } from '../data/databasePaths.js'
|
||||
|
||||
import * as cacheFunctions from '../helpers/functions.cache.js'
|
||||
|
||||
/*
|
||||
* Fee IDs
|
||||
*/
|
||||
|
||||
const feeCache: Map<string, number> = new Map()
|
||||
|
||||
export function getFeeIdByFeeDescription(feeDescription: string): number {
|
||||
if (feeCache.keys.length === 0) {
|
||||
const database = sqlite(databasePath, {
|
||||
readonly: true
|
||||
})
|
||||
|
||||
const records: Array<{
|
||||
feeId: number
|
||||
feeDescription: string
|
||||
}> = database
|
||||
.prepare(
|
||||
"select feeId, feeDescription from Fees where feeDescription like 'CMPP_FEE_%'"
|
||||
)
|
||||
.all()
|
||||
|
||||
for (const record of records) {
|
||||
feeCache.set(record.feeDescription, record.feeId)
|
||||
}
|
||||
|
||||
database.close()
|
||||
}
|
||||
|
||||
return feeCache.get(feeDescription)!
|
||||
}
|
||||
|
||||
/*
|
||||
* Lot Occupant Type IDs
|
||||
*/
|
||||
|
||||
export const preneedOwnerLotOccupantTypeId =
|
||||
cacheFunctions.getLotOccupantTypeByLotOccupantType(
|
||||
'Preneed Owner'
|
||||
)!.lotOccupantTypeId
|
||||
|
||||
export const funeralDirectorLotOccupantTypeId =
|
||||
cacheFunctions.getLotOccupantTypeByLotOccupantType(
|
||||
'Funeral Director'
|
||||
)!.lotOccupantTypeId
|
||||
|
||||
export const deceasedLotOccupantTypeId =
|
||||
cacheFunctions.getLotOccupantTypeByLotOccupantType(
|
||||
'Deceased'
|
||||
)!.lotOccupantTypeId
|
||||
|
||||
export const purchaserLotOccupantTypeId =
|
||||
cacheFunctions.getLotOccupantTypeByLotOccupantType(
|
||||
'Purchaser'
|
||||
)!.lotOccupantTypeId
|
||||
|
||||
/*
|
||||
* Lot Status IDs
|
||||
*/
|
||||
|
||||
export const availableLotStatusId =
|
||||
cacheFunctions.getLotStatusByLotStatus('Available')!.lotStatusId
|
||||
export const reservedLotStatusId =
|
||||
cacheFunctions.getLotStatusByLotStatus('Reserved')!.lotStatusId
|
||||
export const takenLotStatusId =
|
||||
cacheFunctions.getLotStatusByLotStatus('Taken')!.lotStatusId
|
||||
|
||||
/*
|
||||
* Lot Type IDs
|
||||
*/
|
||||
|
||||
const casketLotTypeId =
|
||||
cacheFunctions.getLotTypesByLotType('Casket Grave')!.lotTypeId
|
||||
const columbariumLotTypeId =
|
||||
cacheFunctions.getLotTypesByLotType('Columbarium')!.lotTypeId
|
||||
const crematoriumLotTypeId =
|
||||
cacheFunctions.getLotTypesByLotType('Crematorium')!.lotTypeId
|
||||
const mausoleumLotTypeId =
|
||||
cacheFunctions.getLotTypesByLotType('Mausoleum')!.lotTypeId
|
||||
const nicheWallLotTypeId =
|
||||
cacheFunctions.getLotTypesByLotType('Niche Wall')!.lotTypeId
|
||||
const urnGardenLotTypeId =
|
||||
cacheFunctions.getLotTypesByLotType('Urn Garden')!.lotTypeId
|
||||
|
||||
export function getLotTypeId(dataRow: { cemetery: string }): number {
|
||||
switch (dataRow.cemetery) {
|
||||
case '00': {
|
||||
return crematoriumLotTypeId
|
||||
}
|
||||
case 'GC':
|
||||
case 'HC': {
|
||||
return columbariumLotTypeId
|
||||
}
|
||||
case 'MA': {
|
||||
return mausoleumLotTypeId
|
||||
}
|
||||
case 'MN':
|
||||
case 'NW': {
|
||||
return nicheWallLotTypeId
|
||||
}
|
||||
case 'UG': {
|
||||
return urnGardenLotTypeId
|
||||
}
|
||||
}
|
||||
|
||||
return casketLotTypeId
|
||||
}
|
||||
|
||||
/*
|
||||
* Occupancy Type IDs
|
||||
*/
|
||||
|
||||
export const preneedOccupancyType =
|
||||
cacheFunctions.getOccupancyTypeByOccupancyType('Preneed')!
|
||||
|
||||
export const deceasedOccupancyType =
|
||||
cacheFunctions.getOccupancyTypeByOccupancyType('Interment')!
|
||||
|
||||
export const cremationOccupancyType =
|
||||
cacheFunctions.getOccupancyTypeByOccupancyType('Cremation')!
|
||||
|
||||
/*
|
||||
* Work Order Milestone Type IDs
|
||||
*/
|
||||
|
||||
export const acknowledgedWorkOrderMilestoneTypeId =
|
||||
cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType(
|
||||
'Acknowledged'
|
||||
)?.workOrderMilestoneTypeId
|
||||
|
||||
export const deathWorkOrderMilestoneTypeId =
|
||||
cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType(
|
||||
'Death'
|
||||
)?.workOrderMilestoneTypeId
|
||||
|
||||
export const funeralWorkOrderMilestoneTypeId =
|
||||
cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType(
|
||||
'Funeral'
|
||||
)?.workOrderMilestoneTypeId
|
||||
|
||||
export const cremationWorkOrderMilestoneTypeId =
|
||||
cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType(
|
||||
'Cremation'
|
||||
)?.workOrderMilestoneTypeId
|
||||
|
||||
export const intermentWorkOrderMilestoneTypeId =
|
||||
cacheFunctions.getWorkOrderMilestoneTypeByWorkOrderMilestoneType(
|
||||
'Interment'
|
||||
)?.workOrderMilestoneTypeId
|
||||
|
||||
/*
|
||||
* Work Order Type IDs
|
||||
*/
|
||||
|
||||
export const workOrderTypeId = 1
|
||||
Loading…
Reference in New Issue