don't do gp integration on search

deepsource-autofix-76c6eb20
Dan Gowans 2023-04-19 09:43:11 -04:00
parent 75cdf7e036
commit e262651a03
13 changed files with 26 additions and 12 deletions

View File

@ -2,7 +2,7 @@ import { addLotOccupancyTransaction } from '../../helpers/lotOccupancyDB/addLotO
import { getLotOccupancyTransactions } from '../../helpers/lotOccupancyDB/getLotOccupancyTransactions.js'; import { getLotOccupancyTransactions } from '../../helpers/lotOccupancyDB/getLotOccupancyTransactions.js';
export async function handler(request, response) { export async function handler(request, response) {
await addLotOccupancyTransaction(request.body, request.session); await addLotOccupancyTransaction(request.body, request.session);
const lotOccupancyTransactions = await getLotOccupancyTransactions(request.body.lotOccupancyId); const lotOccupancyTransactions = await getLotOccupancyTransactions(request.body.lotOccupancyId, { includeIntegrations: true });
response.json({ response.json({
success: true, success: true,
lotOccupancyTransactions lotOccupancyTransactions

View File

@ -11,7 +11,8 @@ export async function handler(
await addLotOccupancyTransaction(request.body, request.session) await addLotOccupancyTransaction(request.body, request.session)
const lotOccupancyTransactions = await getLotOccupancyTransactions( const lotOccupancyTransactions = await getLotOccupancyTransactions(
request.body.lotOccupancyId request.body.lotOccupancyId,
{ includeIntegrations: true }
) )
response.json({ response.json({

View File

@ -2,7 +2,7 @@ import { deleteLotOccupancyTransaction } from '../../helpers/lotOccupancyDB/dele
import { getLotOccupancyTransactions } from '../../helpers/lotOccupancyDB/getLotOccupancyTransactions.js'; import { getLotOccupancyTransactions } from '../../helpers/lotOccupancyDB/getLotOccupancyTransactions.js';
export async function handler(request, response) { export async function handler(request, response) {
const success = await deleteLotOccupancyTransaction(request.body.lotOccupancyId, request.body.transactionIndex, request.session); const success = await deleteLotOccupancyTransaction(request.body.lotOccupancyId, request.body.transactionIndex, request.session);
const lotOccupancyTransactions = await getLotOccupancyTransactions(request.body.lotOccupancyId); const lotOccupancyTransactions = await getLotOccupancyTransactions(request.body.lotOccupancyId, { includeIntegrations: true });
response.json({ response.json({
success, success,
lotOccupancyTransactions lotOccupancyTransactions

View File

@ -15,7 +15,8 @@ export async function handler(
) )
const lotOccupancyTransactions = await getLotOccupancyTransactions( const lotOccupancyTransactions = await getLotOccupancyTransactions(
request.body.lotOccupancyId request.body.lotOccupancyId,
{ includeIntegrations: true }
) )
response.json({ response.json({

View File

@ -2,7 +2,7 @@ import { updateLotOccupancyTransaction } from '../../helpers/lotOccupancyDB/upda
import { getLotOccupancyTransactions } from '../../helpers/lotOccupancyDB/getLotOccupancyTransactions.js'; import { getLotOccupancyTransactions } from '../../helpers/lotOccupancyDB/getLotOccupancyTransactions.js';
export async function handler(request, response) { export async function handler(request, response) {
await updateLotOccupancyTransaction(request.body, request.session); await updateLotOccupancyTransaction(request.body, request.session);
const lotOccupancyTransactions = await getLotOccupancyTransactions(request.body.lotOccupancyId); const lotOccupancyTransactions = await getLotOccupancyTransactions(request.body.lotOccupancyId, { includeIntegrations: true });
response.json({ response.json({
success: true, success: true,
lotOccupancyTransactions lotOccupancyTransactions

View File

@ -11,7 +11,8 @@ export async function handler(
await updateLotOccupancyTransaction(request.body, request.session) await updateLotOccupancyTransaction(request.body, request.session)
const lotOccupancyTransactions = await getLotOccupancyTransactions( const lotOccupancyTransactions = await getLotOccupancyTransactions(
request.body.lotOccupancyId request.body.lotOccupancyId,
{ includeIntegrations: true }
) )
response.json({ response.json({

View File

@ -70,7 +70,7 @@ async function addInclusions(lotOccupancy, options, database) {
lotOccupancy.lotOccupancyFees = await getLotOccupancyFees(lotOccupancy.lotOccupancyId, database); lotOccupancy.lotOccupancyFees = await getLotOccupancyFees(lotOccupancy.lotOccupancyId, database);
} }
if (options.includeTransactions) { if (options.includeTransactions) {
lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions(lotOccupancy.lotOccupancyId, database); lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions(lotOccupancy.lotOccupancyId, { includeIntegrations: false }, database);
} }
if (options.includeOccupants) { if (options.includeOccupants) {
lotOccupancy.lotOccupancyOccupants = await getLotOccupancyOccupants(lotOccupancy.lotOccupancyId, database); lotOccupancy.lotOccupancyOccupants = await getLotOccupancyOccupants(lotOccupancy.lotOccupancyId, database);

View File

@ -150,6 +150,7 @@ async function addInclusions(
if (options.includeTransactions) { if (options.includeTransactions) {
lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions( lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions(
lotOccupancy.lotOccupancyId!, lotOccupancy.lotOccupancyId!,
{ includeIntegrations: false },
database database
) )
} }

View File

@ -29,7 +29,7 @@ export async function getLotOccupancy(lotOccupancyId, connectedDatabase) {
lotOccupancy.lotOccupancyOccupants = await getLotOccupancyOccupants(lotOccupancyId, database); lotOccupancy.lotOccupancyOccupants = await getLotOccupancyOccupants(lotOccupancyId, database);
lotOccupancy.lotOccupancyComments = await getLotOccupancyComments(lotOccupancyId, database); lotOccupancy.lotOccupancyComments = await getLotOccupancyComments(lotOccupancyId, database);
lotOccupancy.lotOccupancyFees = await getLotOccupancyFees(lotOccupancyId, database); lotOccupancy.lotOccupancyFees = await getLotOccupancyFees(lotOccupancyId, database);
lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions(lotOccupancyId, database); lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions(lotOccupancyId, { includeIntegrations: true }, database);
const workOrdersResults = await getWorkOrders({ const workOrdersResults = await getWorkOrders({
lotOccupancyId lotOccupancyId
}, { }, {

View File

@ -57,6 +57,7 @@ export async function getLotOccupancy(
) )
lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions( lotOccupancy.lotOccupancyTransactions = await getLotOccupancyTransactions(
lotOccupancyId, lotOccupancyId,
{ includeIntegrations: true },
database database
) )

View File

@ -1,4 +1,6 @@
import type { PoolConnection } from 'better-sqlite-pool'; import type { PoolConnection } from 'better-sqlite-pool';
import type * as recordTypes from '../../types/recordTypes'; import type * as recordTypes from '../../types/recordTypes';
export declare function getLotOccupancyTransactions(lotOccupancyId: number | string, connectedDatabase?: PoolConnection): Promise<recordTypes.LotOccupancyTransaction[]>; export declare function getLotOccupancyTransactions(lotOccupancyId: number | string, options: {
includeIntegrations: boolean;
}, connectedDatabase?: PoolConnection): Promise<recordTypes.LotOccupancyTransaction[]>;
export default getLotOccupancyTransactions; export default getLotOccupancyTransactions;

View File

@ -2,7 +2,7 @@ import { acquireConnection } from './pool.js';
import { dateIntegerToString, timeIntegerToString } from '@cityssm/utils-datetime'; import { dateIntegerToString, timeIntegerToString } from '@cityssm/utils-datetime';
import * as configFunctions from '../functions.config.js'; import * as configFunctions from '../functions.config.js';
import * as gpFunctions from '../functions.dynamicsGP.js'; import * as gpFunctions from '../functions.dynamicsGP.js';
export async function getLotOccupancyTransactions(lotOccupancyId, connectedDatabase) { export async function getLotOccupancyTransactions(lotOccupancyId, options, connectedDatabase) {
const database = connectedDatabase ?? (await acquireConnection()); const database = connectedDatabase ?? (await acquireConnection());
database.function('userFn_dateIntegerToString', dateIntegerToString); database.function('userFn_dateIntegerToString', dateIntegerToString);
database.function('userFn_timeIntegerToString', timeIntegerToString); database.function('userFn_timeIntegerToString', timeIntegerToString);
@ -19,7 +19,8 @@ export async function getLotOccupancyTransactions(lotOccupancyId, connectedDatab
if (connectedDatabase === undefined) { if (connectedDatabase === undefined) {
database.release(); database.release();
} }
if (configFunctions.getProperty('settings.dynamicsGP.integrationIsEnabled')) { if ((options?.includeIntegrations ?? false) &&
configFunctions.getProperty('settings.dynamicsGP.integrationIsEnabled')) {
for (const transaction of lotOccupancyTransactions) { for (const transaction of lotOccupancyTransactions) {
if ((transaction.externalReceiptNumber ?? '') !== '') { if ((transaction.externalReceiptNumber ?? '') !== '') {
const gpDocument = await gpFunctions.getDynamicsGPDocument(transaction.externalReceiptNumber); const gpDocument = await gpFunctions.getDynamicsGPDocument(transaction.externalReceiptNumber);

View File

@ -13,6 +13,9 @@ import type * as recordTypes from '../../types/recordTypes'
export async function getLotOccupancyTransactions( export async function getLotOccupancyTransactions(
lotOccupancyId: number | string, lotOccupancyId: number | string,
options: {
includeIntegrations: boolean
},
connectedDatabase?: PoolConnection connectedDatabase?: PoolConnection
): Promise<recordTypes.LotOccupancyTransaction[]> { ): Promise<recordTypes.LotOccupancyTransaction[]> {
const database = connectedDatabase ?? (await acquireConnection()) const database = connectedDatabase ?? (await acquireConnection())
@ -37,7 +40,10 @@ export async function getLotOccupancyTransactions(
database.release() database.release()
} }
if (configFunctions.getProperty('settings.dynamicsGP.integrationIsEnabled')) { if (
(options?.includeIntegrations ?? false) &&
configFunctions.getProperty('settings.dynamicsGP.integrationIsEnabled')
) {
for (const transaction of lotOccupancyTransactions) { for (const transaction of lotOccupancyTransactions) {
if ((transaction.externalReceiptNumber ?? '') !== '') { if ((transaction.externalReceiptNumber ?? '') !== '') {
const gpDocument = await gpFunctions.getDynamicsGPDocument( const gpDocument = await gpFunctions.getDynamicsGPDocument(