deepsource-autofix-76c6eb20
Dan Gowans 2023-01-05 15:51:47 -05:00
parent 1710f5ca1e
commit b86bc6cd6a
6 changed files with 30 additions and 54 deletions

View File

@ -3,10 +3,8 @@ import Debug from "debug";
const debug = Debug("lot-occupancy-system:databasePaths"); const debug = Debug("lot-occupancy-system:databasePaths");
export const useTestDatabases = configFunctions.getProperty("application.useTestDatabases") || process.env.TEST_DATABASES === "true"; export const useTestDatabases = configFunctions.getProperty("application.useTestDatabases") || process.env.TEST_DATABASES === "true";
if (useTestDatabases) { if (useTestDatabases) {
debug("Using \"-testing\" databases."); debug('Using "-testing" databases.');
} }
export const lotOccupancyDB_live = "data/lotOccupancy.db"; export const lotOccupancyDB_live = "data/lotOccupancy.db";
export const lotOccupancyDB_testing = "data/lotOccupancy-testing.db"; export const lotOccupancyDB_testing = "data/lotOccupancy-testing.db";
export const lotOccupancyDB = useTestDatabases export const lotOccupancyDB = useTestDatabases ? lotOccupancyDB_testing : lotOccupancyDB_live;
? lotOccupancyDB_testing
: lotOccupancyDB_live;

View File

@ -6,15 +6,13 @@ const debug = Debug("lot-occupancy-system:databasePaths");
// Determine if test databases should be used // Determine if test databases should be used
export const useTestDatabases = export const useTestDatabases =
configFunctions.getProperty("application.useTestDatabases") || process.env.TEST_DATABASES === "true"; configFunctions.getProperty("application.useTestDatabases") || process.env.TEST_DATABASES === "true";
if (useTestDatabases) { if (useTestDatabases) {
debug("Using \"-testing\" databases."); debug('Using "-testing" databases.');
} }
export const lotOccupancyDB_live = "data/lotOccupancy.db"; export const lotOccupancyDB_live = "data/lotOccupancy.db";
export const lotOccupancyDB_testing = "data/lotOccupancy-testing.db"; export const lotOccupancyDB_testing = "data/lotOccupancy-testing.db";
export const lotOccupancyDB = useTestDatabases export const lotOccupancyDB = useTestDatabases ? lotOccupancyDB_testing : lotOccupancyDB_live;
? lotOccupancyDB_testing
: lotOccupancyDB_live;

View File

@ -3,17 +3,14 @@ import { lotOccupancyDB as databasePath } from "../../data/databasePaths.js";
import { getLotFields } from "./getLotFields.js"; import { getLotFields } from "./getLotFields.js";
import { getLotComments } from "./getLotComments.js"; import { getLotComments } from "./getLotComments.js";
import { getLotOccupancies } from "./getLotOccupancies.js"; import { getLotOccupancies } from "./getLotOccupancies.js";
const baseSQL = "select l.lotId," + const baseSQL = `select l.lotId, l.lotTypeId, t.lotType, l.lotName, l.lotStatusId, s.lotStatus,
" l.lotTypeId, t.lotType," + l.mapId, m.mapName, m.mapSVG, l.mapKey,
" l.lotName," + l.lotLatitude, l.lotLongitude
" l.lotStatusId, s.lotStatus," + from Lots l
" l.mapId, m.mapName, m.mapSVG, l.mapKey," + left join LotTypes t on l.lotTypeId = t.lotTypeId
" l.lotLatitude, l.lotLongitude" + left join LotStatuses s on l.lotStatusId = s.lotStatusId
" from Lots l" + left join Maps m on l.mapId = m.mapId
" left join LotTypes t on l.lotTypeId = t.lotTypeId" + where l.recordDelete_timeMillis is null`;
" left join LotStatuses s on l.lotStatusId = s.lotStatusId" +
" left join Maps m on l.mapId = m.mapId" +
" where l.recordDelete_timeMillis is null";
function _getLot(sql, lotId_or_lotName) { function _getLot(sql, lotId_or_lotName) {
const database = sqlite(databasePath, { const database = sqlite(databasePath, {
readonly: true readonly: true

View File

@ -10,18 +10,14 @@ import { getLotOccupancies } from "./getLotOccupancies.js";
import type * as recordTypes from "../../types/recordTypes"; import type * as recordTypes from "../../types/recordTypes";
const baseSQL = const baseSQL = `select l.lotId, l.lotTypeId, t.lotType, l.lotName, l.lotStatusId, s.lotStatus,
"select l.lotId," + l.mapId, m.mapName, m.mapSVG, l.mapKey,
" l.lotTypeId, t.lotType," + l.lotLatitude, l.lotLongitude
" l.lotName," + from Lots l
" l.lotStatusId, s.lotStatus," + left join LotTypes t on l.lotTypeId = t.lotTypeId
" l.mapId, m.mapName, m.mapSVG, l.mapKey," + left join LotStatuses s on l.lotStatusId = s.lotStatusId
" l.lotLatitude, l.lotLongitude" + left join Maps m on l.mapId = m.mapId
" from Lots l" + where l.recordDelete_timeMillis is null`;
" left join LotTypes t on l.lotTypeId = t.lotTypeId" +
" left join LotStatuses s on l.lotStatusId = s.lotStatusId" +
" left join Maps m on l.mapId = m.mapId" +
" where l.recordDelete_timeMillis is null";
function _getLot(sql: string, lotId_or_lotName: number | string): recordTypes.Lot | undefined { function _getLot(sql: string, lotId_or_lotName: number | string): recordTypes.Lot | undefined {
const database = sqlite(databasePath, { const database = sqlite(databasePath, {

View File

@ -29,8 +29,7 @@ function buildWhereClause(filters) {
break; break;
} }
case "recent": { case "recent": {
sqlWhereClause += sqlWhereClause += " and m.workOrderMilestoneDate >= ? and m.workOrderMilestoneDate <= ?";
" and m.workOrderMilestoneDate >= ? and m.workOrderMilestoneDate <= ?";
sqlParameters.push(recentBeforeDateNumber, recentAfterDateNumber); sqlParameters.push(recentBeforeDateNumber, recentAfterDateNumber);
break; break;
} }
@ -44,8 +43,7 @@ function buildWhereClause(filters) {
} }
if (filters.workOrderMilestoneTypeIds && if (filters.workOrderMilestoneTypeIds &&
commaSeparatedNumbersRegex.test(filters.workOrderMilestoneTypeIds)) { commaSeparatedNumbersRegex.test(filters.workOrderMilestoneTypeIds)) {
sqlWhereClause += sqlWhereClause += " and m.workOrderMilestoneTypeId in (" + filters.workOrderMilestoneTypeIds + ")";
" and m.workOrderMilestoneTypeId in (" + filters.workOrderMilestoneTypeIds + ")";
} }
return { return {
sqlWhereClause, sqlWhereClause,
@ -98,9 +96,7 @@ export function getWorkOrderMilestones(filters, options, connectedDatabase) {
" left join WorkOrderTypes wt on w.workOrderTypeId = wt.workOrderTypeId" + " left join WorkOrderTypes wt on w.workOrderTypeId = wt.workOrderTypeId" +
sqlWhereClause + sqlWhereClause +
orderByClause; orderByClause;
const workOrderMilestones = database const workOrderMilestones = database.prepare(sql).all(sqlParameters);
.prepare(sql)
.all(sqlParameters);
if (options.includeWorkOrders) { if (options.includeWorkOrders) {
for (const workOrderMilestone of workOrderMilestones) { for (const workOrderMilestone of workOrderMilestones) {
workOrderMilestone.workOrderLots = getLots({ workOrderMilestone.workOrderLots = getLots({

View File

@ -35,8 +35,7 @@ function buildWhereClause(filters: WorkOrderMilestoneFilters): {
sqlWhereClause: string; sqlWhereClause: string;
sqlParameters: unknown[]; sqlParameters: unknown[];
} { } {
let sqlWhereClause = let sqlWhereClause = " where m.recordDelete_timeMillis is null and w.recordDelete_timeMillis is null";
" where m.recordDelete_timeMillis is null and w.recordDelete_timeMillis is null";
const sqlParameters: unknown[] = []; const sqlParameters: unknown[] = [];
if (filters.workOrderId) { if (filters.workOrderId) {
@ -49,18 +48,14 @@ function buildWhereClause(filters: WorkOrderMilestoneFilters): {
date.setDate( date.setDate(
date.getDate() - date.getDate() -
configFunctions.getProperty( configFunctions.getProperty("settings.workOrders.workOrderMilestoneDateRecentBeforeDays")
"settings.workOrders.workOrderMilestoneDateRecentBeforeDays"
)
); );
const recentBeforeDateNumber = dateToInteger(date); const recentBeforeDateNumber = dateToInteger(date);
date.setDate( date.setDate(
date.getDate() + date.getDate() +
configFunctions.getProperty( configFunctions.getProperty("settings.workOrders.workOrderMilestoneDateRecentBeforeDays") +
"settings.workOrders.workOrderMilestoneDateRecentBeforeDays"
) +
configFunctions.getProperty("settings.workOrders.workOrderMilestoneDateRecentAfterDays") configFunctions.getProperty("settings.workOrders.workOrderMilestoneDateRecentAfterDays")
); );
@ -75,8 +70,7 @@ function buildWhereClause(filters: WorkOrderMilestoneFilters): {
} }
case "recent": { case "recent": {
sqlWhereClause += sqlWhereClause += " and m.workOrderMilestoneDate >= ? and m.workOrderMilestoneDate <= ?";
" and m.workOrderMilestoneDate >= ? and m.workOrderMilestoneDate <= ?";
sqlParameters.push(recentBeforeDateNumber, recentAfterDateNumber); sqlParameters.push(recentBeforeDateNumber, recentAfterDateNumber);
break; break;
} }
@ -95,8 +89,7 @@ function buildWhereClause(filters: WorkOrderMilestoneFilters): {
filters.workOrderMilestoneTypeIds && filters.workOrderMilestoneTypeIds &&
commaSeparatedNumbersRegex.test(filters.workOrderMilestoneTypeIds) commaSeparatedNumbersRegex.test(filters.workOrderMilestoneTypeIds)
) { ) {
sqlWhereClause += sqlWhereClause += " and m.workOrderMilestoneTypeId in (" + filters.workOrderMilestoneTypeIds + ")";
" and m.workOrderMilestoneTypeId in (" + filters.workOrderMilestoneTypeIds + ")";
} }
return { return {
@ -167,9 +160,7 @@ export function getWorkOrderMilestones(
sqlWhereClause + sqlWhereClause +
orderByClause; orderByClause;
const workOrderMilestones: recordTypes.WorkOrderMilestone[] = database const workOrderMilestones: recordTypes.WorkOrderMilestone[] = database.prepare(sql).all(sqlParameters);
.prepare(sql)
.all(sqlParameters);
if (options.includeWorkOrders) { if (options.includeWorkOrders) {
for (const workOrderMilestone of workOrderMilestones) { for (const workOrderMilestone of workOrderMilestones) {