Open killiankopp opened 1 year ago
Création de la classe AbstractAsset disposant des attributs suivants
Attribut | Type | Défaut | Description |
---|---|---|---|
ds_publish | ?string | null | Date de début de publication |
de_publish | ?string | null | Date de fin de publication |
La méthode suivante permet de conaître l'état de disponibilité de la ressource
public function isAvailable(?DateTime $date = null): bool
La méthode suivante permet d'archiver la ressource à une date donnée
public function archive(?DateTime $date = null): self
Dans les deux méthodes précédentes, lorsque la date n'est pas indiquée, on prend la date du jour.
Il est nécessaire de créer une table mkg__sample_asset pour la création des tables héritant de AbstractAsset.
Champ | Type de donnée | Nullable | Défaut | Description |
---|---|---|---|---|
ds_publish | DATETIME | OUI | NULL | Date de début de publication |
de_publish | DATETIME | OUI | NULL | Date de fin de publication |
Usage de la classe :
<?php
class MaRessource extends AbstractAsset {
// ...
}
customer and user Pebble / dev
Scrum brief En tant que dev, je veux pouvoir utiliser un objet générique pour manipuler des tables à champ unique (contrat type, temps de travail, ...)
Brief Nous avons régulièrement besoin de table d'option. Nous utilisions pour cela les MLS. Pour les remplacer tout en optimisant le code, il est possible de créer un objet générique qui s'occupera de gérer les différents cas d'usage de ces options (qui sont toujours les mêmes).
Les options étant utilisées via leur id dans d'autres tables, il faut maintenir la cohérence des données et éviter d'en perdre.
Plusieurs cas de figures :
C'est l'archivage ou le non disponibilité permanente qui pose problème. Si une option est choisie admettons dans un contrat on choisi un type de contrat (intérim). N'ayant plus le droit de prendre des contrats en intérim, l'option devient inutile mais elle a été utilisée. Si je rouvre un contrat (en admettant que ce soit possible de le modifier), il ne faut pas que le select qui permet le choix de l'option intérim ne propose plus cette option sur le contrat qui l'utilisait jusque là... car sinon des données seront corrompues. Autre cas de figure, si nous avions créé une table d'option N+1 avec le nom des cadres présents à l'instant T et que dans notre organigramme nous avions utilisé cette option pour déterminé le N+1 sur une fiche salarié. Si le N+1 ne fait plus parti de l'entreprise aujourd'hui et que le salarié non plus mais que nous voulons modifié la fiche dudit salarié, la proposition de N+1 doit être faite en fonction des N+1 de l'époque et non des N+1 du jour de la modification. Bref... il faut réfléchir à tous les cas de figure possible et déterminer des modes d'utilisation.
Additional information Add any other context or screenshots about the issue here.
Roles
Code indication
Todo
Asset (objet de manipulation de table à champ unique + date)