Skip to content

Commit

Permalink
Merge pull request #648 from rufener/bugfixes
Browse files Browse the repository at this point in the history
Bugfixes
  • Loading branch information
rufener authored Feb 18, 2022
2 parents 0cf0981 + 5074548 commit 48d316c
Show file tree
Hide file tree
Showing 7 changed files with 64 additions and 32 deletions.
56 changes: 39 additions & 17 deletions back/infolica/views/numero.py
Original file line number Diff line number Diff line change
Expand Up @@ -456,11 +456,14 @@ def numero_differe_view(request):
numero_projet_id = int(request.registry.settings['numero_projet_id'])
numero_vigueur_id = int(request.registry.settings['numero_vigueur_id'])

numero_etat_vigueur_id = request.registry.settings['numero_vigueur_id']

role = request.params['role'] if 'role' in request.params else None

num_agg = func.array_agg(VNumeros.numero, type_=ARRAY(Integer))
num_id_agg = func.array_agg(VNumeros.id, type_=ARRAY(Integer))
diff_id_agg = func.array_agg(VNumeros.diff_id, type_=ARRAY(Integer))
numeros_vigueur_check = func.bool_and(VNumeros.etat_id == numero_etat_vigueur_id)
query = request.dbsession.query(
VNumeros.diff_affaire_id,
VNumeros.cadastre,
Expand All @@ -472,18 +475,17 @@ def numero_differe_view(request):
VNumeros.diff_operateur_nom,
VNumeros.diff_operateur_prenom,
VNumeros.diff_operateur_initiales,
VNumeros.diff_req_ref
VNumeros.diff_req_ref,
numeros_vigueur_check
)

if role == "mo":
user_id = request.params['user_id'] if 'user_id' in request.params else None
numero_etat_vigueur_id = request.registry.settings['numero_vigueur_id']

if user_id is not None:
query = query.filter(VNumeros.diff_operateur_id == user_id)

query = query.filter(and_(
VNumeros.etat_id == numero_etat_vigueur_id,
VNumeros.diff_entree.isnot(None),
VNumeros.diff_sortie == None
))
Expand All @@ -506,7 +508,6 @@ def numero_differe_view(request):
VNumeros.diff_controle == None
))


result = query.group_by(
VNumeros.diff_affaire_id,
VNumeros.cadastre,
Expand All @@ -517,21 +518,42 @@ def numero_differe_view(request):
VNumeros.diff_req_ref
).having(func.array_length(num_agg, 1) > 0).all()

affaire_ready = True if ('affaire_ready' in request.params and request.params['affaire_ready'] == "true") else False

numeros = []
for num in result:
numeros.append({
'diff_affaire_id': num[0],
'cadastre': num[1],
'numero': num[2],
'numero_id': num[3],
'diff_id': num[4],
'diff_entree': datetime.strftime(num[5], '%Y-%m-%d'),
'diff_operateur_id': num[6],
'diff_operateur_nom': num[7],
'diff_operateur_prenom': num[8],
'diff_operateur_initiales': num[9],
'diff_req_ref': num[10],
})
if affaire_ready is True:
if num[11] is True:
numeros.append({
'diff_affaire_id': num[0],
'cadastre': num[1],
'numero': num[2],
'numero_id': num[3],
'diff_id': num[4],
'diff_entree': datetime.strftime(num[5], '%Y-%m-%d'),
'diff_operateur_id': num[6],
'diff_operateur_nom': num[7],
'diff_operateur_prenom': num[8],
'diff_operateur_initiales': num[9],
'diff_req_ref': num[10],
'numeros_vigueur_check': num[11]
})
else:
numeros.append({
'diff_affaire_id': num[0],
'cadastre': num[1],
'numero': num[2],
'numero_id': num[3],
'diff_id': num[4],
'diff_entree': datetime.strftime(num[5], '%Y-%m-%d'),
'diff_operateur_id': num[6],
'diff_operateur_nom': num[7],
'diff_operateur_prenom': num[8],
'diff_operateur_initiales': num[9],
'diff_req_ref': num[10],
'numeros_vigueur_check': num[11]
})


return numeros

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,21 +90,21 @@
<md-table-cell md-label="Repris par" md-sort-by="affaire_destination_id"><a v-bind:href="item.affaire_destination_href">{{item.affaire_destination_id }}</a></md-table-cell>
<md-table-cell md-label="Mat diff" class="actionsColumn" v-if="typesAffaires_conf.mutation === affaire.type_id || affaire.type_id === typesAffaires_conf.modification_mutation">
<!-- Si le numéro est différé -->
<div v-if="item.numero_diff_entree && item.numero_diff_sortie === null && editMatDiffAllowed && item.affaire_numero_actif">
<div v-if="item.numero_diff_entree && item.numero_diff_sortie === null && editMatDiffAllowed">
<md-button v-if="item.numero_type_id===types_numeros.bf || item.numero_type_id===types_numeros.ddp" @click="confirmCreateDiffererNumero(item, 'sortie')"
class="md-accent md-raised md-icon-button md-dense" title="Retirer la mention Mat Diff du BF (le BF est matérialisé)">
<md-icon>access_time</md-icon>
</md-button>
</div>
<!-- Si le numéro n'est pas encore différé -->
<div v-if="item.numero_diff_entree === null && item.numero_diff_sortie === null && editMatDiffAllowed && item.affaire_numero_actif && item.active">
<div v-if="item.numero_diff_entree === null && item.numero_diff_sortie === null && editMatDiffAllowed && item.active">
<md-button v-if="item.numero_type_id===types_numeros.bf || item.numero_type_id===types_numeros.ddp" title="Différer la matérialisation du BF"
class="md-primary md-icon-button md-dense" @click="confirmCreateDiffererNumero(item, 'entree')">
<md-icon>access_time</md-icon>
</md-button>
</div>
<!-- Si le numéro est prêt pour le contrôle -->
<div v-if="item.numero_diff_entree !== null && item.numero_diff_sortie !== null && item.numero_diff_controle === null && editMatDiffCtrlAllowed && item.affaire_numero_actif">
<div v-if="item.numero_diff_entree !== null && item.numero_diff_sortie !== null && item.numero_diff_controle === null && editMatDiffCtrlAllowed">
<md-button v-if="item.numero_type_id===types_numeros.bf || item.numero_type_id===types_numeros.ddp" title="Contrôle du bien-fonds effectué"
class="md-icon-button md-dense" style="background-color: lightgreen;" @click="confirmCreateDiffererNumero(item, 'controle')">
<md-icon>access_time</md-icon>
Expand Down
6 changes: 3 additions & 3 deletions front/src/components/Cockpit/Cockpit.vue
Original file line number Diff line number Diff line change
Expand Up @@ -38,14 +38,14 @@ export default {
responsable: Number(process.env.VUE_APP_RESPONSABLE_ROLE_ID)
},
search: {
searchTerm: null,
operateur_id: -1,
type_id: -1,
showFinProcessus: false,
showOnlyAffairesUrgentes: false,
current_sort: "id",
current_sort_order: "desc",
},
searchTerm: null,
current_sort: "id",
current_sort_order: "desc",
};
Expand Down Expand Up @@ -180,8 +180,8 @@ export default {
*/
setSearchParamsQuery() {
let query = [];
if (this.search.searchTerm) {
query.push("searchTerm=" + this.search.searchTerm);
if (this.searchTerm) {
query.push("searchTerm=" + this.searchTerm);
}
if (this.search.operateur_id > 0) {
query.push("operateur_id=" + this.search.operateur_id);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export default {
loading: false,
plural: "",
selectedOperateur_id: JSON.parse(localStorage.getItem("infolica_user")).id,
showBFProjet: false,
}
},
Expand All @@ -45,6 +46,9 @@ export default {
if (this.selectedOperateur_id >= 0) {
params += "&user_id=" + this.selectedOperateur_id;
}
if (this.showBFProjet === false) {
params += "&affaire_ready=true";
}
this.$http.get(
process.env.VUE_APP_API_URL + process.env.VUE_APP_NUMEROS_DIFFERES_ENDPOINT + params,
Expand All @@ -57,7 +61,8 @@ export default {
let tmp = response.data;
tmp.forEach(x => {
x.numero = x.numero.join(', '),
x.diff_entree = Number(moment(x.diff_entree, process.env.VUE_APP_DATEFORMAT_WS))
x.diff_entree = Number(moment(x.diff_entree, process.env.VUE_APP_DATEFORMAT_WS)),
x.numeros_vigueur_check_str = x.numeros_vigueur_check? "oui": "non"
});
this.affaires = tmp;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
.disabledElement {
font-style: italic;
color: grey;
}
14 changes: 8 additions & 6 deletions front/src/components/Cockpit/Matdiff/Matdiff_mo/matdiff_mo.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
</div>

<div class="md-toolbar-section-end">
<md-checkbox v-model="showBFProjet" class="md-primary" @change="getNumerosDifferes">Afficher les bf non déposés</md-checkbox>
<md-field style="margin-left: 50px; width: 250px">
<label for="operateur">Opérateur·rice</label>
<md-select v-model="selectedOperateur_id" name="operateur" id="operateur" @md-selected="getNumerosDifferes()" md-dense>
Expand All @@ -22,12 +23,13 @@
</md-table-empty-state>

<md-table-row slot="md-table-row" slot-scope="{ item }">
<md-table-cell md-label="Cadastre" md-sort-by="cadastre">{{ item.cadastre }}</md-table-cell>
<md-table-cell md-label="Affaire" md-sort-by="diff_affaire_id" md-numeric>{{ item.diff_affaire_id }}</md-table-cell>
<md-table-cell md-label="Opérateur·rice" md-sort-by="diff_operateur_initiales" md-numeric>{{ item.diff_operateur_initiales }}</md-table-cell>
<md-table-cell md-label="Bien-fonds" md-numeric>{{ item.numero }}</md-table-cell>
<md-table-cell md-label="Date" md-sort-by="diff_entree">{{ new Date(item.diff_entree) | formatDate }} </md-table-cell>
<md-table-cell md-label="Réquisition">Réq. no {{ item.diff_req_ref? item.diff_req_ref: '??' }}</md-table-cell>
<md-table-cell :class="{ disabledElement: !item.numeros_vigueur_check }" md-label="Cadastre" md-sort-by="cadastre">{{ item.cadastre }}</md-table-cell>
<md-table-cell :class="{ disabledElement: !item.numeros_vigueur_check }" md-label="Affaire" md-sort-by="diff_affaire_id" md-numeric>{{ item.diff_affaire_id }}</md-table-cell>
<md-table-cell :class="{ disabledElement: !item.numeros_vigueur_check }" md-label="Opérateur·rice" md-sort-by="diff_operateur_initiales" md-numeric>{{ item.diff_operateur_initiales }}</md-table-cell>
<md-table-cell :class="{ disabledElement: !item.numeros_vigueur_check }" md-label="Bien-fonds" md-numeric>{{ item.numero }}</md-table-cell>
<md-table-cell :class="{ disabledElement: !item.numeros_vigueur_check }" md-label="BF déposés" md-sort-by="numeros_vigueur_check_str">{{ item.numeros_vigueur_check_str }}</md-table-cell>
<md-table-cell :class="{ disabledElement: !item.numeros_vigueur_check }" md-label="Date" md-sort-by="diff_entree">{{ new Date(item.diff_entree) | formatDate }} </md-table-cell>
<md-table-cell :class="{ disabledElement: !item.numeros_vigueur_check }" md-label="Réquisition">Réq. no {{ item.diff_req_ref? item.diff_req_ref: '??' }}</md-table-cell>
<md-table-cell md-label="Consultation">
<md-button class="md-primary md-icon-button" :to="{ name: 'AffairesDashboard', params: { id: item.diff_affaire_id } }" title="Consulter/modifier l'affaire">
<md-icon>open_in_new</md-icon>
Expand Down
3 changes: 1 addition & 2 deletions front/src/components/Cockpit/cockpit.html
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,8 @@ <h1>Cockpit</h1>
<div class="md-layout-item md-size-80" style="display: flex;">
<md-field style="width: 250px !important;">
<label>Rechercher</label>
<md-input v-model="search.searchTerm" placeholder="Nom d'affaire" v-on:keyup.enter="getAffaire"></md-input>
<md-input v-model="searchTerm" placeholder="Numéro d'affaire" v-on:keyup="getAffaire"></md-input>
<md-icon>search</md-icon>
<span class="md-helper-text" v-if="search.searchTerm">Appuyer sur Enter pour chercher</span>
</md-field>

<md-field style="margin-left: 50px; width: 250px !important;">
Expand Down

0 comments on commit 48d316c

Please sign in to comment.