feat(FalukantService, FamilyView): enhance marriage satisfaction handling
All checks were successful
Deploy to production / deploy (push) Successful in 1m56s
All checks were successful
Deploy to production / deploy (push) Successful in 1m56s
- Added logic to initialize marriage satisfaction to 100 for newly married couples in the FalukantService. - Updated the FamilyView component to conditionally display marriage satisfaction only for married relationships, improving clarity in the UI. - Ensured default values are used when marriage satisfaction is not explicitly set, enhancing user experience.
This commit is contained in:
@@ -634,6 +634,15 @@ class FalukantService extends BaseService {
|
||||
exclusiveFlag: false,
|
||||
};
|
||||
|
||||
if (typeTr === 'married') {
|
||||
return {
|
||||
...base,
|
||||
// Nach der Hochzeit soll die Ehe mit voller Zufriedenheit starten.
|
||||
marriageSatisfaction: 100,
|
||||
marriagePublicStability: 100,
|
||||
};
|
||||
}
|
||||
|
||||
if (typeTr === 'lover') {
|
||||
return {
|
||||
...base,
|
||||
@@ -3693,8 +3702,10 @@ class FalukantService extends BaseService {
|
||||
children.sort((a, b) => new Date(a._createdAt) - new Date(b._createdAt));
|
||||
const inProgress = ['wooing', 'engaged', 'married'];
|
||||
const activeRelationships = relationships.filter(r => inProgress.includes(r.relationshipType));
|
||||
const activeMarriage = activeRelationships.find(r => r.relationshipType === 'married') || activeRelationships[0] || null;
|
||||
const marriageSatisfaction = activeMarriage?.state?.marriageSatisfaction ?? null;
|
||||
const activeMarriage = activeRelationships.find(r => r.relationshipType === 'married') || null;
|
||||
const marriageSatisfaction = activeMarriage
|
||||
? (activeMarriage?.state?.marriageSatisfaction ?? 100)
|
||||
: null;
|
||||
const marriageState = this.getMarriageStateLabel(marriageSatisfaction);
|
||||
const userHouse = await UserHouse.findOne({
|
||||
where: { userId: user.id },
|
||||
@@ -3759,8 +3770,12 @@ class FalukantService extends BaseService {
|
||||
const family = {
|
||||
relationships: activeRelationships.map((r) => ({
|
||||
...r,
|
||||
marriageSatisfaction: r.state?.marriageSatisfaction ?? null,
|
||||
marriageState: this.getMarriageStateLabel(r.state?.marriageSatisfaction ?? null),
|
||||
marriageSatisfaction: r.relationshipType === 'married'
|
||||
? (r.state?.marriageSatisfaction ?? 100)
|
||||
: null,
|
||||
marriageState: r.relationshipType === 'married'
|
||||
? this.getMarriageStateLabel(r.state?.marriageSatisfaction ?? 100)
|
||||
: null,
|
||||
})),
|
||||
marriageSatisfaction,
|
||||
marriageState,
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<dt>{{ $t('falukant.family.spouse.status') }}</dt>
|
||||
<dd>{{ $t('falukant.family.statuses.' + relationships[0].relationshipType) }}</dd>
|
||||
</div>
|
||||
<div v-if="relationships[0].marriageSatisfaction != null">
|
||||
<div v-if="relationships[0].relationshipType === 'married' && relationships[0].marriageSatisfaction != null">
|
||||
<dt>{{ $t('falukant.family.spouse.marriageSatisfaction') }}</dt>
|
||||
<dd>
|
||||
{{ relationships[0].marriageSatisfaction }}
|
||||
@@ -212,7 +212,7 @@
|
||||
</div>
|
||||
|
||||
<section v-if="marriageSatisfaction != null || householdTension" class="marriage-overview surface-card">
|
||||
<div class="marriage-overview__item" v-if="marriageSatisfaction != null">
|
||||
<div class="marriage-overview__item" v-if="relationships.length > 0 && relationships[0].relationshipType === 'married' && marriageSatisfaction != null">
|
||||
<span class="marriage-overview__label">{{ $t('falukant.family.spouse.marriageSatisfaction') }}</span>
|
||||
<strong>{{ marriageSatisfaction }}</strong>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user