SELECT * FROM gc_assureur WHERE libelle LIKE "%SI";


SELECT * FROM police WHERE libellePolice LIKE "%majestic%"



SELECT *  FROM beneficiaire 
WHERE idPolice=84 
AND codeLienParente="A"
AND dateEntree BETWEEN "2023-01-01" AND "2023-08-31"
AND dateSortie="2023-05-04"


SELECT * FROM etatbeneficiaire 
WHERE idBeneficiaire IN (320,25404,25408)

SELECT * FROM beneficiaire 
-- WHERE id IN (25404,25408)
WHERE idAdherent IN (9429,9430)                    --            255.449.952


SELECT * FROM adherent 
WHERE id IN (9429,9430)

SELECT * FROM etatadherent
WHERE idAdherent IN (9429,9430)


SELECT * FROM primecollege  WHERE idPolice=127    -- FAMILLE   100%: 960 000 / 80%: 350 000

-- PRIME A ENCAISSER
 -- Type 0 pour les primes à encaisser et à ristourner  ; Type 1 pour les primes à encaisser  ; Type 2 pour les primes et à ristourner 
CALL sp_evolution_mensuellePrimeGarant_rp ('FIDRA',NULL,NULL,NULL,'2023-01-01','2023-12-31','1');
 
 
CALL `sp_evolution_mensuellePrimeFacturer_rp`(NULL,NULL,127,NULL,'2023-01-01','2023-12-31','1');

CALL sp_evolution_mensuellePrimeNette_rp(NULL,NULL,127,NULL,'2023-01-01','2023-12-31');SELECT * FROM temp_prime; DROP TEMPORARY TABLE IF EXISTS temp_prime;	 -- 73 826 145

CALL sp_evolution_mensuellePrimeNetteCumule_rp(NULL,NULL,127,NULL,'2023-01-01','2023-12-31');SELECT * FROM temp_primecumul; DROP TEMPORARY TABLE IF EXISTS temp_primecumul;	 

CALL sp_evolution_mensuelleCharge_rp(NULL,NULL,127,NULL,'2023-01-01','2023-12-31');SELECT * FROM temp_charge;DROP TEMPORARY TABLE IF EXISTS temp_charge; -- 

CALL sp_evolution_mensuelleChargeCumul_rp(NULL,NULL,127,NULL,'2023-01-01','2023-12-31');SELECT * FROM temp_chargecumul;DROP TEMPORARY TABLE IF EXISTS temp_chargecumul;

CALL sp_evolution_mensuelleProvision_rp(NULL,NULL,127,NULL,'2023-01-01','2023-12-31');SELECT * FROM temp_provision;DROP TEMPORARY TABLE IF EXISTS temp_provision;	 
 
CALL sp_evolution_mensuelleProvisionCumule_rp(NULL,NULL,127,NULL,'2023-01-01','2023-12-31');SELECT * FROM temp_provisioncumul; DROP TEMPORARY TABLE IF EXISTS temp_provisioncumul;	 



-- POUR LES HONORAIRES
 -- Type 0 pour les primes à encaisser et à ristourner  ; Type 1 pour les primes à encaisser  ; Type 2 pour les primes et à ristourner 
CALL `sp_evolution_mensuelleHonoraire_rp`(NULL,NULL,127,NULL,'2023-01-01','2023-10-31','0')


CALL sp_Ft1_elementAutoMutuelle_rp (NULL,127,'2023-01-01','2023-08-31'); -- 406 009 870

-- AND (A.nomBeneficiaire NOT LIKE "%AVENANT%")

CALL sp_Ft1_elementAutoMutuelle_rp ('VEC',NULL,'2023-01-01','2023-08-31'); -- 406 009 870

CALL `sp_imprimer_assure`(156,'2023-03-27')

CALL `sp_imprimer_assure_rp`(NULL,NULL,156,NULL,NULL,NULL,'2023-03-28')

CALL `sp_export_assure`(185,'2023-02-03')

CALL `sp_export_assure_sans_format_tous`(156,'2023-03-27')

-- IFNULL(A.dateSortie, "0000-00-00") AS dateSortie

-- AND p.codeEtatPolice NOT IN ('RE','EX','AN')

CALL `sp_getnombrestatutcollegedate`('2023-04-01',230)

 SELECT * FROM college WHERE idPolice=156
 
 
 --  GESTION DES BENEFICIAIRES AVEC HISTORIQUE  -  POUR 2023 POINTER SUR LE 01/01/2023   ///LISTING
-- CALL `sp_imprimer_assure_historique_rp`('FIDRA',NULL,NULL,NULL,NULL,NULL,'2023-01-04') ;




SELECT * FROM police WHERE libellePolice LIKE '%ALLARD%'

-- Evolution effectif, cumule à l'année précédente

CALL `sp_evolution_mensBenefEffetCollege_rp`('GNA',NULL,NULL,NULL,'2023-01-01',"2023-11-30")


CALL `sp_evolution_mensBeneCollegeAssure_rp`(NULL,NULL,NULL,NULL,'2023-01-01',"2023-12-31")


CALL `sp_evolution_StatusBenefTous_rp`('FIDRA',NULL,NULL,NULL,'2023-01-01',"2023-11-30")



-- EVOLUTION RETRAIT ET/OU INCORPORATION


CALL `sp_perso_evolution_collegeMois_rp`('GNA',NULL,168,NULL,'2023-01-01','2023-12-31')  -- EVOLUTION MENSUELLE DES INCORPORATIONS


CALL `sp_evolution_mensBeneCollegeRetireStatus_rp`('GNA',NULL,NULL,NULL,'2023-01-01','2023-11-30',NULL)  -- EVOLUTION MENSUELLE DES RETRAITS


CALL `sp_evolution_mensBeneCollegeIncorpoStatus_rp`('GNA',NULL,NULL,NULL,'2023-01-01','2023-11-30')  -- EVOLUTION MENSUELLE DES INCORPORATIONS*  A REPRENDRE NE MARCHE 

CALL `sp_perso_evolution_cumule_mensBenefEffetCollege_rp`('GNA',NULL,168,NULL,'2023-01-01','2023-11-30')   -- EVOLUTION MENSUELLE DES INCORPORATIONS

CALL `sp_perso_evolution_mensBeneCollegeAssure_rp`('GNA',NULL,168,NULL,'2023-01-01','2023-12-31')  -- EVOLUTION MENSUELLE DES INCORPORATIONS



CALL sp_perso_evolution_incorpoGarPolColTypeGarant_rp(NULL,NULL,NULL,NULL,'2023-01-01','2023-05-31','1')  -- '1':Compagne / '2':AutoFi /'3':Mutuelle / NULL TOUS les types


CALL sp_imprimer_assure_periode (156,'2023-01-01','2023-03-27')


SELECT * FROM police WHERE codeEtatPolice IN ('RE','EX','AN')

SELECT * FROM college  


-- 1-- INCORPORER

CALL `sp_ft5_evolution_effectif_rp`('GNA',NULL,168,NULL,'2023-01-01','2023-12-31')    -- CONDITION ASSURETS


-- 2-- RETIRER
CALL `sp_evolution_mensBeneCollegeRetire_rp`('GNA',NULL,168,NULL,'2023-01-01','2023-12-31')


CALL `sp_evolution_mensBeneCollegeRetireAssure_rp`('GNA',NULL,NULL,NULL,'2023-01-01','2023-11-30')


-- 1 -- Beneficiaires incorporés sur une periode /Mouvement charles eris -- ACTIF
CALL sp_imprimer_beneficiaire_incorpo_rp (NULL,NULL,156,'2022-01-01','2022-12-31') 


-- 2 -- Beneficiaires retirés sur une periode

CALL sp_imprimer_beneficiaire_retire_rp (NULL,NULL,NULL,'2023-04-01','2023-04-30',NULL);



SELECT * FROM beneficiaire WHERE idPolice=156 AND dateEffet='2023-01-03'




-- NOUVELLES DEMANDES

-- 1-INORPORATION
CALL `sp_mvt_evolution_effectif_rp`(NULL,NULL,168,NULL,'2023-01-03','2023-03-31')   -- EVOLUTION MENSUELLE des effestifs

CALL `sp_perso_evolution_cumule_mensBenefEffetCollege_rp`('GNA',NULL,168,NULL,'2023-01-01','2023-03-31')  -- EVOLUTION MENSUELLE /POLICE/COLLEGE  DES INCORPORATIONS

CALL `sp_evolution_mensBeneCollegeIncorpoStatus_rp`('FIDRA',NULL,NULL,NULL,'2023-01-01','2023-03-01')  -- EVOLUTION MENSUELLE /POLICE/COLLEGE DES INCORPORATIONS/PAR STATUS

CALL `sp_perso_evolution_mensBeneCollegeAssure_rp`(NULL,NULL,NULL,NULL,'2023-01-01','2023-03-01')  -- EVOLUTION MENSUELLE DES INCORPORATIONS/ADHERENTS UNIQUEMENT


CALL `sp_mvtJour_evolution_effectif_rp`(NULL,NULL,156,NULL,'2023-01-03','2023-01-31')   -- EVOLUTION JOURNALIER DES EFFECTIFS


-- 2-RETRAIT
CALL `sp_ft5_evolution_effectifRetire_rp`(NULL,NULL,NULL,NULL,'2023-04-01','2023-04-30')    -- EEVOLUTION MENSUELLE DES RETRAITS

CALL `sp_evolution_mensBeneCollegeRetire_rp`('GNA',NULL,NULL,NULL,'2023-01-01','2023-01-31')  -- EVOLUTION MENSUELLE /POLICE/COLLEGE  DES RETRAITS 

CALL `sp_evolution_mensBeneCollegeRetireStatus_rp`('GNA',NULL,NULL,NULL,'2023-01-01','2023-11-30',NULL)  -- EVOLUTION MENSUELLE /POLICE/COLLEGE DES RETRAITS/PAR STATUS

CALL `sp_evolution_mensBeneCollegeRetireAssure_rp`(NULL,NULL,NULL,NULL,'2023-01-01','2023-03-01') -- EVOLUTION MENSUELLE DES RETRAITS/ADHERENTS UNIQUEMENT


CALL `sp_mvtJour_evolution_effectifRetrait_rp`(NULL,NULL,NULL,NULL,'2023-04-01','2023-04-30')    -- EVOLUTION JOURNALIER DES EFFECTIFS RETRIRES



-- 3-CARTES
CALL `sp_mvtJour_evolution_carteEditee_rp`(NULL,NULL,NULL,NULL,'2023-02-01','2023-02-16')   -- EVOLUTION JOURNALIER DES EFFECTIFS


-- 4-- EVOLUTION MENSUELLE DES BENEFICIAIRE / BASE TARIFAIRE / PRIME / POUR LA FACTURATION DE LA PRODUCTION
CALL `sp_perso_evolution_collegeMois_rp`(NULL,NULL,259,NULL,'2023-01-01','2023-05-23')  ;

CALL sp_perso_evolution_mensBeneCollegeRetire_rp1 (NULL,NULL,259,NULL,'2023-01-01','2023-05-23')  ;


-- CA HONORAIRE 
CALL sp_perso_evolution_CACollege_rp ('FIDRA',NULL,264,NULL,'2023-01-01','2023-05-31')  ; -- PAR COLLEGE 

CALL sp_perso_evolution_CAPolice_rp ('FIDRA',NULL,264,NULL,'2023-01-01','2023-05-31')  ; -- POLICE

CALL sp_perso_evolution_CAGarant_rp ('FIDRA','2023-01-01','2023-05-31')  ; -- Garant



SELECT * FROM police WHERE id=259

SELECT fn_tauxCommissionGestionnaire_rp(259)

SELECT * FROM vw_taxe_police WHERE (idPolice=259) LIMIT 1;	

-- EFFECTIF ASSURE PRINCIPAUX

SELECT codeGarant,Garant,idClient,idPolice,numeroPolice,libelle_police,idCollege,libelleCollege,
-- CASE WHEN MONTH(LEFT(CURDATE(),10))='7' THEN (SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)) ELSE '0' END AS JUILLET,
SUM(JANVIER) AS JANVIER,
(SUM(FEVRIER)+SUM(JANVIER)) AS FEVRIER, 
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)) AS MARS,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)) AS AVRIL,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)) AS MAI,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN) ) AS JUIN,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)) AS JUILLET,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)+SUM(AOUT)) AS AOUT,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)+SUM(AOUT)+SUM(SEPTEMBRE)) AS SEPTEMBRE,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)+SUM(AOUT)+SUM(SEPTEMBRE)+SUM(OCTOBRE)) AS OCTOBRE,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)+SUM(AOUT)+SUM(SEPTEMBRE)+SUM(OCTOBRE)+SUM(NOVEMBRE) ) AS NOVEMBRE,
(SUM(FEVRIER)+SUM(JANVIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)+SUM(AOUT)+SUM(SEPTEMBRE)+SUM(OCTOBRE)+SUM(NOVEMBRE)+SUM(DECEMBRE)) AS DECEMBRE,
(SUM(JANVIER)+SUM(FEVRIER)+SUM(MARS)+SUM(AVRIL)+SUM(MAI)+SUM(JUIN)+SUM(JUILLET)+SUM(AOUT)+SUM(SEPTEMBRE)+SUM(OCTOBRE)+SUM(NOVEMBRE)+SUM(DECEMBRE)) AS TOTAUX 
 FROM (
SELECT p.codeGcAssureur AS codeGarant,fn_libelle_garant_rp(p.codeGcAssureur) Garant,p.idClient,a.idPolice,p.numeroPolice,fn_libelle_police(p.numeroPolice) AS libelle_police
	,a.idCollege,fn_libelle_collegeID(a.idCollege) AS libelleCollege,
COUNT(a.id) AS 'JANVIER',"0" AS 'FEVRIER',"0" AS 'MARS',"0" AS 'AVRIL',"0" AS 'MAI',"0" AS 'JUIN',
"0" AS 'JUILLET',"0" AS 'AOUT',"0" AS 'SEPTEMBRE',"0" AS 'OCTOBRE',"0" AS 'NOVEMBRE',"0" AS 'DECEMBRE'
FROM beneficiaire a
JOIN adherent b ON (b.id = a.idAdherent) 
JOIN police p ON (p.id = a.idPolice) 
JOIN entetecontrat C ON (C.idPolice=a.idPolice)
WHERE C.id = fn_id_entetecontrat_police_courant(a.idPolice)
AND C.exercice=YEAR("2023-07-31" )-1	
AND LEFT(a.dateEntree,10)<="2023-01-01"
AND p.codeGcAssureur IN ("ALLIANZCI") -- AND a.CodeLienParente='A'	
AND a.sorti = "0" AND a.nomBeneficiaire NOT LIKE "%AVENANT%"
GROUP BY p.codeGcAssureur ,p.idClient,a.idPolice,p.numeroPolice,a.idCollege

UNION ALL 

SELECT p.codeGcAssureur AS codeGarant,fn_libelle_garant_rp(p.codeGcAssureur) Garant,p.idClient,a.idPolice,p.numeroPolice,fn_libelle_police(p.numeroPolice) AS libelle_police
	,a.idCollege,fn_libelle_collegeID(a.idCollege) AS libelleCollege,
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='1' THEN COUNT(a.id) ELSE '0' END 'JANVIER',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='2' THEN COUNT(a.id) ELSE '0' END 'FEVRIER',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='3' THEN COUNT(a.id) ELSE '0' END 'MARS',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='4' THEN COUNT(a.id) ELSE '0' END 'AVRIL',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='5' THEN COUNT(a.id) ELSE '0' END 'MAI',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='6' THEN COUNT(a.id) ELSE '0' END 'JUIN',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='7' THEN COUNT(a.id) ELSE '0' END 'JUILLET',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='8' THEN COUNT(a.id) ELSE '0' END 'AOUT',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='9' THEN COUNT(a.id) ELSE '0' END 'SEPTEMBRE',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='10' THEN COUNT(a.id) ELSE '0' END 'OCTOBRE',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='09' THEN COUNT(a.id) ELSE '0' END 'NOVEMBRE',
		CASE WHEN MONTH(LEFT(a.dateEntree,10))='12' THEN COUNT(a.id) ELSE '0' END 'DECEMBRE'
	FROM beneficiaire a
	JOIN adherent b ON (b.id = a.idAdherent) 
	JOIN police p ON (p.id = a.idPolice) 
	JOIN entetecontrat C ON (C.idPolice=a.idPolice)
	WHERE C.id = fn_id_entetecontrat_police_courant(a.idPolice)
	AND C.exercice=YEAR( "2023-07-31" )
	AND p.codeGcAssureur IN ("ALLIANZCI") -- AND a.CodeLienParente='A'	
	AND LEFT(a.dateEntree,10) BETWEEN "2023-01-01"  AND "2023-07-31" 	
	-- AND LEFT(a.dateEntree,10)>="2023-01-01"  AND LEFT(a.dateEntree,10)<="2023-07-31"  
	AND CASE WHEN a.sorti = "1" THEN a.dateSortie >= a.dateEntree ELSE a.dateSortie IS NULL END 
	GROUP BY p.codeGcAssureur ,p.idClient,a.idPolice,p.numeroPolice,a.idCollege,a.dateEntree
	
	) depense
	GROUP BY codeGarant,Garant,idClient,idPolice,numeroPolice,libelle_police,idCollege,libelleCollege
	ORDER BY codeGarant,idPolice,idCollege,TOTAUX DESC ;