admin front doleance add new groupe interet
This commit is contained in:
parent
86bd454791
commit
e0651f9ac9
@ -103,6 +103,8 @@ fragment ConcernementFields on Concernement {
|
|||||||
leprobleme
|
leprobleme
|
||||||
lenquete
|
lenquete
|
||||||
groupesinterets {
|
groupesinterets {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
@ -119,6 +121,8 @@ fragment ConcernementFields on Concernement {
|
|||||||
comment_ennonce_doleance
|
comment_ennonce_doleance
|
||||||
aqui_addresse_doleance
|
aqui_addresse_doleance
|
||||||
reception_traitement {
|
reception_traitement {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
@ -135,6 +139,8 @@ fragment ConcernementFields on Concernement {
|
|||||||
entites_decisionnaires
|
entites_decisionnaires
|
||||||
decision_formule
|
decision_formule
|
||||||
mise_en_oeuvre_decision {
|
mise_en_oeuvre_decision {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
@ -151,6 +157,8 @@ fragment ConcernementFields on Concernement {
|
|||||||
aqui_adresse_decision
|
aqui_adresse_decision
|
||||||
comment_formule_decision
|
comment_formule_decision
|
||||||
receptions_et_applications {
|
receptions_et_applications {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
|
@ -1298,9 +1298,13 @@ div.add-ressource-btn{
|
|||||||
@include add-btn();
|
@include add-btn();
|
||||||
}
|
}
|
||||||
|
|
||||||
div.add-cerclepo-btn{
|
div.add-cerclepo-btn,
|
||||||
|
div.add-groupinteret-btn{
|
||||||
@include add-btn();
|
@include add-btn();
|
||||||
margin: 0 0 1em;
|
margin: 0 0 1em;
|
||||||
height: 60px;
|
height: 60px;
|
||||||
line-height: 50px;
|
line-height: 50px;
|
||||||
|
>svg{
|
||||||
|
width:30px; height:30px;
|
||||||
|
}
|
||||||
}
|
}
|
@ -138,6 +138,7 @@ export default {
|
|||||||
};
|
};
|
||||||
}(this)), 2000)
|
}(this)), 2000)
|
||||||
},
|
},
|
||||||
|
// cercle po
|
||||||
addCerclePo(e){
|
addCerclePo(e){
|
||||||
console.log('add cerclepo');
|
console.log('add cerclepo');
|
||||||
this.reloading_concernements = true;
|
this.reloading_concernements = true;
|
||||||
@ -181,6 +182,102 @@ export default {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
// groupe interet
|
||||||
|
addgroupInteret(e){
|
||||||
|
console.log('add groupe interet');
|
||||||
|
this.reloading_concernements = true;
|
||||||
|
// 1 create paragraphe
|
||||||
|
this.createGroupinteretParag()
|
||||||
|
.then((parag) => {
|
||||||
|
console.log('createGroupinteretParag then parag', parag);
|
||||||
|
// 3 record on concernement field_entites
|
||||||
|
this.recordCerclepoGroupesinteretsField(parag)
|
||||||
|
.then((cercle_politique) => {
|
||||||
|
console.log('cercle_politique', cercle_politique);
|
||||||
|
// reload concernement doleances
|
||||||
|
this.reloadConcernementCerclePol(this.concernement.id)
|
||||||
|
.then(() => {
|
||||||
|
this.reloading_concernements = false;
|
||||||
|
});
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
},
|
||||||
|
createGroupinteretParag(){
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
// 2 create paragraphe
|
||||||
|
const params_parag = {
|
||||||
|
type: [{target_id: 'groupes_interets'}],
|
||||||
|
parent_type:{value: 'node'},
|
||||||
|
parent_id:{value: this.opened_concernement.opened_doleance.id},
|
||||||
|
parent_field_name:{value: 'field_groupes'}, // entity reference revision
|
||||||
|
};
|
||||||
|
|
||||||
|
const configs = {
|
||||||
|
headers: {'X-CSRF-Token': this.csrf_token}
|
||||||
|
};
|
||||||
|
|
||||||
|
REST.post(`/entity/paragraph?_format=json`, params_parag, configs)
|
||||||
|
.then(({ data }) => {
|
||||||
|
console.log('REST post new parag', data);
|
||||||
|
resolve(data)
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
console.warn(`Issue with post new paragraph`, error)
|
||||||
|
reject(error)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
recordCerclepoGroupesinteretsField(parag){
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
// 3 record concernement field_entite
|
||||||
|
|
||||||
|
// get all the field_entite values, we don't want to ersae everything
|
||||||
|
let groupes = [];
|
||||||
|
|
||||||
|
this.concernement.doleances.forEach((doleance) =>{
|
||||||
|
if (doleance.id === this.opened_concernement.opened_doleance.id) {
|
||||||
|
doleance.groupesinterets.forEach((group) => {
|
||||||
|
console.log('group',group);
|
||||||
|
|
||||||
|
groupes.push({
|
||||||
|
target_id: group.id,
|
||||||
|
target_revision_id: group.revision_id
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
console.log('groupes', groupes);
|
||||||
|
|
||||||
|
// add the new field value
|
||||||
|
groupes.push({
|
||||||
|
target_id: parag.id[0].value,
|
||||||
|
target_revision_id: parag.revision_id[0].value
|
||||||
|
})
|
||||||
|
console.log('groupes', groupes);
|
||||||
|
|
||||||
|
const params_node = {
|
||||||
|
type: 'cercle_politique',
|
||||||
|
nid: [{value: this.opened_concernement.opened_doleance.id}],
|
||||||
|
'field_groupes': groupes
|
||||||
|
};
|
||||||
|
|
||||||
|
const configs = {
|
||||||
|
headers: {'X-CSRF-Token': this.csrf_token}
|
||||||
|
};
|
||||||
|
|
||||||
|
REST.patch(`/node/${this.opened_concernement.opened_doleance.id}?_format=json`, params_node, configs)
|
||||||
|
.then(({ data }) => {
|
||||||
|
console.log('REST patch cercle_politique new field_group', data)
|
||||||
|
resolve(data)
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
console.warn(`Issue with patch cercle_politique new field_group`, error)
|
||||||
|
reject(error)
|
||||||
|
})
|
||||||
|
// resolve('test')
|
||||||
|
})
|
||||||
|
},
|
||||||
recordConcernementDoleancerField(node){
|
recordConcernementDoleancerField(node){
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
// 2 record concernement field_doleancer
|
// 2 record concernement field_doleancer
|
||||||
@ -496,7 +593,21 @@ export default {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-slot:footer>
|
<template v-slot:footer>
|
||||||
|
|
||||||
<template v-if="concernement.can_update">
|
<template v-if="concernement.can_update">
|
||||||
|
<template v-if="opened_concernement.opened_doleance.field === 'lenquete' || opened_concernement.opened_doleance.field === 'groupesinterets'">
|
||||||
|
<div
|
||||||
|
v-if="!reloading_concernements"
|
||||||
|
@click="addgroupInteret"
|
||||||
|
class="add-groupinteret-btn btn">
|
||||||
|
<span>Ajouter un group d'intérêt</span>
|
||||||
|
<svg-icon type="mdi" :path="mdiStickerPlusOutline_path"/>
|
||||||
|
</div>
|
||||||
|
<div v-else class="add-groupinteret-btn btn">
|
||||||
|
<div class="loading">Chargement</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template v-if="opened_concernement.opened_doleance.field === 'lenquete'">
|
||||||
<div v-if="!reloading_concernements" @click="addCerclePo" class="add-cerclepo-btn btn">
|
<div v-if="!reloading_concernements" @click="addCerclePo" class="add-cerclepo-btn btn">
|
||||||
<span>Ajouter un crecle politique</span>
|
<span>Ajouter un crecle politique</span>
|
||||||
<svg-icon type="mdi" :path="mdiStickerPlusOutline_path"/>
|
<svg-icon type="mdi" :path="mdiStickerPlusOutline_path"/>
|
||||||
@ -506,6 +617,8 @@ export default {
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
<!-- <vue-plyr>
|
<!-- <vue-plyr>
|
||||||
<div class="plyr__video-embed"> -->
|
<div class="plyr__video-embed"> -->
|
||||||
|
@ -548,7 +548,7 @@ export const ConcernementsStore = defineStore({
|
|||||||
},
|
},
|
||||||
reloadConcernementCerclePol(nid){
|
reloadConcernementCerclePol(nid){
|
||||||
// let tmp_conc = this.concernementsByID[nid];
|
// let tmp_conc = this.concernementsByID[nid];
|
||||||
// console.log(`reloadConcernementCerclePol nid: ${nid} ${Math.random()*10000}`);
|
console.log(`reloadConcernementCerclePol nid: ${nid} ${Math.random()*10000}`);
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
const ast = gql`{
|
const ast = gql`{
|
||||||
concernement(id:${nid}) {
|
concernement(id:${nid}) {
|
||||||
@ -567,6 +567,8 @@ export const ConcernementsStore = defineStore({
|
|||||||
leprobleme
|
leprobleme
|
||||||
lenquete
|
lenquete
|
||||||
groupesinterets {
|
groupesinterets {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
@ -583,6 +585,8 @@ export const ConcernementsStore = defineStore({
|
|||||||
comment_ennonce_doleance
|
comment_ennonce_doleance
|
||||||
aqui_addresse_doleance
|
aqui_addresse_doleance
|
||||||
reception_traitement {
|
reception_traitement {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
@ -599,6 +603,8 @@ export const ConcernementsStore = defineStore({
|
|||||||
entites_decisionnaires
|
entites_decisionnaires
|
||||||
decision_formule
|
decision_formule
|
||||||
mise_en_oeuvre_decision {
|
mise_en_oeuvre_decision {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
@ -615,6 +621,8 @@ export const ConcernementsStore = defineStore({
|
|||||||
aqui_adresse_decision
|
aqui_adresse_decision
|
||||||
comment_formule_decision
|
comment_formule_decision
|
||||||
receptions_et_applications {
|
receptions_et_applications {
|
||||||
|
id
|
||||||
|
revision_id
|
||||||
date {
|
date {
|
||||||
end
|
end
|
||||||
start
|
start
|
||||||
|
Loading…
x
Reference in New Issue
Block a user