add daily transactions report

deepsource-autofix-76c6eb20
Dan Gowans 2022-10-19 10:50:38 -04:00
parent 51794096a4
commit a034ad5ddc
7 changed files with 191 additions and 63 deletions

View File

@ -26,10 +26,11 @@ export const getReportData = (reportName, reportParameters) => {
let sql;
const sqlParameters = [];
switch (reportName) {
case "maps-all":
case "maps-all": {
sql = "select * from Maps";
break;
case "maps-formatted":
}
case "maps-formatted": {
sql =
"select mapName as " +
mapNameAlias +
@ -51,10 +52,12 @@ export const getReportData = (reportName, reportParameters) => {
" where recordDelete_timeMillis is null" +
" order by mapName";
break;
case "lots-all":
}
case "lots-all": {
sql = "select * from Lots";
break;
case "lots-byLotTypeId":
}
case "lots-byLotTypeId": {
sql =
"select l.lotId as " +
lotIdAlias +
@ -74,7 +77,8 @@ export const getReportData = (reportName, reportParameters) => {
" and l.lotTypeId = ?";
sqlParameters.push(reportParameters.lotTypeId);
break;
case "lots-byLotStatusId":
}
case "lots-byLotStatusId": {
sql =
"select l.lotId as " +
lotIdAlias +
@ -94,7 +98,8 @@ export const getReportData = (reportName, reportParameters) => {
" and l.lotStatusId = ?";
sqlParameters.push(reportParameters.lotStatusId);
break;
case "lots-byMapId":
}
case "lots-byMapId": {
sql =
"select l.lotId as " +
lotIdAlias +
@ -114,16 +119,20 @@ export const getReportData = (reportName, reportParameters) => {
" and l.mapId = ?";
sqlParameters.push(reportParameters.mapId);
break;
case "lotComments-all":
}
case "lotComments-all": {
sql = "select * from LotComments";
break;
case "lotFields-all":
}
case "lotFields-all": {
sql = "select * from LotFields";
break;
case "lotOccupancies-all":
}
case "lotOccupancies-all": {
sql = "select * from LotOccupancies";
break;
case "lotOccupancies-current-byMapId":
}
case "lotOccupancies-current-byMapId": {
sql =
"select o.lotOccupancyId as " +
lotOccupancyIdAlias +
@ -146,25 +155,44 @@ export const getReportData = (reportName, reportParameters) => {
" and l.mapId = ?";
sqlParameters.push(dateTimeFunctions.dateToInteger(new Date()), reportParameters.mapId);
break;
case "lotOccupancyComments-all":
}
case "lotOccupancyComments-all": {
sql = "select * from LotOccupancyComments";
break;
case "lotOccupancyFees-all":
}
case "lotOccupancyFees-all": {
sql = "select * from LotOccupancyFees";
break;
case "lotOccupancyFields-all":
}
case "lotOccupancyFields-all": {
sql = "select * from LotOccupancyFields";
break;
case "lotOccupancyOccupants-all":
}
case "lotOccupancyOccupants-all": {
sql = "select * from LotOccupancyOccupants";
break;
case "lotOccupancyTransactions-all":
}
case "lotOccupancyTransactions-all": {
sql = "select * from LotOccupancyTransactions";
break;
case "workOrders-all":
}
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 = ?";
sqlParameters.push(dateTimeFunctions.dateStringToInteger(reportParameters.transactionDateString));
break;
}
case "workOrders-all": {
sql = "select * from WorkOrders";
break;
case "workOrders-open":
}
case "workOrders-open": {
sql =
"select w.workOrderId, w.workOrderNumber," +
" t.workOrderType, w.workOrderDescription," +
@ -183,47 +211,62 @@ export const getReportData = (reportName, reportParameters) => {
" where w.recordDelete_timeMillis is null" +
" and w.workOrderCloseDate is null";
break;
case "workOrderComments-all":
}
case "workOrderComments-all": {
sql = "select * from WorkOrderComments";
break;
case "workOrderLots-all":
}
case "workOrderLots-all": {
sql = "select * from WorkOrderLots";
break;
case "workOrderMilestones-all":
}
case "workOrderMilestones-all": {
sql = "select * from WorkOrderMilestones";
break;
case "fees-all":
}
case "fees-all": {
sql = "select * from Fees";
break;
case "feeCategories-all":
}
case "feeCategories-all": {
sql = "select * from FeeCategories";
break;
case "lotTypes-all":
}
case "lotTypes-all": {
sql = "select * from LotTypes";
break;
case "lotTypeFields-all":
}
case "lotTypeFields-all": {
sql = "select * from LotTypeFields";
break;
case "lotStatuses-all":
}
case "lotStatuses-all": {
sql = "select * from LotStatuses";
break;
case "occupancyTypes-all":
}
case "occupancyTypes-all": {
sql = "select * from OccupancyTypes";
break;
case "occupancyTypeFields-all":
}
case "occupancyTypeFields-all": {
sql = "select * from OccupancyTypeFields";
break;
case "lotOccupantTypes-all":
}
case "lotOccupantTypes-all": {
sql = "select * from LotOccupantTypes";
break;
case "workOrderTypes-all":
}
case "workOrderTypes-all": {
sql = "select * from WorkOrderTypes";
break;
case "workOrderMilestoneTypes-all":
}
case "workOrderMilestoneTypes-all": {
sql = "select * from WorkOrderMilestoneTypes";
break;
default:
}
default: {
return undefined;
}
}
const database = sqlite(databasePath, {
readonly: true

View File

@ -43,11 +43,12 @@ export const getReportData = (
const sqlParameters = [];
switch (reportName) {
case "maps-all":
case "maps-all": {
sql = "select * from Maps";
break;
}
case "maps-formatted":
case "maps-formatted": {
sql =
"select mapName as " +
mapNameAlias +
@ -70,12 +71,14 @@ export const getReportData = (
" order by mapName";
break;
}
case "lots-all":
case "lots-all": {
sql = "select * from Lots";
break;
}
case "lots-byLotTypeId":
case "lots-byLotTypeId": {
sql =
"select l.lotId as " +
lotIdAlias +
@ -97,8 +100,9 @@ export const getReportData = (
sqlParameters.push(reportParameters.lotTypeId);
break;
}
case "lots-byLotStatusId":
case "lots-byLotStatusId": {
sql =
"select l.lotId as " +
lotIdAlias +
@ -120,8 +124,9 @@ export const getReportData = (
sqlParameters.push(reportParameters.lotStatusId);
break;
}
case "lots-byMapId":
case "lots-byMapId": {
sql =
"select l.lotId as " +
lotIdAlias +
@ -143,20 +148,24 @@ export const getReportData = (
sqlParameters.push(reportParameters.mapId);
break;
}
case "lotComments-all":
case "lotComments-all": {
sql = "select * from LotComments";
break;
}
case "lotFields-all":
case "lotFields-all": {
sql = "select * from LotFields";
break;
}
case "lotOccupancies-all":
case "lotOccupancies-all": {
sql = "select * from LotOccupancies";
break;
}
case "lotOccupancies-current-byMapId":
case "lotOccupancies-current-byMapId": {
sql =
"select o.lotOccupancyId as " +
lotOccupancyIdAlias +
@ -181,32 +190,57 @@ export const getReportData = (
sqlParameters.push(dateTimeFunctions.dateToInteger(new Date()), reportParameters.mapId);
break;
}
case "lotOccupancyComments-all":
case "lotOccupancyComments-all": {
sql = "select * from LotOccupancyComments";
break;
}
case "lotOccupancyFees-all":
case "lotOccupancyFees-all": {
sql = "select * from LotOccupancyFees";
break;
}
case "lotOccupancyFields-all":
case "lotOccupancyFields-all": {
sql = "select * from LotOccupancyFields";
break;
}
case "lotOccupancyOccupants-all":
case "lotOccupancyOccupants-all": {
sql = "select * from LotOccupancyOccupants";
break;
}
case "lotOccupancyTransactions-all":
case "lotOccupancyTransactions-all": {
sql = "select * from LotOccupancyTransactions";
break;
}
case "workOrders-all":
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 = ?";
sqlParameters.push(
dateTimeFunctions.dateStringToInteger(
reportParameters.transactionDateString as string
)
);
break;
}
case "workOrders-all": {
sql = "select * from WorkOrders";
break;
}
case "workOrders-open":
case "workOrders-open": {
sql =
"select w.workOrderId, w.workOrderNumber," +
" t.workOrderType, w.workOrderDescription," +
@ -225,61 +259,76 @@ export const getReportData = (
" where w.recordDelete_timeMillis is null" +
" and w.workOrderCloseDate is null";
break;
}
case "workOrderComments-all":
case "workOrderComments-all": {
sql = "select * from WorkOrderComments";
break;
}
case "workOrderLots-all":
case "workOrderLots-all": {
sql = "select * from WorkOrderLots";
break;
}
case "workOrderMilestones-all":
case "workOrderMilestones-all": {
sql = "select * from WorkOrderMilestones";
break;
}
case "fees-all":
case "fees-all": {
sql = "select * from Fees";
break;
}
case "feeCategories-all":
case "feeCategories-all": {
sql = "select * from FeeCategories";
break;
}
case "lotTypes-all":
case "lotTypes-all": {
sql = "select * from LotTypes";
break;
}
case "lotTypeFields-all":
case "lotTypeFields-all": {
sql = "select * from LotTypeFields";
break;
}
case "lotStatuses-all":
case "lotStatuses-all": {
sql = "select * from LotStatuses";
break;
}
case "occupancyTypes-all":
case "occupancyTypes-all": {
sql = "select * from OccupancyTypes";
break;
}
case "occupancyTypeFields-all":
case "occupancyTypeFields-all": {
sql = "select * from OccupancyTypeFields";
break;
}
case "lotOccupantTypes-all":
case "lotOccupantTypes-all": {
sql = "select * from LotOccupantTypes";
break;
}
case "workOrderTypes-all":
case "workOrderTypes-all": {
sql = "select * from WorkOrderTypes";
break;
}
case "workOrderMilestoneTypes-all":
case "workOrderMilestoneTypes-all": {
sql = "select * from WorkOrderMilestoneTypes";
break;
}
default:
default: {
return undefined;
}
}
const database = sqlite(databasePath, {

View File

@ -0,0 +1 @@
export {};

View File

@ -1,4 +1,7 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
(() => {
const los = exports.los;
const menuTabElements = document.querySelectorAll(".menu a");
const tabContainerElements = document.querySelectorAll(".tabs-container > div");
const selectTab = (clickEvent) => {

View File

@ -1,4 +1,10 @@
/* eslint-disable unicorn/prefer-module */
import type * as globalTypes from "../types/globalTypes";
(() => {
const los = exports.los as globalTypes.LOS;
const menuTabElements = document.querySelectorAll(".menu a") as NodeListOf<HTMLAnchorElement>;
const tabContainerElements = document.querySelectorAll(
".tabs-container > div"

View File

@ -1 +1 @@
(()=>{const e=document.querySelectorAll(".menu a"),s=document.querySelectorAll(".tabs-container > div"),t=t=>{t.preventDefault();for(const s of e)s.classList.remove("is-active");const c=t.currentTarget;c.classList.add("is-active");const i=c.href.slice(Math.max(0,c.href.indexOf("#")+1));for(const e of s)e.id===i?e.classList.remove("is-hidden"):e.classList.add("is-hidden")};for(const s of e)s.addEventListener("click",t)})();
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{exports.los;const e=document.querySelectorAll(".menu a"),s=document.querySelectorAll(".tabs-container > div"),t=t=>{t.preventDefault();for(const s of e)s.classList.remove("is-active");const o=t.currentTarget;o.classList.add("is-active");const c=o.href.slice(Math.max(0,o.href.indexOf("#")+1));for(const e of s)e.id===c?e.classList.remove("is-hidden"):e.classList.add("is-hidden")};for(const s of e)s.addEventListener("click",t)})();

View File

@ -147,6 +147,32 @@
</div>
</div>
</form>
<form class="panel-block align-items-flex-start" method="get" action="<%= urlPrefix %>/reports/lotOccupancyTransactions-byTransactionDateString">
<div class="has-text-centered my-2 ml-2 mr-3">
<span class="icon has-text-info">
<i class="fas fa-2x fa-file" aria-hidden="true"></i>
</span><br />
<span class="tag is-info">CSV</span>
</div>
<div>
<h3 class="title is-5 is-marginless">Transactions by Date</h3>
<div class="field has-addons mt-2">
<div class="control">
<label class="button is-small is-static" for="lotOccupancyTransactions-byTransactionDateString--transactionDateString">
Transaction Date
</label>
</div>
<div class="control is-expanded">
<input class="input is-small" id="lotOccupancyTransactions-byTransactionDateString--transactionDateString" name="transactionDateString" type="date" value="<%= dateTimeFunctions.dateToString(new Date()) %>" required />
</div>
<div class="control">
<button class="button is-small is-primary" type="submit">
Export
</button>
</div>
</div>
</div>
</form>
</div>
</div>
<div class="is-hidden" id="tab--lots">