/*==============================================================================
FICHA: Indicador N°18 - DL 1153 2023
ELABORACION: OGTI/ OGEI - MINSA - JL
==============================================================================*/
use BD_HISINDICADORES
go

--***************************************************
--				BASES DE DATOS.
--***************************************************
--HIS MINSA 
select id_cita
	, num_doc
	, convert(date,periodo) fecha_atencion
	, convert(int,renaes) renaes
	, id_tipcond_estab
	, id_tipitem tipo_dx
	, cod_item  
	, valor_lab
into #his_minsa
from BD_BACKUP_OGEI.dbo.MEF_TramaHisMinsa_202211_20221220 (nolock)
where sw=1 and id_tipo_doc=1 


 --***************************************************
--					SINTAXIS
--***************************************************
declare @mes_eval int,
		@año int 

set @mes_eval=11 --<=========== Mes de evaluación
set @año=2022 --<============= Año de evaluación 


--%%%%%%%%%%%%%%%%
--  DENOMINADOR
--%%%%%%%%%%%%%%%%

--1. N° de Atentidos (Personas Nuevas o Reingresantes) en Establecimientos de Salud.
select distinct renaes
				, num_doc 
				, year(fecha_atencion) año
				, month(fecha_atencion) mes
into #his_minsa_den
from #his_minsa (nolock)
where id_tipcond_estab in ('N','R')
and year(fecha_atencion)=@año
and month(fecha_atencion)<=@mes_eval

--%%%%%%%%%%%%%%%%
-- NUMERADOR
--%%%%%%%%%%%%%%%%

--1. N° de atendidos con interconsultas realizads (consultor / consultante) registrados en el HIS MINSA.

	--1. Teleinterconsulta - Consultante.
	select distinct a.renaes
					, a.num_doc
					, teleinterconsulta_consultante=1
	into #his_minsa_consultante
	from #his_minsa a
	inner join #his_minsa_den b on a.num_doc=b.num_doc and a.renaes=b.renaes
	where cod_item in ('99499.11','99499.12') and try_convert(int,valor_lab)=1 -- Teleinterconsulta - Consultante.
	and year(fecha_atencion)=@año
	and month(fecha_atencion)<=@mes_eval

	--2. Teleinterconsulta - Consultor.
	select distinct	a.renaes
					, a.num_doc
					, teleinterconsulta_consultor=1
	into #his_minsa_consultor
	from #his_minsa a
	inner join #his_minsa_den b on a.num_doc=b.num_doc and a.renaes=b.renaes
	where cod_item in ('99499.11','99499.12') and try_convert(int,valor_lab)=2 -- Teleinterconsulta - Consultor.
	and year(fecha_atencion)=@año
	and month(fecha_atencion)<=@mes_eval

	--3. Teleinterconsulta.
	select distinct a.renaes
					, a.num_doc
					, teleinterconsulta=1
	into #his_minsa_teleinterconsulta
	from #his_minsa a
	inner join #his_minsa_den b on a.num_doc=b.num_doc and a.renaes=b.renaes
	where cod_item in ('99499.11','99499.12') and try_convert(int,valor_lab) in (1,2)  -- Teleinterconsulta
	and year(fecha_atencion)=@año
	and month(fecha_atencion)<=@mes_eval


--%%%%%%%%%%%%%%%%
--	INDICADOR
--%%%%%%%%%%%%%%%%
select año
	   , mes
	   , renaes
	   , sum(den) den
	   , sum(teleinterconsulta) num
	   , sum(teleinterconsulta_consultante) teleinterconsulta_consultante
	   , sum(teleinterconsulta_consultor) teleinterconsulta_consultor
into #tabla_reporte
from(
		select a.año
			   , a.mes
			   , a.renaes
			   , a.num_doc
			   , den=1
			   , isnull(d.teleinterconsulta,0)				teleinterconsulta
			   , isnull(b.teleinterconsulta_consultante,0)  teleinterconsulta_consultante
			   , isnull(c.teleinterconsulta_consultor,0)    teleinterconsulta_consultor
		from #his_minsa_den a
		left join #his_minsa_consultante b on a.renaes=b.renaes and a.num_doc=b.num_doc
		left join #his_minsa_consultor c on a.renaes=c.renaes and a.num_doc=c.num_doc
		left join #his_minsa_teleinterconsulta d on a.renaes=d.renaes and a.num_doc=d.num_doc
) as t
group by año, mes, renaes


--===================
-- REPORTE
--===================
drop table BD_HISINDICADORES.dbo.DL1153_2023_CG18_Telemedicina

select 
B.diris Diris, CASE 
	WHEN B.DESC_DPTO='LIMA' AND B.DESC_PROV='LIMA' THEN 'LIMA METROPOLITANA'
	WHEN B.DESC_DPTO='LIMA' AND B.DESC_PROV<>'LIMA' THEN 'LIMA PROVINCIAS'
	ELSE B.DESC_DPTO END Departamento
, B.desc_prov Provincia
, B.desc_dist Distrito
, B.desc_red Red
, b.desc_mred MicroRed
, b.cat_estab
, b.desc_estab eess_nombre
, isnull(c.activo,0) renaes_activo_telemedicina
, a.*
into BD_HISINDICADORES.dbo.DL1153_2023_CG18_Telemedicina
from #tabla_reporte a
inner join BD_BACKUP_OGEI.dbo.Renaes_20221220 b on convert(int,a.renaes)=convert(int,b.COD_ESTAB)
left join BD_HISINDICADORES.dbo.TBL_DL1153_2022_17_RenaesActivos c on convert(int,a.renaes)=convert(int,c.renaes)

select * 
from BD_HISINDICADORES.dbo.DL1153_2023_CG18_Telemedicina


drop table #his_minsa
drop table #his_minsa_consultante
drop table #his_minsa_consultor
drop table #his_minsa_den
drop table #his_minsa_teleinterconsulta
drop table #tabla_reporte
-- =D