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
// use sample_import_var_restrict to limit
$sql = "SELECT s.var,s.val
FROM sample_var as s
JOIN `case` as c on (c.case_id = '$case_id' and c.sample_id = s.sample_id)
JOIN `sample` as sa ON (sa.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)
WHERE (sv.restrict IS NULL OR sv.restrict = 0)";
$sql = "SELECT sivr.var,sv.val
FROM `sample_var` as sv, `sample_import_var_restrict` as sivr, `case` as c
WHERE c.case_id = '$case_id'
AND sv.sample_id = c.sample_id
AND sivr.var_id = sv.var_id
AND (sivr.restrict IS NULL OR sivr.restrict = 0)";
$rs = $db->GetAll($sql);

View File

@@ -97,10 +97,11 @@ if (isset($_POST['firstname']))
$fieldsarray["{SID}"]=$fieldsarray["{SURVEYID}"]=$lime_sid;
//$fieldsarray["{SURVEYNAME}"]=$thissurvey["surveyls_title"];
$sql = "SELECT s.var,s.val
FROM `sample_var` as s, `case` as c
$sql = "SELECT sivr.var,sv.val
FROM `sample_var` as sv, `sample_import_var_restrict` as sivr, `case` as c
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);
@@ -317,11 +318,11 @@ $sc = $db->GetOne($sql);
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
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";
$rs = $db->GetRow($sql);

View File

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

View File

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