-
- {{activeUser.lastname}}, {{activeUser.firstname}}
-
-
- Email senden
-
-
-
-
-
- {{errorMessage(errorMail)}}
-
-
-
-
- Konfiguration
-
-
-
-
- Status:
-
-
- {{activeUser.locked ? 'Gesperrt': 'nicht Gesperrt'}}
-
-
- {{activeUser.locked ? 'Entperren' : 'Sperren'}}
-
-
-
-
-
-
-
-
-
-
-
-
- Speichern
-
-
-
-
-
- Geld transferieren
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Hinzufügen
-
-
-
-
- {{year}}
-
-
-
-
-
- Vorjahr:
-
-
-
- {{(activeUser.creditList[year][1].last / 100).toFixed(2)}}
-
-
-
- Gesamt:
-
-
-
- {{(getAllSum(activeUser.creditList[year][2].sum ,activeUser.creditList[year][1].last) /
- 100).toFixed(2)}}
-
-
-
-
-
-
-
+
+
+ {{activeUser.lastname}}, {{activeUser.firstname}}
+
+
+ Email senden
+
+
+
+
+ {{errorMessage(errorMail)}}
+
+
+
+ Konfiguration
+
+
+
+
+ Status:
+
+
+ {{activeUser.locked ? 'Gesperrt': 'nicht Gesperrt'}}
+
+
+ {{activeUser.locked ? 'Entperren' : 'Sperren'}}
+
+
+
+
+
+
+
+
+
+
+
+
+ Speichern
+
+
+
+
+
+ Geld transferieren
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Hinzufügen
+
+
+
+
+ {{year}}
+
+
+
+
+
+ Vorjahr:
+
+
+ {{(activeUser.creditList[year][1].last / 100).toFixed(2)}}
+
+
+ Gesamt:
+
+
+
+ {{(getAllSum(activeUser.creditList[year][2].sum ,activeUser.creditList[year][1].last) /
+ 100).toFixed(2)}}
+
+
+
+
+
+
+
diff --git a/src/plugins/routes.js b/src/plugins/routes.js
index 47ed526..9d79aca 100644
--- a/src/plugins/routes.js
+++ b/src/plugins/routes.js
@@ -1,20 +1,20 @@
-const main = 'http://192.168.5.118:5000/';
+const main = 'http://192.168.5.118:5000/'
const url = {
- login: main + 'login',
- getFinanzerMain: main + 'getFinanzerMain',
- bar: main + 'bar',
- barGetUser: main + 'barGetUser',
- barAddAmount: main + 'baradd',
- finanzerAddAmount: main + 'finanzerAddAmount',
- finanzerAddCredit: main + 'finanzerAddCredit',
- searchUser: main + 'search',
- getAllUser: main + 'barGetUsers',
- lockUser: main + 'finanzerLock',
- finanzerSetConfig: main + 'finanzerSetConfig',
- finanzerAddUser: main + 'finanzerAddUser',
- finanzerSendAllMail: main + 'finanzerSendAllMail',
- finanzerSendOneMail: main + 'finanzerSendOneMail'
-};
+ login: main + 'login',
+ getFinanzerMain: main + 'getFinanzerMain',
+ bar: main + 'bar',
+ barGetUser: main + 'barGetUser',
+ barAddAmount: main + 'baradd',
+ finanzerAddAmount: main + 'finanzerAddAmount',
+ finanzerAddCredit: main + 'finanzerAddCredit',
+ searchUser: main + 'search',
+ getAllUser: main + 'barGetUsers',
+ lockUser: main + 'finanzerLock',
+ finanzerSetConfig: main + 'finanzerSetConfig',
+ finanzerAddUser: main + 'finanzerAddUser',
+ finanzerSendAllMail: main + 'finanzerSendAllMail',
+ finanzerSendOneMail: main + 'finanzerSendOneMail'
+}
-export default url;
+export default url
diff --git a/src/plugins/vuetify.js b/src/plugins/vuetify.js
index 392f1a1..fa57d63 100644
--- a/src/plugins/vuetify.js
+++ b/src/plugins/vuetify.js
@@ -1,11 +1,11 @@
-import Vue from 'vue';
-import Vuetify from 'vuetify/lib';
+import Vue from 'vue'
+import Vuetify from 'vuetify/lib'
import 'material-design-icons-iconfont'
-Vue.use(Vuetify);
+Vue.use(Vuetify)
export default new Vuetify({
- icons: {
- iconfont: 'md',
- }
-});
+ icons: {
+ iconfont: 'md'
+ }
+})
diff --git a/src/router/index.js b/src/router/index.js
index efe673b..e7f546e 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -1,36 +1,34 @@
import Vue from 'vue'
import VueRouter from 'vue-router'
-import FinanzerView from "@/views/FinanzerView";
-import Login from "@/views/Login";
-import store from "@/store/index";
-import BarView from "@/views/BarView";
+import FinanzerView from '@/views/FinanzerView'
+import Login from '@/views/Login'
+import store from '@/store/index'
+import BarView from '@/views/BarView'
Vue.use(VueRouter)
const routes = [
-
{
- path: "/login",
- name: "login",
+ path: '/login',
+ name: 'login',
component: Login
},
{
- path: "/finanzer",
- name: "finanzer",
+ path: '/finanzer',
+ name: 'finanzer',
component: FinanzerView
},
{
- path: "/bar",
- name: "bar",
+ path: '/bar',
+ name: 'bar',
component: BarView
},
{
path: '*',
redirect: {
- name: "login"
+ name: 'login'
}
- },
-
+ }
]
const router = new VueRouter({
@@ -40,7 +38,7 @@ const router = new VueRouter({
})
router.beforeEach((to, from, next) => {
- store.dispatch('fetchAccessToken');
+ store.dispatch('fetchAccessToken')
let sites = ['/finanzer', '/bar']
if (sites.includes(to.fullPath)) {
if (to.fullPath === '/finanzer') {
@@ -64,10 +62,9 @@ router.beforeEach((to, from, next) => {
} else if (store.state.login.user.group.includes('bar')) {
next('/bar')
}
-
}
}
- next();
-});
+ next()
+})
export default router
diff --git a/src/store/index.js b/src/store/index.js
index d4aa58f..e8ca7be 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -1,8 +1,8 @@
-import Vue from 'vue';
-import Vuex from 'vuex';
-import login from './modules/login';
+import Vue from 'vue'
+import Vuex from 'vuex'
+import login from './modules/login'
import finanzerUsers from './modules/finanzerUsers'
-import barUsers from "@/store/modules/barUsers";
+import barUsers from '@/store/modules/barUsers'
Vue.use(Vuex)
diff --git a/src/store/modules/barUsers.js b/src/store/modules/barUsers.js
index e6b7d1e..ed4186a 100644
--- a/src/store/modules/barUsers.js
+++ b/src/store/modules/barUsers.js
@@ -1,115 +1,138 @@
-import axios from 'axios';
-import url from '@/plugins/routes';
+import axios from 'axios'
+import url from '@/plugins/routes'
const state = {
- users: [],
- allUsers: []
-};
+ users: [],
+ allUsers: []
+}
const mutations = {
- setAllUsers: (state, users) => {
- state.allUsers = []
- state.allUsers = users
- for (let i = 0; i < state.allUsers.length; i++) {
- state.allUsers[i].fullName = state.allUsers[i].firstname + " " + state.allUsers[i].lastname
- }
- },
- setUsers: (state, users) => {
- // eslint-disable-next-line no-console
- console.log(users)
- for (let user in users) {
- // eslint-disable-next-line no-console
- console.log(user)
- let existuser = state.users.find(a => {return user === a.username})
+ setAllUsers: (state, users) => {
+ state.allUsers = []
+ state.allUsers = users
+ for (let i = 0; i < state.allUsers.length; i++) {
+ state.allUsers[i].fullName =
+ state.allUsers[i].firstname + ' ' + state.allUsers[i].lastname
+ }
+ },
+ setUsers: (state, users) => {
+ // eslint-disable-next-line no-console
+ console.log(users)
+ for (let user in users) {
+ // eslint-disable-next-line no-console
+ console.log(user)
+ let existuser = state.users.find(a => {
+ return user === a.username
+ })
- if (existuser) {
- existuser.sername = users[user].username
- existuser.firstname = users[user].firstname
- existuser.lastname = users[user].lastname
- existuser.locked = users[user].locked
- existuser.amount = users[user].amount
- existuser.type = users[user].type
- } else {
- state.users.push({
- username: users[user].username,
- firstname: users[user].firstname,
- lastname: users[user].lastname,
- locked: users[user].locked,
- amount: users[user].amount,
- type: users[user].type
- })
- }
- }
- // eslint-disable-next-line no-console
- console.log(state.users)
- mutations.sortUsers(state)
- },
- sortUsers: (state) => {
- state.users = state.users.sort((a,b) => {
- if (a.lastname > b.lastname) return 1
- if (a.lastname < b.lastname) return -1
- if (a.firstname > b.firstname) return 1
- if (a.firstname < b.firstname) return -1
- return 0
+ if (existuser) {
+ existuser.sername = users[user].username
+ existuser.firstname = users[user].firstname
+ existuser.lastname = users[user].lastname
+ existuser.locked = users[user].locked
+ existuser.amount = users[user].amount
+ existuser.type = users[user].type
+ } else {
+ state.users.push({
+ username: users[user].username,
+ firstname: users[user].firstname,
+ lastname: users[user].lastname,
+ locked: users[user].locked,
+ amount: users[user].amount,
+ type: users[user].type
})
- },
-
-};
+ }
+ }
+ // eslint-disable-next-line no-console
+ console.log(state.users)
+ mutations.sortUsers(state)
+ },
+ sortUsers: state => {
+ state.users = state.users.sort((a, b) => {
+ if (a.lastname > b.lastname) return 1
+ if (a.lastname < b.lastname) return -1
+ if (a.firstname > b.firstname) return 1
+ if (a.firstname < b.firstname) return -1
+ return 0
+ })
+ }
+}
const actions = {
- // eslint-disable-next-line no-unused-vars
- async getUsers({commit, rootState, dispatch}) {
- try {
- const response = await axios.get(url.bar, {headers: {Token: rootState.login.user.accessToken}})
- // eslint-disable-next-line no-console
- console.log(response.data)
- commit('setUsers', response.data)
- } catch (e) {
- if (e.response) if (e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async addAmount({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.barAddAmount, {userId: data.username, amount: data.amount}, {headers: {Token: rootState.login.user.accessToken}})
- commit('setUsers', {[response.data.username]: response.data})
- } catch (e) {
- if (e.response) if (e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async addCreditList({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.barGetUser, {userId: data.username}, {headers: {Token: rootState.login.user.accessToken}})
- commit('setUsers', {[response.data.username]: response.data})
- } catch (e) {
- if (e.response) if (e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async getAllUsers({commit, rootState, dispatch}) {
- // eslint-disable-next-line no-console
- console.log('hier bin ich')
- try {
- const response = await axios.post(url.searchUser, {searchString: ""}, {headers: {Token: rootState.login.user.accessToken}})
- // eslint-disable-next-line no-console
- console.log(response)
- commit('setAllUsers', response.data)
- } catch (e) {
- // eslint-disable-next-line no-console
- console.log(e)
- if (e.response) if (e.response.data === 401) dispatch('logout', null, {root: true})
- }
+ // eslint-disable-next-line no-unused-vars
+ async getUsers({ commit, rootState, dispatch }) {
+ try {
+ const response = await axios.get(url.bar, {
+ headers: { Token: rootState.login.user.accessToken }
+ })
+ // eslint-disable-next-line no-console
+ console.log(response.data)
+ commit('setUsers', response.data)
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
}
-
-};
+ },
+ async addAmount({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.barAddAmount,
+ { userId: data.username, amount: data.amount },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ commit('setUsers', { [response.data.username]: response.data })
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
+ }
+ },
+ async addCreditList({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.barGetUser,
+ { userId: data.username },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ commit('setUsers', { [response.data.username]: response.data })
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
+ }
+ },
+ async getAllUsers({ commit, rootState, dispatch }) {
+ // eslint-disable-next-line no-console
+ console.log('hier bin ich')
+ try {
+ const response = await axios.post(
+ url.searchUser,
+ { searchString: '' },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ // eslint-disable-next-line no-console
+ console.log(response)
+ commit('setAllUsers', response.data)
+ } catch (e) {
+ // eslint-disable-next-line no-console
+ console.log(e)
+ if (e.response)
+ if (e.response.data === 401) dispatch('logout', null, { root: true })
+ }
+ }
+}
const getters = {
- users: (state) => { return state.users },
- allUsers: (state) => { return state.allUsers }
-};
+ users: state => {
+ return state.users
+ },
+ allUsers: state => {
+ return state.allUsers
+ }
+}
export default {
- namespaced: true,
- state,
- mutations,
- actions,
- getters
+ namespaced: true,
+ state,
+ mutations,
+ actions,
+ getters
}
diff --git a/src/store/modules/finanzerUsers.js b/src/store/modules/finanzerUsers.js
index f3b50fb..d379a36 100644
--- a/src/store/modules/finanzerUsers.js
+++ b/src/store/modules/finanzerUsers.js
@@ -1,311 +1,443 @@
-import axios from 'axios';
+import axios from 'axios'
// eslint-disable-next-line no-unused-vars
import url from '@/plugins/routes'
const state = {
- users: [],
- activeUser: {
- username: null,
- },
- allUsers: [],
- user: null,
- errorMails: null,
- errorMail: null,
- year: new Date().getFullYear(),
- years: [],
- months: [
- {value: 1, text: 'Januar'},
- {value: 2, text: 'Februar'},
- {value: 3, text: 'März'},
- {value: 4, text:'April'},
- {value: 5, text: 'Mai'},
- {value: 6, text: 'Juni'},
- {value: 7, text: 'Juli'},
- {value: 8, text: 'August'},
- {value: 9, text: 'September'},
- {value: 10, text: 'Oktober'},
- {value: 11, text: 'November'},
- {value: 12, text: 'Dezember'}
- ],
-};
+ users: [],
+ activeUser: {
+ username: null
+ },
+ allUsers: [],
+ user: null,
+ errorMails: null,
+ errorMail: null,
+ year: new Date().getFullYear(),
+ years: [],
+ months: [
+ { value: 1, text: 'Januar' },
+ { value: 2, text: 'Februar' },
+ { value: 3, text: 'März' },
+ { value: 4, text: 'April' },
+ { value: 5, text: 'Mai' },
+ { value: 6, text: 'Juni' },
+ { value: 7, text: 'Juli' },
+ { value: 8, text: 'August' },
+ { value: 9, text: 'September' },
+ { value: 10, text: 'Oktober' },
+ { value: 11, text: 'November' },
+ { value: 12, text: 'Dezember' }
+ ]
+}
const mutations = {
- setAllUsers: (state, users) => {
- state.allUsers = []
- state.allUsers = users
- for (let i = 0; i < state.allUsers.length; i++) {
- state.allUsers[i].fullName = state.allUsers[i].firstname + " " + state.allUsers[i].lastname
- }
- },
- setActiveUser: (state, user) => {
- if (state.activeUser.username === user.username) {
- state.activeUser = {username: null}
- } else {
- state.activeUser = user
- }
- state.errorMail = null
- },
- setUsers: (state, users) => {
- // eslint-disable-next-line no-console
- console.log('users', users)
- for (let user in users) {
- // eslint-disable-next-line no-console
- console.log('user', user)
- let list = {}
- for (let creditList in users[user]['creditList']) {
- let amount = mutations.createAmount(users[user]['creditList'][creditList])
- let credit = mutations.createCredit(users[user]['creditList'][creditList])
- let sum = mutations.createSum(credit, amount)
- list[creditList] = [{...credit}, {...amount}, {...sum}]
- }
-
- let existUser = state.users.find(a => {return a.username === user})
-
- // eslint-disable-next-line no-console
- console.log(existUser)
- if (existUser) {
- existUser.username = users[user].username
- existUser.firstname = users[user].firstname
- existUser.lastname = users[user].lastname
- existUser.limit = users[user].limit
- existUser.locked = users[user].locked
- existUser.autoLock = users[user].autoLock
- existUser.creditList = list
- } else {
- state.users.push({
- username: users[user].username,
- firstname: users[user].firstname,
- lastname: users[user].lastname,
- limit: users[user].limit,
- locked: users[user].locked,
- autoLock: users[user].autoLock,
- creditList: list,
- expand: false
- })
- }
- }
- mutations.sortUsers(state)
-
- // eslint-disable-next-line no-console
- console.log(state.users)
- },
- createAmount(creditList) {
- let amount = {
- type:'Schulden',
- jan_amount: 0 - creditList.jan.depts,
- feb_amount: 0 - creditList.feb.depts,
- maer_amount: 0 - creditList.maer.depts,
- apr_amount:0 - creditList.apr.depts,
- mai_amount: 0 - creditList.mai.depts,
- jun_amount: 0 - creditList.jun.depts,
- jul_amount: 0 - creditList.jul.depts,
- aug_amount: 0 - creditList.aug.depts,
- sep_amount: 0 - creditList.sep.depts,
- okt_amount: 0 - creditList.okt.depts,
- nov_amount: 0 - creditList.nov.depts,
- dez_amount: 0 - creditList.dez.depts,
- last: 0 - creditList['last']
- }
-
- amount.sum = amount.jan_amount + amount.feb_amount + amount.maer_amount + amount.apr_amount + amount.mai_amount + amount.jun_amount + amount.jul_amount + amount.aug_amount + amount.sep_amount + amount.okt_amount + amount.nov_amount + amount.dez_amount
- return amount
- },
- createCredit(creditList) {
- let credit = {
- type:'Guthaben',
- jan_amount: creditList.jan.credit,
- feb_amount: creditList.feb.credit,
- maer_amount: creditList.maer.credit,
- apr_amount: creditList.apr.credit,
- mai_amount: creditList.mai.credit,
- jun_amount: creditList.jun.credit,
- jul_amount: creditList.jul.credit,
- aug_amount: creditList.aug.credit,
- sep_amount: creditList.sep.credit,
- okt_amount: creditList.okt.credit,
- nov_amount: creditList.nov.credit,
- dez_amount: creditList.dez.credit
- }
- credit.sum = credit.jan_amount + credit.feb_amount + credit.maer_amount + credit.apr_amount + credit.mai_amount + credit.jun_amount + credit.jul_amount + credit.aug_amount + credit.sep_amount + credit.okt_amount + credit.nov_amount + credit.dez_amount
- return credit
- },
- createSum(credit, amount) {
- let sum = {
- type:'Summe',
- jan_amount: credit.jan_amount + amount.jan_amount,
- feb_amount: credit.feb_amount + amount.feb_amount,
- maer_amount: credit.maer_amount + amount.maer_amount,
- apr_amount: credit.apr_amount + amount.apr_amount,
- mai_amount: credit.mai_amount + amount.mai_amount,
- jun_amount: credit.jun_amount + amount.jun_amount,
- jul_amount: credit.jul_amount + amount.jul_amount,
- aug_amount: credit.aug_amount + amount.aug_amount,
- sep_amount: credit.sep_amount + amount.sep_amount,
- okt_amount: credit.okt_amount + amount.okt_amount,
- nov_amount: credit.nov_amount + amount.nov_amount,
- dez_amount: credit.dez_amount + amount.dez_amount,
- }
- sum.sum = sum.jan_amount + sum.feb_amount + sum.maer_amount + sum.apr_amount + sum.mai_amount + sum.jun_amount + sum.jul_amount + sum.aug_amount + sum.sep_amount + sum.okt_amount + sum.nov_amount + sum.dez_amount
- return sum
- },
- sortUsers: (state) => {
- state.users = state.users.sort((a,b) => {
- if (a.lastname > b.lastname) return 1
- if (a.lastname < b.lastname) return -1
- if (a.firstname > b.firstname) return 1
- if (a.firstname < b.firstname) return -1
- return 0
- })
- },
- updateUsers: (state, data) => {
- let index = state.users.indexOf(state.users.find(a => {return a.username === data.username}))
- if (data.creditLists !== undefined) {
- let list = {}
- for (let creditList in data.creditLists) {
- let amount = mutations.createAmount(data.creditLists[creditList])
- let credit = mutations.createCredit(data.creditLists[creditList])
- let sum = mutations.createSum(credit, amount)
- list[creditList] = [{...credit}, {...amount}, {...sum}]
- }
- state.users[index].creditList = list
- }
- if (data.locked !== undefined) state.users[index].locked = data.locked
- if (data.limit !== undefined) state.users[index].limit = data.limit
- if (data.autoLock !== undefined) state.users[index].autoLock = data.autoLock
- },
- setMails: (state, data) => {
- state.errorMails = data
- },
- setMail: (state, data) => {
- state.errorMail = data
- },
- setYears: (state) => {
- for (let year = new Date().getFullYear(); year >= 2000; year--) {
- state.years.push({value: year, text: year})
- }
- },
- setYear: (state, value) => {
- if(value) state.year++
- else state.year--
+ setAllUsers: (state, users) => {
+ state.allUsers = []
+ state.allUsers = users
+ for (let i = 0; i < state.allUsers.length; i++) {
+ state.allUsers[i].fullName =
+ state.allUsers[i].firstname + ' ' + state.allUsers[i].lastname
}
-};
+ },
+ setActiveUser: (state, user) => {
+ if (state.activeUser.username === user.username) {
+ state.activeUser = { username: null }
+ } else {
+ state.activeUser = user
+ }
+ state.errorMail = null
+ },
+ setUsers: (state, users) => {
+ // eslint-disable-next-line no-console
+ console.log('users', users)
+ for (let user in users) {
+ // eslint-disable-next-line no-console
+ console.log('user', user)
+ let list = {}
+ for (let creditList in users[user]['creditList']) {
+ let amount = mutations.createAmount(
+ users[user]['creditList'][creditList]
+ )
+ let credit = mutations.createCredit(
+ users[user]['creditList'][creditList]
+ )
+ let sum = mutations.createSum(credit, amount)
+ list[creditList] = [{ ...credit }, { ...amount }, { ...sum }]
+ }
+
+ let existUser = state.users.find(a => {
+ return a.username === user
+ })
+
+ // eslint-disable-next-line no-console
+ console.log(existUser)
+ if (existUser) {
+ existUser.username = users[user].username
+ existUser.firstname = users[user].firstname
+ existUser.lastname = users[user].lastname
+ existUser.limit = users[user].limit
+ existUser.locked = users[user].locked
+ existUser.autoLock = users[user].autoLock
+ existUser.creditList = list
+ } else {
+ state.users.push({
+ username: users[user].username,
+ firstname: users[user].firstname,
+ lastname: users[user].lastname,
+ limit: users[user].limit,
+ locked: users[user].locked,
+ autoLock: users[user].autoLock,
+ creditList: list,
+ expand: false
+ })
+ }
+ }
+ mutations.sortUsers(state)
+
+ // eslint-disable-next-line no-console
+ console.log(state.users)
+ },
+ createAmount(creditList) {
+ let amount = {
+ type: 'Schulden',
+ jan_amount: 0 - creditList.jan.depts,
+ feb_amount: 0 - creditList.feb.depts,
+ maer_amount: 0 - creditList.maer.depts,
+ apr_amount: 0 - creditList.apr.depts,
+ mai_amount: 0 - creditList.mai.depts,
+ jun_amount: 0 - creditList.jun.depts,
+ jul_amount: 0 - creditList.jul.depts,
+ aug_amount: 0 - creditList.aug.depts,
+ sep_amount: 0 - creditList.sep.depts,
+ okt_amount: 0 - creditList.okt.depts,
+ nov_amount: 0 - creditList.nov.depts,
+ dez_amount: 0 - creditList.dez.depts,
+ last: 0 - creditList['last']
+ }
+
+ amount.sum =
+ amount.jan_amount +
+ amount.feb_amount +
+ amount.maer_amount +
+ amount.apr_amount +
+ amount.mai_amount +
+ amount.jun_amount +
+ amount.jul_amount +
+ amount.aug_amount +
+ amount.sep_amount +
+ amount.okt_amount +
+ amount.nov_amount +
+ amount.dez_amount
+ return amount
+ },
+ createCredit(creditList) {
+ let credit = {
+ type: 'Guthaben',
+ jan_amount: creditList.jan.credit,
+ feb_amount: creditList.feb.credit,
+ maer_amount: creditList.maer.credit,
+ apr_amount: creditList.apr.credit,
+ mai_amount: creditList.mai.credit,
+ jun_amount: creditList.jun.credit,
+ jul_amount: creditList.jul.credit,
+ aug_amount: creditList.aug.credit,
+ sep_amount: creditList.sep.credit,
+ okt_amount: creditList.okt.credit,
+ nov_amount: creditList.nov.credit,
+ dez_amount: creditList.dez.credit
+ }
+ credit.sum =
+ credit.jan_amount +
+ credit.feb_amount +
+ credit.maer_amount +
+ credit.apr_amount +
+ credit.mai_amount +
+ credit.jun_amount +
+ credit.jul_amount +
+ credit.aug_amount +
+ credit.sep_amount +
+ credit.okt_amount +
+ credit.nov_amount +
+ credit.dez_amount
+ return credit
+ },
+ createSum(credit, amount) {
+ let sum = {
+ type: 'Summe',
+ jan_amount: credit.jan_amount + amount.jan_amount,
+ feb_amount: credit.feb_amount + amount.feb_amount,
+ maer_amount: credit.maer_amount + amount.maer_amount,
+ apr_amount: credit.apr_amount + amount.apr_amount,
+ mai_amount: credit.mai_amount + amount.mai_amount,
+ jun_amount: credit.jun_amount + amount.jun_amount,
+ jul_amount: credit.jul_amount + amount.jul_amount,
+ aug_amount: credit.aug_amount + amount.aug_amount,
+ sep_amount: credit.sep_amount + amount.sep_amount,
+ okt_amount: credit.okt_amount + amount.okt_amount,
+ nov_amount: credit.nov_amount + amount.nov_amount,
+ dez_amount: credit.dez_amount + amount.dez_amount
+ }
+ sum.sum =
+ sum.jan_amount +
+ sum.feb_amount +
+ sum.maer_amount +
+ sum.apr_amount +
+ sum.mai_amount +
+ sum.jun_amount +
+ sum.jul_amount +
+ sum.aug_amount +
+ sum.sep_amount +
+ sum.okt_amount +
+ sum.nov_amount +
+ sum.dez_amount
+ return sum
+ },
+ sortUsers: state => {
+ state.users = state.users.sort((a, b) => {
+ if (a.lastname > b.lastname) return 1
+ if (a.lastname < b.lastname) return -1
+ if (a.firstname > b.firstname) return 1
+ if (a.firstname < b.firstname) return -1
+ return 0
+ })
+ },
+ updateUsers: (state, data) => {
+ let index = state.users.indexOf(
+ state.users.find(a => {
+ return a.username === data.username
+ })
+ )
+ if (data.creditLists !== undefined) {
+ let list = {}
+ for (let creditList in data.creditLists) {
+ let amount = mutations.createAmount(data.creditLists[creditList])
+ let credit = mutations.createCredit(data.creditLists[creditList])
+ let sum = mutations.createSum(credit, amount)
+ list[creditList] = [{ ...credit }, { ...amount }, { ...sum }]
+ }
+ state.users[index].creditList = list
+ }
+ if (data.locked !== undefined) state.users[index].locked = data.locked
+ if (data.limit !== undefined) state.users[index].limit = data.limit
+ if (data.autoLock !== undefined) state.users[index].autoLock = data.autoLock
+ },
+ setMails: (state, data) => {
+ state.errorMails = data
+ },
+ setMail: (state, data) => {
+ state.errorMail = data
+ },
+ setYears: state => {
+ for (let year = new Date().getFullYear(); year >= 2000; year--) {
+ state.years.push({ value: year, text: year })
+ }
+ },
+ setYear: (state, value) => {
+ if (value) state.year++
+ else state.year--
+ }
+}
const actions = {
- // eslint-disable-next-line no-unused-vars
- async getAllUsers({commit, rootState, dispatch}) {
- // eslint-disable-next-line no-console
- console.log(rootState)
- try {
- const response = await axios.post(url.searchUser, {searchString: ""}, {headers: {Token: rootState.login.user.accessToken}})
- commit('setAllUsers', response.data)
- } catch (err) {
- // eslint-disable-next-line no-console
- if (err.response) if (err.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async getUsers({commit, rootState, dispatch}) {
- try {
- const response = await axios.get(url.getFinanzerMain, {headers: {Token: rootState.login.user.accessToken}})
- // eslint-disable-next-line no-console
- console.log('response', response.data)
- commit('setUsers', response.data)
- } catch (err) {
- // eslint-disable-next-line no-console
- console.log(err)
- if (err.response) if (err.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- setActiveUser({ commit }, user) {
- commit('setActiveUser', user)
- },
- async addAmount({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.finanzerAddAmount, {userId: data.user.username, amount: data.amount * 100, year: data.year, month: data.month}, {headers: {Token: rootState.login.user.accessToken}})
- const creditLists = {...response.data}
- delete creditLists.locked
- commit('updateUsers', {creditLists: creditLists, locked: response.data.locked, username: data.user.username})
- } catch (err) {
- if (err.response) if (err.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async addCredit({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.finanzerAddCredit, {userId: data.user.username, credit: data.credit * 100, year: data.year, month: data.month}, {headers: {Token: rootState.login.user.accessToken}})
- const creditLists = {...response.data}
- delete creditLists.locked
- commit('updateUsers', {creditLists: creditLists, locked: response.data.locked, username: data.user.username})
- } catch (err) {
- if (err.response) if (err.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async doLock({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.lockUser, {userId: data.user.username, locked: data.locked}, {headers: {Token: rootState.login.user.accessToken}})
- commit('updateUsers', response.data)
- } catch (e) {
- if (e.response) if(e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async saveConfig({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.finanzerSetConfig, {userId: data.user.username, limit: data.limit * 100, autoLock: data.autoLock}, {headers: {Token: rootState.login.user.accessToken}})
- commit('updateUsers', response.data)
- } catch (e) {
- if (e.response) if(e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async addUser({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.finanzerAddUser, {userId: data.username}, {headers: {Token: rootState.login.user.accessToken}})
- commit('setUsers', response.data)
- } catch (e) {
- if (e.response) if (e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async sendMails({commit, rootState, dispatch}) {
- try {
- const response = await axios.get(url.finanzerSendAllMail, {headers: {Token: rootState.login.user.accessToken}})
- commit('setMails', response.data)
- } catch (e) {
- if (e.response) if (e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- async sendMail({commit, rootState, dispatch}, data) {
- try {
- const response = await axios.post(url.finanzerSendOneMail, {userId: data.username}, {headers: {Token: rootState.login.user.accessToken}})
- commit('setMail', response.data)
- } catch (e) {
- if (e.response) if (e.response.status === 401) dispatch('logout', null, {root: true})
- }
- },
- createYears({commit}) {
- commit('setYears')
- return 'hallo'
- },
- countYear({commit}, value) {
- commit('setYear', value)
+ // eslint-disable-next-line no-unused-vars
+ async getAllUsers({ commit, rootState, dispatch }) {
+ // eslint-disable-next-line no-console
+ console.log(rootState)
+ try {
+ const response = await axios.post(
+ url.searchUser,
+ { searchString: '' },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ commit('setAllUsers', response.data)
+ } catch (err) {
+ // eslint-disable-next-line no-console
+ if (err.response)
+ if (err.response.status === 401)
+ dispatch('logout', null, { root: true })
}
-};
+ },
+ async getUsers({ commit, rootState, dispatch }) {
+ try {
+ const response = await axios.get(url.getFinanzerMain, {
+ headers: { Token: rootState.login.user.accessToken }
+ })
+ // eslint-disable-next-line no-console
+ console.log('response', response.data)
+ commit('setUsers', response.data)
+ } catch (err) {
+ // eslint-disable-next-line no-console
+ console.log(err)
+ if (err.response)
+ if (err.response.status === 401)
+ dispatch('logout', null, { root: true })
+ }
+ },
+ setActiveUser({ commit }, user) {
+ commit('setActiveUser', user)
+ },
+ async addAmount({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.finanzerAddAmount,
+ {
+ userId: data.user.username,
+ amount: data.amount * 100,
+ year: data.year,
+ month: data.month
+ },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ const creditLists = { ...response.data }
+ delete creditLists.locked
+ commit('updateUsers', {
+ creditLists: creditLists,
+ locked: response.data.locked,
+ username: data.user.username
+ })
+ } catch (err) {
+ if (err.response)
+ if (err.response.status === 401)
+ dispatch('logout', null, { root: true })
+ }
+ },
+ async addCredit({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.finanzerAddCredit,
+ {
+ userId: data.user.username,
+ credit: data.credit * 100,
+ year: data.year,
+ month: data.month
+ },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ const creditLists = { ...response.data }
+ delete creditLists.locked
+ commit('updateUsers', {
+ creditLists: creditLists,
+ locked: response.data.locked,
+ username: data.user.username
+ })
+ } catch (err) {
+ if (err.response)
+ if (err.response.status === 401)
+ dispatch('logout', null, { root: true })
+ }
+ },
+ async doLock({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.lockUser,
+ { userId: data.user.username, locked: data.locked },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ commit('updateUsers', response.data)
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
+ }
+ },
+ async saveConfig({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.finanzerSetConfig,
+ {
+ userId: data.user.username,
+ limit: data.limit * 100,
+ autoLock: data.autoLock
+ },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ commit('updateUsers', response.data)
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
+ }
+ },
+ async addUser({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.finanzerAddUser,
+ { userId: data.username },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ commit('setUsers', response.data)
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
+ }
+ },
+ async sendMails({ commit, rootState, dispatch }) {
+ try {
+ const response = await axios.get(url.finanzerSendAllMail, {
+ headers: { Token: rootState.login.user.accessToken }
+ })
+ commit('setMails', response.data)
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
+ }
+ },
+ async sendMail({ commit, rootState, dispatch }, data) {
+ try {
+ const response = await axios.post(
+ url.finanzerSendOneMail,
+ { userId: data.username },
+ { headers: { Token: rootState.login.user.accessToken } }
+ )
+ commit('setMail', response.data)
+ } catch (e) {
+ if (e.response)
+ if (e.response.status === 401) dispatch('logout', null, { root: true })
+ }
+ },
+ createYears({ commit }) {
+ commit('setYears')
+ return 'hallo'
+ },
+ countYear({ commit }, value) {
+ commit('setYear', value)
+ }
+}
const getters = {
- users: state => { return state.users },
- activeUser: state => { return state.activeUser },
- allUsers: state => { return state.allUsers },
- user: state => { return state.user },
- errorMails: state => { return state.errorMails },
- errorMail: state => { return state.errorMail },
- years: state => { return state.years },
- selectYears: state => {return state.years},
- year: state => { return state.year },
- months: state => { return state.months},
-
-
-};
+ users: state => {
+ return state.users
+ },
+ activeUser: state => {
+ return state.activeUser
+ },
+ allUsers: state => {
+ return state.allUsers
+ },
+ user: state => {
+ return state.user
+ },
+ errorMails: state => {
+ return state.errorMails
+ },
+ errorMail: state => {
+ return state.errorMail
+ },
+ years: state => {
+ return state.years
+ },
+ selectYears: state => {
+ return state.years
+ },
+ year: state => {
+ return state.year
+ },
+ months: state => {
+ return state.months
+ }
+}
export default {
- namespaced: true,
- state,
- mutations,
- actions,
- getters
+ namespaced: true,
+ state,
+ mutations,
+ actions,
+ getters
}
diff --git a/src/store/modules/login.js b/src/store/modules/login.js
index fa0eae0..8604395 100644
--- a/src/store/modules/login.js
+++ b/src/store/modules/login.js
@@ -1,98 +1,107 @@
-import axios from 'axios';
-import router from "@/router";
+import axios from 'axios'
+import router from '@/router'
import url from '@/plugins/routes'
const state = {
- user: {
+ user: {
+ username: null,
+ accessToken: null,
+ group: null
+ },
+ loggingIn: false,
+ loginError: null
+}
+
+const mutations = {
+ loginStart: state => (state.loggingIn = true),
+ loginStop(state, errorMessage) {
+ state.loggingIn = false
+ state.loginError = errorMessage
+ },
+ updateAccessToken(state, data) {
+ if (typeof data === typeof '') {
+ data = JSON.parse(data)
+ }
+ if (data === null || data === undefined) {
+ state.user.username = null
+ state.user.accessToken = null
+ state.user.group = null
+ } else {
+ state.user.username = data.username
+ state.user.accessToken = data.accessToken
+ state.user.group = data.group
+ }
+ },
+ logout(state) {
+ state.user.accessToken = null
+ state.user.username = null
+ state.user.group = null
+ }
+}
+
+const actions = {
+ async doLogin({ commit }, loginData) {
+ commit('loginStart')
+ try {
+ const response = await axios.post(url.login, { ...loginData })
+ localStorage.setItem(
+ 'user',
+ JSON.stringify({
+ username: response.data.username,
+ accessToken: response.data.token,
+ group: response.data.group
+ })
+ )
+ commit('loginStop', null)
+ commit('updateAccessToken', response.data)
+ if (state.user.group.includes('moneymaster')) {
+ router.push('/finanzer')
+ } else if (state.user.group.includes('bar')) {
+ router.push('/bar')
+ }
+ } catch (err) {
+ commit('loginStop', err.response.data.error)
+ commit('updateAccessToken', {
username: null,
accessToken: null,
group: null
- },
- loggingIn: false,
- loginError: null
-};
-
-const mutations = {
- loginStart: state => state.loggingIn = true,
- loginStop (state, errorMessage){
- state.loggingIn = false;
- state.loginError = errorMessage;
- },
- updateAccessToken (state, data) {
- if (typeof(data) === typeof("")) {
- data = JSON.parse(data)
- }
- if (data === null || data === undefined) {
- state.user.username = null;
- state.user.accessToken = null;
- state.user.group = null;
- } else {
- state.user.username = data.username;
- state.user.accessToken = data.accessToken;
- state.user.group = data.group;
- }
- },
- logout (state) {
- state.user.accessToken = null;
- state.user.username = null;
- state.user.group = null;
+ })
}
-};
-
-const actions = {
- async doLogin({ commit }, loginData) {
- commit('loginStart');
- try {
- const response = await axios.post(url.login, {...loginData})
- localStorage.setItem('user', JSON.stringify({ username: response.data.username, accessToken: response.data.token, group: response.data.group}));
- commit('loginStop', null);
- commit('updateAccessToken', response.data)
- if (state.user.group.includes('moneymaster')) {
- router.push('/finanzer');
- }
- else if (state.user.group.includes('bar')) {
- router.push('/bar')
- }
-
- } catch (err) {
- commit('loginStop', err.response.data.error)
- commit('updateAccessToken', {username: null, accessToken: null, group: null})
- }
- },
- fetchAccessToken({ commit }) {
- commit('updateAccessToken', localStorage.getItem('user'))
- },
- logout({ commit }) {
- localStorage.removeItem('user');
- commit('logout');
- router.push('/login');
- },
- resetLoginError({ commit }) {
- commit("loginStop")
- }
-};
+ },
+ fetchAccessToken({ commit }) {
+ commit('updateAccessToken', localStorage.getItem('user'))
+ },
+ logout({ commit }) {
+ localStorage.removeItem('user')
+ commit('logout')
+ router.push('/login')
+ },
+ resetLoginError({ commit }) {
+ commit('loginStop')
+ }
+}
const getters = {
- getGroup: state => {
- return state.user.group
- },
- group: state => {
- return state.user.group
- },
- getToken: state => {
- return state.user.accessToken
- },
- token: state => {
- return state.user.accessToken
- },
- loginError: state => {
- return state.loginError
- }
-};
+ getGroup: state => {
+ return state.user.group
+ },
+ group: state => {
+ return state.user.group
+ },
+ getToken: state => {
+ return state.user.accessToken
+ },
+ token: state => {
+ return state.user.accessToken
+ },
+ loginError: state => {
+ return state.loginError
+ }
+}
export default {
- state,
- mutations,
- actions,
- getters
-};
+ state,
+ mutations,
+ actions,
+ getters
+}
diff --git a/src/views/BarView.vue b/src/views/BarView.vue
index 8ce1bba..04a38a2 100644
--- a/src/views/BarView.vue
+++ b/src/views/BarView.vue
@@ -1,34 +1,29 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/src/views/FinanzerView.vue b/src/views/FinanzerView.vue
index 34c64c4..067fd84 100644
--- a/src/views/FinanzerView.vue
+++ b/src/views/FinanzerView.vue
@@ -1,82 +1,100 @@
-
-
-
-
-
-
- home
-
-
- Gesamtübersicht
-
-
-
-
-
-
-
- {{user.lastname}}, {{user.firstname}}
-
-
-
-
-
- search
-
-
-
-
-
- person_add
-
- Hinzufügen
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+ home
+
+ Gesamtübersicht
+
+
+
+
+
+ {{user.lastname}}, {{user.firstname}}
+
+
+
+
+
+
+ search
+
+
+
+
+
+
+
+ person_add
+
+
+ Hinzufügen
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/Home.vue b/src/views/Home.vue
index 2a8d522..d076a9f 100644
--- a/src/views/Home.vue
+++ b/src/views/Home.vue
@@ -1,13 +1,13 @@
-
+