From 1ef4bbd437b87f7ffa527fe51707ca2dd0992b83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Glasn=C3=A1k?= Date: Thu, 16 Feb 2023 07:52:29 +0100 Subject: [PATCH 1/7] Bugfixing --- app/src/plugins/tm@_store/store/index.ts | 14 +++++++++++++- .../tasks/_components/a-tasks-filter.vue | 4 ++-- .../master-task/_mixins/selects.mixin.ts | 5 ++--- .../_components/a-task-timeblocks.vue | 2 -- .../plugins/tm@modal/task/z-task-modal.vue | 19 +++++++++++-------- 5 files changed, 28 insertions(+), 16 deletions(-) diff --git a/app/src/plugins/tm@_store/store/index.ts b/app/src/plugins/tm@_store/store/index.ts index 2042d93..2ecefbd 100644 --- a/app/src/plugins/tm@_store/store/index.ts +++ b/app/src/plugins/tm@_store/store/index.ts @@ -56,10 +56,22 @@ export default { state.teams = state.teams.filter(t => t.id != team.id) }, + update_subtask(state: any, subtask: any) { + state.unscheduledSubtasks = state.unscheduledSubtasks.map(st => st.id == subtask.id ? subtask : st) + state.ongoingSubtasks = state.ongoingSubtasks.map(st => st.id == subtask.id ? subtask : st) + state.mastertasks = state.mastertasks.map(mastertask => { + mastertask.subtasks = mastertask.subtasks.map(st => st.id == subtask.id ? subtask : st) + return mastertask + }) + }, + delete_subtask(state: any, subtask: any) { state.unscheduledSubtasks = state.unscheduledSubtasks.filter(st => st.id != subtask.id) state.ongoingSubtasks = state.ongoingSubtasks.filter(st => st.id != subtask.id) - state.mastertasks = state.mastertasks.map(mastertask => mastertask.subtasks.filter(st => st.id != subtask.id)) + state.mastertasks = state.mastertasks.map(mastertask => { + mastertask.subtasks = mastertask.subtasks.filter(st => st.id != subtask.id) + return mastertask + }) }, initialized(state: any) { diff --git a/app/src/plugins/tm@dashboard/tasks/_components/a-tasks-filter.vue b/app/src/plugins/tm@dashboard/tasks/_components/a-tasks-filter.vue index 9af6910..ba799a6 100644 --- a/app/src/plugins/tm@dashboard/tasks/_components/a-tasks-filter.vue +++ b/app/src/plugins/tm@dashboard/tasks/_components/a-tasks-filter.vue @@ -4,7 +4,7 @@ v-model="selectedEmployee" class="subheader-input" :items="[null, ...employees]" - item-title="fullName" + item-title="_fullName" item-value="id" label="Zamestnanec" variant="outlined" @@ -77,7 +77,7 @@ export default { async _getEmployees() { this.employees = await this.$axios.get_auth_data('v1/employees') this.employees.forEach(employee => { - employee.fullName = `${employee.name} ${employee.surname}` + employee._fullName = `${employee.name} ${employee.surname}` if (employee.id == this.user.id) this.selectedEmployee = employee }) }, diff --git a/app/src/plugins/tm@modal/master-task/_mixins/selects.mixin.ts b/app/src/plugins/tm@modal/master-task/_mixins/selects.mixin.ts index 0c14d81..78697b4 100644 --- a/app/src/plugins/tm@modal/master-task/_mixins/selects.mixin.ts +++ b/app/src/plugins/tm@modal/master-task/_mixins/selects.mixin.ts @@ -25,9 +25,8 @@ export default { onMasterTaskSelected({ key }) { const mastertask = this.mastertasks.find(masterTask => masterTask.id == key) - this.task.master_task.name = mastertask.name - this.task.master_task.id = mastertask.id - this.task.project_code = mastertask.project_code + this.task.master_task = mastertask + this.task.project_code = mastertask.project_code }, onEmployeeSelected({ key }) { diff --git a/app/src/plugins/tm@modal/task/_components/_components/a-task-timeblocks.vue b/app/src/plugins/tm@modal/task/_components/_components/a-task-timeblocks.vue index 61bb469..c07eb11 100644 --- a/app/src/plugins/tm@modal/task/_components/_components/a-task-timeblocks.vue +++ b/app/src/plugins/tm@modal/task/_components/_components/a-task-timeblocks.vue @@ -116,8 +116,6 @@ export default { async deleteTimeblock({ id }) { const task = JSON.parse(JSON.stringify(this.task)) task.timeblocks = task.timeblocks.filter(timeblock => timeblock.id != id) - console.log(task.timeblocks) - console.log(id) this._update(task) }, diff --git a/app/src/plugins/tm@modal/task/z-task-modal.vue b/app/src/plugins/tm@modal/task/z-task-modal.vue index 0ed5ab8..293c3a0 100644 --- a/app/src/plugins/tm@modal/task/z-task-modal.vue +++ b/app/src/plugins/tm@modal/task/z-task-modal.vue @@ -69,6 +69,7 @@ import ZAutocomplete from "@/plugins/tm@_components/z-autocomplete.vue" import ZTaskReadonlyInfo from "./_components/z-task-readonly-info.vue" import { mapGetters } from "vuex" +import moment from "moment" export default { emits: ["close", "refresh"], @@ -144,12 +145,11 @@ export default { this.$nextTick(() => this.v$.$reset()) try { - if (task?.id) { - const fetchedTask = await this.$axios.get_auth_data(`v1/subtasks/${task.id}`) - this.task = this._enrichTask(fetchedTask) + const subtask = await this.$axios.get_auth_data(`v1/subtasks/${task.id}`) + this.task = this._enrichTask(subtask) } else { - this.task = { master_task: masterTask } + this.task = { master_task: masterTask, timeblocks: [{start: tmUtils.formatDateTimeForBackend(moment()), end: tmUtils.formatDateTimeForBackend(moment())}] } this.masterTaskIdSelect = masterTask.id } @@ -164,17 +164,19 @@ export default { }, async save() { - if (!(await this.v$.$validate())) return console.log(this.v$) + if (!(await this.v$.$validate())) + return this.task.description = this.$refs["description"].getHTML() try { if (this.task?.id) { - await this.$axios.put_auth_data(`v1/subtasks/${this.task.id}`, this.task) + const { subtask } = await this.$axios.put_auth(`v1/subtasks/${this.task.id}`, this.task) + this.$store.commit('tm/update_subtask', subtask) } else { const { subtask } = await this.$axios.post_auth(`v1/mastertasks/${this.task.master_task.id}/subtasks`, this.task) - console.log(subtask) this.task.id = subtask.id + this.$store.commit('tm/update_subtask', subtask) } this.$events.emit("on-task-edited", this.task) @@ -219,7 +221,7 @@ export default { _enrichTask(task) { task.master_task = this.mastertasks.find((masterTask) => masterTask.id == task.master_task_id) task.employee = this.enrichedEmployees.find((employee) => employee.id == task.employee_id) - this.masterTaskIdSelect = task.master_task.id + this.masterTaskIdSelect = task.master_task?.id return task } @@ -241,6 +243,7 @@ export default { editMode() { this.$nextTick(() => { + console.log(this.task.description) this.$refs["description"]?.setHTML(this.task.description || "") }) } From d6ad4ee3502ce54edb785422599e7117e652a05a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Glasn=C3=A1k?= Date: Thu, 16 Feb 2023 07:56:31 +0100 Subject: [PATCH 2/7] Bugfixing --- app/src/plugins/tm@modal/master-task/z-master-task-modal.vue | 1 + app/src/plugins/tm@modal/task/z-delete-task-modal.vue | 4 ++-- app/src/plugins/tm@modal/task/z-task-modal.vue | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/src/plugins/tm@modal/master-task/z-master-task-modal.vue b/app/src/plugins/tm@modal/master-task/z-master-task-modal.vue index 8d26014..15b24df 100644 --- a/app/src/plugins/tm@modal/master-task/z-master-task-modal.vue +++ b/app/src/plugins/tm@modal/master-task/z-master-task-modal.vue @@ -142,6 +142,7 @@ export default { }) this.$events.on('on-task-deleted', (task) => { + if (!this.masterTask) return this.masterTask.subtasks = this.masterTask.subtasks.filter((subtask) => subtask.id != task.id) }) diff --git a/app/src/plugins/tm@modal/task/z-delete-task-modal.vue b/app/src/plugins/tm@modal/task/z-delete-task-modal.vue index 1aa590f..a4f416a 100644 --- a/app/src/plugins/tm@modal/task/z-delete-task-modal.vue +++ b/app/src/plugins/tm@modal/task/z-delete-task-modal.vue @@ -43,9 +43,9 @@ export default { async deleteTask() { try { await this.$axios.delete(`v1/subtasks/${this.task.id}`) - // this.$emit('on-task-deleted', this.task) - + this.$store.commit('tm/delete_subtask', this.task) + this.$emit('on-task-deleted', this.task) this.closeModal() } catch (error) { this.$toast.error(error) diff --git a/app/src/plugins/tm@modal/task/z-task-modal.vue b/app/src/plugins/tm@modal/task/z-task-modal.vue index 293c3a0..d758434 100644 --- a/app/src/plugins/tm@modal/task/z-task-modal.vue +++ b/app/src/plugins/tm@modal/task/z-task-modal.vue @@ -133,7 +133,7 @@ export default { this.$forceUpdate() }) - this.$events.on("on-task-deleted", (task) => { + this.$events.on('on-task-deleted', (task) => { if (task?.id == this.task?.id) this.closeModal() }) }, From face71cc3c3e9c5e6590c4a0f6b14d60de288bf0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Glasn=C3=A1k?= Date: Thu, 16 Feb 2023 07:57:57 +0100 Subject: [PATCH 3/7] Bugfixing --- app/src/plugins/lib@auth/login/_components/a-login-form.vue | 3 ++- app/src/plugins/tm@modal/task/z-task-modal.vue | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/plugins/lib@auth/login/_components/a-login-form.vue b/app/src/plugins/lib@auth/login/_components/a-login-form.vue index ad05520..25dd4f4 100644 --- a/app/src/plugins/lib@auth/login/_components/a-login-form.vue +++ b/app/src/plugins/lib@auth/login/_components/a-login-form.vue @@ -38,7 +38,8 @@ export default { methods: { async submit() { - if (!(await this.v$.$validate())) return console.log(this.v$) + if (!(await this.v$.$validate())) + return try { await this.$store.dispatch('auth/login', this.form) diff --git a/app/src/plugins/tm@modal/task/z-task-modal.vue b/app/src/plugins/tm@modal/task/z-task-modal.vue index d758434..2f7a152 100644 --- a/app/src/plugins/tm@modal/task/z-task-modal.vue +++ b/app/src/plugins/tm@modal/task/z-task-modal.vue @@ -243,7 +243,6 @@ export default { editMode() { this.$nextTick(() => { - console.log(this.task.description) this.$refs["description"]?.setHTML(this.task.description || "") }) } From e68e4ae16598c56ccce9e06e5c35b83fd4236a8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Glasn=C3=A1k?= Date: Thu, 16 Feb 2023 08:04:29 +0100 Subject: [PATCH 4/7] Bugfixing --- app/src/plugins/tm@overview/_components/z-tasks-search.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/plugins/tm@overview/_components/z-tasks-search.vue b/app/src/plugins/tm@overview/_components/z-tasks-search.vue index 1be2754..5a4d74b 100644 --- a/app/src/plugins/tm@overview/_components/z-tasks-search.vue +++ b/app/src/plugins/tm@overview/_components/z-tasks-search.vue @@ -45,7 +45,7 @@ export default { methods: { onInput() { - this.$emit('query-changed', this.searchQuery) + this.$emit('on-search', this.searchQuery) } }, From bd8d8289f952aaa43ea862e7c3293fa098c16860 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Glasn=C3=A1k?= Date: Thu, 16 Feb 2023 08:04:45 +0100 Subject: [PATCH 5/7] Bugfixing --- app/src/plugins/tm@overview/_components/z-tasks-search.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/plugins/tm@overview/_components/z-tasks-search.vue b/app/src/plugins/tm@overview/_components/z-tasks-search.vue index 5a4d74b..c10f189 100644 --- a/app/src/plugins/tm@overview/_components/z-tasks-search.vue +++ b/app/src/plugins/tm@overview/_components/z-tasks-search.vue @@ -45,7 +45,7 @@ export default { methods: { onInput() { - this.$emit('on-search', this.searchQuery) + this.$emit('search', this.searchQuery) } }, From ae7c747398fca8e2af523b6e1c6a6906744db70d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Glasn=C3=A1k?= Date: Thu, 16 Feb 2023 08:05:06 +0100 Subject: [PATCH 6/7] Bugfixing --- app/src/plugins/tm@overview/_components/z-tasks-search.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/plugins/tm@overview/_components/z-tasks-search.vue b/app/src/plugins/tm@overview/_components/z-tasks-search.vue index c10f189..37fe822 100644 --- a/app/src/plugins/tm@overview/_components/z-tasks-search.vue +++ b/app/src/plugins/tm@overview/_components/z-tasks-search.vue @@ -26,7 +26,7 @@ import { mapGetters } from 'vuex' export default { - emits: ['seach', 'employee-selected'], + emits: ['search', 'employee-selected'], data() { return { From e34386b179c6135627d62565ca8682987728f395 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Glasn=C3=A1k?= Date: Thu, 16 Feb 2023 08:07:25 +0100 Subject: [PATCH 7/7] [Ongoing tasks] Search fix --- app/src/plugins/tm@overview/tasks-ongoing/tasks-ongoing.vue | 2 +- .../plugins/tm@overview/tasks-unscheduled/tasks-unscheduled.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/plugins/tm@overview/tasks-ongoing/tasks-ongoing.vue b/app/src/plugins/tm@overview/tasks-ongoing/tasks-ongoing.vue index 842ce54..ee75ace 100644 --- a/app/src/plugins/tm@overview/tasks-ongoing/tasks-ongoing.vue +++ b/app/src/plugins/tm@overview/tasks-ongoing/tasks-ongoing.vue @@ -1,7 +1,7 @@