BASE=`pwd`
APPLDIR=$BASE/appl
DATADIR=$BASE/data
PATH=$PATH:$BASE/ihd/bin:.
TZ=America/Santiago
export PATH APPLDIR DATADIR TZ
[ "$REMOTE_USER" = "" ] && REMOTE_USER=ralkaraz
export REMOTE_USER
./pac3 01/06/2024 31/12/2025 $1 >/dev/null
cmes=`date +%m`
wget https://eqt.inhedo.com/cgi-bin/rep1.cgi 2>/dev/null
rpemit=tmp/rpemit
rm rep1.cgi
PAC=tmp/PAC
AGV=tmp/AGV
agend=./tmp/agend
idxp=./tmp/idxp
versionn=../js/versionn.js
version=../js/version.js
./appl/sh/agend >$agend
[ "$1" = "" ] && pacii=pacie || pacii=pacie
./appl/sh/$pacii | awk -F^ ' 
function trail(txt) { while (substr(txt,length(txt),1)==" ") txt=substr(txt,1,length(txt)-1); return (txt) }
$1!= ant {
printf "%s^%s^%s\n",$1,substr($5,1,index($5," ")-1)" "trail($3),trail(substr($7,index($7,"|")+1))
ant=$1
x=0
}
{
printf "%s%.2d^%s\n",$1,x++,$24 >"'"$idxp"'"
}  ' >$PAC
PRF=tmp/PRF
./appl/sh/perso | awk -F^ '
function trail(txt) { while (substr(txt,length(txt),1)==" ") txt=substr(txt,1,length(tx)e-1); return (txt) }
{
printf "%s^%s^%s^%s\n",trail($1),trail($2),substr($11,1,2),trail(substr($11,4))
} ' >$PRF
[ "$1" = "" ] && { > $version
> $version
rm tmp1/*
>$AGV
}

awk -F^ ' BEGIN {
pre["01"]="Medicina"
pre["02"]="Enfermera"
pre["03"]="Kinesiologa"
pre["04"]="Psicologa"
pre["05"]="Nutricionista"
pre["06"]="TENS"
pre["07"]="Curaciones"
hbga="a"
inic="20240601"
fini="20251231" }
function trail(txt) { while (substr(txt,length(txt),1)==" ") txt=substr(txt,1,length(txt)-1); return (txt) }
"A" == dbga && FNR==1 { dbgb="A";print FILENAME >"/dev/tty" }
FILENAME==ARGV[1] { pac[$1]=$2"^"$3;next}
function fec (rr) { return substr(rr,7)""substr(rr,4,2)""substr(rr,1,2)}
FILENAME==ARGV[2] { prt[$1]=$2;next }
FILENAME==ARGV[3] { rpe[$1$2$3$4]=2;next }
FILENAME==ARGV[4] {
ff=fec($6)
if(ff<inic || ff > fini ) next
cdp=substr($5,1,index($5,"|")-1)
codi=sprintf("%5.5s",$2)""substr($4,1,2)
#cier[ff""sprintf("%5.5s",$2)""$4]=1
rr1=ff""sprintf("%5.5s",$2)""$4
rr2=ff""substr($5,1,index($5,"|")-1)substr($2,1,index($2,"|")-1)sprintf("%2.2s",$4)
if($7=="C") 
cie[rr1]=sprintf("%5.5s^%s^%s^%s^%s^1^%s^%s",$2,pac[substr($2,1,5)],pre[prt[codi]],prt[codi],$4,trail($5),rpe[rr2])
else
cie[rr1]=sprintf ("%5.5s^%s^%s^%s^%s^^%s^%s",$2,pac[substr($2,1,5)],pre[prt[codi]],prt[codi],$4,trail($5),rpe[rr2])
prr[codi]=trail($5)
if("A"==dbgb && rpe[rr2])
{
dbgb="a"
print "dbgb="dbgb >"/dev/tty"
print "rr4="++rr4 >"/dev/tty"
print "rr1="rr1 >"/dev/tty"
print "rr2="rr2 >"/dev/tty"
print "cie="rr1,cie[rr1] >"/dev/tty"
print "codi="codi >"/dev/tty"
print "_________\n\n" >"/dev/tty"
getline <"/dev/tty"

}

#081069^00740|TELLO               ^01/01/2024^0006^27.369.491-9|Marbrig Lopez       ^04/01/2024^C
#20240104^00740^CARMEN TELLO^Ovalle^Kinesilogo^03^0206^1"

#00740^CARMEN TELLO^Ovalle^Mdico^01^0006^1"
#00731^JUAN FLORES^00206|Punta Arenas^Curaciones^07^Domicilio^31^0603^01/01/2024^01/01/2024^31/01/2024
next
}
{
r=fec($10)
z=r""substr($1,1,5)""$8
ipr=substr($1,1,5)""substr($8,1,2)
rr2=r""substr(prr[ipr],1,index(prr[ipr],"|")-1)$1""sprintf("%2.2s",$8)
y[z]=$1"^"$2"^"substr($3,index($3,"|")+1)"^"$4"^"$5"^"$8"^^"trail(prr[ipr])"^"rpe[rr2]
if("A"==dbgb && rpe[rr2])
{
print FILENAME >"/dev/tty"
dbgb="a"
print "dbgb="dbgb >"/dev/tty"
print "rr4="++rr4 >"/dev/tty"
print "z="z >"/dev/tty"
print "y="y[z] >"/dev/tty"
print "Ipr="ipr >"/dev/tty"
print "rr2="rr2 >"/dev/tty"
print "_________\n\n" >"/dev/tty"

getline <"/dev/tty"
}
#print "r="r" z="z" y="y[z]" cier="cie[z] 
}
END {
for (i in prr) print i"^"prr[i] >"tmp/prr"
for (i in cie) print i"^"cie[i] >"tmp/cie"

for (i in cie) y[i]=cie[i]
#for (i in cie) if(y[i]=="") y[i]=cie[i]
#else y[i]=y[i]"1"
for (i in y)
	printf "%8.8s^%s\n",i,y[i] 
}
' $PAC $idxp $rpemit $agend tmp/D1 >>$AGV
[ "$1" = 2 ] && {
sort -u $AGV -o $AGV
sort -t^ -k3 $AGV -o $AGV
awk -F^ ' BEGIN {
versionn="'"$versionn"'"
print "var agend = new Array()"
print "var iagend = new Array()"
print "var agend = new Array()" >versionn
print "var iagend = new Array()" >versionn
}
$8=="" && $10==2 { printf "agend[\"%8.8s%d\"]=\"%s\"\n",$1,z[$1]++,substr($0,10) >versionn }
{
        printf "agend[\"%8.8s%d\"]=\"%s\"\n",$1,x[$1]++,substr($0,10)
}
END {
for (i in x) printf "iagend[\"%s\"]=\"%s\"\n",i,x[i]
for (i in z) printf "iagend[\"%s\"]=\"%s\"\n",i,z[i] >versionn
} '  $AGV >> $version
awk -F^ '
{
	paciente=$2
	personal=substr($9,1,index($9,"|")-1)
if($6+0) prestacion=$6
else prestacion="PP"

for (i in ppp) { 
if( p[i]) print "iagend[\""substr(i,1,8)"\"]="p[i]>"tmp1/"substr(i,9)
else print "iagend[\""substr(i,1,8)"\"]="ppp[i]>"tmp1/"substr(i,9)
}
	if(personal=="")
	{	 
		#print $1"-"personal"-"q[$1""personal]+0
		personal=1
		#print $1"-"personal"-"q[$1""personal]+0
		#print ""
	}
	if (pr[prestacion]+0 ==0) { print "var agend = new Array()\nvar iagend = new Array()" >"tmp1/"prestacion
	pr[prestacion]=1 }
	if (pp[paciente]+0 ==0) { print "var agend = new Array()\nvar iagend = new Array()" >"tmp1/"paciente
	pp[paciente]=1 }
	if (qq[personal]+0 ==0) { print "var agend = new Array()\nvar iagend = new Array()" >"tmp1/"personal
qq[personal]=1 }
	printf "agend[\"%8.8s%d\"]=\"%s\"\n",$1,q[$1""personal]++,substr($0,10) >"tmp1/"personal
	printf "agend[\"%8.8s%d\"]=\"%s\"\n",$1,p[$1""paciente]++,substr($0,10) >"tmp1/"paciente
	printf "agend[\"%8.8s%d\"]=\"%s\"\n",$1,r[$1""prestacion]++,substr($0,10) >"tmp1/"prestacion
}
END {
dm[1]=32
dm[2]=30
dm[3]=32
dm[4]=31
dm[5]=32
dm[6]=31
dm[7]=32
dm[8]=32
dm[9]=31
dm[10]=32
dm[11]=31
dm[12]=32
cmes="'"$cmes"'"+2
if(cmmes >13) cmes=13
cmes=13
for (q0 in qq) for (m=1;m<cmes;m++) for(d=1;d<dm[m];d++) if(m<6) fff[sprintf("%.4d%.2d%.2d",2025,m,d)""q0]=0
else fff[sprintf("%.4d%.2d%.2d",2024,m,d)""q0]=0
for (q0 in pp) for (m=1;m<cmes;m++) for(d=1;d<dm[m];d++) if(m<6) ppp[sprintf("%.4d%.2d%.2d",2025,m,d)""q0]=0
else ppp[sprintf("%.4d%.2d%.2d",2024,m,d)""q0]=0
for (q0 in pr) for (m=1;m<cmes;m++) for(d=1;d<dm[m];d++) if(m<6) rrr[sprintf("%.4d%.2d%.2d",2025,m,d)""q0]=0
else rrr[sprintf("%.4d%.2d%.2d",2024,m,d)""q0]=0
for (i in fff) { 
#print "iagend[\""substr(i,1,8)"\"]="q[i],i
if( q[i]) print "iagend[\""substr(i,1,8)"\"]="q[i]>"tmp1/"substr(i,9)
else print "iagend[\""substr(i,1,8)"\"]="fff[i]>"tmp1/"substr(i,9)
}
for (i in ppp) { 
if( p[i]) print "iagend[\""substr(i,1,8)"\"]="p[i]>"tmp1/"substr(i,9)
else print "iagend[\""substr(i,1,8)"\"]="ppp[i]>"tmp1/"substr(i,9)
}
for (i in rrr) { 
if( r[i]) print "iagend[\""substr(i,1,8)"\"]="r[i]>"tmp1/"substr(i,9)
else print "iagend[\""substr(i,1,8)"\"]="rrr[i]>"tmp1/"substr(i,9)
}
}
' $AGV
}
