feat(bisaya): update household and children age rules to 14, adjust related instructions and migration
All checks were successful
Deploy to production / deploy (push) Successful in 3m14s
All checks were successful
Deploy to production / deploy (push) Successful in 3m14s
This commit is contained in:
@@ -0,0 +1,19 @@
|
|||||||
|
'use strict';
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
async up(queryInterface) {
|
||||||
|
await queryInterface.sequelize.query(`
|
||||||
|
UPDATE community.vocab_grammar_exercise AS exercise
|
||||||
|
SET instruction = 'Frage: „Wo ist deine Tasche?“ Bitte danach: „Nimm deine Tasche.“'
|
||||||
|
FROM community.vocab_course_lesson AS lesson
|
||||||
|
WHERE exercise.lesson_id = lesson.id
|
||||||
|
AND lesson.course_id = 1
|
||||||
|
AND lesson.lesson_number = 30
|
||||||
|
AND lesson.title = 'Kinder & Familie'
|
||||||
|
AND exercise.exercise_number = 2
|
||||||
|
AND exercise.title = 'Kindersatz ergänzen';
|
||||||
|
`);
|
||||||
|
},
|
||||||
|
|
||||||
|
async down() {}
|
||||||
|
};
|
||||||
@@ -1334,7 +1334,7 @@ const BISAYA_EXERCISES = {
|
|||||||
{
|
{
|
||||||
exerciseTypeId: 1,
|
exerciseTypeId: 1,
|
||||||
title: 'Nachfragen ergänzen',
|
title: 'Nachfragen ergänzen',
|
||||||
instruction: 'Fülle die Lücken.',
|
instruction: 'Frage: „Wo ist deine Tasche?“ Bitte danach: „Nimm deine Tasche.“',
|
||||||
questionData: {
|
questionData: {
|
||||||
type: 'gap_fill',
|
type: 'gap_fill',
|
||||||
text: 'Hinay-hinay {gap}. Unsay pasabot {gap}?',
|
text: 'Hinay-hinay {gap}. Unsay pasabot {gap}?',
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ function calcAge(birthdate) {
|
|||||||
const FAMILY_AGE = Object.freeze({
|
const FAMILY_AGE = Object.freeze({
|
||||||
MIN_WOOING: 10,
|
MIN_WOOING: 10,
|
||||||
MIN_MARRIAGE: 14,
|
MIN_MARRIAGE: 14,
|
||||||
MIN_HOUSEHOLD_AND_CHILDREN: 16,
|
MIN_HOUSEHOLD_AND_CHILDREN: 14,
|
||||||
});
|
});
|
||||||
|
|
||||||
async function getFalukantUserOrFail(hashedId) {
|
async function getFalukantUserOrFail(hashedId) {
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ verwendet daher die Differenz zwischen `CURRENT_DATE` und `birthdate` in Tagen.
|
|||||||
| --- | ---: | --- |
|
| --- | ---: | --- |
|
||||||
| Werbung | 10 | Partner können vorgeschlagen und ein Vorschlag kann angenommen werden. |
|
| Werbung | 10 | Partner können vorgeschlagen und ein Vorschlag kann angenommen werden. |
|
||||||
| Hochzeit | 14 | Eine Verlobung kann durch eine Hochzeitsfeier vollzogen werden. |
|
| Hochzeit | 14 | Eine Verlobung kann durch eine Hochzeitsfeier vollzogen werden. |
|
||||||
| Gemeinsamer Haushalt und Kinder | 16 | Erst dann darf die Spielmechanik eine Schwangerschaft oder Geburt aus einer Ehe erzeugen. |
|
| Gemeinsamer Haushalt und Kinder | 14 | Ab dem Heiratsalter darf die Spielmechanik eine Schwangerschaft oder Geburt aus einer Ehe erzeugen. |
|
||||||
|
|
||||||
Die Regeln gelten für **beide** Personen einer Beziehung. Sie bilden bewusst
|
Die Regeln gelten für **beide** Personen einer Beziehung. Sie bilden bewusst
|
||||||
Spielphasen ab; es gibt keine individuelle Prüfung körperlicher Reife und keine
|
Spielphasen ab; es gibt keine individuelle Prüfung körperlicher Reife und keine
|
||||||
@@ -19,7 +19,7 @@ Eltern können ihre benannten Kinder ab 10 Spieljahren verkuppeln. Diese
|
|||||||
Werbung ist verkürzt: Nach der Auswahl eines Kandidaten genügt ein weiterer
|
Werbung ist verkürzt: Nach der Auswahl eines Kandidaten genügt ein weiterer
|
||||||
Verkuppelungsschritt zur Verlobung. Die Hochzeitsfeier bleibt trotzdem ab 14
|
Verkuppelungsschritt zur Verlobung. Die Hochzeitsfeier bleibt trotzdem ab 14
|
||||||
Spieljahren erforderlich und wird dabei ausdrücklich dem verlobten Paar
|
Spieljahren erforderlich und wird dabei ausdrücklich dem verlobten Paar
|
||||||
zugeordnet. Erst ab 16 kann die normale automatische Kinderlogik greifen.
|
zugeordnet. Ab diesem Alter kann die normale automatische Kinderlogik greifen.
|
||||||
|
|
||||||
## Bereits im Backend und Daemon umgesetzt
|
## Bereits im Backend und Daemon umgesetzt
|
||||||
|
|
||||||
@@ -28,13 +28,13 @@ zugeordnet. Erst ab 16 kann die normale automatische Kinderlogik greifen.
|
|||||||
- prüft beim Annehmen eines Vorschlags beide Alter erneut;
|
- prüft beim Annehmen eines Vorschlags beide Alter erneut;
|
||||||
- bietet den Hochzeitstyp erst ab 14 an und prüft beim Bestellen der Feier
|
- bietet den Hochzeitstyp erst ab 14 an und prüft beim Bestellen der Feier
|
||||||
beide Verlobte serverseitig;
|
beide Verlobte serverseitig;
|
||||||
- plant die Hochzeits-Schwangerschaft erst, wenn beide mindestens 16 sind.
|
- plant die Hochzeits-Schwangerschaft erst, wenn beide mindestens 14 sind.
|
||||||
- `src/valuerecalculationworker.h`
|
- `src/valuerecalculationworker.h`
|
||||||
- vollzieht die Hochzeit nach der mindestens einen Tag alten Hochzeitsfeier
|
- vollzieht die Hochzeit nach der mindestens einen Tag alten Hochzeitsfeier
|
||||||
nur, wenn beide Verlobte mindestens 14 sind.
|
nur, wenn beide Verlobte mindestens 14 sind.
|
||||||
- `src/usercharacterworker.h`
|
- `src/usercharacterworker.h`
|
||||||
- berücksichtigt für die bestehende zufällige Ehe-Kinderlogik ausschließlich
|
- berücksichtigt für die bestehende zufällige Ehe-Kinderlogik ausschließlich
|
||||||
Paare, bei denen beide mindestens 16 sind.
|
Paare, bei denen beide mindestens 14 sind.
|
||||||
|
|
||||||
## Auftrag für den externen Daemon
|
## Auftrag für den externen Daemon
|
||||||
|
|
||||||
@@ -61,13 +61,13 @@ Jeder automatische Empfängnis- oder Geburtenkandidat muss beide Bedingungen
|
|||||||
erfüllen:
|
erfüllen:
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
mother.birthdate <= CURRENT_DATE - INTERVAL '16 days'
|
mother.birthdate <= CURRENT_DATE - INTERVAL '14 days'
|
||||||
AND father.birthdate <= CURRENT_DATE - INTERVAL '16 days'
|
AND father.birthdate <= CURRENT_DATE - INTERVAL '14 days'
|
||||||
```
|
```
|
||||||
|
|
||||||
Das gilt sowohl für die Zufallslogik als auch für einen geplanten
|
Das gilt sowohl für die Zufallslogik als auch für einen geplanten
|
||||||
`pregnancy_due_at`-Pfad. Beim geplanten Pfad soll der Daemon die Felder nicht
|
`pregnancy_due_at`-Pfad. Beim geplanten Pfad soll der Daemon die Felder nicht
|
||||||
leeren, solange mindestens ein Elternteil noch unter 16 ist; die Schwangerschaft
|
leeren, solange mindestens ein Elternteil noch unter 14 ist; die Schwangerschaft
|
||||||
wird erst verarbeitet, sobald beide die Grenze erreicht haben. Admin-Tools
|
wird erst verarbeitet, sobald beide die Grenze erreicht haben. Admin-Tools
|
||||||
können weiterhin ein bewusstes, separat protokolliertes Override anbieten.
|
können weiterhin ein bewusstes, separat protokolliertes Override anbieten.
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ können weiterhin ein bewusstes, separat protokolliertes Override anbieten.
|
|||||||
|
|
||||||
- 13/13 Jahre, verlobt, Hochzeitsfeier älter als 24 Stunden: bleibt `engaged`.
|
- 13/13 Jahre, verlobt, Hochzeitsfeier älter als 24 Stunden: bleibt `engaged`.
|
||||||
- 14/14 Jahre, verlobt, Hochzeitsfeier älter als 24 Stunden: wird `married`.
|
- 14/14 Jahre, verlobt, Hochzeitsfeier älter als 24 Stunden: wird `married`.
|
||||||
- Verheiratet, ein Elternteil 15: keine automatische Schwangerschaft/Geburt.
|
- Verheiratet, ein Elternteil 13: keine automatische Schwangerschaft/Geburt.
|
||||||
- Verheiratet, beide 16: normaler Schwangerschafts-/Geburtspfad ist möglich.
|
- Verheiratet, beide 14: normaler Schwangerschafts-/Geburtspfad ist möglich.
|
||||||
|
|
||||||
## Bestehende Daten
|
## Bestehende Daten
|
||||||
|
|
||||||
|
|||||||
@@ -123,8 +123,8 @@ private:
|
|||||||
ON fu1.id = c1.user_id
|
ON fu1.id = c1.user_id
|
||||||
LEFT JOIN falukant_data.falukant_user fu2
|
LEFT JOIN falukant_data.falukant_user fu2
|
||||||
ON fu2.id = c2.user_id
|
ON fu2.id = c2.user_id
|
||||||
WHERE c1.birthdate <= CURRENT_DATE - INTERVAL '16 days'
|
WHERE c1.birthdate <= CURRENT_DATE - INTERVAL '14 days'
|
||||||
AND c2.birthdate <= CURRENT_DATE - INTERVAL '16 days'
|
AND c2.birthdate <= CURRENT_DATE - INTERVAL '14 days'
|
||||||
AND random()*100 < (
|
AND random()*100 < (
|
||||||
100.0 /
|
100.0 /
|
||||||
(1
|
(1
|
||||||
|
|||||||
Reference in New Issue
Block a user