linting
parent
6a6081635d
commit
c88e4912f8
|
|
@ -8,12 +8,12 @@ export async function getLotStatusSummary(filters) {
|
|||
sqlParameters.push(filters.mapId);
|
||||
}
|
||||
const lotStatuses = database
|
||||
.prepare('select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount' +
|
||||
' from Lots l' +
|
||||
' left join LotStatuses s on l.lotStatusId = s.lotStatusId' +
|
||||
sqlWhereClause +
|
||||
' group by s.lotStatusId, s.lotStatus, s.orderNumber' +
|
||||
' order by s.orderNumber')
|
||||
.prepare(`select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount
|
||||
from Lots l
|
||||
left join LotStatuses s on l.lotStatusId = s.lotStatusId
|
||||
${sqlWhereClause}
|
||||
group by s.lotStatusId, s.lotStatus, s.orderNumber
|
||||
order by s.orderNumber`)
|
||||
.all(sqlParameters);
|
||||
database.release();
|
||||
return lotStatuses;
|
||||
|
|
|
|||
|
|
@ -25,12 +25,12 @@ export async function getLotStatusSummary(
|
|||
|
||||
const lotStatuses: LotStatusSummary[] = database
|
||||
.prepare(
|
||||
'select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount' +
|
||||
' from Lots l' +
|
||||
' left join LotStatuses s on l.lotStatusId = s.lotStatusId' +
|
||||
sqlWhereClause +
|
||||
' group by s.lotStatusId, s.lotStatus, s.orderNumber' +
|
||||
' order by s.orderNumber'
|
||||
`select s.lotStatusId, s.lotStatus, count(l.lotId) as lotCount
|
||||
from Lots l
|
||||
left join LotStatuses s on l.lotStatusId = s.lotStatusId
|
||||
${sqlWhereClause}
|
||||
group by s.lotStatusId, s.lotStatus, s.orderNumber
|
||||
order by s.orderNumber`
|
||||
)
|
||||
.all(sqlParameters)
|
||||
|
||||
|
|
|
|||
|
|
@ -8,12 +8,12 @@ export async function getLotTypeSummary(filters) {
|
|||
sqlParameters.push(filters.mapId);
|
||||
}
|
||||
const lotTypes = database
|
||||
.prepare('select t.lotTypeId, t.lotType, count(l.lotId) as lotCount' +
|
||||
' from Lots l' +
|
||||
' left join LotTypes t on l.lotTypeId = t.lotTypeId' +
|
||||
sqlWhereClause +
|
||||
' group by t.lotTypeId, t.lotType, t.orderNumber' +
|
||||
' order by t.orderNumber')
|
||||
.prepare(`select t.lotTypeId, t.lotType, count(l.lotId) as lotCount
|
||||
from Lots l
|
||||
left join LotTypes t on l.lotTypeId = t.lotTypeId
|
||||
${sqlWhereClause}
|
||||
group by t.lotTypeId, t.lotType, t.orderNumber
|
||||
order by t.orderNumber`)
|
||||
.all(sqlParameters);
|
||||
database.release();
|
||||
return lotTypes;
|
||||
|
|
|
|||
|
|
@ -25,12 +25,12 @@ export async function getLotTypeSummary(
|
|||
|
||||
const lotTypes: LotTypeSummary[] = database
|
||||
.prepare(
|
||||
'select t.lotTypeId, t.lotType, count(l.lotId) as lotCount' +
|
||||
' from Lots l' +
|
||||
' left join LotTypes t on l.lotTypeId = t.lotTypeId' +
|
||||
sqlWhereClause +
|
||||
' group by t.lotTypeId, t.lotType, t.orderNumber' +
|
||||
' order by t.orderNumber'
|
||||
`select t.lotTypeId, t.lotType, count(l.lotId) as lotCount
|
||||
from Lots l
|
||||
left join LotTypes t on l.lotTypeId = t.lotTypeId
|
||||
${sqlWhereClause}
|
||||
group by t.lotTypeId, t.lotType, t.orderNumber
|
||||
order by t.orderNumber`
|
||||
)
|
||||
.all(sqlParameters)
|
||||
|
||||
|
|
|
|||
|
|
@ -51,8 +51,8 @@ export async function getLots(filters, options, connectedDatabase) {
|
|||
left join (
|
||||
select lotId, count(lotOccupancyId) as lotOccupancyCount from LotOccupancies
|
||||
where recordDelete_timeMillis is null
|
||||
and occupancyStartDate <= ${currentDate}
|
||||
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate})
|
||||
and occupancyStartDate <= ${currentDate.toString()}
|
||||
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate.toString()})
|
||||
group by lotId
|
||||
) o on l.lotId = o.lotId
|
||||
${sqlWhereClause}`)
|
||||
|
|
@ -82,7 +82,9 @@ export async function getLots(filters, options, connectedDatabase) {
|
|||
') o on l.lotId = o.lotId') +
|
||||
sqlWhereClause +
|
||||
' order by userFn_lotNameSortName(l.lotName), l.lotId' +
|
||||
(options.limit === -1 ? '' : ` limit ${options.limit} offset ${options.offset}`))
|
||||
(options.limit === -1
|
||||
? ''
|
||||
: ` limit ${options.limit.toString()} offset ${options.offset.toString()}`))
|
||||
.all(sqlParameters);
|
||||
if (options.limit === -1) {
|
||||
count = lots.length;
|
||||
|
|
|
|||
|
|
@ -97,8 +97,8 @@ export async function getLots(
|
|||
left join (
|
||||
select lotId, count(lotOccupancyId) as lotOccupancyCount from LotOccupancies
|
||||
where recordDelete_timeMillis is null
|
||||
and occupancyStartDate <= ${currentDate}
|
||||
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate})
|
||||
and occupancyStartDate <= ${currentDate.toString()}
|
||||
and (occupancyEndDate is null or occupancyEndDate >= ${currentDate.toString()})
|
||||
group by lotId
|
||||
) o on l.lotId = o.lotId
|
||||
${sqlWhereClause}`
|
||||
|
|
@ -137,7 +137,9 @@ export async function getLots(
|
|||
') o on l.lotId = o.lotId') +
|
||||
sqlWhereClause +
|
||||
' order by userFn_lotNameSortName(l.lotName), l.lotId' +
|
||||
(options.limit === -1 ? '' : ` limit ${options.limit} offset ${options.offset}`)
|
||||
(options.limit === -1
|
||||
? ''
|
||||
: ` limit ${options.limit.toString()} offset ${options.offset.toString()}`)
|
||||
)
|
||||
.all(sqlParameters)
|
||||
|
||||
|
|
|
|||
|
|
@ -9,9 +9,9 @@ export async function getNextWorkOrderNumber(connectedDatabase) {
|
|||
return regex.test(workOrderNumber) ? 1 : 0;
|
||||
});
|
||||
const workOrderNumberRecord = database
|
||||
.prepare('select workOrderNumber from WorkOrders' +
|
||||
' where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1' +
|
||||
" order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc")
|
||||
.prepare(`select workOrderNumber from WorkOrders
|
||||
where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1
|
||||
order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc`)
|
||||
.get();
|
||||
if (connectedDatabase === undefined) {
|
||||
database.release();
|
||||
|
|
|
|||
|
|
@ -24,9 +24,9 @@ export async function getNextWorkOrderNumber(
|
|||
|
||||
const workOrderNumberRecord = database
|
||||
.prepare(
|
||||
'select workOrderNumber from WorkOrders' +
|
||||
' where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1' +
|
||||
" order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc"
|
||||
`select workOrderNumber from WorkOrders
|
||||
where userFn_matchesWorkOrderNumberSyntax(workOrderNumber) = 1
|
||||
order by cast(substr(workOrderNumber, instr(workOrderNumber, '-') + 1) as integer) desc`
|
||||
)
|
||||
.get()
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { updateRecordOrderNumber } from './updateRecordOrderNumber.js';
|
|||
export async function getOccupancyTypeFields(occupancyTypeId, connectedDatabase) {
|
||||
const database = connectedDatabase ?? (await acquireConnection());
|
||||
const sqlParameters = [];
|
||||
if (occupancyTypeId) {
|
||||
if ((occupancyTypeId ?? -1) !== -1) {
|
||||
sqlParameters.push(occupancyTypeId);
|
||||
}
|
||||
const occupancyTypeFields = database
|
||||
|
|
@ -13,9 +13,9 @@ export async function getOccupancyTypeFields(occupancyTypeId, connectedDatabase)
|
|||
' orderNumber' +
|
||||
' from OccupancyTypeFields' +
|
||||
' where recordDelete_timeMillis is null' +
|
||||
(occupancyTypeId
|
||||
? ' and occupancyTypeId = ?'
|
||||
: ' and occupancyTypeId is null') +
|
||||
((occupancyTypeId ?? -1) === -1
|
||||
? ' and occupancyTypeId is null'
|
||||
: ' and occupancyTypeId = ?') +
|
||||
' order by orderNumber, occupancyTypeField')
|
||||
.all(sqlParameters);
|
||||
let expectedOrderNumber = 0;
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ export async function getOccupancyTypeFields(
|
|||
|
||||
const sqlParameters: unknown[] = []
|
||||
|
||||
if (occupancyTypeId) {
|
||||
if ((occupancyTypeId ?? -1) !== -1) {
|
||||
sqlParameters.push(occupancyTypeId)
|
||||
}
|
||||
|
||||
|
|
@ -24,9 +24,9 @@ export async function getOccupancyTypeFields(
|
|||
' orderNumber' +
|
||||
' from OccupancyTypeFields' +
|
||||
' where recordDelete_timeMillis is null' +
|
||||
(occupancyTypeId
|
||||
? ' and occupancyTypeId = ?'
|
||||
: ' and occupancyTypeId is null') +
|
||||
((occupancyTypeId ?? -1) === -1
|
||||
? ' and occupancyTypeId is null'
|
||||
: ' and occupancyTypeId = ?') +
|
||||
' order by orderNumber, occupancyTypeField'
|
||||
)
|
||||
.all(sqlParameters)
|
||||
|
|
|
|||
|
|
@ -31,16 +31,16 @@ export async function getReportData(reportName, reportParameters = {}) {
|
|||
}
|
||||
case 'maps-formatted': {
|
||||
sql = `select mapName as ${mapNameAlias},
|
||||
mapDescription as ${mapDescriptionAlias},
|
||||
mapAddress1 as ${mapAddress1Alias},
|
||||
mapAddress2 as ${mapAddress2Alias},
|
||||
mapCity as ${mapCityAlias},
|
||||
mapProvince as ${mapProvinceAlias},
|
||||
mapPostalCode as ${mapPostalCodeAlias},
|
||||
mapPhoneNumber as ${mapPhoneNumberAlias}
|
||||
from Maps
|
||||
where recordDelete_timeMillis is null
|
||||
order by mapName`;
|
||||
mapDescription as ${mapDescriptionAlias},
|
||||
mapAddress1 as ${mapAddress1Alias},
|
||||
mapAddress2 as ${mapAddress2Alias},
|
||||
mapCity as ${mapCityAlias},
|
||||
mapProvince as ${mapProvinceAlias},
|
||||
mapPostalCode as ${mapPostalCodeAlias},
|
||||
mapPhoneNumber as ${mapPhoneNumberAlias}
|
||||
from Maps
|
||||
where recordDelete_timeMillis is null
|
||||
order by mapName`;
|
||||
break;
|
||||
}
|
||||
case 'lots-all': {
|
||||
|
|
@ -49,46 +49,46 @@ export async function getReportData(reportName, reportParameters = {}) {
|
|||
}
|
||||
case 'lots-byLotTypeId': {
|
||||
sql = `select l.lotId as ${lotIdAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotTypeId = ?`;
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotTypeId = ?`;
|
||||
sqlParameters.push(reportParameters.lotTypeId);
|
||||
break;
|
||||
}
|
||||
case 'lots-byLotStatusId': {
|
||||
sql = `select l.lotId as ${lotIdAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotStatusId = ?`;
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotStatusId = ?`;
|
||||
sqlParameters.push(reportParameters.lotStatusId);
|
||||
break;
|
||||
}
|
||||
case 'lots-byMapId': {
|
||||
sql = `select l.lotId as ${lotIdAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.mapId = ?`;
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.mapId = ?`;
|
||||
sqlParameters.push(reportParameters.mapId);
|
||||
break;
|
||||
}
|
||||
|
|
@ -106,18 +106,18 @@ export async function getReportData(reportName, reportParameters = {}) {
|
|||
}
|
||||
case 'lotOccupancies-current-byMapId': {
|
||||
sql = `select o.lotOccupancyId as ${lotOccupancyIdAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
ot.occupancyType as ${occupancyTypeAlias},
|
||||
o.occupancyStartDate as ${occupancyStartDateAlias},
|
||||
o.occupancyEndDate as ${occupancyEndDateAlias}
|
||||
from LotOccupancies o
|
||||
left join OccupancyTypes ot on o.occupancyTypeId = ot.occupancyTypeId
|
||||
left join Lots l on o.lotId = l.lotId
|
||||
left join Maps m on l.mapId = m.mapId
|
||||
where o.recordDelete_timeMillis is null
|
||||
and (o.occupancyEndDate is null or o.occupancyEndDate >= ?)
|
||||
and l.mapId = ?`;
|
||||
l.lotName as ${lotNameAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
ot.occupancyType as ${occupancyTypeAlias},
|
||||
o.occupancyStartDate as ${occupancyStartDateAlias},
|
||||
o.occupancyEndDate as ${occupancyEndDateAlias}
|
||||
from LotOccupancies o
|
||||
left join OccupancyTypes ot on o.occupancyTypeId = ot.occupancyTypeId
|
||||
left join Lots l on o.lotId = l.lotId
|
||||
left join Maps m on l.mapId = m.mapId
|
||||
where o.recordDelete_timeMillis is null
|
||||
and (o.occupancyEndDate is null or o.occupancyEndDate >= ?)
|
||||
and l.mapId = ?`;
|
||||
sqlParameters.push(dateTimeFunctions.dateToInteger(new Date()), reportParameters.mapId);
|
||||
break;
|
||||
}
|
||||
|
|
@ -143,12 +143,12 @@ export async function getReportData(reportName, reportParameters = {}) {
|
|||
}
|
||||
case 'lotOccupancyTransactions-byTransactionDateString': {
|
||||
sql = `select t.lotOccupancyId, t.transactionIndex,
|
||||
t.transactionDate, t.transactionTime,
|
||||
t.transactionAmount,
|
||||
t.externalReceiptNumber, t.transactionNote
|
||||
from LotOccupancyTransactions t
|
||||
where t.recordDelete_timeMillis is null
|
||||
and t.transactionDate = ?`;
|
||||
t.transactionDate, t.transactionTime,
|
||||
t.transactionAmount,
|
||||
t.externalReceiptNumber, t.transactionNote
|
||||
from LotOccupancyTransactions t
|
||||
where t.recordDelete_timeMillis is null
|
||||
and t.transactionDate = ?`;
|
||||
sqlParameters.push(dateTimeFunctions.dateStringToInteger(reportParameters.transactionDateString));
|
||||
break;
|
||||
}
|
||||
|
|
@ -164,12 +164,12 @@ export async function getReportData(reportName, reportParameters = {}) {
|
|||
from WorkOrders w
|
||||
left join WorkOrderTypes t on w.workOrderTypeId = t.workOrderTypeId
|
||||
left join (
|
||||
select m.workOrderId,
|
||||
count(m.workOrderMilestoneId) as workOrderMilestoneCount,
|
||||
sum(case when m.workOrderMilestoneCompletionDate is null then 0 else 1 end) as workOrderMilestoneCompletionCount
|
||||
from WorkOrderMilestones m
|
||||
where m.recordDelete_timeMillis is null
|
||||
group by m.workOrderId
|
||||
select m.workOrderId,
|
||||
count(m.workOrderMilestoneId) as workOrderMilestoneCount,
|
||||
sum(case when m.workOrderMilestoneCompletionDate is null then 0 else 1 end) as workOrderMilestoneCompletionCount
|
||||
from WorkOrderMilestones m
|
||||
where m.recordDelete_timeMillis is null
|
||||
group by m.workOrderId
|
||||
) m on w.workOrderId = m.workOrderId
|
||||
where w.recordDelete_timeMillis is null
|
||||
and w.workOrderCloseDate is null`;
|
||||
|
|
|
|||
|
|
@ -48,16 +48,16 @@ export async function getReportData(
|
|||
|
||||
case 'maps-formatted': {
|
||||
sql = `select mapName as ${mapNameAlias},
|
||||
mapDescription as ${mapDescriptionAlias},
|
||||
mapAddress1 as ${mapAddress1Alias},
|
||||
mapAddress2 as ${mapAddress2Alias},
|
||||
mapCity as ${mapCityAlias},
|
||||
mapProvince as ${mapProvinceAlias},
|
||||
mapPostalCode as ${mapPostalCodeAlias},
|
||||
mapPhoneNumber as ${mapPhoneNumberAlias}
|
||||
from Maps
|
||||
where recordDelete_timeMillis is null
|
||||
order by mapName`
|
||||
mapDescription as ${mapDescriptionAlias},
|
||||
mapAddress1 as ${mapAddress1Alias},
|
||||
mapAddress2 as ${mapAddress2Alias},
|
||||
mapCity as ${mapCityAlias},
|
||||
mapProvince as ${mapProvinceAlias},
|
||||
mapPostalCode as ${mapPostalCodeAlias},
|
||||
mapPhoneNumber as ${mapPhoneNumberAlias}
|
||||
from Maps
|
||||
where recordDelete_timeMillis is null
|
||||
order by mapName`
|
||||
|
||||
break
|
||||
}
|
||||
|
|
@ -69,16 +69,16 @@ export async function getReportData(
|
|||
|
||||
case 'lots-byLotTypeId': {
|
||||
sql = `select l.lotId as ${lotIdAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotTypeId = ?`
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotTypeId = ?`
|
||||
|
||||
sqlParameters.push(reportParameters.lotTypeId)
|
||||
|
||||
|
|
@ -87,16 +87,16 @@ export async function getReportData(
|
|||
|
||||
case 'lots-byLotStatusId': {
|
||||
sql = `select l.lotId as ${lotIdAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotStatusId = ?`
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.lotStatusId = ?`
|
||||
|
||||
sqlParameters.push(reportParameters.lotStatusId)
|
||||
|
||||
|
|
@ -105,16 +105,16 @@ export async function getReportData(
|
|||
|
||||
case 'lots-byMapId': {
|
||||
sql = `select l.lotId as ${lotIdAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.mapId = ?`
|
||||
m.mapName as ${mapNameAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
t.lotType as ${lotTypeAlias},
|
||||
s.lotStatus as ${lotStatusAlias}
|
||||
from Lots l
|
||||
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
|
||||
and l.mapId = ?`
|
||||
|
||||
sqlParameters.push(reportParameters.mapId)
|
||||
|
||||
|
|
@ -138,18 +138,18 @@ export async function getReportData(
|
|||
|
||||
case 'lotOccupancies-current-byMapId': {
|
||||
sql = `select o.lotOccupancyId as ${lotOccupancyIdAlias},
|
||||
l.lotName as ${lotNameAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
ot.occupancyType as ${occupancyTypeAlias},
|
||||
o.occupancyStartDate as ${occupancyStartDateAlias},
|
||||
o.occupancyEndDate as ${occupancyEndDateAlias}
|
||||
from LotOccupancies o
|
||||
left join OccupancyTypes ot on o.occupancyTypeId = ot.occupancyTypeId
|
||||
left join Lots l on o.lotId = l.lotId
|
||||
left join Maps m on l.mapId = m.mapId
|
||||
where o.recordDelete_timeMillis is null
|
||||
and (o.occupancyEndDate is null or o.occupancyEndDate >= ?)
|
||||
and l.mapId = ?`
|
||||
l.lotName as ${lotNameAlias},
|
||||
m.mapName as ${mapNameAlias},
|
||||
ot.occupancyType as ${occupancyTypeAlias},
|
||||
o.occupancyStartDate as ${occupancyStartDateAlias},
|
||||
o.occupancyEndDate as ${occupancyEndDateAlias}
|
||||
from LotOccupancies o
|
||||
left join OccupancyTypes ot on o.occupancyTypeId = ot.occupancyTypeId
|
||||
left join Lots l on o.lotId = l.lotId
|
||||
left join Maps m on l.mapId = m.mapId
|
||||
where o.recordDelete_timeMillis is null
|
||||
and (o.occupancyEndDate is null or o.occupancyEndDate >= ?)
|
||||
and l.mapId = ?`
|
||||
|
||||
sqlParameters.push(
|
||||
dateTimeFunctions.dateToInteger(new Date()),
|
||||
|
|
@ -186,12 +186,12 @@ export async function getReportData(
|
|||
|
||||
case 'lotOccupancyTransactions-byTransactionDateString': {
|
||||
sql = `select t.lotOccupancyId, t.transactionIndex,
|
||||
t.transactionDate, t.transactionTime,
|
||||
t.transactionAmount,
|
||||
t.externalReceiptNumber, t.transactionNote
|
||||
from LotOccupancyTransactions t
|
||||
where t.recordDelete_timeMillis is null
|
||||
and t.transactionDate = ?`
|
||||
t.transactionDate, t.transactionTime,
|
||||
t.transactionAmount,
|
||||
t.externalReceiptNumber, t.transactionNote
|
||||
from LotOccupancyTransactions t
|
||||
where t.recordDelete_timeMillis is null
|
||||
and t.transactionDate = ?`
|
||||
|
||||
sqlParameters.push(
|
||||
dateTimeFunctions.dateStringToInteger(
|
||||
|
|
@ -214,12 +214,12 @@ export async function getReportData(
|
|||
from WorkOrders w
|
||||
left join WorkOrderTypes t on w.workOrderTypeId = t.workOrderTypeId
|
||||
left join (
|
||||
select m.workOrderId,
|
||||
count(m.workOrderMilestoneId) as workOrderMilestoneCount,
|
||||
sum(case when m.workOrderMilestoneCompletionDate is null then 0 else 1 end) as workOrderMilestoneCompletionCount
|
||||
from WorkOrderMilestones m
|
||||
where m.recordDelete_timeMillis is null
|
||||
group by m.workOrderId
|
||||
select m.workOrderId,
|
||||
count(m.workOrderMilestoneId) as workOrderMilestoneCount,
|
||||
sum(case when m.workOrderMilestoneCompletionDate is null then 0 else 1 end) as workOrderMilestoneCompletionCount
|
||||
from WorkOrderMilestones m
|
||||
where m.recordDelete_timeMillis is null
|
||||
group by m.workOrderId
|
||||
) m on w.workOrderId = m.workOrderId
|
||||
where w.recordDelete_timeMillis is null
|
||||
and w.workOrderCloseDate is null`
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import sqlite from 'better-sqlite3'
|
||||
import type sqlite from 'better-sqlite3'
|
||||
|
||||
import { acquireConnection } from './pool.js'
|
||||
import { clearCacheByTableName } from '../functions.cache.js'
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
import { PoolConnection } from 'better-sqlite-pool';
|
||||
import { type PoolConnection } from 'better-sqlite-pool';
|
||||
export declare function acquireConnection(): Promise<PoolConnection>;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { Pool, PoolConnection } from 'better-sqlite-pool'
|
||||
import { Pool, type PoolConnection } from 'better-sqlite-pool'
|
||||
|
||||
import { lotOccupancyDB as databasePath } from '../../data/databasePaths.js'
|
||||
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
'</div>') +
|
||||
('<div class="column has-text-centered">' +
|
||||
(fee.taxPercentage
|
||||
? fee.taxPercentage + '%'
|
||||
? fee.taxPercentage.toString() + '%'
|
||||
: '$' + fee.taxAmount.toFixed(2)) +
|
||||
'<br /><small>Tax</small>' +
|
||||
'</div>') +
|
||||
|
|
|
|||
|
|
@ -163,7 +163,7 @@ declare const bulmaJS: BulmaJS
|
|||
'</div>') +
|
||||
('<div class="column has-text-centered">' +
|
||||
(fee.taxPercentage
|
||||
? fee.taxPercentage + '%'
|
||||
? fee.taxPercentage.toString() + '%'
|
||||
: '$' + fee.taxAmount!.toFixed(2)) +
|
||||
'<br /><small>Tax</small>' +
|
||||
'</div>') +
|
||||
|
|
|
|||
|
|
@ -432,7 +432,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
('<div class="level-left">' +
|
||||
'<div class="level-item">' +
|
||||
('<h2 class="title is-4">(All ' +
|
||||
cityssm.escapeHTML(exports.aliases.occupancy) +
|
||||
los.escapedAliases.Occupancy +
|
||||
' Types)</h2>') +
|
||||
'</div>' +
|
||||
'</div>') +
|
||||
|
|
|
|||
|
|
@ -770,7 +770,7 @@ declare const bulmaJS: BulmaJS
|
|||
('<div class="level-left">' +
|
||||
'<div class="level-item">' +
|
||||
('<h2 class="title is-4">(All ' +
|
||||
cityssm.escapeHTML(exports.aliases.occupancy) +
|
||||
los.escapedAliases.Occupancy +
|
||||
' Types)</h2>') +
|
||||
'</div>' +
|
||||
'</div>') +
|
||||
|
|
|
|||
|
|
@ -86,6 +86,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
cityssm.postJSON(los.urlPrefix + '/lots/doGetLotTypeFields', {
|
||||
lotTypeId: lotTypeIdElement.value
|
||||
}, (responseJSON) => {
|
||||
var _a;
|
||||
if (responseJSON.lotTypeFields.length === 0) {
|
||||
lotFieldsContainerElement.innerHTML = `<div class="message is-info">
|
||||
<p class="message-body">There are no additional fields for this ${los.escapedAliases.lot} type.</p>
|
||||
|
|
@ -95,13 +96,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
lotFieldsContainerElement.innerHTML = '';
|
||||
let lotTypeFieldIds = '';
|
||||
for (const lotTypeField of responseJSON.lotTypeFields) {
|
||||
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId;
|
||||
const fieldName = 'lotFieldValue_' + lotTypeField.lotTypeFieldId;
|
||||
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId.toString();
|
||||
const fieldName = 'lotFieldValue_' + lotTypeField.lotTypeFieldId.toString();
|
||||
const fieldId = 'lot--' + fieldName;
|
||||
const fieldElement = document.createElement('div');
|
||||
fieldElement.className = 'field';
|
||||
fieldElement.innerHTML = `<label class="label" for="${fieldId}"></label>
|
||||
<div class="control"></div>`;
|
||||
<div class="control"></div>`;
|
||||
fieldElement.querySelector('label').textContent = lotTypeField.lotTypeField;
|
||||
if (lotTypeField.lotTypeFieldValues === '') {
|
||||
const inputElement = document.createElement('input');
|
||||
|
|
@ -112,7 +113,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
inputElement.required = lotTypeField.isRequired;
|
||||
inputElement.minLength = lotTypeField.minimumLength;
|
||||
inputElement.maxLength = lotTypeField.maximumLength;
|
||||
if (lotTypeField.pattern && lotTypeField.pattern !== '') {
|
||||
if (((_a = lotTypeField.pattern) !== null && _a !== void 0 ? _a : '') !== '') {
|
||||
inputElement.pattern = lotTypeField.pattern;
|
||||
}
|
||||
fieldElement.querySelector('.control').append(inputElement);
|
||||
|
|
|
|||
|
|
@ -141,16 +141,17 @@ declare const bulmaJS: BulmaJS
|
|||
let lotTypeFieldIds = ''
|
||||
|
||||
for (const lotTypeField of responseJSON.lotTypeFields) {
|
||||
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId
|
||||
lotTypeFieldIds += ',' + lotTypeField.lotTypeFieldId.toString()
|
||||
|
||||
const fieldName = 'lotFieldValue_' + lotTypeField.lotTypeFieldId
|
||||
const fieldName =
|
||||
'lotFieldValue_' + lotTypeField.lotTypeFieldId.toString()
|
||||
|
||||
const fieldId = 'lot--' + fieldName
|
||||
|
||||
const fieldElement = document.createElement('div')
|
||||
fieldElement.className = 'field'
|
||||
fieldElement.innerHTML = `<label class="label" for="${fieldId}"></label>
|
||||
<div class="control"></div>`
|
||||
<div class="control"></div>`
|
||||
;(
|
||||
fieldElement.querySelector('label') as HTMLLabelElement
|
||||
).textContent = lotTypeField.lotTypeField as string
|
||||
|
|
@ -170,8 +171,8 @@ declare const bulmaJS: BulmaJS
|
|||
inputElement.minLength = lotTypeField.minimumLength as number
|
||||
inputElement.maxLength = lotTypeField.maximumLength as number
|
||||
|
||||
if (lotTypeField.pattern && lotTypeField.pattern !== '') {
|
||||
inputElement.pattern = lotTypeField.pattern
|
||||
if ((lotTypeField.pattern ?? '') !== '') {
|
||||
inputElement.pattern = lotTypeField.pattern!
|
||||
}
|
||||
|
||||
fieldElement.querySelector('.control')!.append(inputElement)
|
||||
|
|
@ -417,10 +418,10 @@ declare const bulmaJS: BulmaJS
|
|||
cityssm.escapeHTML(lotComment.recordCreate_userName ?? '') +
|
||||
'</td>' +
|
||||
'<td>' +
|
||||
lotComment.lotCommentDateString +
|
||||
lotComment.lotCommentDateString! +
|
||||
(lotComment.lotCommentTime === 0
|
||||
? ''
|
||||
: ' ' + lotComment.lotCommentTimeString) +
|
||||
: ' ' + lotComment.lotCommentTimeString!) +
|
||||
'</td>' +
|
||||
'<td>' +
|
||||
cityssm.escapeHTML(lotComment.lotComment ?? '') +
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
const limit = Number.parseInt(document.querySelector('#searchFilter--limit').value, 10);
|
||||
const offsetElement = document.querySelector('#searchFilter--offset');
|
||||
function renderLotOccupancies(responseJSON) {
|
||||
var _a, _b, _c, _d, _e, _f, _g;
|
||||
var _a, _b, _c, _d, _e, _f, _g, _h;
|
||||
if (responseJSON.lotOccupancies.length === 0) {
|
||||
searchResultsContainerElement.innerHTML = `<div class="message is-info">
|
||||
<p class="message-body">
|
||||
|
|
@ -62,20 +62,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
'</a>' +
|
||||
'</td>') +
|
||||
('<td>' +
|
||||
(lotOccupancy.lotName
|
||||
? '<a class="has-tooltip-right" data-tooltip="' +
|
||||
cityssm.escapeHTML((_d = lotOccupancy.lotType) !== null && _d !== void 0 ? _d : '') +
|
||||
(((_d = lotOccupancy.lotId) !== null && _d !== void 0 ? _d : -1) === -1
|
||||
? '<span class="has-text-grey">(No ' +
|
||||
los.escapedAliases.Lot +
|
||||
')</span>'
|
||||
: '<a class="has-tooltip-right" data-tooltip="' +
|
||||
cityssm.escapeHTML((_e = lotOccupancy.lotType) !== null && _e !== void 0 ? _e : '') +
|
||||
'" href="' +
|
||||
los.getLotURL(lotOccupancy.lotId) +
|
||||
'">' +
|
||||
cityssm.escapeHTML(lotOccupancy.lotName) +
|
||||
'</a>'
|
||||
: '<span class="has-text-grey">(No ' +
|
||||
los.escapedAliases.Lot +
|
||||
')</span>') +
|
||||
'</a>') +
|
||||
'<br />' +
|
||||
('<span class="is-size-7">' +
|
||||
cityssm.escapeHTML((_e = lotOccupancy.mapName) !== null && _e !== void 0 ? _e : '') +
|
||||
cityssm.escapeHTML((_f = lotOccupancy.mapName) !== null && _f !== void 0 ? _f : '') +
|
||||
'</span>') +
|
||||
'</td>') +
|
||||
('<td>' + lotOccupancy.occupancyStartDateString + '</td>') +
|
||||
|
|
@ -101,24 +101,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
'</tr>');
|
||||
}
|
||||
searchResultsContainerElement.innerHTML = `<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">
|
||||
<thead><tr>
|
||||
<th class="has-width-1"></th>
|
||||
<th>${los.escapedAliases.Occupancy} Type</th>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.OccupancyStartDate}</th>
|
||||
<th>End Date</th>
|
||||
<th>${los.escapedAliases.Occupants}</th>
|
||||
<th class="has-width-1"><span class="is-sr-only">Print</span></th>
|
||||
</tr></thead>
|
||||
<table>`;
|
||||
<thead><tr>
|
||||
<th class="has-width-1"></th>
|
||||
<th>${los.escapedAliases.Occupancy} Type</th>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.OccupancyStartDate}</th>
|
||||
<th>End Date</th>
|
||||
<th>${los.escapedAliases.Occupants}</th>
|
||||
<th class="has-width-1"><span class="is-sr-only">Print</span></th>
|
||||
</tr></thead>
|
||||
<table>`;
|
||||
searchResultsContainerElement
|
||||
.querySelector('table')
|
||||
.append(resultsTbodyElement);
|
||||
searchResultsContainerElement.insertAdjacentHTML('beforeend', los.getSearchResultsPagerHTML(limit, responseJSON.offset, responseJSON.count));
|
||||
(_f = searchResultsContainerElement
|
||||
.querySelector("button[data-page='previous']")) === null || _f === void 0 ? void 0 : _f.addEventListener('click', previousAndGetLotOccupancies);
|
||||
(_g = searchResultsContainerElement
|
||||
.querySelector("button[data-page='next']")) === null || _g === void 0 ? void 0 : _g.addEventListener('click', nextAndGetLotOccupancies);
|
||||
.querySelector("button[data-page='previous']")) === null || _g === void 0 ? void 0 : _g.addEventListener('click', previousAndGetLotOccupancies);
|
||||
(_h = searchResultsContainerElement
|
||||
.querySelector("button[data-page='next']")) === null || _h === void 0 ? void 0 : _h.addEventListener('click', nextAndGetLotOccupancies);
|
||||
}
|
||||
function getLotOccupancies() {
|
||||
searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML(`Loading ${los.escapedAliases.Occupancies}...`);
|
||||
|
|
@ -142,7 +142,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
}
|
||||
searchFilterFormElement.addEventListener('submit', (formEvent) => {
|
||||
formEvent.preventDefault();
|
||||
resetOffsetAndGetLotOccupancies();
|
||||
});
|
||||
getLotOccupancies();
|
||||
})();
|
||||
|
|
|
|||
|
|
@ -96,17 +96,17 @@ declare const cityssm: cityssmGlobal
|
|||
'</a>' +
|
||||
'</td>') +
|
||||
('<td>' +
|
||||
(lotOccupancy.lotName
|
||||
? '<a class="has-tooltip-right" data-tooltip="' +
|
||||
((lotOccupancy.lotId ?? -1) === -1
|
||||
? '<span class="has-text-grey">(No ' +
|
||||
los.escapedAliases.Lot +
|
||||
')</span>'
|
||||
: '<a class="has-tooltip-right" data-tooltip="' +
|
||||
cityssm.escapeHTML(lotOccupancy.lotType ?? '') +
|
||||
'" href="' +
|
||||
los.getLotURL(lotOccupancy.lotId) +
|
||||
'">' +
|
||||
cityssm.escapeHTML(lotOccupancy.lotName) +
|
||||
'</a>'
|
||||
: '<span class="has-text-grey">(No ' +
|
||||
los.escapedAliases.Lot +
|
||||
')</span>') +
|
||||
cityssm.escapeHTML(lotOccupancy.lotName!) +
|
||||
'</a>') +
|
||||
'<br />' +
|
||||
('<span class="is-size-7">' +
|
||||
cityssm.escapeHTML(lotOccupancy.mapName ?? '') +
|
||||
|
|
@ -137,16 +137,16 @@ declare const cityssm: cityssmGlobal
|
|||
}
|
||||
|
||||
searchResultsContainerElement.innerHTML = `<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">
|
||||
<thead><tr>
|
||||
<th class="has-width-1"></th>
|
||||
<th>${los.escapedAliases.Occupancy} Type</th>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.OccupancyStartDate}</th>
|
||||
<th>End Date</th>
|
||||
<th>${los.escapedAliases.Occupants}</th>
|
||||
<th class="has-width-1"><span class="is-sr-only">Print</span></th>
|
||||
</tr></thead>
|
||||
<table>`
|
||||
<thead><tr>
|
||||
<th class="has-width-1"></th>
|
||||
<th>${los.escapedAliases.Occupancy} Type</th>
|
||||
<th>${los.escapedAliases.Lot}</th>
|
||||
<th>${los.escapedAliases.OccupancyStartDate}</th>
|
||||
<th>End Date</th>
|
||||
<th>${los.escapedAliases.Occupants}</th>
|
||||
<th class="has-width-1"><span class="is-sr-only">Print</span></th>
|
||||
</tr></thead>
|
||||
<table>`
|
||||
|
||||
searchResultsContainerElement
|
||||
.querySelector('table')!
|
||||
|
|
@ -211,7 +211,6 @@ declare const cityssm: cityssmGlobal
|
|||
|
||||
searchFilterFormElement.addEventListener('submit', (formEvent) => {
|
||||
formEvent.preventDefault()
|
||||
resetOffsetAndGetLotOccupancies()
|
||||
})
|
||||
|
||||
getLotOccupancies()
|
||||
|
|
|
|||
|
|
@ -11,8 +11,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
var _a, _b, _c, _d;
|
||||
if (responseJSON.lots.length === 0) {
|
||||
searchResultsContainerElement.innerHTML = `<div class="message is-info">
|
||||
<p class="message-body">There are no ${los.escapedAliases.lots} that meet the search criteria.</p>
|
||||
</div>`;
|
||||
<p class="message-body">There are no ${los.escapedAliases.lots} that meet the search criteria.</p>
|
||||
</div>`;
|
||||
return;
|
||||
}
|
||||
const resultsTbodyElement = document.createElement('tbody');
|
||||
|
|
@ -85,7 +85,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
}
|
||||
searchFilterFormElement.addEventListener('submit', (formEvent) => {
|
||||
formEvent.preventDefault();
|
||||
resetOffsetAndGetLots();
|
||||
});
|
||||
getLots();
|
||||
})();
|
||||
|
|
|
|||
|
|
@ -32,8 +32,8 @@ declare const cityssm: cityssmGlobal
|
|||
}): void {
|
||||
if (responseJSON.lots.length === 0) {
|
||||
searchResultsContainerElement.innerHTML = `<div class="message is-info">
|
||||
<p class="message-body">There are no ${los.escapedAliases.lots} that meet the search criteria.</p>
|
||||
</div>`
|
||||
<p class="message-body">There are no ${los.escapedAliases.lots} that meet the search criteria.</p>
|
||||
</div>`
|
||||
|
||||
return
|
||||
}
|
||||
|
|
@ -146,7 +146,6 @@ declare const cityssm: cityssmGlobal
|
|||
|
||||
searchFilterFormElement.addEventListener('submit', (formEvent) => {
|
||||
formEvent.preventDefault()
|
||||
resetOffsetAndGetLots()
|
||||
})
|
||||
|
||||
getLots()
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
const searchFilterElement = document.querySelector('#searchFilter--map');
|
||||
const searchResultsContainerElement = document.querySelector('#container--searchResults');
|
||||
function renderResults() {
|
||||
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
||||
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
||||
searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML(`Loading ${los.escapedAliases.Maps}...`);
|
||||
let searchResultCount = 0;
|
||||
const searchResultsTbodyElement = document.createElement('tbody');
|
||||
|
|
@ -42,28 +42,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
('<td>' +
|
||||
(((_f = map.mapAddress1) !== null && _f !== void 0 ? _f : '') === ''
|
||||
? ''
|
||||
: cityssm.escapeHTML(map.mapAddress1) + '<br />') +
|
||||
(((_g = map.mapAddress2) !== null && _g !== void 0 ? _g : '') === ''
|
||||
: cityssm.escapeHTML((_g = map.mapAddress1) !== null && _g !== void 0 ? _g : '') + '<br />') +
|
||||
(((_h = map.mapAddress2) !== null && _h !== void 0 ? _h : '') === ''
|
||||
? ''
|
||||
: cityssm.escapeHTML(map.mapAddress2) + '<br />') +
|
||||
: cityssm.escapeHTML((_j = map.mapAddress2) !== null && _j !== void 0 ? _j : '') + '<br />') +
|
||||
(map.mapCity || map.mapProvince
|
||||
? cityssm.escapeHTML((_h = map.mapCity) !== null && _h !== void 0 ? _h : '') +
|
||||
? cityssm.escapeHTML((_k = map.mapCity) !== null && _k !== void 0 ? _k : '') +
|
||||
', ' +
|
||||
cityssm.escapeHTML((_j = map.mapProvince) !== null && _j !== void 0 ? _j : '') +
|
||||
cityssm.escapeHTML((_l = map.mapProvince) !== null && _l !== void 0 ? _l : '') +
|
||||
'<br />'
|
||||
: '') +
|
||||
(((_k = map.mapPostalCode) !== null && _k !== void 0 ? _k : '') === ''
|
||||
(((_m = map.mapPostalCode) !== null && _m !== void 0 ? _m : '') === ''
|
||||
? ''
|
||||
: cityssm.escapeHTML(map.mapPostalCode)) +
|
||||
: cityssm.escapeHTML((_o = map.mapPostalCode) !== null && _o !== void 0 ? _o : '')) +
|
||||
'</td>') +
|
||||
('<td>' + cityssm.escapeHTML((_l = map.mapPhoneNumber) !== null && _l !== void 0 ? _l : '') + '</td>') +
|
||||
('<td>' + cityssm.escapeHTML((_p = map.mapPhoneNumber) !== null && _p !== void 0 ? _p : '') + '</td>') +
|
||||
'<td class="has-text-centered">' +
|
||||
(map.mapLatitude && map.mapLongitude
|
||||
? '<span data-tooltip="Has Geographic Coordinates"><i class="fas fa-map-marker-alt" aria-label="Has Geographic Coordinates"></i></span>'
|
||||
: '') +
|
||||
'</td>' +
|
||||
'<td class="has-text-centered">' +
|
||||
(((_m = map.mapSVG) !== null && _m !== void 0 ? _m : '') === ''
|
||||
(((_q = map.mapSVG) !== null && _q !== void 0 ? _q : '') === ''
|
||||
? ''
|
||||
: '<span data-tooltip="Has Image"><i class="fas fa-image" aria-label="Has Image"></i></span>') +
|
||||
'</td>' +
|
||||
|
|
|
|||
|
|
@ -70,10 +70,10 @@ declare const cityssm: cityssmGlobal
|
|||
('<td>' +
|
||||
((map.mapAddress1 ?? '') === ''
|
||||
? ''
|
||||
: cityssm.escapeHTML(map.mapAddress1!) + '<br />') +
|
||||
: cityssm.escapeHTML(map.mapAddress1 ?? '') + '<br />') +
|
||||
((map.mapAddress2 ?? '') === ''
|
||||
? ''
|
||||
: cityssm.escapeHTML(map.mapAddress2!) + '<br />') +
|
||||
: cityssm.escapeHTML(map.mapAddress2 ?? '') + '<br />') +
|
||||
(map.mapCity || map.mapProvince
|
||||
? cityssm.escapeHTML(map.mapCity ?? '') +
|
||||
', ' +
|
||||
|
|
@ -82,7 +82,7 @@ declare const cityssm: cityssmGlobal
|
|||
: '') +
|
||||
((map.mapPostalCode ?? '') === ''
|
||||
? ''
|
||||
: cityssm.escapeHTML(map.mapPostalCode!)) +
|
||||
: cityssm.escapeHTML(map.mapPostalCode ?? '')) +
|
||||
'</td>') +
|
||||
('<td>' + cityssm.escapeHTML(map.mapPhoneNumber ?? '') + '</td>') +
|
||||
'<td class="has-text-centered">' +
|
||||
|
|
|
|||
|
|
@ -159,7 +159,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|||
}
|
||||
searchFilterFormElement.addEventListener('submit', (formEvent) => {
|
||||
formEvent.preventDefault();
|
||||
resetOffsetAndGetWorkOrders();
|
||||
});
|
||||
/*
|
||||
const workOrderOpenDateStringElement = document.querySelector("#searchFilter--workOrderOpenDateString") as HTMLInputElement;
|
||||
|
|
|
|||
|
|
@ -231,7 +231,6 @@ declare const cityssm: cityssmGlobal
|
|||
|
||||
searchFilterFormElement.addEventListener('submit', (formEvent) => {
|
||||
formEvent.preventDefault()
|
||||
resetOffsetAndGetWorkOrders()
|
||||
})
|
||||
|
||||
/*
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +1 @@
|
|||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const t=exports.los,e=document.querySelector("#form--searchFilters"),a=document.querySelector("#container--searchResults"),s=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),c=document.querySelector("#searchFilter--offset");function n(e){var c,n,i,l,p,d,u;if(0===e.lotOccupancies.length)return void(a.innerHTML=`<div class="message is-info">\n <p class="message-body">\n There are no ${t.escapedAliases.occupancy} records that meet the search criteria.\n </p>\n </div>`);const h=document.createElement("tbody"),y=cityssm.dateToString(new Date);for(const a of e.lotOccupancies){let e="";e=a.occupancyStartDateString<=y&&(""===a.occupancyEndDateString||a.occupancyEndDateString>=y)?`<span class="has-tooltip-right" data-tooltip="Current ${t.escapedAliases.Occupancy}">\n <i class="fas fa-play" aria-label="Current ${t.escapedAliases.Occupancy}"></i>\n </span>`:a.occupancyStartDateString>y?`<span class="has-tooltip-right" data-tooltip="Future ${t.escapedAliases.Occupancy}">\n <i class="fas fa-fast-forward" aria-label="Future ${t.escapedAliases.Occupancy}"></i>\n </span>`:`<span class="has-tooltip-right" data-tooltip="Past ${t.escapedAliases.Occupancy}">\n <i class="fas fa-stop" aria-label="Past ${t.escapedAliases.Occupancy}"></i>\n </span>`;let s="";for(const t of a.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(c=t.lotOccupantType)&&void 0!==c?c:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=t.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":t.fontAwesomeIconClass)+'" aria-hidden="true"></i> '+cityssm.escapeHTML(null!==(i=t.occupantName)&&void 0!==i?i:"")+"</span><br />";h.insertAdjacentHTML("beforeend",'<tr><td class="has-width-1">'+e+'</td><td><a class="has-text-weight-bold" href="'+t.getLotOccupancyURL(a.lotOccupancyId)+'">'+cityssm.escapeHTML(a.occupancyType)+"</a></td><td>"+(a.lotName?'<a class="has-tooltip-right" data-tooltip="'+cityssm.escapeHTML(null!==(l=a.lotType)&&void 0!==l?l:"")+'" href="'+t.getLotURL(a.lotId)+'">'+cityssm.escapeHTML(a.lotName)+"</a>":'<span class="has-text-grey">(No '+t.escapedAliases.Lot+")</span>")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(p=a.mapName)&&void 0!==p?p:"")+"</span></td><td>"+a.occupancyStartDateString+"</td><td>"+(a.occupancyEndDate?a.occupancyEndDateString:'<span class="has-text-grey">(No End Date)</span>')+"</td><td>"+s+"</td><td>"+(a.printEJS?'<a class="button is-small" data-tooltip="Print" href="'+t.urlPrefix+"/print/"+a.printEJS+"/?lotOccupancyId="+a.lotOccupancyId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a>':"")+"</td></tr>")}a.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th class="has-width-1"></th>\n <th>${t.escapedAliases.Occupancy} Type</th>\n <th>${t.escapedAliases.Lot}</th>\n <th>${t.escapedAliases.OccupancyStartDate}</th>\n <th>End Date</th>\n <th>${t.escapedAliases.Occupants}</th>\n <th class="has-width-1"><span class="is-sr-only">Print</span></th>\n </tr></thead>\n <table>`,a.querySelector("table").append(h),a.insertAdjacentHTML("beforeend",t.getSearchResultsPagerHTML(s,e.offset,e.count)),null===(d=a.querySelector("button[data-page='previous']"))||void 0===d||d.addEventListener("click",o),null===(u=a.querySelector("button[data-page='next']"))||void 0===u||u.addEventListener("click",r)}function i(){a.innerHTML=t.getLoadingParagraphHTML(`Loading ${t.escapedAliases.Occupancies}...`),cityssm.postJSON(t.urlPrefix+"/lotOccupancies/doSearchLotOccupancies",e,n)}function l(){c.value="0",i()}function o(){c.value=Math.max(Number.parseInt(c.value,10)-s,0).toString(),i()}function r(){c.value=(Number.parseInt(c.value,10)+s).toString(),i()}const p=e.querySelectorAll("input, select");for(const t of p)t.addEventListener("change",l);e.addEventListener("submit",t=>{t.preventDefault(),l()}),i()})();
|
||||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const t=exports.los,e=document.querySelector("#form--searchFilters"),a=document.querySelector("#container--searchResults"),s=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),c=document.querySelector("#searchFilter--offset");function n(e){var c,n,i,l,p,d,u,h;if(0===e.lotOccupancies.length)return void(a.innerHTML=`<div class="message is-info">\n <p class="message-body">\n There are no ${t.escapedAliases.occupancy} records that meet the search criteria.\n </p>\n </div>`);const y=document.createElement("tbody"),f=cityssm.dateToString(new Date);for(const a of e.lotOccupancies){let e="";e=a.occupancyStartDateString<=f&&(""===a.occupancyEndDateString||a.occupancyEndDateString>=f)?`<span class="has-tooltip-right" data-tooltip="Current ${t.escapedAliases.Occupancy}">\n <i class="fas fa-play" aria-label="Current ${t.escapedAliases.Occupancy}"></i>\n </span>`:a.occupancyStartDateString>f?`<span class="has-tooltip-right" data-tooltip="Future ${t.escapedAliases.Occupancy}">\n <i class="fas fa-fast-forward" aria-label="Future ${t.escapedAliases.Occupancy}"></i>\n </span>`:`<span class="has-tooltip-right" data-tooltip="Past ${t.escapedAliases.Occupancy}">\n <i class="fas fa-stop" aria-label="Past ${t.escapedAliases.Occupancy}"></i>\n </span>`;let s="";for(const t of a.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(c=t.lotOccupantType)&&void 0!==c?c:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=t.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":t.fontAwesomeIconClass)+'" aria-hidden="true"></i> '+cityssm.escapeHTML(null!==(i=t.occupantName)&&void 0!==i?i:"")+"</span><br />";y.insertAdjacentHTML("beforeend",'<tr><td class="has-width-1">'+e+'</td><td><a class="has-text-weight-bold" href="'+t.getLotOccupancyURL(a.lotOccupancyId)+'">'+cityssm.escapeHTML(a.occupancyType)+"</a></td><td>"+(-1===(null!==(l=a.lotId)&&void 0!==l?l:-1)?'<span class="has-text-grey">(No '+t.escapedAliases.Lot+")</span>":'<a class="has-tooltip-right" data-tooltip="'+cityssm.escapeHTML(null!==(p=a.lotType)&&void 0!==p?p:"")+'" href="'+t.getLotURL(a.lotId)+'">'+cityssm.escapeHTML(a.lotName)+"</a>")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(d=a.mapName)&&void 0!==d?d:"")+"</span></td><td>"+a.occupancyStartDateString+"</td><td>"+(a.occupancyEndDate?a.occupancyEndDateString:'<span class="has-text-grey">(No End Date)</span>')+"</td><td>"+s+"</td><td>"+(a.printEJS?'<a class="button is-small" data-tooltip="Print" href="'+t.urlPrefix+"/print/"+a.printEJS+"/?lotOccupancyId="+a.lotOccupancyId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a>':"")+"</td></tr>")}a.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th class="has-width-1"></th>\n <th>${t.escapedAliases.Occupancy} Type</th>\n <th>${t.escapedAliases.Lot}</th>\n <th>${t.escapedAliases.OccupancyStartDate}</th>\n <th>End Date</th>\n <th>${t.escapedAliases.Occupants}</th>\n <th class="has-width-1"><span class="is-sr-only">Print</span></th>\n </tr></thead>\n <table>`,a.querySelector("table").append(y),a.insertAdjacentHTML("beforeend",t.getSearchResultsPagerHTML(s,e.offset,e.count)),null===(u=a.querySelector("button[data-page='previous']"))||void 0===u||u.addEventListener("click",o),null===(h=a.querySelector("button[data-page='next']"))||void 0===h||h.addEventListener("click",r)}function i(){a.innerHTML=t.getLoadingParagraphHTML(`Loading ${t.escapedAliases.Occupancies}...`),cityssm.postJSON(t.urlPrefix+"/lotOccupancies/doSearchLotOccupancies",e,n)}function l(){c.value="0",i()}function o(){c.value=Math.max(Number.parseInt(c.value,10)-s,0).toString(),i()}function r(){c.value=(Number.parseInt(c.value,10)+s).toString(),i()}const p=e.querySelectorAll("input, select");for(const t of p)t.addEventListener("change",l);e.addEventListener("submit",t=>{t.preventDefault()}),i()})();
|
||||
|
|
@ -1 +1 @@
|
|||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#form--searchFilters"),s=document.querySelector("#container--searchResults"),a=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),n=document.querySelector("#searchFilter--offset");function r(t){var n,r,o,c;if(0===t.lots.length)return void(s.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.lots} that meet the search criteria.</p>\n </div>`);const d=document.createElement("tbody");for(const s of t.lots)d.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getLotURL(s.lotId)+'">'+cityssm.escapeHTML(null!==(n=s.lotName)&&void 0!==n?n:"")+'</a></td><td><a href="'+e.getMapURL(s.mapId)+'">'+(s.mapName?cityssm.escapeHTML(s.mapName):'<span class="has-text-grey">(No Name)</span>')+"</a></td><td>"+cityssm.escapeHTML(null!==(r=s.lotType)&&void 0!==r?r:"")+"</td><td>"+(s.lotStatusId?cityssm.escapeHTML(s.lotStatus):'<span class="has-text-grey">(No Status)</span>')+"<br />"+(s.lotOccupancyCount>0?'<span class="is-size-7">Currently Occupied</span>':"")+"</td></tr>");s.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th>${e.escapedAliases.Lot}</th>\n <th>${e.escapedAliases.Map}</th>\n <th>${e.escapedAliases.Lot} Type</th>\n <th>Status</th>\n </tr></thead>\n <table>`,s.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(a,t.offset,t.count)),s.querySelector("table").append(d),null===(o=s.querySelector("button[data-page='previous']"))||void 0===o||o.addEventListener("click",l),null===(c=s.querySelector("button[data-page='next']"))||void 0===c||c.addEventListener("click",i)}function o(){s.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Lots}...`),cityssm.postJSON(e.urlPrefix+"/lots/doSearchLots",t,r)}function c(){n.value="0",o()}function l(){n.value=Math.max(Number.parseInt(n.value,10)-a,0).toString(),o()}function i(){n.value=(Number.parseInt(n.value,10)+a).toString(),o()}const d=t.querySelectorAll("input, select");for(const e of d)e.addEventListener("change",c);t.addEventListener("submit",e=>{e.preventDefault(),c()}),o()})();
|
||||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=document.querySelector("#form--searchFilters"),s=document.querySelector("#container--searchResults"),a=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),n=document.querySelector("#searchFilter--offset");function r(t){var n,r,o,c;if(0===t.lots.length)return void(s.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.lots} that meet the search criteria.</p>\n </div>`);const d=document.createElement("tbody");for(const s of t.lots)d.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getLotURL(s.lotId)+'">'+cityssm.escapeHTML(null!==(n=s.lotName)&&void 0!==n?n:"")+'</a></td><td><a href="'+e.getMapURL(s.mapId)+'">'+(s.mapName?cityssm.escapeHTML(s.mapName):'<span class="has-text-grey">(No Name)</span>')+"</a></td><td>"+cityssm.escapeHTML(null!==(r=s.lotType)&&void 0!==r?r:"")+"</td><td>"+(s.lotStatusId?cityssm.escapeHTML(s.lotStatus):'<span class="has-text-grey">(No Status)</span>')+"<br />"+(s.lotOccupancyCount>0?'<span class="is-size-7">Currently Occupied</span>':"")+"</td></tr>");s.innerHTML=`<table class="table is-fullwidth is-striped is-hoverable has-sticky-header">\n <thead><tr>\n <th>${e.escapedAliases.Lot}</th>\n <th>${e.escapedAliases.Map}</th>\n <th>${e.escapedAliases.Lot} Type</th>\n <th>Status</th>\n </tr></thead>\n <table>`,s.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(a,t.offset,t.count)),s.querySelector("table").append(d),null===(o=s.querySelector("button[data-page='previous']"))||void 0===o||o.addEventListener("click",l),null===(c=s.querySelector("button[data-page='next']"))||void 0===c||c.addEventListener("click",i)}function o(){s.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Lots}...`),cityssm.postJSON(e.urlPrefix+"/lots/doSearchLots",t,r)}function c(){n.value="0",o()}function l(){n.value=Math.max(Number.parseInt(n.value,10)-a,0).toString(),o()}function i(){n.value=(Number.parseInt(n.value,10)+a).toString(),o()}const d=t.querySelectorAll("input, select");for(const e of d)e.addEventListener("change",c);t.addEventListener("submit",e=>{e.preventDefault()}),o()})();
|
||||
|
|
@ -1 +1 @@
|
|||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,a=exports.maps,s=document.querySelector("#searchFilter--map"),t=document.querySelector("#container--searchResults");function i(){var i,r,d,n,o,l,c,p,m,h,u,L;t.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Maps}...`);let v=0;const f=document.createElement("tbody"),b=s.value.trim().toLowerCase().split(" ");for(const s of a){const a=`${null!==(i=s.mapName)&&void 0!==i?i:""} ${null!==(r=s.mapDescription)&&void 0!==r?r:""} ${null!==(d=s.mapAddress1)&&void 0!==d?d:""} ${null!==(n=s.mapAddress2)&&void 0!==n?n:""}`.toLowerCase();let t=!0;for(const e of b)if(!a.includes(e)){t=!1;break}t&&(v+=1,f.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getMapURL(s.mapId)+'">'+cityssm.escapeHTML(""===s.mapName?"(No Name)":s.mapName)+'</a><br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(o=s.mapDescription)&&void 0!==o?o:"")+"</span></td><td>"+(""===(null!==(l=s.mapAddress1)&&void 0!==l?l:"")?"":cityssm.escapeHTML(s.mapAddress1)+"<br />")+(""===(null!==(c=s.mapAddress2)&&void 0!==c?c:"")?"":cityssm.escapeHTML(s.mapAddress2)+"<br />")+(s.mapCity||s.mapProvince?cityssm.escapeHTML(null!==(p=s.mapCity)&&void 0!==p?p:"")+", "+cityssm.escapeHTML(null!==(m=s.mapProvince)&&void 0!==m?m:"")+"<br />":"")+(""===(null!==(h=s.mapPostalCode)&&void 0!==h?h:"")?"":cityssm.escapeHTML(s.mapPostalCode))+"</td><td>"+cityssm.escapeHTML(null!==(u=s.mapPhoneNumber)&&void 0!==u?u:"")+'</td><td class="has-text-centered">'+(s.mapLatitude&&s.mapLongitude?'<span data-tooltip="Has Geographic Coordinates"><i class="fas fa-map-marker-alt" aria-label="Has Geographic Coordinates"></i></span>':"")+'</td><td class="has-text-centered">'+(""===(null!==(L=s.mapSVG)&&void 0!==L?L:"")?"":'<span data-tooltip="Has Image"><i class="fas fa-image" aria-label="Has Image"></i></span>')+"</td>"+`<td class="has-text-right">\n <a href="${e.urlPrefix}/lots?mapId=${s.mapId}">${s.lotCount}</a>\n </td>`+"</tr>"))}if(t.innerHTML="",0===v)t.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.maps} that meet the search criteria.</p>\n </div>`;else{const a=document.createElement("table");a.className="table is-fullwidth is-striped is-hoverable has-sticky-header",a.innerHTML=`<thead><tr>\n <th>${e.escapedAliases.Map}</th>\n <th>Address</th>\n <th>Phone Number</th>\n <th class="has-text-centered">Coordinates</th>\n <th class="has-text-centered">Image</th>\n <th class="has-text-right">${e.escapedAliases.Lot} Count</th>\n </tr></thead>`,a.append(f),t.append(a)}}s.addEventListener("keyup",i),document.querySelector("#form--searchFilters").addEventListener("submit",e=>{e.preventDefault(),i()}),i()})();
|
||||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,a=exports.maps,s=document.querySelector("#searchFilter--map"),t=document.querySelector("#container--searchResults");function i(){var i,d,n,r,o,l,c,p,m,h,u,v,L,f,b;t.innerHTML=e.getLoadingParagraphHTML(`Loading ${e.escapedAliases.Maps}...`);let y=0;const H=document.createElement("tbody"),M=s.value.trim().toLowerCase().split(" ");for(const s of a){const a=`${null!==(i=s.mapName)&&void 0!==i?i:""} ${null!==(d=s.mapDescription)&&void 0!==d?d:""} ${null!==(n=s.mapAddress1)&&void 0!==n?n:""} ${null!==(r=s.mapAddress2)&&void 0!==r?r:""}`.toLowerCase();let t=!0;for(const e of M)if(!a.includes(e)){t=!1;break}t&&(y+=1,H.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getMapURL(s.mapId)+'">'+cityssm.escapeHTML(""===s.mapName?"(No Name)":s.mapName)+'</a><br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(o=s.mapDescription)&&void 0!==o?o:"")+"</span></td><td>"+(""===(null!==(l=s.mapAddress1)&&void 0!==l?l:"")?"":cityssm.escapeHTML(null!==(c=s.mapAddress1)&&void 0!==c?c:"")+"<br />")+(""===(null!==(p=s.mapAddress2)&&void 0!==p?p:"")?"":cityssm.escapeHTML(null!==(m=s.mapAddress2)&&void 0!==m?m:"")+"<br />")+(s.mapCity||s.mapProvince?cityssm.escapeHTML(null!==(h=s.mapCity)&&void 0!==h?h:"")+", "+cityssm.escapeHTML(null!==(u=s.mapProvince)&&void 0!==u?u:"")+"<br />":"")+(""===(null!==(v=s.mapPostalCode)&&void 0!==v?v:"")?"":cityssm.escapeHTML(null!==(L=s.mapPostalCode)&&void 0!==L?L:""))+"</td><td>"+cityssm.escapeHTML(null!==(f=s.mapPhoneNumber)&&void 0!==f?f:"")+'</td><td class="has-text-centered">'+(s.mapLatitude&&s.mapLongitude?'<span data-tooltip="Has Geographic Coordinates"><i class="fas fa-map-marker-alt" aria-label="Has Geographic Coordinates"></i></span>':"")+'</td><td class="has-text-centered">'+(""===(null!==(b=s.mapSVG)&&void 0!==b?b:"")?"":'<span data-tooltip="Has Image"><i class="fas fa-image" aria-label="Has Image"></i></span>')+"</td>"+`<td class="has-text-right">\n <a href="${e.urlPrefix}/lots?mapId=${s.mapId}">${s.lotCount}</a>\n </td>`+"</tr>"))}if(t.innerHTML="",0===y)t.innerHTML=`<div class="message is-info">\n <p class="message-body">There are no ${e.escapedAliases.maps} that meet the search criteria.</p>\n </div>`;else{const a=document.createElement("table");a.className="table is-fullwidth is-striped is-hoverable has-sticky-header",a.innerHTML=`<thead><tr>\n <th>${e.escapedAliases.Map}</th>\n <th>Address</th>\n <th>Phone Number</th>\n <th class="has-text-centered">Coordinates</th>\n <th class="has-text-centered">Image</th>\n <th class="has-text-right">${e.escapedAliases.Lot} Count</th>\n </tr></thead>`,a.append(H),t.append(a)}}s.addEventListener("keyup",i),document.querySelector("#form--searchFilters").addEventListener("submit",e=>{e.preventDefault(),i()}),i()})();
|
||||
|
|
@ -1 +1 @@
|
|||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=exports.workOrderPrints,s=document.querySelector("#form--searchFilters");e.initializeDatePickers(s);const a=document.querySelector("#container--searchResults"),r=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),o=document.querySelector("#searchFilter--offset");function l(s){var o,l,i,n,p,u,f,h,m,O;if(0===s.workOrders.length)return void(a.innerHTML='<div class="message is-info"><p class="message-body">There are no work orders that meet the search criteria.</p></div>');const k=document.createElement("tbody");for(const a of s.workOrders){let s="";for(const t of a.workOrderLots)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(o=t.mapName)&&void 0!==o?o:"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(""===(null!==(l=t.lotName)&&void 0!==l?l:"")?"(No "+e.escapedAliases.Lot+" Name)":t.lotName)+"</span><br />";for(const t of a.workOrderLotOccupancies)for(const a of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(i=a.lotOccupantType)&&void 0!==i?i:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=a.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":a.fontAwesomeIconClass)+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(""===(null!==(p=a.occupantName)&&void 0!==p?p:"")?"(No Name)":a.occupantName)+"</span><br />";k.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getWorkOrderURL(a.workOrderId)+'">'+(a.workOrderNumber.trim()?cityssm.escapeHTML(null!==(u=a.workOrderNumber)&&void 0!==u?u:""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(null!==(f=a.workOrderType)&&void 0!==f?f:"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(h=a.workOrderDescription)&&void 0!==h?h:"")+'</span></td><td class="is-nowrap"><span class="is-size-7">'+s+'</span></td><td class="is-nowrap"><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderOpenDate+'"><i class="fas fa-fw fa-play" aria-label="'+e.escapedAliases.WorkOrderOpenDate+'"></i> '+a.workOrderOpenDateString+'</span><br /><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderCloseDate+'"><i class="fas fa-fw fa-stop" aria-label="'+e.escapedAliases.WorkOrderCloseDate+'"></i> '+(a.workOrderCloseDate?a.workOrderCloseDateString:'<span class="has-text-grey">(No '+e.escapedAliases.WorkOrderCloseDate+")</span>")+"</span></td><td>"+(0===a.workOrderMilestoneCount?"-":a.workOrderMilestoneCompletionCount+" / "+a.workOrderMilestoneCount)+"</td>"+(t.length>0?'<td><a class="button is-small" data-tooltip="Print" href="'+e.urlPrefix+"/print/"+t[0]+"/?workOrderId="+a.workOrderId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a></td>':"")+"</tr>")}a.innerHTML='<table class="table is-fullwidth is-striped is-hoverable has-sticky-header"><thead><tr><th>Work Order Number</th><th>Description</th><th>Related</th><th>Date</th><th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>'+(t.length>0?'<th class="has-width-1"></th>':"")+"</tr></thead><table>",a.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(r,s.offset,s.count)),a.querySelector("table").append(k),null===(m=a.querySelector("button[data-page='previous']"))||void 0===m||m.addEventListener("click",c),null===(O=a.querySelector("button[data-page='next']"))||void 0===O||O.addEventListener("click",d)}function i(){a.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,l)}function n(){o.value="0",i()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-r,0).toString(),i()}function d(){o.value=(Number.parseInt(o.value,10)+r).toString(),i()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault(),n()}),i()})();
|
||||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=exports.workOrderPrints,s=document.querySelector("#form--searchFilters");e.initializeDatePickers(s);const a=document.querySelector("#container--searchResults"),r=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),o=document.querySelector("#searchFilter--offset");function l(s){var o,l,i,n,p,u,f,h,m,O;if(0===s.workOrders.length)return void(a.innerHTML='<div class="message is-info"><p class="message-body">There are no work orders that meet the search criteria.</p></div>');const k=document.createElement("tbody");for(const a of s.workOrders){let s="";for(const t of a.workOrderLots)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(o=t.mapName)&&void 0!==o?o:"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(""===(null!==(l=t.lotName)&&void 0!==l?l:"")?"(No "+e.escapedAliases.Lot+" Name)":t.lotName)+"</span><br />";for(const t of a.workOrderLotOccupancies)for(const a of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(i=a.lotOccupantType)&&void 0!==i?i:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=a.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":a.fontAwesomeIconClass)+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(""===(null!==(p=a.occupantName)&&void 0!==p?p:"")?"(No Name)":a.occupantName)+"</span><br />";k.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getWorkOrderURL(a.workOrderId)+'">'+(a.workOrderNumber.trim()?cityssm.escapeHTML(null!==(u=a.workOrderNumber)&&void 0!==u?u:""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(null!==(f=a.workOrderType)&&void 0!==f?f:"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(h=a.workOrderDescription)&&void 0!==h?h:"")+'</span></td><td class="is-nowrap"><span class="is-size-7">'+s+'</span></td><td class="is-nowrap"><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderOpenDate+'"><i class="fas fa-fw fa-play" aria-label="'+e.escapedAliases.WorkOrderOpenDate+'"></i> '+a.workOrderOpenDateString+'</span><br /><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderCloseDate+'"><i class="fas fa-fw fa-stop" aria-label="'+e.escapedAliases.WorkOrderCloseDate+'"></i> '+(a.workOrderCloseDate?a.workOrderCloseDateString:'<span class="has-text-grey">(No '+e.escapedAliases.WorkOrderCloseDate+")</span>")+"</span></td><td>"+(0===a.workOrderMilestoneCount?"-":a.workOrderMilestoneCompletionCount+" / "+a.workOrderMilestoneCount)+"</td>"+(t.length>0?'<td><a class="button is-small" data-tooltip="Print" href="'+e.urlPrefix+"/print/"+t[0]+"/?workOrderId="+a.workOrderId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a></td>':"")+"</tr>")}a.innerHTML='<table class="table is-fullwidth is-striped is-hoverable has-sticky-header"><thead><tr><th>Work Order Number</th><th>Description</th><th>Related</th><th>Date</th><th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>'+(t.length>0?'<th class="has-width-1"></th>':"")+"</tr></thead><table>",a.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(r,s.offset,s.count)),a.querySelector("table").append(k),null===(m=a.querySelector("button[data-page='previous']"))||void 0===m||m.addEventListener("click",c),null===(O=a.querySelector("button[data-page='next']"))||void 0===O||O.addEventListener("click",d)}function i(){a.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,l)}function n(){o.value="0",i()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-r,0).toString(),i()}function d(){o.value=(Number.parseInt(o.value,10)+r).toString(),i()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault()}),i()})();
|
||||
Loading…
Reference in New Issue