github.com/benoitkugler/goacve@v0.0.0-20201217100549-151ce6e55dc8/server/frontend/bv/src/shared/Document.vue (about) 1 <template> 2 <b-row> 3 <b-col cols="6" class="align-self-center"> 4 <b-row v-if="!!title"> 5 <b-col> 6 <div v-html="title"></div> 7 </b-col> 8 </b-row> 9 <b-row> 10 <b-col> 11 <b>{{ document.nom_client }}</b> 12 </b-col> 13 </b-row> 14 <b-row> 15 <b-col>{{ taille }}</b-col> 16 </b-row> 17 <b-row> 18 <b-col> 19 <i>{{ dateHeureModif }}</i> 20 </b-col> 21 </b-row> 22 </b-col> 23 <b-col cols="3" class="align-self-center text-center"> 24 <controle-document 25 :controller="controller" 26 :document="document" 27 :hideUpload="hideUpload" 28 :hideDelete="hideDelete" 29 @uploaded="$emit('uploaded', $event)" 30 @deleted="$emit('deleted', $event)" 31 ></controle-document> 32 </b-col> 33 <b-col cols="3" class="text-right my-auto"> 34 <b-img 35 thumbnail 36 width="120" 37 height="120" 38 alt="aperçu" 39 :src="document.url_miniature" 40 ></b-img> 41 </b-col> 42 </b-row> 43 </template> 44 45 <script lang="ts"> 46 import Vue from "vue"; 47 import Component from "vue-class-component"; 48 import ControleDocument from "./ControleDocument.vue"; 49 50 import { formatDateTime } from "./logic/utils"; 51 import { ControllerDocument } from "./logic/controller"; 52 import { PublicDocument } from "@/shared/logic/types"; 53 54 const DocumentProps = Vue.extend({ 55 props: { 56 controller: Object as () => ControllerDocument, 57 document: Object as () => PublicDocument, 58 hideDelete: { 59 type: Boolean, 60 default: false 61 }, 62 hideUpload: { 63 type: Boolean, 64 default: false 65 }, 66 title: { 67 type: String, 68 default: "" 69 } 70 } 71 }); 72 73 @Component({ 74 components: { ControleDocument } 75 }) 76 export default class Document extends DocumentProps { 77 get taille() { 78 if (!this.document.taille) return ""; 79 if (this.document.taille < 1_000_000) { 80 return (this.document.taille / 1_000).toFixed(2) + " Ko"; 81 } 82 return (this.document.taille / 1_000_000).toFixed(2) + " Mo"; 83 } 84 85 get dateHeureModif() { 86 let d = formatDateTime(this.document.date_heure_modif); 87 if (d) { 88 d = "déposé le " + d; 89 } 90 return d; 91 } 92 } 93 </script> 94 95 <style scoped></style>