diff --git a/frontend/src/api.js b/frontend/src/api.js
index 30454e4..8febd1f 100644
--- a/frontend/src/api.js
+++ b/frontend/src/api.js
@@ -15,6 +15,7 @@ const FRAPPE_ESTIMATE_UPDATE_RESPONSE_METHOD = "custom_ui.api.db.estimates.manua
// Job methods
const FRAPPE_GET_JOBS_METHOD = "custom_ui.api.db.get_jobs";
const FRAPPE_UPSERT_JOB_METHOD = "custom_ui.api.db.jobs.upsert_job";
+const FRAPPE_GET_JOB_TASK_LIST_METHOD = "custom_ui.api.db.get_job_task_list";
// Invoice methods
const FRAPPE_GET_INVOICES_METHOD = "custom_ui.api.db.invoices.get_invoice_table_data";
const FRAPPE_UPSERT_INVOICE_METHOD = "custom_ui.api.db.invoices.upsert_invoice";
@@ -267,6 +268,19 @@ class Api {
return result;
}
+ static async getJobTaskList(jobName) {
+ if (frappe.db.exists("Project", jobName) {
+ const result = await request(FRAPPE_GET_JOB_TASK_LIST_METHOD, { data: jobName )
+ console.log(`DEBUG: API - retrieved task list from job ${jobName}:`, result);
+ return result
+ }
+ else {
+ console.log(`DEBUG: API - no record found for task like from job ${jobName}: `, result);
+ }
+ }
+
+
+
// ============================================================================
// INVOICE / PAYMENT METHODS
// ============================================================================
diff --git a/frontend/src/components/pages/Job.vue b/frontend/src/components/pages/Job.vue
new file mode 100644
index 0000000..60799c7
--- /dev/null
+++ b/frontend/src/components/pages/Job.vue
@@ -0,0 +1,162 @@
+
+
+
{{ isNew ? 'Create Job' : 'View Job' }}
+
+
+
+
+
+
+
+
+
+
+
+