github.com/benoitkugler/goacve@v0.0.0-20201217100549-151ce6e55dc8/server/frontend/bv/src/pages/espace_perso/components/paiements/RowAide.vue (about) 1 <template> 2 <b-row class="mr-0 my-1"> 3 <b-col cols="5" class="text-left"> 4 <b-button 5 class="ml-2 align-middle text-left" 6 v-b-popover.html.hover.top="tooltip" 7 > 8 <b-icon-clock v-if="!aide.valid"></b-icon-clock> 9 <span class="ml-2">{{ structure }}</span> 10 </b-button> 11 </b-col> 12 <b-col cols="5" class="align-self-center"> 13 <b-row> 14 <b-col cols="2"> 15 <b-button 16 variant="outline-accent" 17 v-b-tooltip.html.top 18 :title="aide.valid ? null : `<b>Modifier</b> l'aide ...`" 19 :disabled="aide.valid" 20 @click="$emit('edite')" 21 > 22 <b-icon-pencil></b-icon-pencil> 23 </b-button> 24 </b-col> 25 <b-col cols="2"> 26 <b-button 27 variant="outline-danger" 28 v-b-tooltip.html.top 29 :title="aide.valid ? null : `<b>Supprimer</b> l'aide ...`" 30 :disabled="aide.valid" 31 @click="$emit('supprime')" 32 > 33 <b-icon-trash></b-icon-trash> 34 </b-button> 35 </b-col> 36 <b-col cols="8"> 37 <controle-document 38 :controller="controller" 39 v-if="aide.document.id_crypted" 40 hideDelete 41 :disableUpload="aide.valid" 42 :document="aide.document" 43 @uploaded="onUploadDocument" 44 ></controle-document> 45 </b-col> 46 </b-row> 47 </b-col> 48 <b-col 49 cols="2" 50 class="text-right align-self-center" 51 v-b-tooltip.html.top 52 title="Valeur <b>effective</b>, après prise en compte des remises" 53 > 54 <i>{{ montant }}</i> 55 </b-col> 56 </b-row> 57 </template> 58 59 <script lang="ts"> 60 import Vue from "vue"; 61 import Component from "vue-class-component"; 62 63 import ControleDocument from "@/shared/ControleDocument.vue"; 64 65 import { ControllerDocument } from "@/shared/logic/controller"; 66 import { Aide, PublicDocument } from "@/shared/logic/types"; 67 import { formatDate } from "@/shared/logic/utils"; 68 import { C } from "../../logic/controller"; 69 70 const RowAideProps = Vue.extend({ 71 props: { 72 aide: Object as () => Aide 73 } 74 }); 75 76 @Component({ 77 components: { ControleDocument } 78 }) 79 export default class RowAide extends RowAideProps { 80 controller: ControllerDocument = C; 81 82 get montant() { 83 let vp = this.aide.valeur_computed.toFixed(2) + "€"; 84 if (!this.aide.valid) { 85 vp = "(" + vp + ")"; 86 } 87 return vp; 88 } 89 90 get structure() { 91 if (C.data.finances == null) return ""; 92 return (C.data.finances.structure_aides || {})[ 93 this.aide.id_structure_crypted 94 ].nom; 95 } 96 97 get tooltip() { 98 if (this.aide.valid) { 99 return `Cette aide est maintenant <b>validée</b>. Si vous souhaitez modifier sa valeur ou ajouter/modifier 100 une pièce justificative, merci de <i>contacter directement<i> le centre d'inscription.`; 101 } 102 return "Cette aide n'a <b>pas encore été vérifiée</b> par le centre. Merci de votre patience !"; 103 } 104 105 onUploadDocument(doc: PublicDocument) { 106 // on met à jour l'aide 107 if (C.data.finances == null) return; 108 C.updateDocumentAide(doc, this.aide); 109 } 110 } 111 </script> 112 113 <style scoped></style>