Commit 4c9a796f authored by Stephane Bouvry's avatar Stephane Bouvry
Browse files

Fix : Le selecteur de déclarant selectionne de nouveau des déclarants

parent 1cb77385
Loading
Loading
Loading
Loading
+1 −1
Changes for ui/src/views/Activity.vue: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -857,7 +857,7 @@
              </div>
              <div class="oscar-section">
                <h3 class="oscar-section-title"><span><i class="icon-archive"></i>Lots de travail</span></h3>
                {{ personWP }}

                <div class="oscar-section-content">
                  <workpackages-activity
                      :debug-enabled="debugEnabled"
+30 −14
Changes for ui/src/views/Workpackage.vue: 30 added lines, 14 removed lines.
Original line number Diff line number Diff line
@@ -41,20 +41,17 @@
                           @workpackagepersondelete="handlerDelete"
                           @workpackagepersonupdate="handlerUpdate"></workpackageperson>
      </section>

      <div class="buttons" v-if="editable && persons.length">
        <div class="btn-group">
          <button type="button" class="btn btn-default  btn-xs dropdown-toggle" data-toggle="dropdown"
                  aria-haspopup="true" aria-expanded="false">
            Ajouter un déclarant <span class="caret"></span>
          </button>
          <ul class="dropdown-menu">
            <li v-for="person in persons" :class="{'disabled' : isDeclarant(person, workpackage) }">
              <a href="#" @click.prevent="$emit('addperson', person.id, workpackage.id)">
                {{ person.displayname }}</a>
            </li>
          </ul>
        </div>
        <Select
          :options="personsForSelect"
          optionLabel="displayname"
          optionValue="id"
          optionDisabled="disabled"
          placeholder="Ajouter un déclarant"
          class="workpackage-declarant-select"
          v-model="selectedPersonId"
          @change="handlerAddPerson"
        />
        <a href="#" class="btn btn-default btn-xs" @click.prevent="handlerEditWorkPackage"><i class="icon-pencil"></i>Modifier</a>
        <a href="#" class="btn btn-default btn-xs" @click.prevent="handlerDeleteWorkPackage"><i class="icon-trash"></i>Supprimer</a>
      </div>
@@ -68,16 +65,19 @@
<script>

import WorkpackagePerson from "./WorkpackagePerson.vue";
import Select from "primevue/select";

export default {
  components: {
    workpackageperson: WorkpackagePerson
    workpackageperson: WorkpackagePerson,
    Select
  },

  data() {
    return {
      mode: "read",
      canSave: false,
      selectedPersonId: null,
      formData: {
        id: -1,
        code: "",
@@ -105,7 +105,23 @@ export default {

  watch: {},

  computed: {
    personsForSelect() {
      return this.persons.map(person => ({
        ...person,
        disabled: !!this.isDeclarant(person, this.workpackage)
      }));
    }
  },

  methods: {
    handlerAddPerson() {
      if (this.selectedPersonId !== null) {
        this.$emit('addperson', this.selectedPersonId, this.workpackage.id);
        this.selectedPersonId = null;
      }
    },

    isDeclarant(person, workpackage) {
      return workpackage.persons.find(p => p.person.id === person.id);
    },