tidy up temp scripts

deepsource-autofix-76c6eb20
Dan Gowans 2023-03-10 13:22:31 -05:00
parent ee66338ee7
commit 2bed8f0289
4 changed files with 70 additions and 45 deletions

View File

@ -36,24 +36,29 @@ const user = {
}; };
function purgeTables() { function purgeTables() {
console.time('purgeTables'); console.time('purgeTables');
const tablesToPurge = [
'WorkOrderMilestones',
'WorkOrderComments',
'WorkOrderLots',
'WorkOrderLotOccupancies',
'WorkOrders',
'LotOccupancyTransactions',
'LotOccupancyFees',
'LotOccupancyFields',
'LotOccupancyComments',
'LotOccupancyOccupants',
'LotOccupancies',
'LotFields',
'LotComments',
'Lots'
];
const database = sqlite(databasePath); const database = sqlite(databasePath);
database.prepare('delete from WorkOrderMilestones').run(); for (const tableName of tablesToPurge) {
database.prepare('delete from WorkOrderComments').run(); database.prepare(`delete from ${tableName}`).run();
database.prepare('delete from WorkOrderLots').run(); database
database.prepare('delete from WorkOrderLotOccupancies').run(); .prepare('delete from sqlite_sequence where name = ?')
database.prepare('delete from WorkOrders').run(); .run(tableName);
database.prepare('delete from LotOccupancyTransactions').run(); }
database.prepare('delete from LotOccupancyFees').run();
database.prepare('delete from LotOccupancyFields').run();
database.prepare('delete from LotOccupancyComments').run();
database.prepare('delete from LotOccupancyOccupants').run();
database.prepare('delete from LotOccupancies').run();
database.prepare('delete from LotFields').run();
database.prepare('delete from LotComments').run();
database.prepare('delete from Lots').run();
database
.prepare("delete from sqlite_sequence where name in ('Lots', 'LotComments', 'LotOccupancies', 'LotOccupancyComments', 'WorkOrders', 'WorkOrderComments', 'WorkOrderMilestones')")
.run();
database.close(); database.close();
console.timeEnd('purgeTables'); console.timeEnd('purgeTables');
} }
@ -120,7 +125,7 @@ async function getMap(dataRow) {
mapPostalCode: '', mapPostalCode: '',
mapPhoneNumber: '' mapPhoneNumber: ''
}, user); }, user);
map = await getMapFromDatabase(mapId); map = (await getMapFromDatabase(mapId));
} }
mapCache.set(mapCacheKey, map); mapCache.set(mapCacheKey, map);
return map; return map;

View File

@ -213,26 +213,32 @@ const user: recordTypes.PartialSession = {
function purgeTables(): void { function purgeTables(): void {
console.time('purgeTables') console.time('purgeTables')
const tablesToPurge = [
'WorkOrderMilestones',
'WorkOrderComments',
'WorkOrderLots',
'WorkOrderLotOccupancies',
'WorkOrders',
'LotOccupancyTransactions',
'LotOccupancyFees',
'LotOccupancyFields',
'LotOccupancyComments',
'LotOccupancyOccupants',
'LotOccupancies',
'LotFields',
'LotComments',
'Lots'
]
const database = sqlite(databasePath) const database = sqlite(databasePath)
database.prepare('delete from WorkOrderMilestones').run()
database.prepare('delete from WorkOrderComments').run() for (const tableName of tablesToPurge) {
database.prepare('delete from WorkOrderLots').run() database.prepare(`delete from ${tableName}`).run()
database.prepare('delete from WorkOrderLotOccupancies').run() database
database.prepare('delete from WorkOrders').run() .prepare('delete from sqlite_sequence where name = ?')
database.prepare('delete from LotOccupancyTransactions').run() .run(tableName)
database.prepare('delete from LotOccupancyFees').run() }
database.prepare('delete from LotOccupancyFields').run()
database.prepare('delete from LotOccupancyComments').run()
database.prepare('delete from LotOccupancyOccupants').run()
database.prepare('delete from LotOccupancies').run()
database.prepare('delete from LotFields').run()
database.prepare('delete from LotComments').run()
database.prepare('delete from Lots').run()
database
.prepare(
"delete from sqlite_sequence where name in ('Lots', 'LotComments', 'LotOccupancies', 'LotOccupancyComments', 'WorkOrders', 'WorkOrderComments', 'WorkOrderMilestones')"
)
.run()
database.close() database.close()
console.timeEnd('purgeTables') console.timeEnd('purgeTables')
@ -329,7 +335,7 @@ async function getMap(dataRow: { cemetery: string }): Promise<recordTypes.Map> {
user user
) )
map = await getMapFromDatabase(mapId) as recordTypes.Map map = (await getMapFromDatabase(mapId)) as recordTypes.Map
} }
mapCache.set(mapCacheKey, map) mapCache.set(mapCacheKey, map)
@ -513,7 +519,8 @@ async function importFromMasterCSV(): Promise<void> {
lotOccupancyId: preneedLotOccupancyId, lotOccupancyId: preneedLotOccupancyId,
lotOccupancyCommentDateString: preneedOccupancyStartDateString, lotOccupancyCommentDateString: preneedOccupancyStartDateString,
lotOccupancyCommentTimeString: '00:00', lotOccupancyCommentTimeString: '00:00',
lotOccupancyComment: 'Imported Contract #' + masterRow.CM_WORK_ORDER lotOccupancyComment:
'Imported Contract #' + masterRow.CM_WORK_ORDER
}, },
user user
) )
@ -780,7 +787,8 @@ async function importFromMasterCSV(): Promise<void> {
lotOccupancyId: deceasedLotOccupancyId, lotOccupancyId: deceasedLotOccupancyId,
lotOccupancyCommentDateString: deceasedOccupancyStartDateString, lotOccupancyCommentDateString: deceasedOccupancyStartDateString,
lotOccupancyCommentTimeString: '00:00', lotOccupancyCommentTimeString: '00:00',
lotOccupancyComment: 'Imported Contract #' + masterRow.CM_WORK_ORDER lotOccupancyComment:
'Imported Contract #' + masterRow.CM_WORK_ORDER
}, },
user user
) )

View File

@ -23,7 +23,9 @@ async function importMaps() {
} }
finally { finally {
try { try {
pool.close(); if (pool !== undefined) {
await pool.close();
}
} }
catch { catch {
} }

View File

@ -5,13 +5,21 @@ import * as sql from '@cityssm/mssql-multi-pool'
import { soMSSQL } from './config.js' import { soMSSQL } from './config.js'
import type * as sqlTypes from 'mssql' import type * as sqlTypes from 'mssql'
interface MapLayer {
mapId: string
mapName: string
layerId: string
layerName: string
layerImage: string
}
async function importMaps(): Promise<void> { async function importMaps(): Promise<void> {
let pool: sqlTypes.ConnectionPool let pool: sqlTypes.ConnectionPool | undefined
try { try {
pool = await sql.connect(soMSSQL) pool = await sql.connect(soMSSQL)
const result = await pool.query( const result: sqlTypes.IResult<MapLayer> = await pool.query(
'select m.ID as mapId, m.Name as mapName,' + 'select m.ID as mapId, m.Name as mapName,' +
' l.ID as layerId, l.Name as layerName, l.Image as layerImage' + ' l.ID as layerId, l.Name as layerName, l.Image as layerImage' +
' from Legacy_Maps m' + ' from Legacy_Maps m' +
@ -19,7 +27,7 @@ async function importMaps(): Promise<void> {
) )
for (const layer of result.recordset) { for (const layer of result.recordset) {
const imageBuffer: Buffer = layer.layerImage const imageBuffer = layer.layerImage as unknown as Buffer
const fileName = `${layer.mapName} - ${layer.layerName} (${layer.mapId}, ${layer.layerId}).wmf` const fileName = `${layer.mapName} - ${layer.layerName} (${layer.mapId}, ${layer.layerId}).wmf`
@ -33,7 +41,9 @@ async function importMaps(): Promise<void> {
// ignore // ignore
} finally { } finally {
try { try {
pool.close() if (pool !== undefined) {
await pool.close()
}
} catch { } catch {
// ignore // ignore
} }