display all doleance fields in cartouche

This commit is contained in:
2023-06-07 12:51:40 +02:00
parent be824fd325
commit 0b9a1ae946
3 changed files with 248 additions and 47 deletions

View File

@@ -753,6 +753,10 @@ export default {
strokeColor: '#fff',
strokeWidth: 1
}
let felchesstyle = {
strokeColor: '#fff',
strokeWidth: 2
}
let legende_style = {
strokeColor: '#000',
@@ -880,7 +884,7 @@ export default {
[this.pos.x, this.pos.y - dr*1.5],
[this.pos.x - 2, this.pos.y - dr*1.5 + 2]
],
style: style
style: felchesstyle
}),
// bas
new paper.Path({
@@ -889,7 +893,7 @@ export default {
[this.pos.x, this.pos.y + dr*1.5],
[this.pos.x + 2, this.pos.y + dr*1.5 + 2]
],
style: style
style: felchesstyle
}),
// gauche
new paper.Path({
@@ -898,7 +902,7 @@ export default {
[this.pos.x - dr*1.5, this.pos.y],
[this.pos.x - dr*1.5 + 2, this.pos.y + 2]
],
style: style
style: felchesstyle
}),
// droite
new paper.Path({
@@ -907,7 +911,7 @@ export default {
[this.pos.x + dr*1.5, this.pos.y],
[this.pos.x + dr*1.5 + 2, this.pos.y - 2]
],
style: style
style: felchesstyle
}),
//
// LEGENDES
@@ -1033,7 +1037,8 @@ export default {
justification: 'left'
}),
//
// legendes petits cercles
// Points Cardinaux
//
// haut
new paper.Path.Circle({
center: [this.pos.x, this.pos.y -r],
@@ -1202,7 +1207,7 @@ export default {
setPaperDoleanceSteps(){
let g = new paper.Group({
pivot: new paper.Point(this.pos),
name: 'doleance steps'
name: 'doleance_steps'
});
let doleance = this.concernement.doleances[0];
let all_fields = [
@@ -1282,9 +1287,9 @@ export default {
let fontsize = 2.1;
//
// PREMIER QUART
// POINTS CARDINAUX
//
// #1 le problème
// le problème
//
g.addChild(new paper.Path.Circle({
center: [this.pos.x, this.pos.y + r],
@@ -1292,22 +1297,31 @@ export default {
style: {
fillColor: '#fff'
}
}))
}));
g.addChild(new paper.Path.Line({
from: [this.pos.x, this.pos.y + r],
to: [this.pos.x, this.pos.y + r + 8],
strokeColor: '#fff'
}))
}));
g.addChild(new paper.PointText({
point: [this.pos.x, this.pos.y + r + 10],
point: [this.pos.x, this.pos.y + r + 10],
content: "Début du cercle\nLe problème (injustice, indignation, plainte...)",
fontSize: fontsize,
fillColor: '#000',
justification: 'center'
}));
g.addChild(new paper.PointText({
point: [this.pos.x, this.pos.y + r + 16],
content: doleance['leprobleme'],
fontSize: fontsize,
fontSize: 2.3,
fillColor: '#fff',
justification: 'center'
}))
}));
//
// #2 l'enquete
// CAMENBERT STATIQUES
//
// l'enquete
//
let enquete = new paper.Group({
name: 'enquete'
@@ -1318,16 +1332,17 @@ export default {
strokeWidth: 2,
fillColor: "rgba(255, 255, 255, 0.4)"
});
cam.add({x: this.pos.x , y: this.pos.y + dr});
cam.lineTo({x: this.pos.x, y: this.pos.y + r});
cam.arcTo({x: this.pos.x - p, y: this.pos.y + o}, {x: this.pos.x - m, y: this.pos.y + m});
cam.lineTo({x: this.pos.x - n, y: this.pos.y + n});
cam.arcTo({x: this.pos.x - p_d, y: this.pos.y + o_d}, {x: this.pos.x , y: this.pos.y + dr});
cam.add({x: this.pos.x + n, y: this.pos.y + n});
cam.lineTo({x: this.pos.x + m , y: this.pos.y + m});
cam.arcTo({x: this.pos.x + p, y: this.pos.y + o}, {x: this.pos.x, y: this.pos.y + r});
cam.lineTo({x: this.pos.x, y: this.pos.y + dr});
cam.arcTo({x: this.pos.x + p_d, y: this.pos.y + o_d}, {x: this.pos.x + n, y: this.pos.y + n});
enquete.addChild(cam)
// texte
enquete.addChild(new paper.PointText({
point: {
x:this.pos.x - Math.sin(22.5*(Math.PI/180)) * r*0.75,
x:this.pos.x + Math.sin(22.5*(Math.PI/180)) * r*0.75,
y:this.pos.y + Math.cos(22.5*(Math.PI/180)) * r*0.75
},
content: doleance['lenquete'],
@@ -1337,30 +1352,47 @@ export default {
}));
g.addChild(enquete);
//
// probleme_initial_resolu
//
let resolution = new paper.Group({
name: 'resolution'
});
// camenbert
let rescam = new paper.Path({
strokeColor: '#fff',
strokeWidth: 2,
fillColor: "rgba(255, 255, 255, 0.4)"
});
rescam.add({x: this.pos.x , y: this.pos.y + dr});
rescam.lineTo({x: this.pos.x, y: this.pos.y + r});
rescam.arcTo({x: this.pos.x - p, y: this.pos.y + o}, {x: this.pos.x - m, y: this.pos.y + m});
rescam.lineTo({x: this.pos.x - n, y: this.pos.y + n});
rescam.arcTo({x: this.pos.x - p_d, y: this.pos.y + o_d}, {x: this.pos.x , y: this.pos.y + dr});
resolution.addChild(rescam)
// texte
resolution.addChild(new paper.PointText({
point: {
x:this.pos.x - Math.sin(22.5*(Math.PI/180)) * r*0.75,
y:this.pos.y + Math.cos(22.5*(Math.PI/180)) * r*0.75
},
content: doleance['probleme_initial_resolu'] ? doleance['oui_nouvelle_situation'] : doleance['non_adresse_doleance'],
fontSize: fontsize,
fillColor: '#fff',
justification: 'center'
}));
g.addChild(resolution);
//
// MULTIPLE FIELDS
//
let multiple_fields = [
{
field_name: 'groupesinterets',
arc: 45,
decalage: -45
},
{
field_name: 'reception_traitement',
arc: 90,
decalage: -90
},
{
field_name: 'mise_en_oeuvre_decision',
arc: 90,
decalage: -180
},
{
field_name: 'receptions_et_applications',
arc: 45,
decalage: 90
}
{ field_name: 'groupesinterets', arc: 45, decalage: -45 },
{ field_name: 'reception_traitement', arc: 90, decalage: -90 },
{ field_name: 'mise_en_oeuvre_decision', arc: 90, decalage: -180 },
{ field_name: 'receptions_et_applications', arc: 45, decalage: 90 }
]
multiple_fields.forEach((mf, j) => {
@@ -1816,15 +1848,14 @@ export default {
if (this.map_mode === "doleancer") {
if (!this.is_opened) {
this.paper_objects.children.doleance_icon.visible = true;
// this.paper_objects.children.doleance_steps.visible = false;
this.paper_objects.children.doleance_steps.visible = false;
} else {
this.paper_objects.children.doleance_icon.visible = false;
// this.paper_objects.children.doleance_steps.visible = true;
// this.drawBesoins();
this.paper_objects.children.doleance_steps.visible = true;
}
} else {
this.paper_objects.children.doleance_icon.visible = false;
// this.paper_objects.children.doleance_steps.visible = false;
this.paper_objects.children.doleance_steps.visible = false;
}
}