parent
f812140ff1
commit
b001b7a7d9
@ -1,10 +1,22 @@
|
||||
import axios from "axios";
|
||||
import url from "@/router/url";
|
||||
import { setData } from "../resources/workoutResource.js";
|
||||
import { setData, getJson, getArray } from "../resources/workoutResource.js";
|
||||
export default class WorkoutRepository {
|
||||
async index() {
|
||||
let response = await axios.get(url("indexWorkout"));
|
||||
if (response.status === 200) {
|
||||
return getArray(response.data);
|
||||
}
|
||||
}
|
||||
async store(data) {
|
||||
let json = setData(data);
|
||||
let response = await axios.post(url("storeWorkout"), json);
|
||||
console.log('response', response);
|
||||
console.log('kldsbhakjbg', response.data);
|
||||
if (response.status === 201) {
|
||||
return getJson(response.data);
|
||||
}
|
||||
}
|
||||
async delete(workoutId) {
|
||||
await axios.delete(url("destroyWorkout", { workout: workoutId }));
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,8 @@
|
||||
import WorkoutCategoriesRepository from "@/abstraction/repository/workoutCategoriesRepository";
|
||||
export default {
|
||||
async loadWorkoutCategories({ commit }) {
|
||||
let data = { sorts: 'fasdfas' }
|
||||
async loadWorkoutCategories({ commit }, id) {
|
||||
let repository = new WorkoutCategoriesRepository();
|
||||
const resource = await repository.index(data);
|
||||
const resource = await repository.index({filters:{sport_category_id: id}});
|
||||
commit("SET_WORKOUT_CATEGORIES", resource.data);
|
||||
}
|
||||
};
|
||||
|
@ -1,9 +1,19 @@
|
||||
import workoutRepository from "@/abstraction/repository/workoutRepository";
|
||||
export default {
|
||||
async loadWorkouts({ commit }) {
|
||||
let repository = new workoutRepository();
|
||||
const resource = await repository.index();
|
||||
commit("SET_WORKOUT", resource.data);
|
||||
// commit("SET_PAGINATION", resource.pagination);
|
||||
},
|
||||
async addWorkout({ commit }, data) {
|
||||
console.log('data', data);
|
||||
let repository = new workoutRepository();
|
||||
const resource = await repository.store(data);
|
||||
commit("SET_WORKOUTS", resource.data);
|
||||
commit("ADD_WORKOUT", resource.data);
|
||||
},
|
||||
async deleteWorkout({ commit }, workoutId) {
|
||||
let repository = new workoutRepository();
|
||||
await repository.delete(workoutId);
|
||||
commit('DELETE_WORKOUT', workoutId);
|
||||
}
|
||||
};
|
||||
|
@ -0,0 +1,3 @@
|
||||
export default {
|
||||
getWorkouts: state => state.workouts
|
||||
}
|
@ -1,7 +1,13 @@
|
||||
import Vue from "vue";
|
||||
export default {
|
||||
SET_WORKOUTS(state, data) {
|
||||
Vue.set(state, "workout", data);
|
||||
SET_WORKOUT(state, data) {
|
||||
Vue.set(state, "workouts", data);
|
||||
},
|
||||
ADD_WORKOUT(state, data) {
|
||||
state.workouts.push(data);
|
||||
},
|
||||
DELETE_WORKOUT(state, workoutId) {
|
||||
const index = state.workouts.findIndex((x) => x.id === workoutId);
|
||||
state.workouts.splice(index, 1);
|
||||
},
|
||||
};
|
||||
|
Loading…
Reference in new issue