From f1b2b888fe6c14063977a2c320c32ddcd6ca07a0 Mon Sep 17 00:00:00 2001 From: sajjad Date: Wed, 30 Mar 2022 20:23:00 +0430 Subject: [PATCH] fix --- src/abstraction/resources/programResource.js | 1 + src/components/Programs/Item.vue | 17 ++++++++++++++--- src/store/modules/programs/actions.js | 5 +++-- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/abstraction/resources/programResource.js b/src/abstraction/resources/programResource.js index b89f536..8c374b3 100644 --- a/src/abstraction/resources/programResource.js +++ b/src/abstraction/resources/programResource.js @@ -3,6 +3,7 @@ import { getJsonTrainer } from './trainerProgramResource'; import { getJsonSportCategory } from './sportCategoryPorgramResource'; export const getJson = (data) => ({ id: data.id, + active_trainee_count: data.active_trainee_count, trainer: data.trainer ? getJsonTrainer(data.trainer) : {}, trainer_id: data.trainer_id, sport_category: data.trainer ? getJsonSportCategory(data.trainer) : {}, diff --git a/src/components/Programs/Item.vue b/src/components/Programs/Item.vue index 6713039..41eabf3 100644 --- a/src/components/Programs/Item.vue +++ b/src/components/Programs/Item.vue @@ -30,6 +30,7 @@ /> { - this.deleteProgram(id); - }); + console.log("this.program.active_trainee_count", this.program.active_trainee_count); + if (this.program.active_trainee_count === 0) { + console.log("is not started"); + toast.question("Are sure delete program?", "Delete program", async () => { + await this.deleteProgram({ courseId: id, isStarted: false }); + }); + } else { + console.log("is started"); + toast.question("Are sure delete program?", "Delete program", async () => { + await this.deleteProgram({ courseId: id, isStarted: true }); + this.program.verified = false; + }); + } }, async openDetailModal() { await this.loadProgram(this.program.id); diff --git a/src/store/modules/programs/actions.js b/src/store/modules/programs/actions.js index 640bdd1..feced74 100644 --- a/src/store/modules/programs/actions.js +++ b/src/store/modules/programs/actions.js @@ -55,14 +55,15 @@ export default { const resource = await repository.update(data.id, data); commit("UPDATE_PROGRAM", resource); }, - async deleteProgram({ commit }, courseId) { + async deleteProgram({ commit }, { courseId, isStarted }) { let repository = new ProgramRepository(); if (role === 'admin') { await repository.delete(courseId); } else { await repository.deleteTrainer(courseId); } - commit('DELETE_PROGRAM', courseId); + console.log('is started', isStarted); + !isStarted && commit('DELETE_PROGRAM', courseId); }, async verifyProgram({ commit }, courseId) { let repository = new ProgramRepository();