-- 1/3 : Création de la table temporaire
DROP TABLE IF EXISTS w_dbsetup
;

CREATE TEMP TABLE w_dbsetup AS
    SELECT
    	code,
    	CASE WHEN oid = 0 THEN oid ELSE 1 END AS oid,
    	texte,
    	texte_court
    FROM pmsi.t_modificateurs_ccam
    ORDER BY code LIMIT 0
;

-- 2/3 : Peuplement de la table temporaire
INSERT INTO w_dbsetup(
    code,
    oid,
    texte,
    texte_court
)
VALUES
('3', 1, 'Majo actes anesthésie par les anesthésistes s1/s2 OPTAM ACO ou OPTAM au TO pour bénéf C2S/urgence', 'Majo actes anesthésie par les anesthésistes s1/s2 OPTAM ACO ou OPTAM au TO pour bénéf C2S/urgence'),
('4', 1, 'Majo peropératoire et suivi analgésie postop ou rachidienne sans cathéter périnerveux ou rachidien', 'Majo peropératoire et suivi analgésie postop ou rachidienne sans cathéter périnerveux ou rachidien'),
('5', 1, 'Majo peropératoire et suivi analgésie postop ou rachidienne avec cathéter périnerveux ou rachidien', 'Majo peropératoire et suivi analgésie postop ou rachidienne avec cathéter périnerveux ou rachidien'),
('6', 1, 'Intervention iterative glaucome..., voies biliaires ou urinaires', 'Intervention iterative glaucome..., voies biliaires ou urinaires'),
('7', 1, 'Majoration présence permanente du médecin anesthésiste durant toute l intervention', 'Majoration présence permanente du médecin anesthésiste durant toute l intervention'),
('8', 1, 'Anesthesie intervention iterative glaucome..., voies biliaires ou urinaires', 'Anesthesie intervention iterative glaucome..., voies biliaires ou urinaires'),
('9', 1, 'Majoration pour réalisation des soins conservateurs chez un patient âgé de 1 à 25 ans', 'Majoration pour réalisation des soins conservateurs chez un patient âgé de 1 à 25 ans'),
('A', 1, 'Anesthesie patient < 4 ans ou > 80 ans', 'Anesthesie patient < 4 ans ou > 80 ans'),
('B', 1, 'Radio. au bloc operatoire, unite de rea. ou lit du patient intransportable', 'Radio. au bloc operatoire, unite de rea. ou lit du patient intransportable'),
('C', 1, 'Radio. comparative des membres', 'Radio. comparative des membres'),
('D', 1, 'Controle radio. segment squelette immobilisé par contention rigide', 'Controle radio. segment squelette immobilisé par contention rigide'),
('E', 1, 'Radiologie conventionnelle ou scanographie patient < 5 ans', 'Radiologie conventionnelle ou scanographie patient < 5 ans'),
('F', 1, 'Actes en urgence dimanche ou jour ferie', 'Actes en urgence dimanche ou jour ferie'),
('G', 1, 'Glaucome... patient < 1 an ; Extraction oeso ou bronch. patient < 3 ans ; Med. nuc. patient < 3 ans', 'Glaucome... patient < 1 an ; Extraction oeso ou bronch. patient < 3 ans ; Med. nuc. patient < 3 ans'),
('H', 1, 'Radiotherapie niveau 1', 'Radiotherapie niveau 1'),
('I', 1, 'Modificateur transitoire de convergence vers la cible, valeur 3', 'Modificateur transitoire de convergence vers la cible, valeur 3'),
('J', 1, 'Majoration transitoire de chirurgie', 'Majoration transitoire de chirurgie'),
('K', 1, 'Majo act accouch par SF et gyn. pr act chir avc J pr S1 et OPTAMACO et CD spé chir. or', 'Majo act accouch par SF et gyn. pr act chir avc J pr S1 et OPTAMACO et CD spé chir. or'),
('L', 1, 'Traitement fracture ou luxation ouverte', 'Traitement fracture ou luxation ouverte'),
('M', 1, 'Urgence cabinet médecin généraliste, pédiatre ou SF, après examen en urgence d un patient', 'Urgence cabinet médecin généraliste, pédiatre ou SF, après examen en urgence d un patient'),
('N', 1, 'Majoration acte de restauration tissus durs et/ou endodontie dent permanente enfant < 13 ans', 'Majoration acte de restauration tissus durs et/ou endodontie dent permanente enfant < 13 ans'),
('O', 1, 'Act.chir.réal.en urg.vital.ou dorgane-8h à 20h-chir/ORL/ophta/stomato/anesth/gynéco-obst ss cond.', 'Act.chir.réal.en urg.vital.ou dorgane-8h à 20h-chir/ORL/ophta/stomato/anesth/gynéco-obst ss cond.'),
('P', 1, 'Acte urgence par pédiatres, MG ou sages-femmes - 20h à 00h', 'Acte urgence par pédiatres, MG ou sages-femmes - 20h à 00h'),
('Q', 1, 'Radiotherapie niveau 2', 'Radiotherapie niveau 2'),
('R', 1, 'Chirurgie plastique téguments face, cou, main et doigts', 'Chirurgie plastique téguments face, cou, main et doigts'),
('S', 1, 'Urgence nuit 00h-08h pediatres, SF et med. gen. ou autres med. pr acte thérapeutique sous anesthésie', 'Urgence nuit 00h-08h pediatres, SF et med. gen. ou autres med. pr acte thérapeutique sous anesthésie'),
('T', 1, 'Majo - actes accouch par gynéco-obst OPTAM définie dans la conv médic', 'Majo - actes accouch par gynéco-obst OPTAM définie dans la conv médic'),
('U', 1, 'Urgence hors pediatres, SF et omnipraticiens nuit 20 h - 8 h', 'Urgence hors pediatres, SF et omnipraticiens nuit 20 h - 8 h'),
('V', 1, 'Radiotherapie niveau 3', 'Radiotherapie niveau 3'),
('W', 1, 'Radiotherapie niveau 4', 'Radiotherapie niveau 4'),
('X', 1, 'Modificateur transitoire de convergence vers la cible, valeur 4', 'Modificateur transitoire de convergence vers la cible, valeur 4'),
('Y', 1, 'Majo acte radiographie realisee par un radiologue, un pneumologue ou un rhumatologue', 'Majo acte radiographie realisee par un radiologue, un pneumologue ou un rhumatologue'),
('Z', 1, 'Majoration du tarif pour acte de radiographie réalisé par un radiologue', 'Majoration du tarif pour acte de radiographie réalisé par un radiologue'),
('**', 0, 'Non renseigné', 'Non renseigné')
;

-- 3/3 : Màj de la table iCTI
UPDATE pmsi.t_modificateurs_ccam SET 
	code = w_dbsetup.code
FROM w_dbsetup
WHERE t_modificateurs_ccam.oid = w_dbsetup.oid AND w_dbsetup.oid = 0;


UPDATE pmsi.t_modificateurs_ccam SET 
	texte = w_dbsetup.texte, 
	texte_court = w_dbsetup.texte_court
FROM w_dbsetup
WHERE t_modificateurs_ccam.code = w_dbsetup.code;


INSERT INTO pmsi.t_modificateurs_ccam(oid, code, texte, texte_court)
	SELECT oid, code, texte, texte_court 
	FROM w_dbsetup 
	WHERE 
		oid = 0 
		AND oid NOT IN (SELECT oid FROM pmsi.t_modificateurs_ccam);


INSERT INTO pmsi.t_modificateurs_ccam(code, texte, texte_court)
	SELECT code, texte, texte_court 
	FROM w_dbsetup 
	WHERE 
		oid <> 0 
		AND code NOT IN (SELECT code FROM pmsi.t_modificateurs_ccam);