Feat: change type base to editable and add getters for hightlights and
editable
This commit is contained in:
		| @@ -19,8 +19,8 @@ | ||||
|         </div> | ||||
|       </div> | ||||
|       <div class="datas"> | ||||
|         <li v-for="cara in monthDesc" :key='cara.name'>  | ||||
|             <label :for='cara.name'>{{ cara.desc }}</label> | ||||
|         <li v-for="cara in description" :key='cara.name'>  | ||||
|             <label :for='cara.name'>{{ cara.label }}</label> | ||||
|             <input type="number" v-model.number="monthCopy[cara.name]"  id="cara.name" class="value"> | ||||
|         </li> | ||||
|       </div> | ||||
| @@ -64,7 +64,7 @@ export default { | ||||
|         'lastMonthDate': 'lastMonthDate', | ||||
|     }), | ||||
|     ...mapGetters('config', { | ||||
|         'monthDesc': 'monthDesc', | ||||
|         'description': 'descEditable', | ||||
|     }), | ||||
|         formatedDate: function () { | ||||
|           return format(this.monthDate, "MMMM YYY", {locale: frLocal} ) | ||||
| @@ -132,6 +132,10 @@ export default { | ||||
|         display: flex; | ||||
|         flex-direction: column-reverse; | ||||
|     } | ||||
|     label{ | ||||
|         text-align: right; | ||||
|         font-size: 0.8em; | ||||
|     } | ||||
|     .value { | ||||
|         font-weight: bold; | ||||
|     } | ||||
|   | ||||
| @@ -14,15 +14,15 @@ | ||||
|         </div> | ||||
|     </div> | ||||
|     <div id="display" v-show="!editing"> | ||||
|         <div class="hightlight" v-for="cara in monthDesc" :key='cara.name'>  | ||||
|             <label :for='cara.name'>{{ cara.desc }}</label> | ||||
|         <div class="hightlight" v-for="cara in descHightlights" :key='cara.name'>  | ||||
|             <label :for='cara.name'>{{ cara.label }}</label> | ||||
|             <span class="value" >{{ cara.output(TheMonth) ?? "∅"}} {{cara.unit}}</span> | ||||
|         </div> | ||||
|     </div> | ||||
|     <div id="edit" v-show="editing"> | ||||
|         <div v-for="cara in monthDesc" :key='cara.name'>  | ||||
|             <label :for='cara.name'>{{ cara.desc }}</label> | ||||
|             <input type="number" v-model.number="monthCopy[cara.name]"  id="cara.name" class="value"> | ||||
|         <div v-for="cara in descEditable" :key='cara.name' class="cara">  | ||||
|             <label :for='cara.name'>{{ cara.label }}</label> | ||||
|             <input type="number" v-model.number="monthCopy[cara.name]"  id="cara.name"> | ||||
|         </div> | ||||
|     </div> | ||||
| </div> | ||||
| @@ -51,7 +51,8 @@ export default { | ||||
|       }, | ||||
|   computed: { | ||||
|     ...mapGetters('config', { | ||||
|         'monthDesc': 'monthHightlightDesc', | ||||
|         'descHightlights': 'monthHightlightDesc', | ||||
|         'descEditable': 'descEditable', | ||||
|     }), | ||||
|       rawDate: function () { | ||||
|             return parseISO(this.TheDate, "yyyy-MM", new Date()) | ||||
| @@ -125,6 +126,7 @@ export default { | ||||
|     } | ||||
|     .value { | ||||
|         font-size: 1.5em; | ||||
|         text-align: right; | ||||
|         font-weight: bold; | ||||
|     } | ||||
|  | ||||
| @@ -137,5 +139,8 @@ export default { | ||||
|         font-size: 0.8em; | ||||
|         width: auto; | ||||
|     } | ||||
|  | ||||
|     .cara { | ||||
|         display: flex; | ||||
|         flex-direction: column-reverse; | ||||
|     } | ||||
| </style> | ||||
|   | ||||
| @@ -17,12 +17,12 @@ const config = { | ||||
|             userDir: './userDir/', | ||||
|             dataFile: 'datas.csv', | ||||
|             caProPercentage: 0.5, | ||||
|             monthDesc : [  | ||||
|             descAll : [  | ||||
|                 { | ||||
|                     name: 'caTheo', | ||||
|                     color: '', | ||||
|                     desc: 'CA "scéances effectuées"', | ||||
|                     type: 'base', | ||||
|                     label: 'CA "scéances effectuées"', | ||||
|                     type: 'editable', | ||||
|                     unit: '€', | ||||
|                     hightlight: false, | ||||
|                     output: month => month.caTheo, | ||||
| @@ -30,8 +30,8 @@ const config = { | ||||
|                 { | ||||
|                     name: 'caRetro', | ||||
|                     color: '', | ||||
|                     desc: 'CA "Séances facturées"', | ||||
|                     type: 'base', | ||||
|                     label: 'CA "Séances facturées"', | ||||
|                     type: 'editable', | ||||
|                     unit: '€', | ||||
|                     hightlight: false, | ||||
|                     output: month => month.caRetro, | ||||
| @@ -39,8 +39,8 @@ const config = { | ||||
|                 { | ||||
|                     name: 'caReact',  | ||||
|                     color: '', | ||||
|                     desc: 'CA "Séances facturées" réactualisé', | ||||
|                     type: 'base', | ||||
|                     label: 'CA "Séances facturées" réactualisé', | ||||
|                     type: 'editable', | ||||
|                     unit: '€', | ||||
|                     hightlight: false, | ||||
|                     output: month => month.caReact, | ||||
| @@ -48,7 +48,7 @@ const config = { | ||||
|                 { | ||||
|                     name: 'sessionQty',  | ||||
|                     color: '', | ||||
|                     desc: 'Nombre de séances effectuées', | ||||
|                     label: 'Nombre de séances effectuées', | ||||
|                     unit: '', | ||||
|                     hightlight: false, | ||||
|                     output: month => month.sessionQty, | ||||
| @@ -56,8 +56,8 @@ const config = { | ||||
|                 { | ||||
|                     name: 'retro', | ||||
|                     color: '', | ||||
|                     desc: 'Montant de la rétrocession', | ||||
|                     type: 'base', | ||||
|                     label: 'Montant de la rétrocession', | ||||
|                     type: 'editable', | ||||
|                     unit: '€', | ||||
|                     hightlight: false, | ||||
|                     output: month => month.retro, | ||||
| @@ -65,8 +65,8 @@ const config = { | ||||
|                 { | ||||
|                     name: 'remuneration',  | ||||
|                     color: '', | ||||
|                     desc: 'Rémuneration', | ||||
|                     type: 'base', | ||||
|                     label: 'Rémuneration', | ||||
|                     type: 'editable', | ||||
|                     unit: '€', | ||||
|                     hightlight: true, | ||||
|                     output: month => month.remuneration, | ||||
| @@ -74,8 +74,8 @@ const config = { | ||||
|                 { | ||||
|                     name: 'proPercentage',  | ||||
|                     color: '', | ||||
|                     desc: 'Pourcentage du CA pour la partie pro', | ||||
|                     type: 'base', | ||||
|                     label: 'Pourcentage du CA pour la partie pro', | ||||
|                     type: 'editable', | ||||
|                     unit: '%', | ||||
|                     hightlight: false, | ||||
|                     output: month => month.proPercentage, | ||||
| @@ -83,7 +83,7 @@ const config = { | ||||
|                 { | ||||
|                     name: 'ca',  | ||||
|                     color: '', | ||||
|                     desc: 'ca', | ||||
|                     label: 'ca', | ||||
|                     type: 'compute', | ||||
|                     unit: '€', | ||||
|                     hightlight: true, | ||||
| @@ -92,7 +92,7 @@ const config = { | ||||
|                 { | ||||
|                     name: 'notInvoiced',  | ||||
|                     color: '', | ||||
|                     desc: 'Non facturé', | ||||
|                     label: 'Non facturé', | ||||
|                     type: 'compute', | ||||
|                     unit: '€', | ||||
|                     hightlight: true, | ||||
| @@ -101,7 +101,7 @@ const config = { | ||||
|                 { | ||||
|                     name: 'caPro',  | ||||
|                     color: '', | ||||
|                     desc: 'CA pour le partie pro', | ||||
|                     label: 'CA pour le partie pro', | ||||
|                     type: 'compute', | ||||
|                     unit: '€', | ||||
|                     hightlight: false, | ||||
| @@ -110,7 +110,7 @@ const config = { | ||||
|                 { | ||||
|                     name: 'caPerso',  | ||||
|                     color: '', | ||||
|                     desc: 'CA destiné à la rémuneration', | ||||
|                     label: 'CA destiné à la rémuneration', | ||||
|                     type: 'compute', | ||||
|                     unit: '€', | ||||
|                     hightlight: false, | ||||
| @@ -119,7 +119,7 @@ const config = { | ||||
|                 { | ||||
|                     name: 'caPersoUntouch',  | ||||
|                     color: '', | ||||
|                     desc: 'CA destiné à la rémuneration non reversé', | ||||
|                     label: 'CA destiné à la rémuneration non reversé', | ||||
|                     type: 'compute', | ||||
|                     unit: '€', | ||||
|                     hightlight: false, | ||||
| @@ -131,8 +131,18 @@ const config = { | ||||
|     getters: { | ||||
|         userDir (state) { return state.userDir }, | ||||
|         dataFilePath (state) { return path.join(state.userDir, state.dataFile) }, | ||||
|         monthDesc (state) { return state.monthDesc }, | ||||
|         monthHightlightDesc (state) { return state.monthDesc.filter(a => a.hightlight) }, | ||||
|         descAll (state) {  | ||||
|             // All description of attributes for months | ||||
|             return state.descAll  | ||||
|         }, | ||||
|         descEditable (state) {  | ||||
|             // All description of attributes for months | ||||
|             return state.descAll.filter(d => d.type == 'editable') | ||||
|         }, | ||||
|         descOf: (state) => (desc) => { | ||||
|             return state.descAll.filter(d => d.name == desc)[0] | ||||
|         }, | ||||
|         monthHightlightDesc (state) { return state.descAll.filter(a => a.hightlight) }, | ||||
|         caProPercentage (state) { return state.caProPercentage }, | ||||
|     }, | ||||
|     mutations: { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user