further adaptations to display deathdate. deathdate added to what API returns

This commit is contained in:
Julie Lenaerts 2021-08-26 16:42:33 +02:00
parent 5194cad354
commit c5f40c53ea
4 changed files with 72 additions and 79 deletions

View File

@ -6,7 +6,7 @@
addEntity: false,
addLink: false,
addAltNames: true,
addAge : false,
addAge : true,
hLevel : 3,
}"
:person="participation.person">

View File

@ -28,7 +28,6 @@
</div>
<p v-if="options.addInfo == true" class="moreinfo">
{{ person.deathdate }}
<i :class="'fa fa-fw ' + getGenderIcon" title="{{ getGender }}"></i>
<time v-if="person.birthdate && !person.deathdate" datetime="{{ person.birthdate }}" title="{{ birthdate }}">
{{ $t(getGenderTranslation) + ' ' + $d(birthdate, 'text') }}
@ -39,7 +38,7 @@
<time v-else-if="person.deathdate" datetime="{{ person.deathdate }}" title="{{ person.deathdate }}">
{{ $t('renderbox.deathdate') + ' ' + deathdate }}
</time>
<span v-if="options.addAge" class="age">{{ getAge }} {{ $t('renderbox.years_old')}}</span>
<span v-if="options.addAge && person.birthdate" class="age">{{ getAge }} {{ $t('renderbox.years_old')}}</span>
</p>
</div>
</div>
@ -118,13 +117,15 @@ export default {
return this.person.gender == 'woman' ? 'fa-venus' : this.person.gender == 'man' ? 'fa-mars' : 'fa-neuter';
},
birthdate: function(){
if(this.person.birthdate){
const date = new Date(this.person.birthdate.datetime);
return dateToISO(date);
return dateToISO(date)
}
},
deathdate: function(){
if(this.person.deathdate){
const date = new Date(this.person.deathdate.datetime);
return dateToISO(date);
return date.toLocaleDateString("fr-FR");
}
},
altNameLabel: function(){

View File

@ -69,6 +69,7 @@ class PersonNormalizer implements
'firstName' => $person->getFirstName(),
'lastName' => $person->getLastName(),
'birthdate' => $this->normalizer->normalize($person->getBirthdate()),
'deathdate' => $this->normalizer->normalize($person->getDeathdate()),
'center' => $this->normalizer->normalize($person->getCenter()),
'phonenumber' => $person->getPhonenumber(),
'mobilenumber' => $person->getMobilenumber(),
@ -125,6 +126,7 @@ class PersonNormalizer implements
foreach ([
'birthdate' => \DateTime::class,
'deathdate' => \DateTime::class,
'center' => Center::class
] as $item => $class) {
if (\array_key_exists($item, $data)) {

View File

@ -45,7 +45,7 @@ components:
type:
type: string
enum:
- 'person'
- "person"
firstName:
type: string
lastName:
@ -55,7 +55,9 @@ components:
description: a canonical representation for the person name
readOnly: true
birthdate:
$ref: '#/components/schemas/Date'
$ref: "#/components/schemas/Date"
deathdate:
$ref: "#/components/schemas/Date"
phonenumber:
type: string
mobilenumber:
@ -78,7 +80,7 @@ components:
type:
type: string
enum:
- 'person'
- "person"
required:
- id
- type
@ -96,7 +98,7 @@ components:
type:
type: string
enum:
- 'thirdparty'
- "thirdparty"
required:
- id
- type
@ -119,15 +121,15 @@ components:
type:
type: string
enum:
- 'accompanying_period_resource'
- "accompanying_period_resource"
readOnly: true
id:
type: integer
readOnly: true
resource:
anyOf:
- $ref: '#/components/schemas/PersonById'
- $ref: '#/components/schemas/ThirdPartyById'
- $ref: "#/components/schemas/PersonById"
- $ref: "#/components/schemas/ThirdPartyById"
ResourceById:
type: object
properties:
@ -136,7 +138,7 @@ components:
type:
type: string
enum:
- 'accompanying_period_resource'
- "accompanying_period_resource"
required:
- id
- type
@ -146,7 +148,7 @@ components:
type:
type: string
enum:
- 'accompanying_period_comment'
- "accompanying_period_comment"
readOnly: true
id:
type: integer
@ -161,7 +163,7 @@ components:
type:
type: string
enum:
- 'accompanying_period_comment'
- "accompanying_period_comment"
required:
- id
- type
@ -173,7 +175,7 @@ components:
type:
type: string
enum:
- 'social_issue'
- "social_issue"
parent_id:
type: integer
readOnly: true
@ -195,12 +197,12 @@ components:
Household:
type: object
properties:
id:
type: integer
type:
type: string
enum:
- 'household'
id:
type: integer
type:
type: string
enum:
- "household"
HouseholdPosition:
type: object
properties:
@ -209,7 +211,7 @@ components:
type:
type: string
enum:
- 'household_position'
- "household_position"
AccompanyingCourseWork:
type: object
properties:
@ -218,7 +220,7 @@ components:
type:
type: string
enum:
- 'accompanying_period_work'
- "accompanying_period_work"
note:
type: string
startDate:
@ -243,15 +245,15 @@ components:
type:
type: string
enum:
- 'accompanying_period_work_goal'
- "accompanying_period_work_goal"
note:
type: string
goal:
$ref: '#/components/schemas/SocialWorkGoalById'
$ref: "#/components/schemas/SocialWorkGoalById"
results:
type: array
items:
$ref: '#/components/schemas/SocialWorkGoalById'
$ref: "#/components/schemas/SocialWorkGoalById"
SocialWorkResultById:
type: object
@ -261,7 +263,7 @@ components:
type:
type: string
enum:
- 'social_work_result'
- "social_work_result"
SocialWorkGoalById:
type: object
properties:
@ -270,7 +272,7 @@ components:
type:
type: string
enum:
- 'social_work_goal'
- "social_work_goal"
paths:
/1.0/person/person/{id}.json:
@ -308,7 +310,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/Person'
$ref: "#/components/schemas/Person"
responses:
200:
description: "OK"
@ -355,18 +357,17 @@ paths:
422:
description: "Unprocessable entity (validation errors)"
/1.0/person/address/suggest/by-person/{id}.json:
get:
tags:
- address
summary: get a list of suggested address for a person
description: >
The address are computed from various source. Currently:
The address are computed from various source. Currently:
- the address of course to which the person is participating
- the address of course to which the person is participating
The current person's address is always ignored.
The current person's address is always ignored.
parameters:
- name: id
in: path
@ -390,11 +391,11 @@ paths:
- address
summary: get a list of suggested address for a household
description: >
The address are computed from various source. Currently:
The address are computed from various source. Currently:
- the address of course to which the members is participating
- the address of course to which the members is participating
The current household address is always ignored.
The current household address is always ignored.
parameters:
- name: id
in: path
@ -452,7 +453,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/AccompanyingPeriod'
$ref: "#/components/schemas/AccompanyingPeriod"
examples:
Set the requestor as anonymous:
value:
@ -488,7 +489,7 @@ paths:
id: 0
personLocation: null
addressLocation:
id: 7960
id: 7960
responses:
401:
description: "Unauthorized"
@ -520,8 +521,8 @@ paths:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/PersonById'
- $ref: '#/components/schemas/ThirdPartyById'
- $ref: "#/components/schemas/PersonById"
- $ref: "#/components/schemas/ThirdPartyById"
examples:
add person with id 50:
summary: "a person with id 50"
@ -585,7 +586,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/PersonById'
$ref: "#/components/schemas/PersonById"
responses:
401:
description: "Unauthorized"
@ -614,7 +615,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/PersonById'
$ref: "#/components/schemas/PersonById"
responses:
401:
description: "Unauthorized"
@ -645,7 +646,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/Resource'
$ref: "#/components/schemas/Resource"
examples:
add person with id 50:
summary: "a person with id 50"
@ -690,7 +691,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceById'
$ref: "#/components/schemas/ResourceById"
responses:
401:
description: "Unauthorized"
@ -721,7 +722,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/Comment'
$ref: "#/components/schemas/Comment"
examples:
a single comment:
summary: "a simple comment"
@ -759,7 +760,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/CommentById'
$ref: "#/components/schemas/CommentById"
responses:
401:
description: "Unauthorized"
@ -790,7 +791,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/Scope'
$ref: "#/components/schemas/Scope"
examples:
add a scope:
value:
@ -824,7 +825,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/ScopeById'
$ref: "#/components/schemas/ScopeById"
responses:
401:
description: "Unauthorized"
@ -855,7 +856,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/SocialIssue'
$ref: "#/components/schemas/SocialIssue"
examples:
add a social issue:
value:
@ -889,7 +890,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/SocialIssue'
$ref: "#/components/schemas/SocialIssue"
responses:
401:
description: "Unauthorized"
@ -926,11 +927,11 @@ paths:
type:
type: string
enum:
- 'accompanying_period_work'
- "accompanying_period_work"
startDate:
$ref: '#/components/schemas/Date'
$ref: "#/components/schemas/Date"
endDate:
$ref: '#/components/schemas/Date'
$ref: "#/components/schemas/Date"
examples:
create a work:
value:
@ -992,7 +993,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/AccompanyingCourseWork'
$ref: "#/components/schemas/AccompanyingCourseWork"
responses:
401:
description: "Unauthorized"
@ -1029,8 +1030,6 @@ paths:
400:
description: "transition cannot be applyed"
/1.0/person/accompanying-period/origin.json:
get:
tags:
@ -1064,8 +1063,6 @@ paths:
404:
description: "Not found"
/1.0/person/household.json:
get:
tags:
@ -1095,7 +1092,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/Household'
$ref: "#/components/schemas/Household"
404:
description: "not found"
401:
@ -1107,9 +1104,9 @@ paths:
- household
summary: Return households associated with the given person through accompanying periods
description: |
Return households associated with the given person throught accompanying periods participation.
Return households associated with the given person throught accompanying periods participation.
The current household of the given person is excluded.
The current household of the given person is excluded.
parameters:
- name: person_id
in: path
@ -1125,7 +1122,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/Household'
$ref: "#/components/schemas/Household"
404:
description: "not found"
401:
@ -1149,23 +1146,22 @@ paths:
type: object
properties:
person:
$ref: '#/components/schemas/PersonById'
$ref: "#/components/schemas/PersonById"
start_date:
$ref: '#/components/schemas/Date'
$ref: "#/components/schemas/Date"
position:
$ref: '#/components/schemas/HouseholdPosition'
$ref: "#/components/schemas/HouseholdPosition"
holder:
type: boolean
comment:
type: string
destination:
$ref: '#/components/schemas/Household'
$ref: "#/components/schemas/Household"
examples:
Moving person to a new household:
value:
concerned:
-
person:
- person:
id: 0
type: person
position:
@ -1180,8 +1176,7 @@ paths:
Moving person to a new household and set an address to this household:
value:
concerned:
-
person:
- person:
id: 0
type: person
position:
@ -1198,8 +1193,7 @@ paths:
Moving person to an existing household:
value:
concerned:
-
person:
- person:
id: 0
type: person
position:
@ -1215,8 +1209,7 @@ paths:
Removing a person from any household:
value:
concerned:
-
person:
- person:
id: 0
type: person
start_date:
@ -1270,8 +1263,6 @@ paths:
400:
description: "transition cannot be applyed"
/1.0/person/social/social-action.json:
get:
tags:
@ -1349,7 +1340,6 @@ paths:
404:
description: not found
/1.0/person/social-work/social-issue.json:
get:
tags:
@ -1379,7 +1369,7 @@ paths:
content:
application/json:
schema:
$ref: '#/components/schemas/SocialIssue'
$ref: "#/components/schemas/SocialIssue"
404:
description: "not found"
401: