2
0
mirror of https://github.com/ACSPRI/queXS synced 2024-04-02 12:12:16 +00:00

operator panel querries adjusted for sample_import_var_restrict table

This commit is contained in:
Alex
2015-05-17 16:52:28 +03:00
parent 12a8c6ac7a
commit b93fe090cc
4 changed files with 54 additions and 37 deletions

View File

@@ -148,12 +148,12 @@ else
//display sample details //display sample details
// use sample_import_var_restrict to limit // use sample_import_var_restrict to limit
$sql = "SELECT s.var,s.val $sql = "SELECT sivr.var,sv.val
FROM sample_var as s FROM `sample_var` as sv, `sample_import_var_restrict` as sivr, `case` as c
JOIN `case` as c on (c.case_id = '$case_id' and c.sample_id = s.sample_id) WHERE c.case_id = '$case_id'
JOIN `sample` as sa ON (sa.sample_id = c.sample_id) AND sv.sample_id = c.sample_id
LEFT JOIN sample_import_var_restrict as sv ON (sv.var LIKE s.var AND sa.import_id = sv.sample_import_id) AND sivr.var_id = sv.var_id
WHERE (sv.restrict IS NULL OR sv.restrict = 0)"; AND (sivr.restrict IS NULL OR sivr.restrict = 0)";
$rs = $db->GetAll($sql); $rs = $db->GetAll($sql);

View File

@@ -97,10 +97,11 @@ if (isset($_POST['firstname']))
$fieldsarray["{SID}"]=$fieldsarray["{SURVEYID}"]=$lime_sid; $fieldsarray["{SID}"]=$fieldsarray["{SURVEYID}"]=$lime_sid;
//$fieldsarray["{SURVEYNAME}"]=$thissurvey["surveyls_title"]; //$fieldsarray["{SURVEYNAME}"]=$thissurvey["surveyls_title"];
$sql = "SELECT s.var,s.val $sql = "SELECT sivr.var,sv.val
FROM `sample_var` as s, `case` as c FROM `sample_var` as sv, `sample_import_var_restrict` as sivr, `case` as c
WHERE c.case_id = $case_id WHERE c.case_id = $case_id
AND s.sample_id = c.sample_id"; AND sv.sample_id = c.sample_id
AND sivr.var_id = sv.var_id";
$attributes = $db->GetAssoc($sql); $attributes = $db->GetAssoc($sql);
@@ -317,11 +318,11 @@ $sc = $db->GetOne($sql);
if ($sc == 1) if ($sc == 1)
{ {
$sql = "SELECT sv1.val as firstname, sv2.val as lastname, sv3.val as email $sql = "SELECT
(SELECT sv.val from sample_var as sv, `sample_import_var_restrict` as sivr WHERE sivr.var_id = sv.var_id AND sv.sample_id = c.sample_id AND sivr.type =6) as firstname,
(SELECT sv.val from sample_var as sv, `sample_import_var_restrict` as sivr WHERE sivr.var_id = sv.var_id AND sv.sample_id = c.sample_id AND sivr.type =7) as lastname,
(SELECT sv.val from sample_var as sv, `sample_import_var_restrict` as sivr WHERE sivr.var_id = sv.var_id AND sv.sample_id = c.sample_id AND sivr.type =8) as email
FROM `case` as c FROM `case` as c
LEFT JOIN sample_var as sv1 on (sv1.sample_id = c.sample_id AND sv1.type = 6)
LEFT JOIN sample_var as sv2 on (sv2.sample_id = c.sample_id AND sv2.type = 7)
LEFT JOIN sample_var as sv3 on (sv3.sample_id = c.sample_id AND sv3.type = 8)
WHERE c.case_id = $case_id"; WHERE c.case_id = $case_id";
$rs = $db->GetRow($sql); $rs = $db->GetRow($sql);

View File

@@ -69,11 +69,12 @@ if (isset($_POST['submit']))
{ {
$case_id = get_case_id($operator_id); $case_id = get_case_id($operator_id);
$sql = "SELECT s.var $sql = "SELECT sivr.var
FROM sample_var as s, `case` as c FROM `sample_import_var_restrict` as sivr, `sample_var` as s, `case` as c
WHERE c.case_id = '$case_id' WHERE c.case_id = '$case_id'
AND s.sample_id = c.sample_id AND s.var_id = sivr.var_id
AND s.type = 3"; AND s.sample_id = c.sample_id
AND sivr.type = 3";
$pphone = $db->GetOne($sql); $pphone = $db->GetOne($sql);
@@ -94,10 +95,11 @@ if (isset($_POST['submit']))
$import_id = $db->GetOne($sql); $import_id = $db->GetOne($sql);
//get all sample records //get all sample records
$sql = "SELECT s.var,s.val, s.type $sql = "SELECT sivr.var,s.val, sivr.type
FROM sample_var as s, `case` as c FROM `sample_import_var_restrict` as sivr, `sample_var` as s, `case` as c
WHERE c.case_id = '$case_id' WHERE c.case_id = '$case_id'
AND s.sample_id = c.sample_id"; AND s.sample_id = c.sample_id
AND s.var_id = sivr.var_id";
$rs = $db->GetAll($sql); $rs = $db->GetAll($sql);
@@ -124,14 +126,28 @@ if (isset($_POST['submit']))
//insert sample var records //insert sample var records
foreach($rs as $r) foreach($rs as $r)
{ {
$sql = "INSERT INTO `sample_var` (`sample_id`,`var`,`val`,`type`)
VALUES ('$sample_id','{$r['var']}'," . $db->qstr($_POST['v_' . $r['var']]) . ",'{$r['type']}')"; $sql = "INSERT INTO `sample_import_var_restrict` (`var`,`type`)
VALUES ('{$r['var']}','{$r['type']}')";
$db->Execute($sql); $db->Execute($sql);
$varid = $db->Insert_ID();
$sql = "INSERT INTO `sample_var` (`sample_id`,`var_id`,`val`)
VALUES ('$sample_id','$varid'," . $db->qstr($_POST['v_' . $r['var']]) . ")";
$db->Execute($sql);
} }
//Add CASEREFERREDFROM record //Add CASEREFERREDFROM record
$sql = "INSERT INTO `sample_var` (`sample_id`,`var`,`val`,`type`) $sql = "INSERT INTO `sample_import_var_restrict` (`var`,`type`)
VALUES ('$sample_id','CASEREFERREDFROM','$case_id','1')"; VALUES ('CASEREFERREDFROM','1')";
$db->Execute($sql);
$varid = $db->Insert_ID();
$sql = "INSERT INTO `sample_var` (`sample_id`,`var_id`,`val`)
VALUES ('$sample_id','$varid','$case_id')";
$db->Execute($sql); $db->Execute($sql);
@@ -212,11 +228,12 @@ if ($sc == 1)
//Create a list of sample records matching this current case //Create a list of sample records matching this current case
$sql = "SELECT sv.var,t.description,sv.type $sql = "SELECT sivr.var,t.description,sivr.type
FROM sample_var as sv, `case` as c, sample_var_type as t FROM `sample_import_var_restrict` as sivr,`sample_var` as sv, `case` as c, `sample_var_type` as t
WHERE sv.sample_id = c.sample_id WHERE c.case_id = '$case_id'
AND c.case_id = '$case_id' AND sv.sample_id = c.sample_id
AND sv.type = t.type"; AND sv.var_id = sivr.var_id
AND sivr.type = t.type";
$rs = $db->GetAll($sql); $rs = $db->GetAll($sql);

View File

@@ -154,13 +154,12 @@ else
//display sample details //display sample details
//limit to those allowed by admin //limit to those allowed by admin
$sql = "SELECT s.var,s.val $sql = "SELECT sivr.var,sv.val
FROM sample_var as s FROM `sample_var` as sv, `sample_import_var_restrict` as sivr, `case` as c
JOIN `case` as c on (c.case_id = '$case_id' and c.sample_id = s.sample_id) WHERE c.case_id = '$case_id'
JOIN `sample` as sa ON (sa.sample_id = c.sample_id) AND sv.sample_id = c.sample_id
LEFT JOIN sample_import_var_restrict as sv ON (sv.var LIKE s.var AND sa.import_id = sv.sample_import_id) AND sivr.var_id = sv.var_id
WHERE (sv.restrict IS NULL OR sv.restrict = 0)"; AND (sivr.restrict IS NULL OR sivr.restrict = 0)";
$rs = $db->GetAll($sql); $rs = $db->GetAll($sql);