Compare commits
3 Commits
bdca2dc0a0
...
1309c9147a
Author | SHA1 | Date | |
---|---|---|---|
1309c9147a | |||
6d669e5ae4 | |||
caaefc0972 |
47
src/components/CreateMonth.vue
Normal file
47
src/components/CreateMonth.vue
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
<template>
|
||||||
|
<div class="month-presentation" id="new-month">
|
||||||
|
<div class="date">
|
||||||
|
<input type="month" v-model="monthDate">
|
||||||
|
</div>
|
||||||
|
<div class="infos">
|
||||||
|
<month-form></month-form>
|
||||||
|
</div>
|
||||||
|
<div class="actions">
|
||||||
|
<button> Valider </button>
|
||||||
|
<button> Annuler </button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import MonthForm from "./MonthForm"
|
||||||
|
|
||||||
|
const today = new Date();
|
||||||
|
function formatDate(date) {
|
||||||
|
var y = ''+date.getFullYear()
|
||||||
|
var m = ''+(date.getMonth()+1)
|
||||||
|
if (m.length < 2) { m = '0'+m}
|
||||||
|
return [y, m].join('-')
|
||||||
|
}
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'NewMonth',
|
||||||
|
props: {
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
MonthForm: MonthForm,
|
||||||
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
monthDate: formatDate(today),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only -->
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
49
src/components/MonthForm.vue
Normal file
49
src/components/MonthForm.vue
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
<template>
|
||||||
|
<form>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<label for="ca-theo">CA théorique</label>
|
||||||
|
<input type="number" id="ca-theo">
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="ca-retro">CA au moment de la rétrocession</label>
|
||||||
|
<input type="number" id="ca-retro">
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="ca-react">CA réactualisé</label>
|
||||||
|
<input type="number" id="ca-react">
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="nbr-seance">Nombre de séances</label>
|
||||||
|
<input type="number" id="nbr-seance">
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="retro">Montant de la rétrocession</label>
|
||||||
|
<input type="number" id="retro">
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="remumeration">Rémunération effectuée</label>
|
||||||
|
<input type="number" id="remumeration">
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</form>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { mapGetters } from 'vuex'
|
||||||
|
export default {
|
||||||
|
name: 'MonthForm',
|
||||||
|
props: {
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
...mapGetters({
|
||||||
|
TheEmpty: "travail/TheEmptyMonth",
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only -->
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
38
src/components/MonthPresentation.vue
Normal file
38
src/components/MonthPresentation.vue
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
<template>
|
||||||
|
<div class="month-presentation">
|
||||||
|
<div class="date">
|
||||||
|
{{ month.date }}
|
||||||
|
</div>
|
||||||
|
<div class="infos">
|
||||||
|
<ul>
|
||||||
|
<li> CA théorique {{ month.ca_theo ?? "∅"}}</li>
|
||||||
|
<li> CA à la rétrocession {{ month.ca_retro ?? "∅"}}</li>
|
||||||
|
<li> CA réactualisé {{ month.ca_react ?? "∅"}}</li>
|
||||||
|
<li> Nombre de séances {{ month.nbr_seances ?? "∅"}}</li>
|
||||||
|
<li> Montant de la rétrocession {{ month.retro ?? "∅"}}</li>
|
||||||
|
<li> Rémunération effectuée {{ month.remumeration ?? "∅"}}</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div class="actions">
|
||||||
|
<button> Éditer </button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'MonthPresentation',
|
||||||
|
props: {
|
||||||
|
month: {
|
||||||
|
type: Object,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only -->
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
31
src/components/MonthsUl.vue
Normal file
31
src/components/MonthsUl.vue
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
<template>
|
||||||
|
<ul id="months">
|
||||||
|
<li v-for="month in months" :key="month.date">
|
||||||
|
<month-presentation :month=month></month-presentation>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { mapGetters } from 'vuex'
|
||||||
|
import MonthPresentation from "./MonthPresentation"
|
||||||
|
export default {
|
||||||
|
name: 'Months',
|
||||||
|
components: {
|
||||||
|
MonthPresentation: MonthPresentation
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
...mapGetters({
|
||||||
|
months: "travail/Months",
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only -->
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -70,8 +70,11 @@ const travail = {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
getters: {
|
getters: {
|
||||||
count (state) {return state.months.length},
|
cCount (state) {return state.months.length},
|
||||||
months (state) {return state.months},
|
TheEmptyMonth (state) {return state.empty},
|
||||||
|
Months (state) {
|
||||||
|
return state.months.sort((a, b) => new Date(b.date) - new Date(a.date))
|
||||||
|
},
|
||||||
},
|
},
|
||||||
mutations: {
|
mutations: {
|
||||||
}
|
}
|
||||||
|
@ -1,13 +1,22 @@
|
|||||||
<template>
|
<template>
|
||||||
<h1>Home</h1>
|
<h1>Home</h1>
|
||||||
<p> {{ state }} </p>
|
<section>
|
||||||
|
<h2> Mois </h2>
|
||||||
|
<create-month></create-month>
|
||||||
|
<months-list></months-list>
|
||||||
|
</section>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { mapGetters, mapActions } from 'vuex'
|
import { mapGetters, mapActions } from 'vuex'
|
||||||
|
import MonthsList from '../components/MonthsUl.vue'
|
||||||
|
import CreateMonth from '../components/CreateMonth.vue'
|
||||||
export default {
|
export default {
|
||||||
name: 'home',
|
name: 'home',
|
||||||
components: {},
|
components: {
|
||||||
|
MonthsList: MonthsList,
|
||||||
|
CreateMonth: CreateMonth,
|
||||||
|
},
|
||||||
data () {
|
data () {
|
||||||
return {}
|
return {}
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user