package com.hpay.hpay_mobile_api.QuerySpecifications;

import com.hpay.hpay_mobile_api.entities.Sochitel;
import org.springframework.data.jpa.domain.Specification;
import java.time.LocalDateTime;

public class SochitelSpecification {

    public static Specification<Sochitel> byCriteria(
            Integer idClient,
            Integer idCompte
            //LocalDateTime dateStart,
           // LocalDateTime dateEnd
    ) {
        return (root, query, cb) -> {
            var predicates = cb.conjunction();

            if (idClient != null) {
                predicates.getExpressions().add(cb.equal(root.get("idClients"), idClient));
            }
            if (idCompte != null) {
                predicates.getExpressions().add(cb.equal(root.get("idCompte"), idCompte));
            }
            /*if (dateStart != null) {
                predicates.getExpressions().add(cb.greaterThanOrEqualTo(root.get("dateEff"), dateStart));
            }
            if (dateEnd != null) {
                predicates.getExpressions().add(cb.lessThanOrEqualTo(root.get("dateEff"), dateEnd));
            }*/

            return predicates;
        };
    }
}

