personId);
$patientNumber = 0;
$imtf = 0;
$imtn = 0;
$distance = 0;
$area = 0;
$area2 = 0;
$appointmentNumber = 0;
foreach ($patientArray as $patient)
{
$patientNumber++;
$appointmentArray = getAppointments($patient->id);
foreach ($appointmentArray as $appointment)
{
$appointmentNumber++;
$measuresArray = getMeasures($appointment->id);
foreach ($measuresArray as $measure)
{
if ($measure->fwImt && !in_array($measure->fwImt->mean, $Ameans))
{
$imtf++;
}
if ($measure->nwImt && !in_array($measure->nwImt->mean, $Ameans))
{
$imtn++;
}
if ($measure->distance && !in_array($measure->distance->value, $Adistance))
{
$distance++;
}
if ($measure->area && !in_array($measure->area->value, $Aarea))
{
$area++;
}
}
}
}
$res='';
$css='';
if ($appointmentNumber > 0 && !$imtf && !$imtn && !$distance && !$area)
{ $res='
Aucune Mesure
';
$css='';
}
else
{ $res= 'IMT Far Wall = ' . $imtf . ', IMT Near Wall = ' . $imtn . ', distance = ' . $distance . ', surface = ' . $area.'
';
$css='haveMeasure';
}
echo ''.$physician->login.'
';
echo '
'.$patientNumber.' patient(s), '.$appointmentNumber.'appointment(s)
';
echo $res;
echo "
";
$css="";
}
}
function getPhysicians()
{
$query = "SELECT u.[id] as userId, u.[login], u.[last_connection], ".
"p.[id] as personId, p.[first_name], p.[last_name], p.[creation] ".
"FROM [evolucare].[dbo].[tj_user] u ".
"LEFT JOIN [evolucare].[dbo].[t_person] p on p.id = u.fk_person ".
"WHERE u.[login] not like 'pjt%@%' and u.[login] not like 'rogerdunyk%' ".
"and u.[login] not like '%evolucare%' and u.[login] not like '%@iimt.fr' ".
"and u.[login] not like 'chjac%' and u.[login] not like '%rbb%' and u.[login] not like '%rb2conseil%' ".
"and u.[last_connection] <> '';";
$results = SQLServerManager::queryOnDatabase( $query );
$physicianArray = array();
foreach( $results as $value )
{
$physician = new Physician();
$physician->userId = $value->userId;
$physician->personId = $value->personId;
$physician->login = trim($value->login);
$physician->first_name = trim($value->first_name);
$physician->last_name = trim($value->last_name);
$physician->creation = $value->creation;
$physician->last_connection = $value->last_connection;
array_push( $physicianArray, $physician );
}
return $physicianArray;
}
function getPatients($personId)
{
$query = "SELECT * FROM [evolucare].[dbo].[t_patient] ".
"WHERE fk_physician = ". $personId . ";";
$results = SQLServerManager::queryOnDatabase( $query );
$patientArray = array();
foreach( $results as $value )
{
$patientVo = new PatientVo();
$patientVo->id = $value->id;
$patientVo->uid = $value->uid;
array_push($patientArray, $patientVo);
}
return $patientArray;
}
function getAppointments($patientId)
{
$query = "SELECT * FROM [intimamedia_physician].[dbo].[tj_appointment] ".
"WHERE fk_patient = ". $patientId . ";";
$results = SQLServerManager::queryOnDatabase( $query );
$appointmentArray = array();
foreach( $results as $value )
{
$appointmentVo = new AppointmentVo();
$appointmentVo->id = $value->id;
$appointmentVo->number = $value->number;
$appointmentVo->date = $value->date;
array_push($appointmentArray, $appointmentVo);
}
return $appointmentArray;
}
function getMeasures($appointmentId)
{
$query = "SELECT * "
."FROM [intimamedia_physician].[dbo].[tj_measure] m "
."LEFT JOIN [intimamedia_physician].[dbo].[t_image] im on im.id = m.fk_image "
."WHERE im.fk_appointment = ".$appointmentId.";";
$results = SQLServerManager::queryOnDatabase( $query );
if( count($results) == 0 )
{
//echo 'error 023 - resultats mesures vide';
}
$resultArray = array();
foreach( $results as $value )
{
$measuresVo = new MeasuresVo();
$measuresVo->id = $value->id;
$measuresVo->imageId = $value->fk_image;
$measuresVo->measureUnit = $value->fk_measure_unit;
if ($value->fk_scale)
{
$scaleQuery = "SELECT * FROM [intimamedia_physician].[dbo].[t_scale]"
." WHERE id = '" . $value->fk_scale . "'";
$scaleExecQuery = SQLServerManager::queryOnDatabase( $scaleQuery );
$scaleVo = new ScaleVo();
foreach( $scaleExecQuery as $scaleResult )
{
$scaleVo->id = $scaleResult->id;
$scaleVo->value = $scaleResult->value;
$scaleVo->length = $scaleResult->length;
$scaleVo->xFirstPoint = $scaleResult->x_first_point;
$scaleVo->yFirstPoint = $scaleResult->y_first_point;
$scaleVo->xLastPoint = $scaleResult->x_last_point;
$scaleVo->yLastPoint = $scaleResult->y_last_point;
}
$measuresVo->scale = $scaleVo;
}
if ($value->fk_distance)
{
$distanceQuery = "SELECT id,value,type FROM [intimamedia_physician].[dbo].[t_distance]"
." WHERE id = '" . $value->fk_distance . "'";
$distanceExecQuery = SQLServerManager::queryOnDatabase( $distanceQuery );
$distanceVo = new DistanceVo();
foreach( $distanceExecQuery as $distanceResult )
{
$distanceVo->id = $distanceResult->id;
$distanceVo->value = $distanceResult->value;
$distanceVo->type = $distanceResult->type;
}
$measuresVo->distance = $distanceVo;
}
if ($value->fk_area)
{
$areaQuery = "SELECT * FROM [intimamedia_physician].[dbo].[t_area]"
." WHERE id = '" . $value->fk_area . "'";
$areaExecQuery = SQLServerManager::queryOnDatabase( $areaQuery );
$areaVo = new AreaVo();
foreach( $areaExecQuery as $areaResult )
{
$areaVo->id = $areaResult->id;
$areaVo->value = $areaResult->value;
$areaVo->points = unserialize($areaResult->points);
}
$measuresVo->area = $areaVo;
}
if ($value->fk_area2)
{
$area2Query = "SELECT * FROM [intimamedia_physician].[dbo].[t_area]"
." WHERE id = '" . $value->fk_area2 . "'";
$area2ExecQuery = SQLServerManager::queryOnDatabase( $area2Query );
$area2Vo = new AreaVo();
foreach( $area2ExecQuery as $areaResult )
{
$area2Vo->id = $areaResult->id;
$area2Vo->value = $areaResult->value;
$area2Vo->points = unserialize($areaResult->points);
}
$measuresVo->area = $area2Vo;
}
if ($value->fk_imtf)
{
$imtfQuery = "SELECT *, CONVERT(varchar(max), intima) as intimaString, CONVERT(varchar(max), adventitia) as adventitiaString "
."FROM [intimamedia_physician].[dbo].[t_imt] "
."WHERE id = '" . $value->fk_imtf . "'";
$imtfResults = SQLServerManager::queryOnDatabase( $imtfQuery );
foreach( $imtfResults as $imtfValue )
{
$imtfResultVo = new ImtResultVo();
// $imtfResultVo->id = $imtfValue->id;
$imtfResultVo->name = "F";
// $imtfResultVo->max = $imtfValue->max;
$imtfResultVo->mean = $imtfValue->mean;
/* $imtfResultVo->standardDeviation = $imtfValue->standard_deviation;
$imtfResultVo->qualityIndex = $imtfValue->iq;
$imtfResultVo->distance = $imtfValue->distance;
$imtfResultVo->numberOfPoints = $imtfValue->number_of_point;
$imtfResultVo->iStartx = $imtfValue->i_startx;
$imtfResultVo->iStarty = $imtfValue->i_starty;
$imtfResultVo->iEndx = $imtfValue->i_endx;
$imtfResultVo->iEndy = $imtfValue->i_endy;
$imtfResultVo->aStartx = $imtfValue->a_startx;
$imtfResultVo->aStarty = $imtfValue->a_starty;
$imtfResultVo->aEndx = $imtfValue->a_endx;
$imtfResultVo->aEndy = $imtfValue->a_endy;
$imtfResultVo->intima = unserialize($imtfValue->intimaString);
$imtfResultVo->adventitia = unserialize($imtfValue->adventitiaString); */
}
$measuresVo->fwImt = $imtfResultVo;
}
if ($value->fk_imtn)
{
$imtnQuery = "SELECT *, CONVERT(varchar(max), intima) as intimaString, CONVERT(varchar(max), adventitia) as adventitiaString "
."FROM [intimamedia_physician].[dbo].[t_imt] "
."WHERE id = '" . $value->fk_imtn . "'";
$imtnResults = SQLServerManager::queryOnDatabase( $imtnQuery );
foreach( $imtnResults as $imtnValue )
{
$imtnResultVo = new ImtResultVo();
$imtnResultVo->id = $imtnValue->id;
$imtnResultVo->name = "N";
// $imtnResultVo->max = $imtnValue->max;
$imtnResultVo->mean = $imtnValue->mean;
/*$imtnResultVo->standardDeviation = $imtnValue->standard_deviation;
$imtnResultVo->qualityIndex = $imtnValue->iq;
$imtnResultVo->distance = $imtnValue->distance;
$imtnResultVo->numberOfPoints = $imtnValue->number_of_point;
$imtnResultVo->iStartx = $imtnValue->i_startx;
$imtnResultVo->iStarty = $imtnValue->i_starty;
$imtnResultVo->iEndx = $imtnValue->i_endx;
$imtnResultVo->iEndy = $imtnValue->i_endy;
$imtnResultVo->aStartx = $imtnValue->a_startx;
$imtnResultVo->aStarty = $imtnValue->a_starty;
$imtnResultVo->aEndx = $imtnValue->a_endx;
$imtnResultVo->aEndy = $imtnValue->a_endy;
$imtnResultVo->intima = unserialize($imtnValue->intimaString);
$imtnResultVo->adventitia = unserialize($imtnValue->adventitiaString); */
}
$measuresVo->nwImt = $imtnResultVo;
}
array_push( $resultArray, $measuresVo );
}
return $resultArray;
}
?>