build out mock views

This commit is contained in:
Casey Wittrock 2025-10-24 03:40:53 -05:00
parent 6dac3bfb02
commit 403b29a8b8
12 changed files with 1066 additions and 70 deletions

View file

@ -2,20 +2,18 @@
<div>
<H2>Client Contact List</H2>
<div id="filter-container" class="filter-container">
<input placeholder="Type to Search" />
<p>Type:</p>
<select id="type-selector"></select>
<button @click="onClick" id="add-customer-button" class="interaction-button">
Add
</button>
</div>
<DataTable :data="tableData" :columns="columns" />
<DataTable :data="tableData" :columns="columns" :filters="filters" />
</div>
</template>
<script setup>
import { onMounted, ref } from "vue";
import DataTable from "../DataTable.vue";
import Api from "../../api";
import { FilterMatchMode } from "@primevue/core";
const tableData = ref([]);
@ -23,12 +21,27 @@ const onClick = () => {
frappe.new_doc("Customer");
};
const filters = {
fullName: { value: null, matchMode: FilterMatchMode.CONTAINS },
};
const columns = [
{ label: "Name", fieldName: "fullName", type: "text" },
{ label: "Appt. Scheduled", fieldName: "appointmentScheduled", type: "status" },
{ label: "Estimate Sent", fieldName: "estimateSent", type: "status" },
{ label: "Payment Received", fieldName: "paymentReceived", type: "status" },
{ label: "Job Status", fieldName: "jobStatus", type: "status" },
{
label: "Name",
fieldName: "fullName",
type: "text",
sortable: true,
filterable: true,
},
{
label: "Appt. Scheduled",
fieldName: "appointmentScheduled",
type: "status",
sortable: true,
},
{ label: "Estimate Sent", fieldName: "estimateSent", type: "status", sortable: true },
{ label: "Payment Received", fieldName: "paymentReceived", type: "status", sortable: true },
{ label: "Job Status", fieldName: "jobStatus", type: "status", sortable: true },
];
onMounted(async () => {
if (tableData.value.length > 0) {