pour déploiement auto v2 via gitlab
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

121 lines
4.0 KiB

-- 1/3 : Création de la table temporaire
DROP TABLE IF EXISTS w_dbsetup
;
CREATE TEMP TABLE w_dbsetup AS
SELECT
CASE WHEN t_etude_1.oid = 0 THEN t_etude_1.oid ELSE 1 END AS oid,
t_etude_1.code,
t_etude_1.texte,
t_etude_1.texte_court,
0 AS taux_cible_2008,
0 AS taux_cible_2009,
0 AS taux_cible_2010,
0 AS taux_cible_2011,
t_ghm_1.code as ghm_1_code,
t_ghm_2.code as ghm_2_code,
t_ghm_3.code as ghm_3_code
FROM
pmsi.t_etude_1,
pmsi.t_ghm t_ghm_1,
pmsi.t_ghm t_ghm_2,
pmsi.t_ghm t_ghm_3
WHERE
t_ghm_1.oid = ghm_1_id
AND t_ghm_2.oid = ghm_2_id
AND t_ghm_3.oid = ghm_3_id
ORDER BY t_etude_1.code LIMIT 0
;
-- 2/3 : Peuplement de la table temporaire
INSERT INTO w_dbsetup(
oid,
code,
texte,
texte_court,
taux_cible_2008,
taux_cible_2009,
taux_cible_2010,
taux_cible_2011,
ghm_1_code,
ghm_2_code,
ghm_3_code
)
VALUES
(0, '**', 'TOTAL', 'TOTAL', 0, 0, 0, 0, '******', '******', '******'),
(1, '01', 'Libérations du canal carpien et d''autres nerfs superficiels', 'Canal carpien', 0, 0, 0, 0, '01C13Z', '24C54Z', '******'),
(1, '02', 'Interventions sur le cristallin', 'Cristallin', 0, 0, 0, 0, '02C05Z', '24C03Z', '******'),
(1, '03', 'Amygdalectomies et/ou adénoïdectomies', 'Amygdalectomies', 0, 0, 0, 0, '03C10Z', '24C05Z', '******'),
(1, '04', 'Ligatures de veines et éveinages', 'Ligatures de veines', 0, 0, 0, 0, '05C17V', '24C09Z', '******'),
(1, '05', 'Interventions réparatrices pour hernies', 'Hernies', 0, 0, 0, 0, '06C12V', '24C11Z', '******'),
(1, '06', 'Résections osseuses localisées et/ou ablations de matériel de fixation interne', 'Résections osseuses', 0, 0, 0, 0, '08C13Z', '08C14Z', '24C15Z'),
(1, '07', 'Interventions sur la main', 'Interventions sur la main', 0, 0, 0, 0, '08C17Z', '24C55Z', '******'),
(1, '08', 'Interventions sur la main', 'Interventions sur la main', 0, 0, 0, 0, '08C18V', '24C46Z', '******'),
(1, '09', 'Arthroscopies', 'Arthroscopies', 0, 0, 0, 0, '08C19Z', '24C17Z', '******'),
(1, '10', 'Interventions sur les testicules', 'Testicules', 0, 0, 0, 0, '12C06Z', '24C23Z', '******'),
(1, '11', 'Circoncisions', 'Circoncisions', 0, 0, 0, 0, '12C08Z', '24C24Z', '******'),
(1, '12', 'Interventions sur la vulve, le vagin ou le col utérin', 'Vulve, vagin, col utérin', 0, 0, 0, 0, '13C08V', '24C27Z', '******'),
(1, '13', 'Dilatations et curetages, conisations', 'Dilatations, curetages, conisations', 0, 0, 0, 0, '13C12Z', '24C28Z', '******'),
(1, '14', 'Ligature ou intervention système utéroannexiel', 'Ligatures système utéroannexiel', 0, 0, 0, 0, '13C10Z', '24C50Z', '******'),
(1, '15', 'Affections de la bouche et des dents avec certaines extractions, réparations et prothèses dentaires', 'Bouche, dents', 0, 0, 0, 0, '03K02Z', '24K38Z', '******')
;
-- 3/3 : Màj de la table iCTI
UPDATE pmsi.t_etude_1 SET
code = w_dbsetup.code
FROM w_dbsetup
WHERE
t_etude_1.oid = w_dbsetup.oid
AND w_dbsetup.oid = 0;
UPDATE pmsi.t_etude_1 SET
texte = w_dbsetup.texte,
texte_court = w_dbsetup.texte_court,
ghm_1_id = t_ghm_1.oid,
ghm_2_id = t_ghm_2.oid,
ghm_3_id = t_ghm_3.oid
FROM
w_dbsetup,
pmsi.t_ghm t_ghm_1,
pmsi.t_ghm t_ghm_2,
pmsi.t_ghm t_ghm_3
WHERE
t_etude_1.code = w_dbsetup.code
AND t_ghm_1.code = ghm_1_code
AND t_ghm_2.code = ghm_2_code
AND t_ghm_3.code = ghm_3_code;
INSERT INTO pmsi.t_etude_1(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_etude_1);
INSERT INTO pmsi.t_etude_1(
code, texte,
texte_court,
ghm_1_id,
ghm_2_id,
ghm_3_id)
SELECT
w_dbsetup.code,
w_dbsetup.texte,
w_dbsetup.texte_court,
t_ghm_1.oid,
t_ghm_2.oid,
t_ghm_3.oid
FROM
w_dbsetup,
pmsi.t_ghm t_ghm_1,
pmsi.t_ghm t_ghm_2,
pmsi.t_ghm t_ghm_3
WHERE
w_dbsetup.oid <> 0
AND w_dbsetup.code NOT IN (SELECT code FROM pmsi.t_etude_1)
AND t_ghm_1.code = ghm_1_code
AND t_ghm_2.code = ghm_2_code
AND t_ghm_3.code = ghm_3_code;