filter work orders by open status

deepsource-autofix-76c6eb20
Dan Gowans 2022-09-09 15:06:53 -04:00
parent 7eac5a1ba0
commit ff5473bf8a
4 changed files with 50 additions and 13 deletions

View File

@ -1,6 +1,7 @@
import type * as recordTypes from "../../types/recordTypes";
interface GetWorkOrdersFilters {
workOrderTypeId?: number | string;
workOrderOpenStatus?: "" | "open" | "closed";
}
interface GetWorkOrdersOptions {
limit: number;

View File

@ -12,6 +12,14 @@ export const getWorkOrders = (filters, options) => {
sqlWhereClause += " and w.workOrderTypeId = ?";
sqlParameters.push(filters.workOrderTypeId);
}
if (filters.workOrderOpenStatus) {
if (filters.workOrderOpenStatus === "open") {
sqlWhereClause += " and w.workOrderCloseDate is null";
}
else if (filters.workOrderOpenStatus === "closed") {
sqlWhereClause += " and w.workOrderCloseDate is not null";
}
}
const count = database
.prepare("select count(*) as recordCount" +
" from WorkOrders w" +

View File

@ -8,6 +8,7 @@ import type * as recordTypes from "../../types/recordTypes";
interface GetWorkOrdersFilters {
workOrderTypeId?: number | string;
workOrderOpenStatus?: "" | "open" | "closed";
}
interface GetWorkOrdersOptions {
@ -36,6 +37,14 @@ export const getWorkOrders = (
sqlParameters.push(filters.workOrderTypeId);
}
if (filters.workOrderOpenStatus) {
if (filters.workOrderOpenStatus === "open") {
sqlWhereClause += " and w.workOrderCloseDate is null";
} else if (filters.workOrderOpenStatus === "closed") {
sqlWhereClause += " and w.workOrderCloseDate is not null";
}
}
const count: number = database
.prepare(
"select count(*) as recordCount" +

View File

@ -32,6 +32,8 @@
<input id="searchFilter--limit" name="limit" type="hidden" value="100" />
<input id="searchFilter--offset" name="offset" type="hidden" value="0" />
<div class="columns">
<div class="column">
<div class="field">
<label class="label" for="searchFilter--workOrderTypeId">Work Order Type</label>
<div class="control has-icons-left">
@ -48,6 +50,23 @@
</span>
</div>
</div>
</div>
<div class="column">
<div class="field">
<label class="label" for="searchFilter--workOrderOpenStatus">Open Status</label>
<div class="control">
<div class="select is-fullwidth">
<select id="searchFilter--workOrderOpenStatus" name="workOrderOpenStatus">
<option value="">(All Statuses)</option>
<option value="open" selected>Open</option>
<option value="closed">Closed</option>
</select>
</div>
</div>
</div>
</div>
</div>
</form>
</div>