Aller au contenu

Services métier

Copy of sumaris-pod/.agents/rules/service.md (rule written for AI coding agents, when creating or modifying business services, FilterVO, FetchOptions, or service implementations). Do not edit here: run npm run site:sync-rules to update it.

  • FilterVO

    • Nom préfixé par l'entité, Lombok @Data, @Builder, @FieldNameConstants.
    • Implémente IDataFilter et Serializable.
    • Champs minimaux: recorderDepartmentId, Integer[] qualityFlagIds, DataQualityStatusEnum[] dataQualityStatus.
  • FetchOptions

    • Nom préfixé par l'entité, Lombok @Data, @Builder, implémente IFetchOptions.
  • Service

    • Interface préfixée par l'entité, annotée @Transactional.
    • Méthodes: List<E> findByFilter(F, Page, FO), Optional<E> findById(ID, FO), E save(E), void delete(ID).
  • ServiceImpl

    • @Service("entityService") avec entity en minuscules.
    • Déclare le Repository via @Resource et délègue chaque méthode.