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.
 
 

82 lines
2.1 KiB

-- 1/3 : Création de la table temporaire
DROP TABLE IF EXISTS w_dbsetup
;
CREATE TEMP TABLE w_dbsetup AS
SELECT
CASE WHEN oid = 0 THEN oid ELSE 1 END AS oid,
code,
texte
FROM pmsi.t_ghm_da
ORDER BY code
LIMIT 0
;
-- 2/3 : Peuplement de la table temporaire
INSERT INTO w_dbsetup(
oid,
code,
texte
)
VALUES
(1, 'D01', 'Digestif'),
(1, 'D02', 'Orthopédie traumatologie'),
(1, 'D03', 'Traumatismes multiples ou complexes graves'),
(1, 'D04', 'Rhumatologie'),
(1, 'D05', 'Système nerveux (hors cathétérismes vasculaires diagnostiques et interventionnels)'),
(1, 'D06', 'Cathétérismes vasculaires diagnostiques et interventionnels'),
(1, 'D07', 'Cardio-vasculaire (hors cathétérismes vasculaires diagnostiques et interventionnels)'),
(1, 'D09', 'Pneumologie'),
(1, 'D10', 'ORL, Stomatologie'),
(1, 'D11', 'Ophtalmologie'),
(1, 'D12', 'Gynécologie - sein'),
(1, 'D13', 'Obstétrique'),
(1, 'D14', 'Nouveau-nés et période périnatale'),
(1, 'D15', 'Uro-néphrologie et génital '),
(1, 'D16', 'Hématologie'),
(1, 'D17', 'Chimiothérapie, radiothérapie, hors séances'),
(1, 'D18', 'Maladies infectieuses (dont VIH)'),
(1, 'D19', 'Endocrinologie'),
(1, 'D20', 'Tissu cutané et tissu sous-cutané'),
(1, 'D21', 'Brûlures'),
(1, 'D22', 'Psychiatrie'),
(1, 'D23', 'Toxicologie, Intoxications, Alcool'),
(1, 'D24', 'Douleurs chroniques, Soins palliatifs'),
(1, 'D25', 'Transplant. d''organes'),
(1, 'D26', 'Activités inter spécialités, suivi thérapeutique d''affections connues'),
(1, 'D27', 'Séances'),
(1, 'D90', 'Séjours en erreur')
;
-- 3/3 : Màj de la table iCTI
UPDATE pmsi.t_ghm_da SET
code = w_dbsetup.code
FROM w_dbsetup
WHERE
t_ghm_da.oid = w_dbsetup.oid
AND w_dbsetup.oid = 0;
UPDATE pmsi.t_ghm_da SET
texte = w_dbsetup.texte
FROM w_dbsetup
WHERE
t_ghm_da.code = w_dbsetup.code
AND (
t_ghm_da.texte IS DISTINCT FROM w_dbsetup.texte
);
INSERT INTO pmsi.t_ghm_da(oid, code, texte)
SELECT oid, code, texte
FROM w_dbsetup
WHERE
oid = 0
AND oid NOT IN (SELECT oid FROM pmsi.t_ghm_da);
INSERT INTO pmsi.t_ghm_da(code, texte)
SELECT code, texte
FROM w_dbsetup
WHERE
oid <> 0
AND code NOT IN (SELECT code FROM pmsi.t_ghm_da);