From bc1ff9ed54a15d5696423167647878ded6ef96e3 Mon Sep 17 00:00:00 2001 From: Jepp9350 <2jepp9350@gmail.com> Date: Tue, 4 Mar 2025 15:19:27 +0100 Subject: [PATCH] Add water usage tracking and improve daily report handling Updated DepartmentDailyReports to add water usage fields and support notes for daily reports. Enhanced form submission logic in DepartmentDashboardDailyReportTodayForm to handle fetching or creating reports dynamically based on date. Improved error handling and integrated success messages for better user feedback. --- .../Objects/DepartmentDailyReports.vue | 24 ++-- ...epartmentDashboardDailyReportTodayForm.vue | 107 ++++++++++++++++-- 2 files changed, 113 insertions(+), 18 deletions(-) diff --git a/src/components/session/token/SessionUser/Objects/DepartmentDailyReports.vue b/src/components/session/token/SessionUser/Objects/DepartmentDailyReports.vue index 0f63ca6a..7d746d90 100644 --- a/src/components/session/token/SessionUser/Objects/DepartmentDailyReports.vue +++ b/src/components/session/token/SessionUser/Objects/DepartmentDailyReports.vue @@ -67,30 +67,32 @@ import {ref} from "vue"; } }, }, - add: async (department_id, category_id) => { + add: async (department_id, water_usage_morning = 0, water_usage = 0, notes = null) => { return ObjectsGlobal.add.object( DepartmentDailyReports.meta.endpoint, { department_id: parseInt(department_id), - category_id: parseInt(category_id) + water_usage_morning: parseInt(water_usage_morning), + water_usage: parseInt(water_usage), + notes: notes ? notes : 'Daily report' } ); }, set: { - department_id: async (id, department_id) => { + water_usage: async (id, water_usage) => { return ObjectsGlobal.set.column( DepartmentDailyReports.meta.endpoint, id, - "department_id", - parseInt(department_id) + "water_usage", + parseInt(water_usage) ) }, - category_id: async (id, category_id) => { + water_usage_morning: async (id, water_usage_morning) => { return ObjectsGlobal.set.column( DepartmentDailyReports.meta.endpoint, id, - "category_id", - parseInt(category_id) + "water_usage_morning", + parseInt(water_usage_morning) ) }, }, @@ -125,6 +127,12 @@ import {ref} from "vue"; "GET" ); }, + getLatest: async (department_id) => { + return authenticatedRequest( + "/departments/daily-reports/latest?id=" + department_id, + "GET" + ); + }, }, /** * Show the create object form diff --git a/src/views/dashboards/departmentDashboard/modules/daily-report/displays/DepartmentDashboardDailyReportTodayForm.vue b/src/views/dashboards/departmentDashboard/modules/daily-report/displays/DepartmentDashboardDailyReportTodayForm.vue index d11d1f2a..0d0e2e4b 100644 --- a/src/views/dashboards/departmentDashboard/modules/daily-report/displays/DepartmentDashboardDailyReportTodayForm.vue +++ b/src/views/dashboards/departmentDashboard/modules/daily-report/displays/DepartmentDashboardDailyReportTodayForm.vue @@ -1,20 +1,105 @@