remove better-sqlite-pool
parent
38c1288856
commit
4f6fc87e05
|
|
@ -21,4 +21,4 @@ export interface AddBurialSiteForm {
|
||||||
* @returns The new burial site's id.
|
* @returns The new burial site's id.
|
||||||
* @throws If an active burial site with the same name already exists.
|
* @throws If an active burial site with the same name already exists.
|
||||||
*/
|
*/
|
||||||
export default function addBurialSite(burialSiteForm: AddBurialSiteForm, user: User): Promise<number>;
|
export default function addBurialSite(burialSiteForm: AddBurialSiteForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
import { buildBurialSiteName } from '../helpers/burialSites.helpers.js';
|
import { buildBurialSiteName } from '../helpers/burialSites.helpers.js';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import addOrUpdateBurialSiteField from './addOrUpdateBurialSiteField.js';
|
import addOrUpdateBurialSiteField from './addOrUpdateBurialSiteField.js';
|
||||||
import getCemetery from './getCemetery.js';
|
import getCemetery from './getCemetery.js';
|
||||||
import { acquireConnection } from './pool.js';
|
|
||||||
/**
|
/**
|
||||||
* Creates a new burial site.
|
* Creates a new burial site.
|
||||||
* @param burialSiteForm - The new burial site's information
|
* @param burialSiteForm - The new burial site's information
|
||||||
|
|
@ -9,12 +10,12 @@ import { acquireConnection } from './pool.js';
|
||||||
* @returns The new burial site's id.
|
* @returns The new burial site's id.
|
||||||
* @throws If an active burial site with the same name already exists.
|
* @throws If an active burial site with the same name already exists.
|
||||||
*/
|
*/
|
||||||
export default async function addBurialSite(burialSiteForm, user) {
|
export default function addBurialSite(burialSiteForm, user) {
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const cemetery = burialSiteForm.cemeteryId === ''
|
const cemetery = burialSiteForm.cemeteryId === ''
|
||||||
? undefined
|
? undefined
|
||||||
: await getCemetery(burialSiteForm.cemeteryId, database);
|
: getCemetery(burialSiteForm.cemeteryId, database);
|
||||||
const burialSiteName = buildBurialSiteName(cemetery?.cemeteryKey, burialSiteForm);
|
const burialSiteName = buildBurialSiteName(cemetery?.cemeteryKey, burialSiteForm);
|
||||||
// Ensure no active burial sites share the same name
|
// Ensure no active burial sites share the same name
|
||||||
const existingBurialSite = database
|
const existingBurialSite = database
|
||||||
|
|
@ -25,7 +26,7 @@ export default async function addBurialSite(burialSiteForm, user) {
|
||||||
.pluck()
|
.pluck()
|
||||||
.get(burialSiteName);
|
.get(burialSiteName);
|
||||||
if (existingBurialSite !== undefined) {
|
if (existingBurialSite !== undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
throw new Error('An active burial site with that name already exists.');
|
throw new Error('An active burial site with that name already exists.');
|
||||||
}
|
}
|
||||||
const result = database
|
const result = database
|
||||||
|
|
@ -57,13 +58,13 @@ export default async function addBurialSite(burialSiteForm, user) {
|
||||||
for (const burialSiteTypeFieldId of burialSiteTypeFieldIds) {
|
for (const burialSiteTypeFieldId of burialSiteTypeFieldIds) {
|
||||||
const fieldValue = burialSiteForm[`burialSiteFieldValue_${burialSiteTypeFieldId}`];
|
const fieldValue = burialSiteForm[`burialSiteFieldValue_${burialSiteTypeFieldId}`];
|
||||||
if ((fieldValue ?? '') !== '') {
|
if ((fieldValue ?? '') !== '') {
|
||||||
await addOrUpdateBurialSiteField({
|
addOrUpdateBurialSiteField({
|
||||||
burialSiteId,
|
burialSiteId,
|
||||||
burialSiteTypeFieldId,
|
burialSiteTypeFieldId,
|
||||||
fieldValue: fieldValue ?? ''
|
fieldValue: fieldValue ?? ''
|
||||||
}, user, database);
|
}, user, database);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
database.release();
|
database.close();
|
||||||
return burialSiteId;
|
return burialSiteId;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { buildBurialSiteName } from '../helpers/burialSites.helpers.js'
|
import { buildBurialSiteName } from '../helpers/burialSites.helpers.js'
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
import addOrUpdateBurialSiteField from './addOrUpdateBurialSiteField.js'
|
import addOrUpdateBurialSiteField from './addOrUpdateBurialSiteField.js'
|
||||||
import getCemetery from './getCemetery.js'
|
import getCemetery from './getCemetery.js'
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
export interface AddBurialSiteForm {
|
export interface AddBurialSiteForm {
|
||||||
burialSiteNameSegment1?: string
|
burialSiteNameSegment1?: string
|
||||||
|
|
@ -33,18 +35,18 @@ export interface AddBurialSiteForm {
|
||||||
* @returns The new burial site's id.
|
* @returns The new burial site's id.
|
||||||
* @throws If an active burial site with the same name already exists.
|
* @throws If an active burial site with the same name already exists.
|
||||||
*/
|
*/
|
||||||
export default async function addBurialSite(
|
export default function addBurialSite(
|
||||||
burialSiteForm: AddBurialSiteForm,
|
burialSiteForm: AddBurialSiteForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
const cemetery =
|
const cemetery =
|
||||||
burialSiteForm.cemeteryId === ''
|
burialSiteForm.cemeteryId === ''
|
||||||
? undefined
|
? undefined
|
||||||
: await getCemetery(burialSiteForm.cemeteryId, database)
|
: getCemetery(burialSiteForm.cemeteryId, database)
|
||||||
|
|
||||||
const burialSiteName = buildBurialSiteName(
|
const burialSiteName = buildBurialSiteName(
|
||||||
cemetery?.cemeteryKey,
|
cemetery?.cemeteryKey,
|
||||||
|
|
@ -64,7 +66,7 @@ export default async function addBurialSite(
|
||||||
.get(burialSiteName) as number | undefined
|
.get(burialSiteName) as number | undefined
|
||||||
|
|
||||||
if (existingBurialSite !== undefined) {
|
if (existingBurialSite !== undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
throw new Error('An active burial site with that name already exists.')
|
throw new Error('An active burial site with that name already exists.')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -125,7 +127,7 @@ export default async function addBurialSite(
|
||||||
] as string | undefined
|
] as string | undefined
|
||||||
|
|
||||||
if ((fieldValue ?? '') !== '') {
|
if ((fieldValue ?? '') !== '') {
|
||||||
await addOrUpdateBurialSiteField(
|
addOrUpdateBurialSiteField(
|
||||||
{
|
{
|
||||||
burialSiteId,
|
burialSiteId,
|
||||||
burialSiteTypeFieldId,
|
burialSiteTypeFieldId,
|
||||||
|
|
@ -137,7 +139,7 @@ export default async function addBurialSite(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return burialSiteId
|
return burialSiteId
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,4 +2,4 @@ export interface AddBurialSiteCommentForm {
|
||||||
burialSiteId: string;
|
burialSiteId: string;
|
||||||
comment: string;
|
comment: string;
|
||||||
}
|
}
|
||||||
export default function addBurialSiteComment(commentForm: AddBurialSiteCommentForm, user: User): Promise<number>;
|
export default function addBurialSiteComment(commentForm: AddBurialSiteCommentForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime';
|
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addBurialSiteComment(commentForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addBurialSiteComment(commentForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNow = new Date();
|
const rightNow = new Date();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into BurialSiteComments (
|
.prepare(`insert into BurialSiteComments (
|
||||||
|
|
@ -11,6 +12,6 @@ export default async function addBurialSiteComment(commentForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(commentForm.burialSiteId, dateToInteger(rightNow), dateToTimeInteger(rightNow), commentForm.comment, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
.run(commentForm.burialSiteId, dateToInteger(rightNow), dateToTimeInteger(rightNow), commentForm.comment, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,18 @@
|
||||||
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime'
|
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddBurialSiteCommentForm {
|
export interface AddBurialSiteCommentForm {
|
||||||
burialSiteId: string
|
burialSiteId: string
|
||||||
comment: string
|
comment: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addBurialSiteComment(
|
export default function addBurialSiteComment(
|
||||||
commentForm: AddBurialSiteCommentForm,
|
commentForm: AddBurialSiteCommentForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNow = new Date()
|
const rightNow = new Date()
|
||||||
|
|
||||||
|
|
@ -35,7 +36,7 @@ export default async function addBurialSiteComment(
|
||||||
rightNow.getTime()
|
rightNow.getTime()
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,9 @@ export interface AddBurialSiteTypeFieldForm {
|
||||||
fieldType?: string;
|
fieldType?: string;
|
||||||
fieldValues?: string;
|
fieldValues?: string;
|
||||||
isRequired?: string;
|
isRequired?: string;
|
||||||
pattern?: string;
|
|
||||||
minLength?: number | string;
|
|
||||||
maxLength?: number | string;
|
maxLength?: number | string;
|
||||||
|
minLength?: number | string;
|
||||||
|
pattern?: string;
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addBurialSiteTypeField(addForm: AddBurialSiteTypeFieldForm, user: User): Promise<number>;
|
export default function addBurialSiteTypeField(addForm: AddBurialSiteTypeFieldForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
||||||
import { acquireConnection } from './pool.js';
|
export default function addBurialSiteTypeField(addForm, user) {
|
||||||
export default async function addBurialSiteTypeField(addForm, user) {
|
const database = sqlite(sunriseDB);
|
||||||
const database = await acquireConnection();
|
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into BurialSiteTypeFields (
|
.prepare(`insert into BurialSiteTypeFields (
|
||||||
|
|
@ -14,7 +15,7 @@ export default async function addBurialSiteTypeField(addForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.burialSiteTypeId, addForm.burialSiteTypeField, addForm.fieldType ?? 'text', addForm.fieldValues ?? '', addForm.isRequired === '' ? 0 : 1, addForm.pattern ?? '', addForm.minLength ?? 0, addForm.maxLength ?? 100, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.burialSiteTypeId, addForm.burialSiteTypeField, addForm.fieldType ?? 'text', addForm.fieldValues ?? '', addForm.isRequired === '' ? 0 : 1, addForm.pattern ?? '', addForm.minLength ?? 0, addForm.maxLength ?? 100, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
clearCacheByTableName('BurialSiteTypeFields');
|
clearCacheByTableName('BurialSiteTypeFields');
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,24 +1,29 @@
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
||||||
|
|
||||||
export interface AddBurialSiteTypeFieldForm {
|
export interface AddBurialSiteTypeFieldForm {
|
||||||
burialSiteTypeId: number | string
|
burialSiteTypeId: number | string
|
||||||
|
|
||||||
burialSiteTypeField: string
|
burialSiteTypeField: string
|
||||||
|
|
||||||
fieldType?: string
|
fieldType?: string
|
||||||
fieldValues?: string
|
fieldValues?: string
|
||||||
|
|
||||||
isRequired?: string
|
isRequired?: string
|
||||||
pattern?: string
|
|
||||||
minLength?: number | string
|
|
||||||
maxLength?: number | string
|
maxLength?: number | string
|
||||||
|
minLength?: number | string
|
||||||
|
pattern?: string
|
||||||
|
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addBurialSiteTypeField(
|
export default function addBurialSiteTypeField(
|
||||||
addForm: AddBurialSiteTypeFieldForm,
|
addForm: AddBurialSiteTypeFieldForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -50,7 +55,7 @@ export default async function addBurialSiteTypeField(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
clearCacheByTableName('BurialSiteTypeFields')
|
clearCacheByTableName('BurialSiteTypeFields')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,4 +13,4 @@ export interface AddCemeteryForm {
|
||||||
cemeteryProvince: string;
|
cemeteryProvince: string;
|
||||||
cemeteryPhoneNumber: string;
|
cemeteryPhoneNumber: string;
|
||||||
}
|
}
|
||||||
export default function addCemetery(addForm: AddCemeteryForm, user: User): Promise<number>;
|
export default function addCemetery(addForm: AddCemeteryForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addCemetery(addForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addCemetery(addForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into Cemeteries (
|
.prepare(`insert into Cemeteries (
|
||||||
|
|
@ -14,6 +15,6 @@ export default async function addCemetery(addForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.cemeteryName, addForm.cemeteryKey, addForm.cemeteryDescription, addForm.cemeterySvg, addForm.cemeteryLatitude === '' ? undefined : addForm.cemeteryLatitude, addForm.cemeteryLongitude === '' ? undefined : addForm.cemeteryLongitude, addForm.cemeteryAddress1, addForm.cemeteryAddress2, addForm.cemeteryCity, addForm.cemeteryProvince, addForm.cemeteryPostalCode, addForm.cemeteryPhoneNumber, addForm.parentCemeteryId === '' ? undefined : addForm.parentCemeteryId, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.cemeteryName, addForm.cemeteryKey, addForm.cemeteryDescription, addForm.cemeterySvg, addForm.cemeteryLatitude === '' ? undefined : addForm.cemeteryLatitude, addForm.cemeteryLongitude === '' ? undefined : addForm.cemeteryLongitude, addForm.cemeteryAddress1, addForm.cemeteryAddress2, addForm.cemeteryCity, addForm.cemeteryProvince, addForm.cemeteryPostalCode, addForm.cemeteryPhoneNumber, addForm.parentCemeteryId === '' ? undefined : addForm.parentCemeteryId, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
import { acquireConnection } from './pool.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddCemeteryForm {
|
export interface AddCemeteryForm {
|
||||||
cemeteryDescription: string
|
cemeteryDescription: string
|
||||||
|
|
@ -19,11 +21,11 @@ export interface AddCemeteryForm {
|
||||||
cemeteryPhoneNumber: string
|
cemeteryPhoneNumber: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addCemetery(
|
export default function addCemetery(
|
||||||
addForm: AddCemeteryForm,
|
addForm: AddCemeteryForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -60,7 +62,7 @@ export default async function addCemetery(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,4 +3,4 @@ export interface AddForm {
|
||||||
committalTypeKey?: string;
|
committalTypeKey?: string;
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addCommittalType(addForm: AddForm, user: User): Promise<number>;
|
export default function addCommittalType(addForm: AddForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
||||||
import { acquireConnection } from './pool.js';
|
export default function addCommittalType(addForm, user) {
|
||||||
export default async function addCommittalType(addForm, user) {
|
const database = sqlite(sunriseDB);
|
||||||
const database = await acquireConnection();
|
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into CommittalTypes (
|
.prepare(`insert into CommittalTypes (
|
||||||
|
|
@ -10,7 +11,7 @@ export default async function addCommittalType(addForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.committalType, addForm.committalTypeKey ?? '', addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.committalType, addForm.committalTypeKey ?? '', addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
clearCacheByTableName('CommittalTypes');
|
clearCacheByTableName('CommittalTypes');
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
||||||
|
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
committalType: string
|
committalType: string
|
||||||
|
|
@ -8,11 +9,8 @@ export interface AddForm {
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addCommittalType(
|
export default function addCommittalType(addForm: AddForm, user: User): number {
|
||||||
addForm: AddForm,
|
const database = sqlite(sunriseDB)
|
||||||
user: User
|
|
||||||
): Promise<number> {
|
|
||||||
const database = await acquireConnection()
|
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -34,7 +32,7 @@ export default async function addCommittalType(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
clearCacheByTableName('CommittalTypes')
|
clearCacheByTableName('CommittalTypes')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool';
|
|
||||||
import { type DateString, type TimeString } from '@cityssm/utils-datetime';
|
import { type DateString, type TimeString } from '@cityssm/utils-datetime';
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
export interface AddContractForm {
|
export interface AddContractForm {
|
||||||
burialSiteId: number | string;
|
burialSiteId: number | string;
|
||||||
contractEndDateString: '' | DateString;
|
contractEndDateString: '' | DateString;
|
||||||
|
|
@ -35,4 +35,4 @@ export interface AddContractForm {
|
||||||
deceasedProvince?: string;
|
deceasedProvince?: string;
|
||||||
intermentContainerTypeId?: number | string;
|
intermentContainerTypeId?: number | string;
|
||||||
}
|
}
|
||||||
export default function addContract(addForm: AddContractForm, user: User, connectedDatabase?: PoolConnection): Promise<number>;
|
export default function addContract(addForm: AddContractForm, user: User, connectedDatabase?: sqlite.Database): number;
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,10 @@
|
||||||
import { dateStringToInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import addOrUpdateContractField from './addOrUpdateContractField.js';
|
import addOrUpdateContractField from './addOrUpdateContractField.js';
|
||||||
import { acquireConnection } from './pool.js';
|
|
||||||
// eslint-disable-next-line complexity
|
// eslint-disable-next-line complexity
|
||||||
export default async function addContract(addForm, user, connectedDatabase) {
|
export default function addContract(addForm, user, connectedDatabase) {
|
||||||
const database = connectedDatabase ?? (await acquireConnection());
|
const database = connectedDatabase ?? sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const contractStartDate = dateStringToInteger(addForm.contractStartDateString);
|
const contractStartDate = dateStringToInteger(addForm.contractStartDateString);
|
||||||
const result = database
|
const result = database
|
||||||
|
|
@ -34,7 +35,7 @@ export default async function addContract(addForm, user, connectedDatabase) {
|
||||||
for (const contractTypeFieldId of contractTypeFieldIds) {
|
for (const contractTypeFieldId of contractTypeFieldIds) {
|
||||||
const fieldValue = addForm[`fieldValue_${contractTypeFieldId}`];
|
const fieldValue = addForm[`fieldValue_${contractTypeFieldId}`];
|
||||||
if ((fieldValue ?? '') !== '') {
|
if ((fieldValue ?? '') !== '') {
|
||||||
await addOrUpdateContractField({
|
addOrUpdateContractField({
|
||||||
contractId,
|
contractId,
|
||||||
contractTypeFieldId,
|
contractTypeFieldId,
|
||||||
fieldValue: fieldValue ?? ''
|
fieldValue: fieldValue ?? ''
|
||||||
|
|
@ -66,7 +67,7 @@ export default async function addContract(addForm, user, connectedDatabase) {
|
||||||
: addForm.intermentContainerTypeId, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
: addForm.intermentContainerTypeId, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
}
|
}
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
}
|
}
|
||||||
return contractId;
|
return contractId;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool'
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
type DateString,
|
type DateString,
|
||||||
type TimeString,
|
type TimeString,
|
||||||
dateStringToInteger,
|
dateStringToInteger,
|
||||||
timeStringToInteger
|
timeStringToInteger
|
||||||
} from '@cityssm/utils-datetime'
|
} from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
import addOrUpdateContractField from './addOrUpdateContractField.js'
|
import addOrUpdateContractField from './addOrUpdateContractField.js'
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
export interface AddContractForm {
|
export interface AddContractForm {
|
||||||
burialSiteId: number | string
|
burialSiteId: number | string
|
||||||
|
|
@ -51,12 +51,12 @@ export interface AddContractForm {
|
||||||
}
|
}
|
||||||
|
|
||||||
// eslint-disable-next-line complexity
|
// eslint-disable-next-line complexity
|
||||||
export default async function addContract(
|
export default function addContract(
|
||||||
addForm: AddContractForm,
|
addForm: AddContractForm,
|
||||||
user: User,
|
user: User,
|
||||||
connectedDatabase?: PoolConnection
|
connectedDatabase?: sqlite.Database
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = connectedDatabase ?? (await acquireConnection())
|
const database = connectedDatabase ?? sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -124,7 +124,7 @@ export default async function addContract(
|
||||||
| undefined
|
| undefined
|
||||||
|
|
||||||
if ((fieldValue ?? '') !== '') {
|
if ((fieldValue ?? '') !== '') {
|
||||||
await addOrUpdateContractField(
|
addOrUpdateContractField(
|
||||||
{
|
{
|
||||||
contractId,
|
contractId,
|
||||||
contractTypeFieldId,
|
contractTypeFieldId,
|
||||||
|
|
@ -186,7 +186,7 @@ export default async function addContract(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
return contractId
|
return contractId
|
||||||
|
|
|
||||||
|
|
@ -5,4 +5,4 @@ export interface AddContractCommentForm {
|
||||||
commentDateString?: DateString;
|
commentDateString?: DateString;
|
||||||
commentTimeString?: TimeString;
|
commentTimeString?: TimeString;
|
||||||
}
|
}
|
||||||
export default function addContractComment(commentForm: AddContractCommentForm, user: User): Promise<number>;
|
export default function addContractComment(commentForm: AddContractCommentForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { dateStringToInteger, dateToInteger, dateToTimeInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger, dateToInteger, dateToTimeInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addContractComment(commentForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
|
export default function addContractComment(commentForm, user) {
|
||||||
const rightNow = new Date();
|
const rightNow = new Date();
|
||||||
let commentDate = 0;
|
let commentDate = 0;
|
||||||
let commentTime = 0;
|
let commentTime = 0;
|
||||||
|
|
@ -12,7 +13,7 @@ export default async function addContractComment(commentForm, user) {
|
||||||
commentDate = dateStringToInteger(commentForm.commentDateString);
|
commentDate = dateStringToInteger(commentForm.commentDateString);
|
||||||
commentTime = timeStringToInteger(commentForm.commentTimeString);
|
commentTime = timeStringToInteger(commentForm.commentTimeString);
|
||||||
}
|
}
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into ContractComments (
|
.prepare(`insert into ContractComments (
|
||||||
contractId,
|
contractId,
|
||||||
|
|
@ -22,6 +23,6 @@ export default async function addContractComment(commentForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(commentForm.contractId, commentDate, commentTime ?? 0, commentForm.comment, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
.run(commentForm.contractId, commentDate, commentTime ?? 0, commentForm.comment, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,9 @@ import {
|
||||||
dateToTimeInteger,
|
dateToTimeInteger,
|
||||||
timeStringToInteger
|
timeStringToInteger
|
||||||
} from '@cityssm/utils-datetime'
|
} from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddContractCommentForm {
|
export interface AddContractCommentForm {
|
||||||
contractId: number | string
|
contractId: number | string
|
||||||
|
|
@ -17,10 +18,10 @@ export interface AddContractCommentForm {
|
||||||
commentTimeString?: TimeString
|
commentTimeString?: TimeString
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addContractComment(
|
export default function addContractComment(
|
||||||
commentForm: AddContractCommentForm,
|
commentForm: AddContractCommentForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const rightNow = new Date()
|
const rightNow = new Date()
|
||||||
|
|
||||||
let commentDate = 0
|
let commentDate = 0
|
||||||
|
|
@ -38,7 +39,7 @@ export default async function addContractComment(
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(
|
.prepare(
|
||||||
|
|
@ -61,7 +62,7 @@ export default async function addContractComment(
|
||||||
rightNow.getTime()
|
rightNow.getTime()
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool';
|
import sqlite from 'better-sqlite3';
|
||||||
export interface AddContractFeeForm {
|
export interface AddContractFeeForm {
|
||||||
contractId: number | string;
|
contractId: number | string;
|
||||||
feeId: number | string;
|
feeId: number | string;
|
||||||
|
|
@ -6,4 +6,4 @@ export interface AddContractFeeForm {
|
||||||
quantity: number | string;
|
quantity: number | string;
|
||||||
taxAmount?: number | string;
|
taxAmount?: number | string;
|
||||||
}
|
}
|
||||||
export default function addContractFee(addFeeForm: AddContractFeeForm, user: User, connectedDatabase?: PoolConnection): Promise<boolean>;
|
export default function addContractFee(addFeeForm: AddContractFeeForm, user: User, connectedDatabase?: sqlite.Database): Promise<boolean>;
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { calculateFeeAmount, calculateTaxAmount } from '../helpers/functions.fee.js';
|
import { calculateFeeAmount, calculateTaxAmount } from '../helpers/functions.fee.js';
|
||||||
import getContract from './getContract.js';
|
import getContract from './getContract.js';
|
||||||
import getFee from './getFee.js';
|
import getFee from './getFee.js';
|
||||||
import { acquireConnection } from './pool.js';
|
|
||||||
export default async function addContractFee(addFeeForm, user, connectedDatabase) {
|
export default async function addContractFee(addFeeForm, user, connectedDatabase) {
|
||||||
const database = connectedDatabase ?? (await acquireConnection());
|
const database = connectedDatabase ?? sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
// Calculate fee and tax (if not set)
|
// Calculate fee and tax (if not set)
|
||||||
let feeAmount;
|
let feeAmount;
|
||||||
let taxAmount;
|
let taxAmount;
|
||||||
if ((addFeeForm.feeAmount ?? '') === '') {
|
if ((addFeeForm.feeAmount ?? '') === '') {
|
||||||
const contract = (await getContract(addFeeForm.contractId));
|
const contract = (await getContract(addFeeForm.contractId));
|
||||||
const fee = (await getFee(addFeeForm.feeId));
|
const fee = getFee(addFeeForm.feeId);
|
||||||
feeAmount = calculateFeeAmount(fee, contract);
|
feeAmount = calculateFeeAmount(fee, contract);
|
||||||
taxAmount = calculateTaxAmount(fee, feeAmount);
|
taxAmount = calculateTaxAmount(fee, feeAmount);
|
||||||
}
|
}
|
||||||
|
|
@ -83,7 +84,7 @@ export default async function addContractFee(addFeeForm, user, connectedDatabase
|
||||||
}
|
}
|
||||||
finally {
|
finally {
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
import {
|
import {
|
||||||
calculateFeeAmount,
|
calculateFeeAmount,
|
||||||
calculateTaxAmount
|
calculateTaxAmount
|
||||||
|
|
@ -8,7 +9,6 @@ import type { Contract, Fee } from '../types/record.types.js'
|
||||||
|
|
||||||
import getContract from './getContract.js'
|
import getContract from './getContract.js'
|
||||||
import getFee from './getFee.js'
|
import getFee from './getFee.js'
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
export interface AddContractFeeForm {
|
export interface AddContractFeeForm {
|
||||||
contractId: number | string
|
contractId: number | string
|
||||||
|
|
@ -22,9 +22,9 @@ export interface AddContractFeeForm {
|
||||||
export default async function addContractFee(
|
export default async function addContractFee(
|
||||||
addFeeForm: AddContractFeeForm,
|
addFeeForm: AddContractFeeForm,
|
||||||
user: User,
|
user: User,
|
||||||
connectedDatabase?: PoolConnection
|
connectedDatabase?: sqlite.Database
|
||||||
): Promise<boolean> {
|
): Promise<boolean> {
|
||||||
const database = connectedDatabase ?? (await acquireConnection())
|
const database = connectedDatabase ?? sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -33,11 +33,9 @@ export default async function addContractFee(
|
||||||
let taxAmount: number
|
let taxAmount: number
|
||||||
|
|
||||||
if ((addFeeForm.feeAmount ?? '') === '') {
|
if ((addFeeForm.feeAmount ?? '') === '') {
|
||||||
const contract = (await getContract(
|
const contract = (await getContract(addFeeForm.contractId)) as Contract
|
||||||
addFeeForm.contractId
|
|
||||||
)) as Contract
|
|
||||||
|
|
||||||
const fee = (await getFee(addFeeForm.feeId)) as Fee
|
const fee = getFee(addFeeForm.feeId) as Fee
|
||||||
|
|
||||||
feeAmount = calculateFeeAmount(fee, contract)
|
feeAmount = calculateFeeAmount(fee, contract)
|
||||||
taxAmount = calculateTaxAmount(fee, feeAmount)
|
taxAmount = calculateTaxAmount(fee, feeAmount)
|
||||||
|
|
@ -65,6 +63,7 @@ export default async function addContractFee(
|
||||||
| {
|
| {
|
||||||
feeAmount: number | null
|
feeAmount: number | null
|
||||||
taxAmount: number | null
|
taxAmount: number | null
|
||||||
|
|
||||||
recordDelete_timeMillis: number | null
|
recordDelete_timeMillis: number | null
|
||||||
}
|
}
|
||||||
| undefined
|
| undefined
|
||||||
|
|
@ -156,7 +155,7 @@ export default async function addContractFee(
|
||||||
return result.changes > 0
|
return result.changes > 0
|
||||||
} finally {
|
} finally {
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,10 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import addContractFee from './addContractFee.js';
|
import addContractFee from './addContractFee.js';
|
||||||
import { getFeeCategory } from './getFeeCategories.js';
|
import { getFeeCategory } from './getFeeCategories.js';
|
||||||
import { acquireConnection } from './pool.js';
|
|
||||||
export default async function addContractFeeCategory(addFeeCategoryForm, user) {
|
export default async function addContractFeeCategory(addFeeCategoryForm, user) {
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const feeCategory = await getFeeCategory(addFeeCategoryForm.feeCategoryId, database);
|
const feeCategory = getFeeCategory(addFeeCategoryForm.feeCategoryId, database);
|
||||||
let addedFeeCount = 0;
|
let addedFeeCount = 0;
|
||||||
for (const fee of feeCategory?.fees ?? []) {
|
for (const fee of feeCategory?.fees ?? []) {
|
||||||
const success = await addContractFee({
|
const success = await addContractFee({
|
||||||
|
|
@ -15,6 +16,6 @@ export default async function addContractFeeCategory(addFeeCategoryForm, user) {
|
||||||
addedFeeCount += 1;
|
addedFeeCount += 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
database.release();
|
database.close();
|
||||||
return addedFeeCount;
|
return addedFeeCount;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,9 @@
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
import addContractFee from './addContractFee.js'
|
import addContractFee from './addContractFee.js'
|
||||||
import { getFeeCategory } from './getFeeCategories.js'
|
import { getFeeCategory } from './getFeeCategories.js'
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
export interface AddContractCategoryForm {
|
export interface AddContractCategoryForm {
|
||||||
contractId: number | string
|
contractId: number | string
|
||||||
|
|
@ -11,12 +14,9 @@ export default async function addContractFeeCategory(
|
||||||
addFeeCategoryForm: AddContractCategoryForm,
|
addFeeCategoryForm: AddContractCategoryForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): Promise<number> {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const feeCategory = await getFeeCategory(
|
const feeCategory = getFeeCategory(addFeeCategoryForm.feeCategoryId, database)
|
||||||
addFeeCategoryForm.feeCategoryId,
|
|
||||||
database
|
|
||||||
)
|
|
||||||
|
|
||||||
let addedFeeCount = 0
|
let addedFeeCount = 0
|
||||||
|
|
||||||
|
|
@ -36,7 +36,7 @@ export default async function addContractFeeCategory(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return addedFeeCount
|
return addedFeeCount
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool';
|
|
||||||
import { type DateString } from '@cityssm/utils-datetime';
|
import { type DateString } from '@cityssm/utils-datetime';
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
contractId: number | string;
|
contractId: number | string;
|
||||||
deceasedName: string;
|
deceasedName: string;
|
||||||
|
|
@ -16,4 +16,4 @@ export interface AddForm {
|
||||||
deathAgePeriod: string;
|
deathAgePeriod: string;
|
||||||
intermentContainerTypeId: number | string;
|
intermentContainerTypeId: number | string;
|
||||||
}
|
}
|
||||||
export default function addContractInterment(contractForm: AddForm, user: User, connectedDatabase?: PoolConnection): Promise<number>;
|
export default function addContractInterment(contractForm: AddForm, user: User, connectedDatabase?: sqlite.Database): number;
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,12 @@
|
||||||
import { dateStringToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addContractInterment(contractForm, user, connectedDatabase) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = connectedDatabase ?? (await acquireConnection());
|
export default function addContractInterment(contractForm, user, connectedDatabase) {
|
||||||
|
const database = connectedDatabase ?? sqlite(sunriseDB);
|
||||||
const maxIntermentNumber = (database
|
const maxIntermentNumber = (database
|
||||||
.prepare(`select max(intermentNumber) as maxIntermentNumber
|
.prepare(`select max(intermentNumber) as maxIntermentNumber
|
||||||
from ContractInterments
|
from ContractInterments
|
||||||
where contractId = ?`)
|
where contractId = ?`)
|
||||||
.pluck()
|
.pluck()
|
||||||
.get(contractForm.contractId) ?? 0);
|
.get(contractForm.contractId) ?? 0);
|
||||||
const newIntermentNumber = maxIntermentNumber + 1;
|
const newIntermentNumber = maxIntermentNumber + 1;
|
||||||
|
|
@ -26,7 +27,7 @@ export default async function addContractInterment(contractForm, user, connected
|
||||||
? undefined
|
? undefined
|
||||||
: contractForm.intermentContainerTypeId, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
: contractForm.intermentContainerTypeId, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
}
|
}
|
||||||
return newIntermentNumber;
|
return newIntermentNumber;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool'
|
|
||||||
|
|
||||||
import { type DateString, dateStringToInteger } from '@cityssm/utils-datetime'
|
import { type DateString, dateStringToInteger } from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
contractId: number | string
|
contractId: number | string
|
||||||
|
|
@ -26,18 +25,18 @@ export interface AddForm {
|
||||||
intermentContainerTypeId: number | string
|
intermentContainerTypeId: number | string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addContractInterment(
|
export default function addContractInterment(
|
||||||
contractForm: AddForm,
|
contractForm: AddForm,
|
||||||
user: User,
|
user: User,
|
||||||
connectedDatabase?: PoolConnection
|
connectedDatabase?: sqlite.Database
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = connectedDatabase ?? (await acquireConnection())
|
const database = connectedDatabase ?? sqlite(sunriseDB)
|
||||||
|
|
||||||
const maxIntermentNumber = (database
|
const maxIntermentNumber = (database
|
||||||
.prepare(
|
.prepare(
|
||||||
`select max(intermentNumber) as maxIntermentNumber
|
`select max(intermentNumber) as maxIntermentNumber
|
||||||
from ContractInterments
|
from ContractInterments
|
||||||
where contractId = ?`
|
where contractId = ?`
|
||||||
)
|
)
|
||||||
.pluck()
|
.pluck()
|
||||||
.get(contractForm.contractId) ?? 0) as number
|
.get(contractForm.contractId) ?? 0) as number
|
||||||
|
|
@ -82,7 +81,7 @@ export default async function addContractInterment(
|
||||||
)
|
)
|
||||||
|
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
return newIntermentNumber
|
return newIntermentNumber
|
||||||
|
|
|
||||||
|
|
@ -6,4 +6,4 @@ export interface AddTransactionForm {
|
||||||
transactionAmount: number | string;
|
transactionAmount: number | string;
|
||||||
transactionNote: string;
|
transactionNote: string;
|
||||||
}
|
}
|
||||||
export default function addContractTransaction(contractTransactionForm: AddTransactionForm, user: User): Promise<number>;
|
export default function addContractTransaction(contractTransactionForm: AddTransactionForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { dateStringToInteger, dateToInteger, dateToTimeInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger, dateToInteger, dateToTimeInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addContractTransaction(contractTransactionForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addContractTransaction(contractTransactionForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
let transactionIndex = 0;
|
let transactionIndex = 0;
|
||||||
const maxIndexResult = database
|
const maxIndexResult = database
|
||||||
.prepare(`select transactionIndex
|
.prepare(`select transactionIndex
|
||||||
|
|
@ -29,6 +30,6 @@ export default async function addContractTransaction(contractTransactionForm, us
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(contractTransactionForm.contractId, transactionIndex, transactionDate, transactionTime, contractTransactionForm.transactionAmount, contractTransactionForm.externalReceiptNumber, contractTransactionForm.transactionNote, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
.run(contractTransactionForm.contractId, transactionIndex, transactionDate, transactionTime, contractTransactionForm.transactionAmount, contractTransactionForm.externalReceiptNumber, contractTransactionForm.transactionNote, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
||||||
database.release();
|
database.close();
|
||||||
return transactionIndex;
|
return transactionIndex;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,9 @@ import {
|
||||||
dateToTimeInteger,
|
dateToTimeInteger,
|
||||||
timeStringToInteger
|
timeStringToInteger
|
||||||
} from '@cityssm/utils-datetime'
|
} from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddTransactionForm {
|
export interface AddTransactionForm {
|
||||||
contractId: number | string
|
contractId: number | string
|
||||||
|
|
@ -18,11 +19,11 @@ export interface AddTransactionForm {
|
||||||
transactionNote: string
|
transactionNote: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addContractTransaction(
|
export default function addContractTransaction(
|
||||||
contractTransactionForm: AddTransactionForm,
|
contractTransactionForm: AddTransactionForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
let transactionIndex = 0
|
let transactionIndex = 0
|
||||||
|
|
||||||
|
|
@ -76,7 +77,7 @@ export default async function addContractTransaction(
|
||||||
rightNow.getTime()
|
rightNow.getTime()
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return transactionIndex
|
return transactionIndex
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,4 +3,4 @@ export interface AddForm {
|
||||||
isPreneed?: string;
|
isPreneed?: string;
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addContractType(addForm: AddForm, user: User): Promise<number>;
|
export default function addContractType(addForm: AddForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
||||||
import { acquireConnection } from './pool.js';
|
export default function addContractType(addForm, user) {
|
||||||
export default async function addContractType(addForm, user) {
|
const database = sqlite(sunriseDB);
|
||||||
const database = await acquireConnection();
|
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into ContractTypes (
|
.prepare(`insert into ContractTypes (
|
||||||
|
|
@ -10,7 +11,7 @@ export default async function addContractType(addForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.contractType, addForm.isPreneed === undefined ? 0 : 1, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.contractType, addForm.isPreneed === undefined ? 0 : 1, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
clearCacheByTableName('ContractTypes');
|
clearCacheByTableName('ContractTypes');
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
||||||
|
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
contractType: string
|
contractType: string
|
||||||
|
|
@ -8,11 +9,8 @@ export interface AddForm {
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addContractType(
|
export default function addContractType(addForm: AddForm, user: User): number {
|
||||||
addForm: AddForm,
|
const database = sqlite(sunriseDB)
|
||||||
user: User
|
|
||||||
): Promise<number> {
|
|
||||||
const database = await acquireConnection()
|
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -34,7 +32,7 @@ export default async function addContractType(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
clearCacheByTableName('ContractTypes')
|
clearCacheByTableName('ContractTypes')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
export interface AddContractTypeFieldForm {
|
export interface AddContractTypeFieldForm {
|
||||||
contractTypeId?: string | number;
|
contractTypeId?: number | string;
|
||||||
contractTypeField: string;
|
contractTypeField: string;
|
||||||
fieldValues?: string;
|
fieldValues?: string;
|
||||||
fieldType?: string;
|
fieldType?: string;
|
||||||
isRequired?: string;
|
isRequired?: string;
|
||||||
|
maxLength?: number | string;
|
||||||
|
minLength?: number | string;
|
||||||
pattern?: string;
|
pattern?: string;
|
||||||
minLength?: string | number;
|
|
||||||
maxLength?: string | number;
|
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addContractTypeField(addForm: AddContractTypeFieldForm, user: User): Promise<number>;
|
export default function addContractTypeField(addForm: AddContractTypeFieldForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
||||||
import { acquireConnection } from './pool.js';
|
export default function addContractTypeField(addForm, user) {
|
||||||
export default async function addContractTypeField(addForm, user) {
|
const database = sqlite(sunriseDB);
|
||||||
const database = await acquireConnection();
|
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into ContractTypeFields (
|
.prepare(`insert into ContractTypeFields (
|
||||||
|
|
@ -13,7 +14,7 @@ export default async function addContractTypeField(addForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.contractTypeId ?? undefined, addForm.contractTypeField, addForm.fieldType ?? 'text', addForm.fieldValues ?? '', addForm.isRequired === '' ? 0 : 1, addForm.pattern ?? '', addForm.minLength ?? 0, addForm.maxLength ?? 100, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.contractTypeId ?? undefined, addForm.contractTypeField, addForm.fieldType ?? 'text', addForm.fieldValues ?? '', addForm.isRequired === '' ? 0 : 1, addForm.pattern ?? '', addForm.minLength ?? 0, addForm.maxLength ?? 100, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
clearCacheByTableName('ContractTypeFields');
|
clearCacheByTableName('ContractTypeFields');
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,24 +1,26 @@
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
export interface AddContractTypeFieldForm {
|
export interface AddContractTypeFieldForm {
|
||||||
contractTypeId?: string | number
|
contractTypeId?: number | string
|
||||||
contractTypeField: string
|
contractTypeField: string
|
||||||
fieldValues?: string
|
fieldValues?: string
|
||||||
fieldType?: string
|
fieldType?: string
|
||||||
isRequired?: string
|
isRequired?: string
|
||||||
|
maxLength?: number | string
|
||||||
|
minLength?: number | string
|
||||||
pattern?: string
|
pattern?: string
|
||||||
minLength?: string | number
|
|
||||||
maxLength?: string | number
|
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addContractTypeField(
|
export default function addContractTypeField(
|
||||||
addForm: AddContractTypeFieldForm,
|
addForm: AddContractTypeFieldForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -49,7 +51,7 @@ export default async function addContractTypeField(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
clearCacheByTableName('ContractTypeFields')
|
clearCacheByTableName('ContractTypeFields')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
export interface AddContractTypePrintForm {
|
export interface AddContractTypePrintForm {
|
||||||
contractTypeId: string | number;
|
contractTypeId: number | string;
|
||||||
printEJS: string;
|
printEJS: string;
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addContractTypePrint(addForm: AddContractTypePrintForm, user: User): Promise<boolean>;
|
export default function addContractTypePrint(addForm: AddContractTypePrintForm, user: User): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
||||||
import { acquireConnection } from './pool.js';
|
export default function addContractTypePrint(addForm, user) {
|
||||||
export default async function addContractTypePrint(addForm, user) {
|
const database = sqlite(sunriseDB);
|
||||||
const database = await acquireConnection();
|
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
let result = database
|
let result = database
|
||||||
.prepare(`update ContractTypePrints
|
.prepare(`update ContractTypePrints
|
||||||
|
|
@ -21,7 +22,7 @@ export default async function addContractTypePrint(addForm, user) {
|
||||||
values (?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.contractTypeId, addForm.printEJS, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.contractTypeId, addForm.printEJS, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
}
|
}
|
||||||
database.release();
|
database.close();
|
||||||
clearCacheByTableName('ContractTypePrints');
|
clearCacheByTableName('ContractTypePrints');
|
||||||
return result.changes > 0;
|
return result.changes > 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,19 @@
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
export interface AddContractTypePrintForm {
|
export interface AddContractTypePrintForm {
|
||||||
contractTypeId: string | number
|
contractTypeId: number | string
|
||||||
printEJS: string
|
printEJS: string
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addContractTypePrint(
|
export default function addContractTypePrint(
|
||||||
addForm: AddContractTypePrintForm,
|
addForm: AddContractTypePrintForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -53,7 +54,7 @@ export default async function addContractTypePrint(
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
clearCacheByTableName('ContractTypePrints')
|
clearCacheByTableName('ContractTypePrints')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
export interface AddFeeForm {
|
export interface AddFeeForm {
|
||||||
feeCategoryId: string | number;
|
feeCategoryId: number | string;
|
||||||
feeName: string;
|
feeName: string;
|
||||||
feeDescription: string;
|
feeDescription: string;
|
||||||
feeAccount: string;
|
feeAccount: string;
|
||||||
contractTypeId: string | number;
|
contractTypeId: number | string;
|
||||||
burialSiteTypeId: string | number;
|
burialSiteTypeId: number | string;
|
||||||
feeAmount?: string;
|
feeAmount?: string;
|
||||||
feeFunction?: string;
|
feeFunction?: string;
|
||||||
taxAmount?: string;
|
taxAmount?: string;
|
||||||
|
|
@ -14,4 +14,4 @@ export interface AddFeeForm {
|
||||||
isRequired?: '' | '1';
|
isRequired?: '' | '1';
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addFee(feeForm: AddFeeForm, user: User): Promise<number>;
|
export default function addFee(feeForm: AddFeeForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addFee(feeForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addFee(feeForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into Fees (
|
.prepare(`insert into Fees (
|
||||||
|
|
@ -15,6 +16,6 @@ export default async function addFee(feeForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(feeForm.feeCategoryId, feeForm.feeName, feeForm.feeDescription, feeForm.feeAccount, feeForm.contractTypeId === '' ? undefined : feeForm.contractTypeId, feeForm.burialSiteTypeId === '' ? undefined : feeForm.burialSiteTypeId, feeForm.feeAmount === '' ? undefined : feeForm.feeAmount, feeForm.feeFunction ?? undefined, feeForm.taxAmount === '' ? undefined : feeForm.taxAmount, feeForm.taxPercentage === '' ? undefined : feeForm.taxPercentage, (feeForm.includeQuantity ?? '') === '' ? 0 : 1, feeForm.quantityUnit, (feeForm.isRequired ?? '') === '' ? 0 : 1, feeForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(feeForm.feeCategoryId, feeForm.feeName, feeForm.feeDescription, feeForm.feeAccount, feeForm.contractTypeId === '' ? undefined : feeForm.contractTypeId, feeForm.burialSiteTypeId === '' ? undefined : feeForm.burialSiteTypeId, feeForm.feeAmount === '' ? undefined : feeForm.feeAmount, feeForm.feeFunction ?? undefined, feeForm.taxAmount === '' ? undefined : feeForm.taxAmount, feeForm.taxPercentage === '' ? undefined : feeForm.taxPercentage, (feeForm.includeQuantity ?? '') === '' ? 0 : 1, feeForm.quantityUnit, (feeForm.isRequired ?? '') === '' ? 0 : 1, feeForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,14 @@
|
||||||
import { acquireConnection } from './pool.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddFeeForm {
|
export interface AddFeeForm {
|
||||||
feeCategoryId: string | number
|
feeCategoryId: number | string
|
||||||
feeName: string
|
feeName: string
|
||||||
feeDescription: string
|
feeDescription: string
|
||||||
feeAccount: string
|
feeAccount: string
|
||||||
contractTypeId: string | number
|
contractTypeId: number | string
|
||||||
burialSiteTypeId: string | number
|
burialSiteTypeId: number | string
|
||||||
feeAmount?: string
|
feeAmount?: string
|
||||||
feeFunction?: string
|
feeFunction?: string
|
||||||
taxAmount?: string
|
taxAmount?: string
|
||||||
|
|
@ -17,11 +19,8 @@ export interface AddFeeForm {
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addFee(
|
export default function addFee(feeForm: AddFeeForm, user: User): number {
|
||||||
feeForm: AddFeeForm,
|
const database = sqlite(sunriseDB)
|
||||||
user: User
|
|
||||||
): Promise<number> {
|
|
||||||
const database = await acquireConnection()
|
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -60,7 +59,7 @@ export default async function addFee(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,4 +3,4 @@ export interface AddFeeCategoryForm {
|
||||||
isGroupedFee?: '1';
|
isGroupedFee?: '1';
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addFeeCategory(feeCategoryForm: AddFeeCategoryForm, user: User): Promise<number>;
|
export default function addFeeCategory(feeCategoryForm: AddFeeCategoryForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addFeeCategory(feeCategoryForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addFeeCategory(feeCategoryForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into FeeCategories (
|
.prepare(`insert into FeeCategories (
|
||||||
|
|
@ -10,6 +11,6 @@ export default async function addFeeCategory(feeCategoryForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(feeCategoryForm.feeCategory, (feeCategoryForm.isGroupedFee ?? '') === '1' ? 1 : 0, feeCategoryForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(feeCategoryForm.feeCategory, (feeCategoryForm.isGroupedFee ?? '') === '1' ? 1 : 0, feeCategoryForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
import { acquireConnection } from './pool.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddFeeCategoryForm {
|
export interface AddFeeCategoryForm {
|
||||||
feeCategory: string
|
feeCategory: string
|
||||||
|
|
@ -6,11 +8,11 @@ export interface AddFeeCategoryForm {
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addFeeCategory(
|
export default function addFeeCategory(
|
||||||
feeCategoryForm: AddFeeCategoryForm,
|
feeCategoryForm: AddFeeCategoryForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -33,7 +35,7 @@ export default async function addFeeCategory(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,8 @@ export interface AddForm {
|
||||||
funeralHomeAddress1: string;
|
funeralHomeAddress1: string;
|
||||||
funeralHomeAddress2: string;
|
funeralHomeAddress2: string;
|
||||||
funeralHomeCity: string;
|
funeralHomeCity: string;
|
||||||
funeralHomeProvince: string;
|
|
||||||
funeralHomePostalCode: string;
|
funeralHomePostalCode: string;
|
||||||
|
funeralHomeProvince: string;
|
||||||
funeralHomePhoneNumber: string;
|
funeralHomePhoneNumber: string;
|
||||||
}
|
}
|
||||||
export default function addFuneralHome(addForm: AddForm, user: User): Promise<number>;
|
export default function addFuneralHome(addForm: AddForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addFuneralHome(addForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addFuneralHome(addForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into FuneralHomes (
|
.prepare(`insert into FuneralHomes (
|
||||||
|
|
@ -10,6 +11,6 @@ export default async function addFuneralHome(addForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.funeralHomeName, addForm.funeralHomeKey, addForm.funeralHomeAddress1, addForm.funeralHomeAddress2, addForm.funeralHomeCity, addForm.funeralHomeProvince, addForm.funeralHomePostalCode, addForm.funeralHomePhoneNumber, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.funeralHomeName, addForm.funeralHomeKey, addForm.funeralHomeAddress1, addForm.funeralHomeAddress2, addForm.funeralHomeCity, addForm.funeralHomeProvince, addForm.funeralHomePostalCode, addForm.funeralHomePhoneNumber, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,22 @@
|
||||||
import { acquireConnection } from './pool.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
funeralHomeName: string
|
funeralHomeName: string
|
||||||
funeralHomeKey: string
|
funeralHomeKey: string
|
||||||
|
|
||||||
funeralHomeAddress1: string
|
funeralHomeAddress1: string
|
||||||
funeralHomeAddress2: string
|
funeralHomeAddress2: string
|
||||||
funeralHomeCity: string
|
funeralHomeCity: string
|
||||||
funeralHomeProvince: string
|
|
||||||
funeralHomePostalCode: string
|
funeralHomePostalCode: string
|
||||||
|
funeralHomeProvince: string
|
||||||
|
|
||||||
funeralHomePhoneNumber: string
|
funeralHomePhoneNumber: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addFuneralHome(
|
export default function addFuneralHome(addForm: AddForm, user: User): number {
|
||||||
addForm: AddForm,
|
const database = sqlite(sunriseDB)
|
||||||
user: User
|
|
||||||
): Promise<number> {
|
|
||||||
const database = await acquireConnection()
|
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -43,7 +44,7 @@ export default async function addFuneralHome(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,4 +4,4 @@ export interface AddForm {
|
||||||
isCremationType?: string;
|
isCremationType?: string;
|
||||||
orderNumber?: number;
|
orderNumber?: number;
|
||||||
}
|
}
|
||||||
export default function addIntermentContainerType(addForm: AddForm, user: User): Promise<number>;
|
export default function addIntermentContainerType(addForm: AddForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
||||||
import { acquireConnection } from './pool.js';
|
export default function addIntermentContainerType(addForm, user) {
|
||||||
export default async function addIntermentContainerType(addForm, user) {
|
const database = sqlite(sunriseDB);
|
||||||
const database = await acquireConnection();
|
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into IntermentContainerTypes (
|
.prepare(`insert into IntermentContainerTypes (
|
||||||
|
|
@ -10,7 +11,7 @@ export default async function addIntermentContainerType(addForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(addForm.intermentContainerType, addForm.intermentContainerTypeKey ?? '', addForm.isCremationType === undefined ? 0 : 1, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(addForm.intermentContainerType, addForm.intermentContainerTypeKey ?? '', addForm.isCremationType === undefined ? 0 : 1, addForm.orderNumber ?? -1, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
clearCacheByTableName('IntermentContainerTypes');
|
clearCacheByTableName('IntermentContainerTypes');
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
||||||
|
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
intermentContainerType: string
|
intermentContainerType: string
|
||||||
|
|
@ -9,11 +10,11 @@ export interface AddForm {
|
||||||
orderNumber?: number
|
orderNumber?: number
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addIntermentContainerType(
|
export default function addIntermentContainerType(
|
||||||
addForm: AddForm,
|
addForm: AddForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -36,7 +37,7 @@ export default async function addIntermentContainerType(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
clearCacheByTableName('IntermentContainerTypes')
|
clearCacheByTableName('IntermentContainerTypes')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool';
|
import sqlite from 'better-sqlite3';
|
||||||
export interface BurialSiteFieldForm {
|
export interface BurialSiteFieldForm {
|
||||||
burialSiteId: string | number;
|
burialSiteId: number | string;
|
||||||
burialSiteTypeFieldId: string | number;
|
burialSiteTypeFieldId: number | string;
|
||||||
fieldValue: string;
|
fieldValue: string;
|
||||||
}
|
}
|
||||||
export default function addOrUpdateBurialSiteField(fieldForm: BurialSiteFieldForm, user: User, connectedDatabase?: PoolConnection): Promise<boolean>;
|
export default function addOrUpdateBurialSiteField(fieldForm: BurialSiteFieldForm, user: User, connectedDatabase?: sqlite.Database): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addOrUpdateBurialSiteField(fieldForm, user, connectedDatabase) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = connectedDatabase ?? (await acquireConnection());
|
export default function addOrUpdateBurialSiteField(fieldForm, user, connectedDatabase) {
|
||||||
|
const database = connectedDatabase ?? sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
let result = database
|
let result = database
|
||||||
.prepare(`update BurialSiteFields
|
.prepare(`update BurialSiteFields
|
||||||
|
|
@ -22,7 +23,7 @@ export default async function addOrUpdateBurialSiteField(fieldForm, user, connec
|
||||||
.run(fieldForm.burialSiteId, fieldForm.burialSiteTypeFieldId, fieldForm.fieldValue, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(fieldForm.burialSiteId, fieldForm.burialSiteTypeFieldId, fieldForm.fieldValue, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
}
|
}
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
}
|
}
|
||||||
return result.changes > 0;
|
return result.changes > 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,19 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface BurialSiteFieldForm {
|
export interface BurialSiteFieldForm {
|
||||||
burialSiteId: string | number
|
burialSiteId: number | string
|
||||||
burialSiteTypeFieldId: string | number
|
burialSiteTypeFieldId: number | string
|
||||||
fieldValue: string
|
fieldValue: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addOrUpdateBurialSiteField(
|
export default function addOrUpdateBurialSiteField(
|
||||||
fieldForm: BurialSiteFieldForm,
|
fieldForm: BurialSiteFieldForm,
|
||||||
user: User,
|
user: User,
|
||||||
connectedDatabase?: PoolConnection
|
connectedDatabase?: sqlite.Database
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = connectedDatabase ?? (await acquireConnection())
|
const database = connectedDatabase ?? sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -57,7 +57,7 @@ export default async function addOrUpdateBurialSiteField(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
return result.changes > 0
|
return result.changes > 0
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool';
|
import sqlite from 'better-sqlite3';
|
||||||
export interface ContractFieldForm {
|
export interface ContractFieldForm {
|
||||||
contractId: string | number;
|
contractId: number | string;
|
||||||
contractTypeFieldId: string | number;
|
contractTypeFieldId: number | string;
|
||||||
fieldValue: string;
|
fieldValue: string;
|
||||||
}
|
}
|
||||||
export default function addOrUpdateContractField(fieldForm: ContractFieldForm, user: User, connectedDatabase?: PoolConnection): Promise<boolean>;
|
export default function addOrUpdateContractField(fieldForm: ContractFieldForm, user: User, connectedDatabase?: sqlite.Database): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addOrUpdateContractField(fieldForm, user, connectedDatabase) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = connectedDatabase ?? (await acquireConnection());
|
export default function addOrUpdateContractField(fieldForm, user, connectedDatabase) {
|
||||||
|
const database = connectedDatabase ?? sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
let result = database
|
let result = database
|
||||||
.prepare(`update ContractFields
|
.prepare(`update ContractFields
|
||||||
|
|
@ -22,7 +23,7 @@ export default async function addOrUpdateContractField(fieldForm, user, connecte
|
||||||
.run(fieldForm.contractId, fieldForm.contractTypeFieldId, fieldForm.fieldValue, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(fieldForm.contractId, fieldForm.contractTypeFieldId, fieldForm.fieldValue, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
}
|
}
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
}
|
}
|
||||||
return result.changes > 0;
|
return result.changes > 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,19 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface ContractFieldForm {
|
export interface ContractFieldForm {
|
||||||
contractId: string | number
|
contractId: number | string
|
||||||
contractTypeFieldId: string | number
|
contractTypeFieldId: number | string
|
||||||
fieldValue: string
|
fieldValue: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addOrUpdateContractField(
|
export default function addOrUpdateContractField(
|
||||||
fieldForm: ContractFieldForm,
|
fieldForm: ContractFieldForm,
|
||||||
user: User,
|
user: User,
|
||||||
connectedDatabase?: PoolConnection
|
connectedDatabase?: sqlite.Database
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = connectedDatabase ?? (await acquireConnection())
|
const database = connectedDatabase ?? sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -57,7 +57,7 @@ export default async function addOrUpdateContractField(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
return result.changes > 0
|
return result.changes > 0
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,3 @@
|
||||||
type RecordTable = 'BurialSiteStatuses' | 'BurialSiteTypes' | 'WorkOrderMilestoneTypes' | 'WorkOrderTypes';
|
type RecordTable = 'BurialSiteStatuses' | 'BurialSiteTypes' | 'WorkOrderMilestoneTypes' | 'WorkOrderTypes';
|
||||||
export default function addRecord(recordTable: RecordTable, recordName: string, orderNumber: number | string, user: User): Promise<number>;
|
export default function addRecord(recordTable: RecordTable, recordName: string, orderNumber: number | string, user: User): number;
|
||||||
export {};
|
export {};
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
import { clearCacheByTableName } from '../helpers/functions.cache.js';
|
||||||
import { acquireConnection } from './pool.js';
|
|
||||||
const recordNameColumns = new Map([
|
const recordNameColumns = new Map([
|
||||||
['BurialSiteStatuses', 'burialSiteStatus'],
|
['BurialSiteStatuses', 'burialSiteStatus'],
|
||||||
['BurialSiteTypes', 'burialSiteType'],
|
['BurialSiteTypes', 'burialSiteType'],
|
||||||
['WorkOrderMilestoneTypes', 'workOrderMilestoneType'],
|
['WorkOrderMilestoneTypes', 'workOrderMilestoneType'],
|
||||||
['WorkOrderTypes', 'workOrderType']
|
['WorkOrderTypes', 'workOrderType']
|
||||||
]);
|
]);
|
||||||
export default async function addRecord(recordTable, recordName, orderNumber, user) {
|
export default function addRecord(recordTable, recordName, orderNumber, user) {
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into ${recordTable} (
|
.prepare(`insert into ${recordTable} (
|
||||||
|
|
@ -17,7 +18,7 @@ export default async function addRecord(recordTable, recordName, orderNumber, us
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?)`)
|
||||||
.run(recordName, orderNumber === '' ? -1 : orderNumber, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
.run(recordName, orderNumber === '' ? -1 : orderNumber, user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
clearCacheByTableName(recordTable);
|
clearCacheByTableName(recordTable);
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
import { clearCacheByTableName } from '../helpers/functions.cache.js'
|
||||||
|
|
||||||
type RecordTable =
|
type RecordTable =
|
||||||
| 'BurialSiteStatuses'
|
| 'BurialSiteStatuses'
|
||||||
|
|
@ -15,13 +16,13 @@ const recordNameColumns = new Map<RecordTable, string>([
|
||||||
['WorkOrderTypes', 'workOrderType']
|
['WorkOrderTypes', 'workOrderType']
|
||||||
])
|
])
|
||||||
|
|
||||||
export default async function addRecord(
|
export default function addRecord(
|
||||||
recordTable: RecordTable,
|
recordTable: RecordTable,
|
||||||
recordName: string,
|
recordName: string,
|
||||||
orderNumber: number | string,
|
orderNumber: number | string,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -43,7 +44,7 @@ export default async function addRecord(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
clearCacheByTableName(recordTable)
|
clearCacheByTableName(recordTable)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,4 +6,4 @@ export interface AddWorkOrderForm {
|
||||||
workOrderCloseDateString?: string;
|
workOrderCloseDateString?: string;
|
||||||
contractId?: string;
|
contractId?: string;
|
||||||
}
|
}
|
||||||
export default function addWorkOrder(workOrderForm: AddWorkOrderForm, user: User): Promise<number>;
|
export default function addWorkOrder(workOrderForm: AddWorkOrderForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
import { dateStringToInteger, dateToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger, dateToInteger } from '@cityssm/utils-datetime';
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import addWorkOrderContract from './addWorkOrderContract.js';
|
import addWorkOrderContract from './addWorkOrderContract.js';
|
||||||
import getNextWorkOrderNumber from './getNextWorkOrderNumber.js';
|
import getNextWorkOrderNumber from './getNextWorkOrderNumber.js';
|
||||||
import { acquireConnection } from './pool.js';
|
export default function addWorkOrder(workOrderForm, user) {
|
||||||
export default async function addWorkOrder(workOrderForm, user) {
|
const database = sqlite(sunriseDB);
|
||||||
const database = await acquireConnection();
|
|
||||||
const rightNow = new Date();
|
const rightNow = new Date();
|
||||||
let workOrderNumber = workOrderForm.workOrderNumber;
|
let workOrderNumber = workOrderForm.workOrderNumber;
|
||||||
if ((workOrderNumber ?? '') === '') {
|
if ((workOrderNumber ?? '') === '') {
|
||||||
workOrderNumber = await getNextWorkOrderNumber(database);
|
workOrderNumber = getNextWorkOrderNumber(database);
|
||||||
}
|
}
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into WorkOrders (
|
.prepare(`insert into WorkOrders (
|
||||||
|
|
@ -23,11 +24,11 @@ export default async function addWorkOrder(workOrderForm, user) {
|
||||||
: dateStringToInteger(workOrderForm.workOrderCloseDateString), user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
: dateStringToInteger(workOrderForm.workOrderCloseDateString), user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
||||||
const workOrderId = result.lastInsertRowid;
|
const workOrderId = result.lastInsertRowid;
|
||||||
if ((workOrderForm.contractId ?? '') !== '') {
|
if ((workOrderForm.contractId ?? '') !== '') {
|
||||||
await addWorkOrderContract({
|
addWorkOrderContract({
|
||||||
workOrderId,
|
workOrderId,
|
||||||
contractId: workOrderForm.contractId
|
contractId: workOrderForm.contractId
|
||||||
}, user, database);
|
}, user, database);
|
||||||
}
|
}
|
||||||
database.release();
|
database.close();
|
||||||
return workOrderId;
|
return workOrderId;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,10 +3,12 @@ import {
|
||||||
dateStringToInteger,
|
dateStringToInteger,
|
||||||
dateToInteger
|
dateToInteger
|
||||||
} from '@cityssm/utils-datetime'
|
} from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
import addWorkOrderContract from './addWorkOrderContract.js'
|
import addWorkOrderContract from './addWorkOrderContract.js'
|
||||||
import getNextWorkOrderNumber from './getNextWorkOrderNumber.js'
|
import getNextWorkOrderNumber from './getNextWorkOrderNumber.js'
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
export interface AddWorkOrderForm {
|
export interface AddWorkOrderForm {
|
||||||
workOrderTypeId: number | string
|
workOrderTypeId: number | string
|
||||||
|
|
@ -17,18 +19,18 @@ export interface AddWorkOrderForm {
|
||||||
contractId?: string
|
contractId?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addWorkOrder(
|
export default function addWorkOrder(
|
||||||
workOrderForm: AddWorkOrderForm,
|
workOrderForm: AddWorkOrderForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNow = new Date()
|
const rightNow = new Date()
|
||||||
|
|
||||||
let workOrderNumber = workOrderForm.workOrderNumber
|
let workOrderNumber = workOrderForm.workOrderNumber
|
||||||
|
|
||||||
if ((workOrderNumber ?? '') === '') {
|
if ((workOrderNumber ?? '') === '') {
|
||||||
workOrderNumber = await getNextWorkOrderNumber(database)
|
workOrderNumber = getNextWorkOrderNumber(database)
|
||||||
}
|
}
|
||||||
|
|
||||||
const result = database
|
const result = database
|
||||||
|
|
@ -63,7 +65,7 @@ export default async function addWorkOrder(
|
||||||
const workOrderId = result.lastInsertRowid as number
|
const workOrderId = result.lastInsertRowid as number
|
||||||
|
|
||||||
if ((workOrderForm.contractId ?? '') !== '') {
|
if ((workOrderForm.contractId ?? '') !== '') {
|
||||||
await addWorkOrderContract(
|
addWorkOrderContract(
|
||||||
{
|
{
|
||||||
workOrderId,
|
workOrderId,
|
||||||
contractId: workOrderForm.contractId as string
|
contractId: workOrderForm.contractId as string
|
||||||
|
|
@ -73,7 +75,7 @@ export default async function addWorkOrder(
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return workOrderId
|
return workOrderId
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,4 +2,4 @@ export interface AddForm {
|
||||||
workOrderId: number | string;
|
workOrderId: number | string;
|
||||||
burialSiteId: number | string;
|
burialSiteId: number | string;
|
||||||
}
|
}
|
||||||
export default function addWorkOrderBurialSite(workOrderLotForm: AddForm, user: User): Promise<boolean>;
|
export default function addWorkOrderBurialSite(workOrderLotForm: AddForm, user: User): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addWorkOrderBurialSite(workOrderLotForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addWorkOrderBurialSite(workOrderLotForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const row = database
|
const row = database
|
||||||
.prepare(`select recordDelete_timeMillis
|
.prepare(`select recordDelete_timeMillis
|
||||||
|
|
@ -32,6 +33,6 @@ export default async function addWorkOrderBurialSite(workOrderLotForm, user) {
|
||||||
.run(user.userName, rightNowMillis, user.userName, rightNowMillis, workOrderLotForm.workOrderId, workOrderLotForm.burialSiteId);
|
.run(user.userName, rightNowMillis, user.userName, rightNowMillis, workOrderLotForm.workOrderId, workOrderLotForm.burialSiteId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
database.release();
|
database.close();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,17 @@
|
||||||
import { acquireConnection } from './pool.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
workOrderId: number | string
|
workOrderId: number | string
|
||||||
burialSiteId: number | string
|
burialSiteId: number | string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addWorkOrderBurialSite(
|
export default function addWorkOrderBurialSite(
|
||||||
workOrderLotForm: AddForm,
|
workOrderLotForm: AddForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -68,7 +70,7 @@ export default async function addWorkOrderBurialSite(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,4 +2,4 @@ export interface AddWorkOrderCommentForm {
|
||||||
workOrderId: string;
|
workOrderId: string;
|
||||||
comment: string;
|
comment: string;
|
||||||
}
|
}
|
||||||
export default function addWorkOrderComment(workOrderCommentForm: AddWorkOrderCommentForm, user: User): Promise<number>;
|
export default function addWorkOrderComment(workOrderCommentForm: AddWorkOrderCommentForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime';
|
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addWorkOrderComment(workOrderCommentForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function addWorkOrderComment(workOrderCommentForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNow = new Date();
|
const rightNow = new Date();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into WorkOrderComments (
|
.prepare(`insert into WorkOrderComments (
|
||||||
|
|
@ -12,6 +13,6 @@ export default async function addWorkOrderComment(workOrderCommentForm, user) {
|
||||||
recordUpdate_userName, recordUpdate_timeMillis)
|
recordUpdate_userName, recordUpdate_timeMillis)
|
||||||
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
values (?, ?, ?, ?, ?, ?, ?, ?)`)
|
||||||
.run(workOrderCommentForm.workOrderId, dateToInteger(rightNow), dateToTimeInteger(rightNow), workOrderCommentForm.comment, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
.run(workOrderCommentForm.workOrderId, dateToInteger(rightNow), dateToTimeInteger(rightNow), workOrderCommentForm.comment, user.userName, rightNow.getTime(), user.userName, rightNow.getTime());
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,18 @@
|
||||||
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime'
|
import { dateToInteger, dateToTimeInteger } from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddWorkOrderCommentForm {
|
export interface AddWorkOrderCommentForm {
|
||||||
workOrderId: string
|
workOrderId: string
|
||||||
comment: string
|
comment: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addWorkOrderComment(
|
export default function addWorkOrderComment(
|
||||||
workOrderCommentForm: AddWorkOrderCommentForm,
|
workOrderCommentForm: AddWorkOrderCommentForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNow = new Date()
|
const rightNow = new Date()
|
||||||
|
|
||||||
|
|
@ -36,7 +37,7 @@ export default async function addWorkOrderComment(
|
||||||
rightNow.getTime()
|
rightNow.getTime()
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool';
|
import sqlite from 'better-sqlite3';
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
workOrderId: number | string;
|
|
||||||
contractId: number | string;
|
contractId: number | string;
|
||||||
|
workOrderId: number | string;
|
||||||
}
|
}
|
||||||
export default function addWorkOrderContract(addForm: AddForm, user: User, connectedDatabase?: PoolConnection): Promise<boolean>;
|
export default function addWorkOrderContract(addForm: AddForm, user: User, connectedDatabase?: sqlite.Database): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addWorkOrderContract(addForm, user, connectedDatabase) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = connectedDatabase ?? (await acquireConnection());
|
export default function addWorkOrderContract(addForm, user, connectedDatabase) {
|
||||||
|
const database = connectedDatabase ?? sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const recordDeleteTimeMillis = database
|
const recordDeleteTimeMillis = database
|
||||||
.prepare(`select recordDelete_timeMillis
|
.prepare(`select recordDelete_timeMillis
|
||||||
|
|
@ -34,7 +35,7 @@ export default async function addWorkOrderContract(addForm, user, connectedDatab
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,18 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddForm {
|
export interface AddForm {
|
||||||
workOrderId: number | string
|
|
||||||
contractId: number | string
|
contractId: number | string
|
||||||
|
workOrderId: number | string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addWorkOrderContract(
|
export default function addWorkOrderContract(
|
||||||
addForm: AddForm,
|
addForm: AddForm,
|
||||||
user: User,
|
user: User,
|
||||||
connectedDatabase?: PoolConnection
|
connectedDatabase?: sqlite.Database
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = connectedDatabase ?? (await acquireConnection())
|
const database = connectedDatabase ?? sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
|
|
@ -24,10 +24,7 @@ export default async function addWorkOrderContract(
|
||||||
and contractId = ?`
|
and contractId = ?`
|
||||||
)
|
)
|
||||||
.pluck()
|
.pluck()
|
||||||
.get(
|
.get(addForm.workOrderId, addForm.contractId) as number | null | undefined
|
||||||
addForm.workOrderId,
|
|
||||||
addForm.contractId
|
|
||||||
) as number | null | undefined
|
|
||||||
|
|
||||||
if (recordDeleteTimeMillis === undefined) {
|
if (recordDeleteTimeMillis === undefined) {
|
||||||
database
|
database
|
||||||
|
|
@ -72,7 +69,7 @@ export default async function addWorkOrderContract(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
return true
|
return true
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
export interface AddWorkOrderMilestoneForm {
|
export interface AddWorkOrderMilestoneForm {
|
||||||
workOrderId: string | number;
|
workOrderId: number | string;
|
||||||
workOrderMilestoneTypeId: number | string;
|
workOrderMilestoneTypeId: number | string;
|
||||||
workOrderMilestoneDateString: string;
|
workOrderMilestoneDateString: string;
|
||||||
workOrderMilestoneTimeString?: string;
|
workOrderMilestoneTimeString?: string;
|
||||||
|
|
@ -7,4 +7,4 @@ export interface AddWorkOrderMilestoneForm {
|
||||||
workOrderMilestoneCompletionDateString?: string;
|
workOrderMilestoneCompletionDateString?: string;
|
||||||
workOrderMilestoneCompletionTimeString?: string;
|
workOrderMilestoneCompletionTimeString?: string;
|
||||||
}
|
}
|
||||||
export default function addWorkOrderMilestone(milestoneForm: AddWorkOrderMilestoneForm, user: User): Promise<number>;
|
export default function addWorkOrderMilestone(milestoneForm: AddWorkOrderMilestoneForm, user: User): number;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
import { dateStringToInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function addWorkOrderMilestone(milestoneForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
|
export default function addWorkOrderMilestone(milestoneForm, user) {
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`insert into WorkOrderMilestones (
|
.prepare(`insert into WorkOrderMilestones (
|
||||||
workOrderId, workOrderMilestoneTypeId,
|
workOrderId, workOrderMilestoneTypeId,
|
||||||
|
|
@ -23,6 +24,6 @@ export default async function addWorkOrderMilestone(milestoneForm, user) {
|
||||||
: dateStringToInteger(milestoneForm.workOrderMilestoneCompletionDateString), (milestoneForm.workOrderMilestoneCompletionTimeString ?? '') === ''
|
: dateStringToInteger(milestoneForm.workOrderMilestoneCompletionDateString), (milestoneForm.workOrderMilestoneCompletionTimeString ?? '') === ''
|
||||||
? undefined
|
? undefined
|
||||||
: timeStringToInteger(milestoneForm.workOrderMilestoneCompletionTimeString), user.userName, rightNowMillis, user.userName, rightNowMillis);
|
: timeStringToInteger(milestoneForm.workOrderMilestoneCompletionTimeString), user.userName, rightNowMillis, user.userName, rightNowMillis);
|
||||||
database.release();
|
database.close();
|
||||||
return result.lastInsertRowid;
|
return result.lastInsertRowid;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,26 +2,30 @@ import {
|
||||||
dateStringToInteger,
|
dateStringToInteger,
|
||||||
timeStringToInteger
|
timeStringToInteger
|
||||||
} from '@cityssm/utils-datetime'
|
} from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface AddWorkOrderMilestoneForm {
|
export interface AddWorkOrderMilestoneForm {
|
||||||
workOrderId: string | number
|
workOrderId: number | string
|
||||||
workOrderMilestoneTypeId: number | string
|
workOrderMilestoneTypeId: number | string
|
||||||
|
|
||||||
workOrderMilestoneDateString: string
|
workOrderMilestoneDateString: string
|
||||||
workOrderMilestoneTimeString?: string
|
workOrderMilestoneTimeString?: string
|
||||||
|
|
||||||
workOrderMilestoneDescription: string
|
workOrderMilestoneDescription: string
|
||||||
|
|
||||||
workOrderMilestoneCompletionDateString?: string
|
workOrderMilestoneCompletionDateString?: string
|
||||||
workOrderMilestoneCompletionTimeString?: string
|
workOrderMilestoneCompletionTimeString?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function addWorkOrderMilestone(
|
export default function addWorkOrderMilestone(
|
||||||
milestoneForm: AddWorkOrderMilestoneForm,
|
milestoneForm: AddWorkOrderMilestoneForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): number {
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
|
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(
|
.prepare(
|
||||||
|
|
@ -62,7 +66,7 @@ export default async function addWorkOrderMilestone(
|
||||||
rightNowMillis
|
rightNowMillis
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.lastInsertRowid as number
|
return result.lastInsertRowid as number
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
export default function cleanupDatabase(user: User): Promise<{
|
export default function cleanupDatabase(user: User): {
|
||||||
inactivatedRecordCount: number;
|
inactivatedRecordCount: number;
|
||||||
purgedRecordCount: number;
|
purgedRecordCount: number;
|
||||||
}>;
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
import { daysToMillis } from '@cityssm/to-millis';
|
import { daysToMillis } from '@cityssm/to-millis';
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
import { getConfigProperty } from '../helpers/config.helpers.js';
|
import { getConfigProperty } from '../helpers/config.helpers.js';
|
||||||
import { acquireConnection } from './pool.js';
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
export default async function cleanupDatabase(user) {
|
export default function cleanupDatabase(user) {
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const rightNowMillis = Date.now();
|
const rightNowMillis = Date.now();
|
||||||
const recordDeleteTimeMillisMin = rightNowMillis -
|
const recordDeleteTimeMillisMin = rightNowMillis -
|
||||||
daysToMillis(getConfigProperty('settings.adminCleanup.recordDeleteAgeDays'));
|
daysToMillis(getConfigProperty('settings.adminCleanup.recordDeleteAgeDays'));
|
||||||
|
|
@ -279,7 +280,7 @@ export default async function cleanupDatabase(user) {
|
||||||
where recordDelete_timeMillis <= ?
|
where recordDelete_timeMillis <= ?
|
||||||
and burialSiteTypeId not in (select burialSiteTypeId from BurialSites)`)
|
and burialSiteTypeId not in (select burialSiteTypeId from BurialSites)`)
|
||||||
.run(recordDeleteTimeMillisMin).changes;
|
.run(recordDeleteTimeMillisMin).changes;
|
||||||
database.release();
|
database.close();
|
||||||
return {
|
return {
|
||||||
inactivatedRecordCount,
|
inactivatedRecordCount,
|
||||||
purgedRecordCount
|
purgedRecordCount
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
import { daysToMillis } from '@cityssm/to-millis'
|
import { daysToMillis } from '@cityssm/to-millis'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { getConfigProperty } from '../helpers/config.helpers.js'
|
import { getConfigProperty } from '../helpers/config.helpers.js'
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
export default function cleanupDatabase(user: User): {
|
||||||
|
inactivatedRecordCount: number
|
||||||
export default async function cleanupDatabase(
|
purgedRecordCount: number
|
||||||
user: User
|
} {
|
||||||
): Promise<{ inactivatedRecordCount: number; purgedRecordCount: number }> {
|
const database = sqlite(sunriseDB)
|
||||||
const database = await acquireConnection()
|
|
||||||
|
|
||||||
const rightNowMillis = Date.now()
|
const rightNowMillis = Date.now()
|
||||||
const recordDeleteTimeMillisMin =
|
const recordDeleteTimeMillisMin =
|
||||||
|
|
@ -155,9 +156,7 @@ export default async function cleanupDatabase(
|
||||||
.run(user.userName, rightNowMillis).changes
|
.run(user.userName, rightNowMillis).changes
|
||||||
|
|
||||||
purgedRecordCount += database
|
purgedRecordCount += database
|
||||||
.prepare(
|
.prepare('delete from ContractComments where recordDelete_timeMillis <= ?')
|
||||||
'delete from ContractComments where recordDelete_timeMillis <= ?'
|
|
||||||
)
|
|
||||||
.run(recordDeleteTimeMillisMin).changes
|
.run(recordDeleteTimeMillisMin).changes
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -175,9 +174,7 @@ export default async function cleanupDatabase(
|
||||||
.run(user.userName, rightNowMillis).changes
|
.run(user.userName, rightNowMillis).changes
|
||||||
|
|
||||||
purgedRecordCount += database
|
purgedRecordCount += database
|
||||||
.prepare(
|
.prepare('delete from ContractFields where recordDelete_timeMillis <= ?')
|
||||||
'delete from ContractFields where recordDelete_timeMillis <= ?'
|
|
||||||
)
|
|
||||||
.run(recordDeleteTimeMillisMin).changes
|
.run(recordDeleteTimeMillisMin).changes
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -186,9 +183,7 @@ export default async function cleanupDatabase(
|
||||||
*/
|
*/
|
||||||
|
|
||||||
purgedRecordCount += database
|
purgedRecordCount += database
|
||||||
.prepare(
|
.prepare('delete from ContractFees where recordDelete_timeMillis <= ?')
|
||||||
'delete from ContractFees where recordDelete_timeMillis <= ?'
|
|
||||||
)
|
|
||||||
.run(recordDeleteTimeMillisMin).changes
|
.run(recordDeleteTimeMillisMin).changes
|
||||||
|
|
||||||
purgedRecordCount += database
|
purgedRecordCount += database
|
||||||
|
|
@ -414,7 +409,7 @@ export default async function cleanupDatabase(
|
||||||
)
|
)
|
||||||
.run(recordDeleteTimeMillisMin).changes
|
.run(recordDeleteTimeMillisMin).changes
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return {
|
return {
|
||||||
inactivatedRecordCount,
|
inactivatedRecordCount,
|
||||||
|
|
|
||||||
|
|
@ -2,4 +2,4 @@ export interface CloseWorkOrderForm {
|
||||||
workOrderId: number | string;
|
workOrderId: number | string;
|
||||||
workOrderCloseDateString?: string;
|
workOrderCloseDateString?: string;
|
||||||
}
|
}
|
||||||
export default function closeWorkOrder(workOrderForm: CloseWorkOrderForm, user: User): Promise<boolean>;
|
export default function closeWorkOrder(workOrderForm: CloseWorkOrderForm, user: User): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { dateStringToInteger, dateToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger, dateToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function closeWorkOrder(workOrderForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function closeWorkOrder(workOrderForm, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const rightNow = new Date();
|
const rightNow = new Date();
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`update WorkOrders
|
.prepare(`update WorkOrders
|
||||||
|
|
@ -12,6 +13,6 @@ export default async function closeWorkOrder(workOrderForm, user) {
|
||||||
.run(workOrderForm.workOrderCloseDateString
|
.run(workOrderForm.workOrderCloseDateString
|
||||||
? dateStringToInteger(workOrderForm.workOrderCloseDateString)
|
? dateStringToInteger(workOrderForm.workOrderCloseDateString)
|
||||||
: dateToInteger(new Date()), user.userName, rightNow.getTime(), workOrderForm.workOrderId);
|
: dateToInteger(new Date()), user.userName, rightNow.getTime(), workOrderForm.workOrderId);
|
||||||
database.release();
|
database.close();
|
||||||
return result.changes > 0;
|
return result.changes > 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,19 @@
|
||||||
import { dateStringToInteger, dateToInteger } from '@cityssm/utils-datetime'
|
import { dateStringToInteger, dateToInteger } from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface CloseWorkOrderForm {
|
export interface CloseWorkOrderForm {
|
||||||
workOrderId: number | string
|
workOrderId: number | string
|
||||||
|
|
||||||
workOrderCloseDateString?: string
|
workOrderCloseDateString?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function closeWorkOrder(
|
export default function closeWorkOrder(
|
||||||
workOrderForm: CloseWorkOrderForm,
|
workOrderForm: CloseWorkOrderForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const rightNow = new Date()
|
const rightNow = new Date()
|
||||||
|
|
||||||
|
|
@ -32,7 +34,7 @@ export default async function closeWorkOrder(
|
||||||
workOrderForm.workOrderId
|
workOrderForm.workOrderId
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.changes > 0
|
return result.changes > 0
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
export interface CompleteWorkOrderMilestoneForm {
|
export interface CompleteWorkOrderMilestoneForm {
|
||||||
workOrderMilestoneId: string | number;
|
workOrderMilestoneId: number | string;
|
||||||
workOrderMilestoneCompletionDateString?: string;
|
workOrderMilestoneCompletionDateString?: string;
|
||||||
workOrderMilestoneCompletionTimeString?: string;
|
workOrderMilestoneCompletionTimeString?: string;
|
||||||
}
|
}
|
||||||
export default function completeWorkOrderMilestone(milestoneForm: CompleteWorkOrderMilestoneForm, user: User): Promise<boolean>;
|
export default function completeWorkOrderMilestone(milestoneForm: CompleteWorkOrderMilestoneForm, user: User): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
import { dateStringToInteger, dateToInteger, dateToTimeInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
import { dateStringToInteger, dateToInteger, dateToTimeInteger, timeStringToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function completeWorkOrderMilestone(milestoneForm, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
|
export default function completeWorkOrderMilestone(milestoneForm, user) {
|
||||||
const rightNow = new Date();
|
const rightNow = new Date();
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`update WorkOrderMilestones
|
.prepare(`update WorkOrderMilestones
|
||||||
set workOrderMilestoneCompletionDate = ?,
|
set workOrderMilestoneCompletionDate = ?,
|
||||||
|
|
@ -15,6 +16,6 @@ export default async function completeWorkOrderMilestone(milestoneForm, user) {
|
||||||
: dateStringToInteger(milestoneForm.workOrderMilestoneCompletionDateString), (milestoneForm.workOrderMilestoneCompletionTimeString ?? '') === ''
|
: dateStringToInteger(milestoneForm.workOrderMilestoneCompletionDateString), (milestoneForm.workOrderMilestoneCompletionTimeString ?? '') === ''
|
||||||
? dateToTimeInteger(rightNow)
|
? dateToTimeInteger(rightNow)
|
||||||
: timeStringToInteger(milestoneForm.workOrderMilestoneCompletionTimeString), user.userName, rightNow.getTime(), milestoneForm.workOrderMilestoneId);
|
: timeStringToInteger(milestoneForm.workOrderMilestoneCompletionTimeString), user.userName, rightNow.getTime(), milestoneForm.workOrderMilestoneId);
|
||||||
database.release();
|
database.close();
|
||||||
return result.changes > 0;
|
return result.changes > 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,22 +4,24 @@ import {
|
||||||
dateToTimeInteger,
|
dateToTimeInteger,
|
||||||
timeStringToInteger
|
timeStringToInteger
|
||||||
} from '@cityssm/utils-datetime'
|
} from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export interface CompleteWorkOrderMilestoneForm {
|
export interface CompleteWorkOrderMilestoneForm {
|
||||||
workOrderMilestoneId: string | number
|
workOrderMilestoneId: number | string
|
||||||
|
|
||||||
workOrderMilestoneCompletionDateString?: string
|
workOrderMilestoneCompletionDateString?: string
|
||||||
workOrderMilestoneCompletionTimeString?: string
|
workOrderMilestoneCompletionTimeString?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function completeWorkOrderMilestone(
|
export default function completeWorkOrderMilestone(
|
||||||
milestoneForm: CompleteWorkOrderMilestoneForm,
|
milestoneForm: CompleteWorkOrderMilestoneForm,
|
||||||
user: User
|
user: User
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const rightNow = new Date()
|
const rightNow = new Date()
|
||||||
|
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(
|
.prepare(
|
||||||
|
|
@ -46,7 +48,7 @@ export default async function completeWorkOrderMilestone(
|
||||||
milestoneForm.workOrderMilestoneId
|
milestoneForm.workOrderMilestoneId
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.changes > 0
|
return result.changes > 0
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,15 @@
|
||||||
import { dateToString } from '@cityssm/utils-datetime';
|
import { dateToString } from '@cityssm/utils-datetime';
|
||||||
|
import sqlite from 'better-sqlite3';
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
import addContract from './addContract.js';
|
import addContract from './addContract.js';
|
||||||
import addContractComment from './addContractComment.js';
|
import addContractComment from './addContractComment.js';
|
||||||
import addContractInterment from './addContractInterment.js';
|
import addContractInterment from './addContractInterment.js';
|
||||||
import getContract from './getContract.js';
|
import getContract from './getContract.js';
|
||||||
import { acquireConnection } from './pool.js';
|
|
||||||
// eslint-disable-next-line complexity
|
// eslint-disable-next-line complexity
|
||||||
export default async function copyContract(oldContractId, user) {
|
export default async function copyContract(oldContractId, user) {
|
||||||
const database = await acquireConnection();
|
const database = sqlite(sunriseDB);
|
||||||
const oldContract = (await getContract(oldContractId, database));
|
const oldContract = (await getContract(oldContractId, database));
|
||||||
const newContractId = await addContract({
|
const newContractId = addContract({
|
||||||
burialSiteId: oldContract.burialSiteId ?? '',
|
burialSiteId: oldContract.burialSiteId ?? '',
|
||||||
contractEndDateString: '',
|
contractEndDateString: '',
|
||||||
contractStartDateString: dateToString(new Date()),
|
contractStartDateString: dateToString(new Date()),
|
||||||
|
|
@ -44,7 +45,7 @@ export default async function copyContract(oldContractId, user) {
|
||||||
* Copy Interments
|
* Copy Interments
|
||||||
*/
|
*/
|
||||||
for (const interment of oldContract.contractInterments ?? []) {
|
for (const interment of oldContract.contractInterments ?? []) {
|
||||||
await addContractInterment({
|
addContractInterment({
|
||||||
birthDateString: interment.birthDateString ?? '',
|
birthDateString: interment.birthDateString ?? '',
|
||||||
birthPlace: interment.birthPlace ?? '',
|
birthPlace: interment.birthPlace ?? '',
|
||||||
contractId: newContractId,
|
contractId: newContractId,
|
||||||
|
|
@ -64,10 +65,10 @@ export default async function copyContract(oldContractId, user) {
|
||||||
/*
|
/*
|
||||||
* Add Comment
|
* Add Comment
|
||||||
*/
|
*/
|
||||||
await addContractComment({
|
addContractComment({
|
||||||
comment: `New record copied from #${oldContractId}.`,
|
comment: `New record copied from #${oldContractId}.`,
|
||||||
contractId: newContractId
|
contractId: newContractId
|
||||||
}, user);
|
}, user);
|
||||||
database.release();
|
database.close();
|
||||||
return newContractId;
|
return newContractId;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,24 @@
|
||||||
import { dateToString } from '@cityssm/utils-datetime'
|
import { dateToString } from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
import type { Contract } from '../types/record.types.js'
|
import type { Contract } from '../types/record.types.js'
|
||||||
|
|
||||||
import addContract from './addContract.js'
|
import addContract from './addContract.js'
|
||||||
import addContractComment from './addContractComment.js'
|
import addContractComment from './addContractComment.js'
|
||||||
import addContractInterment from './addContractInterment.js'
|
import addContractInterment from './addContractInterment.js'
|
||||||
import getContract from './getContract.js'
|
import getContract from './getContract.js'
|
||||||
import { acquireConnection } from './pool.js'
|
|
||||||
|
|
||||||
// eslint-disable-next-line complexity
|
// eslint-disable-next-line complexity
|
||||||
export default async function copyContract(
|
export default async function copyContract(
|
||||||
oldContractId: number | string,
|
oldContractId: number | string,
|
||||||
user: User
|
user: User
|
||||||
): Promise<number> {
|
): Promise<number> {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const oldContract = (await getContract(oldContractId, database)) as Contract
|
const oldContract = (await getContract(oldContractId, database)) as Contract
|
||||||
|
|
||||||
const newContractId = await addContract(
|
const newContractId = addContract(
|
||||||
{
|
{
|
||||||
burialSiteId: oldContract.burialSiteId ?? '',
|
burialSiteId: oldContract.burialSiteId ?? '',
|
||||||
contractEndDateString: '',
|
contractEndDateString: '',
|
||||||
|
|
@ -74,7 +75,7 @@ export default async function copyContract(
|
||||||
*/
|
*/
|
||||||
|
|
||||||
for (const interment of oldContract.contractInterments ?? []) {
|
for (const interment of oldContract.contractInterments ?? []) {
|
||||||
await addContractInterment(
|
addContractInterment(
|
||||||
{
|
{
|
||||||
birthDateString: interment.birthDateString ?? '',
|
birthDateString: interment.birthDateString ?? '',
|
||||||
birthPlace: interment.birthPlace ?? '',
|
birthPlace: interment.birthPlace ?? '',
|
||||||
|
|
@ -102,7 +103,7 @@ export default async function copyContract(
|
||||||
* Add Comment
|
* Add Comment
|
||||||
*/
|
*/
|
||||||
|
|
||||||
await addContractComment(
|
addContractComment(
|
||||||
{
|
{
|
||||||
comment: `New record copied from #${oldContractId}.`,
|
comment: `New record copied from #${oldContractId}.`,
|
||||||
contractId: newContractId
|
contractId: newContractId
|
||||||
|
|
@ -110,7 +111,7 @@ export default async function copyContract(
|
||||||
user
|
user
|
||||||
)
|
)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return newContractId
|
return newContractId
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
export declare function deleteBurialSite(burialSiteId: number, user: User): Promise<boolean>;
|
export declare function deleteBurialSite(burialSiteId: number, user: User): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { dateToInteger } from '@cityssm/utils-datetime';
|
import { dateToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export async function deleteBurialSite(burialSiteId, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export function deleteBurialSite(burialSiteId, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
/*
|
/*
|
||||||
* Ensure no active contracts reference the burial site
|
* Ensure no active contracts reference the burial site
|
||||||
*/
|
*/
|
||||||
|
|
@ -15,7 +16,7 @@ export async function deleteBurialSite(burialSiteId, user) {
|
||||||
.pluck()
|
.pluck()
|
||||||
.get(burialSiteId, currentDateInteger);
|
.get(burialSiteId, currentDateInteger);
|
||||||
if (activeContract !== undefined) {
|
if (activeContract !== undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
|
|
@ -46,6 +47,6 @@ export async function deleteBurialSite(burialSiteId, user) {
|
||||||
where burialSiteId = ?
|
where burialSiteId = ?
|
||||||
and recordDelete_timeMillis is null`)
|
and recordDelete_timeMillis is null`)
|
||||||
.run(user.userName, rightNowMillis, burialSiteId);
|
.run(user.userName, rightNowMillis, burialSiteId);
|
||||||
database.release();
|
database.close();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,10 @@
|
||||||
import { dateToInteger } from '@cityssm/utils-datetime'
|
import { dateToInteger } from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export async function deleteBurialSite(
|
export function deleteBurialSite(burialSiteId: number, user: User): boolean {
|
||||||
burialSiteId: number,
|
const database = sqlite(sunriseDB)
|
||||||
user: User
|
|
||||||
): Promise<boolean> {
|
|
||||||
const database = await acquireConnection()
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Ensure no active contracts reference the burial site
|
* Ensure no active contracts reference the burial site
|
||||||
|
|
@ -26,7 +24,7 @@ export async function deleteBurialSite(
|
||||||
.get(burialSiteId, currentDateInteger) as number | undefined
|
.get(burialSiteId, currentDateInteger) as number | undefined
|
||||||
|
|
||||||
if (activeContract !== undefined) {
|
if (activeContract !== undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -70,7 +68,7 @@ export async function deleteBurialSite(
|
||||||
)
|
)
|
||||||
.run(user.userName, rightNowMillis, burialSiteId)
|
.run(user.userName, rightNowMillis, burialSiteId)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1,2 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool';
|
import sqlite from 'better-sqlite3';
|
||||||
export default function deleteBurialSiteField(burialSiteId: number | string, burialSiteTypeFieldId: number | string, user: User, connectedDatabase?: PoolConnection): Promise<boolean>;
|
export default function deleteBurialSiteField(burialSiteId: number | string, burialSiteTypeFieldId: number | string, user: User, connectedDatabase?: sqlite.Database): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function deleteBurialSiteField(burialSiteId, burialSiteTypeFieldId, user, connectedDatabase) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = connectedDatabase ?? (await acquireConnection());
|
export default function deleteBurialSiteField(burialSiteId, burialSiteTypeFieldId, user, connectedDatabase) {
|
||||||
|
const database = connectedDatabase ?? sqlite(sunriseDB);
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`update BurialSiteFields
|
.prepare(`update BurialSiteFields
|
||||||
set recordDelete_userName = ?,
|
set recordDelete_userName = ?,
|
||||||
|
|
@ -9,7 +10,7 @@ export default async function deleteBurialSiteField(burialSiteId, burialSiteType
|
||||||
and burialSiteTypeFieldId = ?`)
|
and burialSiteTypeFieldId = ?`)
|
||||||
.run(user.userName, Date.now(), burialSiteId, burialSiteTypeFieldId);
|
.run(user.userName, Date.now(), burialSiteId, burialSiteTypeFieldId);
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
}
|
}
|
||||||
return result.changes > 0;
|
return result.changes > 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
import type { PoolConnection } from 'better-sqlite-pool'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export default async function deleteBurialSiteField(
|
export default function deleteBurialSiteField(
|
||||||
burialSiteId: number | string,
|
burialSiteId: number | string,
|
||||||
burialSiteTypeFieldId: number | string,
|
burialSiteTypeFieldId: number | string,
|
||||||
user: User,
|
user: User,
|
||||||
connectedDatabase?: PoolConnection
|
connectedDatabase?: sqlite.Database
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = connectedDatabase ?? (await acquireConnection())
|
const database = connectedDatabase ?? sqlite(sunriseDB)
|
||||||
|
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(
|
.prepare(
|
||||||
|
|
@ -21,7 +21,7 @@ export default async function deleteBurialSiteField(
|
||||||
.run(user.userName, Date.now(), burialSiteId, burialSiteTypeFieldId)
|
.run(user.userName, Date.now(), burialSiteId, burialSiteTypeFieldId)
|
||||||
|
|
||||||
if (connectedDatabase === undefined) {
|
if (connectedDatabase === undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
return result.changes > 0
|
return result.changes > 0
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
export default function deleteCemetery(cemeteryId: number | string, user: User): Promise<boolean>;
|
export default function deleteCemetery(cemeteryId: number | string, user: User): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { dateToInteger } from '@cityssm/utils-datetime';
|
import { dateToInteger } from '@cityssm/utils-datetime';
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function deleteCemetery(cemeteryId, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function deleteCemetery(cemeteryId, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
/*
|
/*
|
||||||
* Ensure no active contracts reference the cemetery
|
* Ensure no active contracts reference the cemetery
|
||||||
*/
|
*/
|
||||||
|
|
@ -16,7 +17,7 @@ export default async function deleteCemetery(cemeteryId, user) {
|
||||||
.pluck()
|
.pluck()
|
||||||
.get(cemeteryId, currentDateInteger);
|
.get(cemeteryId, currentDateInteger);
|
||||||
if (activeContract !== undefined) {
|
if (activeContract !== undefined) {
|
||||||
database.release();
|
database.close();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
|
|
@ -56,6 +57,6 @@ export default async function deleteCemetery(cemeteryId, user) {
|
||||||
select burialSiteId from BurialSites where cemeteryId = ?)
|
select burialSiteId from BurialSites where cemeteryId = ?)
|
||||||
and recordDelete_timeMillis is null`)
|
and recordDelete_timeMillis is null`)
|
||||||
.run(user.userName, rightNowMillis, cemeteryId);
|
.run(user.userName, rightNowMillis, cemeteryId);
|
||||||
database.release();
|
database.close();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
import { dateToInteger } from '@cityssm/utils-datetime'
|
import { dateToInteger } from '@cityssm/utils-datetime'
|
||||||
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
import { acquireConnection } from './pool.js'
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
export default async function deleteCemetery(
|
export default function deleteCemetery(
|
||||||
cemeteryId: number | string,
|
cemeteryId: number | string,
|
||||||
user: User
|
user: User
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Ensure no active contracts reference the cemetery
|
* Ensure no active contracts reference the cemetery
|
||||||
|
|
@ -27,7 +28,7 @@ export default async function deleteCemetery(
|
||||||
.get(cemeteryId, currentDateInteger) as number | undefined
|
.get(cemeteryId, currentDateInteger) as number | undefined
|
||||||
|
|
||||||
if (activeContract !== undefined) {
|
if (activeContract !== undefined) {
|
||||||
database.release()
|
database.close()
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -83,7 +84,7 @@ export default async function deleteCemetery(
|
||||||
)
|
)
|
||||||
.run(user.userName, rightNowMillis, cemeteryId)
|
.run(user.userName, rightNowMillis, cemeteryId)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
export default function deleteContractFee(contractId: number | string, feeId: number | string, user: User): Promise<boolean>;
|
export default function deleteContractFee(contractId: number | string, feeId: number | string, user: User): boolean;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
import { acquireConnection } from './pool.js';
|
import sqlite from 'better-sqlite3';
|
||||||
export default async function deleteContractFee(contractId, feeId, user) {
|
import { sunriseDB } from '../helpers/database.helpers.js';
|
||||||
const database = await acquireConnection();
|
export default function deleteContractFee(contractId, feeId, user) {
|
||||||
|
const database = sqlite(sunriseDB);
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(`update ContractFees
|
.prepare(`update ContractFees
|
||||||
set recordDelete_userName = ?,
|
set recordDelete_userName = ?,
|
||||||
|
|
@ -8,6 +9,6 @@ export default async function deleteContractFee(contractId, feeId, user) {
|
||||||
where contractId = ?
|
where contractId = ?
|
||||||
and feeId = ?`)
|
and feeId = ?`)
|
||||||
.run(user.userName, Date.now(), contractId, feeId);
|
.run(user.userName, Date.now(), contractId, feeId);
|
||||||
database.release();
|
database.close();
|
||||||
return result.changes > 0;
|
return result.changes > 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
import { acquireConnection } from './pool.js'
|
import sqlite from 'better-sqlite3'
|
||||||
|
|
||||||
export default async function deleteContractFee(
|
import { sunriseDB } from '../helpers/database.helpers.js'
|
||||||
|
|
||||||
|
export default function deleteContractFee(
|
||||||
contractId: number | string,
|
contractId: number | string,
|
||||||
feeId: number | string,
|
feeId: number | string,
|
||||||
user: User
|
user: User
|
||||||
): Promise<boolean> {
|
): boolean {
|
||||||
const database = await acquireConnection()
|
const database = sqlite(sunriseDB)
|
||||||
|
|
||||||
const result = database
|
const result = database
|
||||||
.prepare(
|
.prepare(
|
||||||
|
|
@ -17,7 +19,7 @@ export default async function deleteContractFee(
|
||||||
)
|
)
|
||||||
.run(user.userName, Date.now(), contractId, feeId)
|
.run(user.userName, Date.now(), contractId, feeId)
|
||||||
|
|
||||||
database.release()
|
database.close()
|
||||||
|
|
||||||
return result.changes > 0
|
return result.changes > 0
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue