]> Softwares of Agnibho - simpleipd.git/commitdiff
Added General Measures
authorAgnibho Mondal <mondal@agnibho.com>
Thu, 10 Jun 2021 20:34:05 +0000 (02:04 +0530)
committerAgnibho Mondal <mondal@agnibho.com>
Thu, 10 Jun 2021 20:34:05 +0000 (02:04 +0530)
data.schema.sql
lib/db.php
www/discharge.php
www/forms/advice.schema.json [new file with mode: 0644]
www/printdata.php
www/treatment.php

index 1be45728e8672274cf893cc8dda87dbab632ef0c..34eaf0de3a6583db97c3f71226bde7126ee1b43a 100644 (file)
@@ -1,3 +1,8 @@
+CREATE TABLE advice(
+pid int,
+time int,
+data text
+);
 CREATE TABLE death(
 pid int,
 time int,
index 5aadf0c8fab45eae22647ba433443bf042f3c705..9cdffbcb3f5b315f82bc0a7d35a647d82e75e8df 100644 (file)
@@ -75,6 +75,24 @@ class DB extends SQLite3 {
     $stmt->execute();
     $log->log($pid, "history", json_encode($post));
   }
+  function advice($post, $pid){
+    global $log;
+    if(!checkAccess("treatment", "dbSet")) return false;
+    $query=$this->prepare("SELECT count(rowid) FROM advice WHERE pid=:pid");
+    $query->bindValue(":pid", $pid);
+    $exist=$query->execute();
+    if($exist->fetchArray()[0]==0){
+      $stmt=$this->prepare("INSERT INTO advice (pid,time,data) VALUES (:pid,:time,:data);");
+    }
+    else{
+      $stmt=$this->prepare("UPDATE advice SET pid=:pid,time=:time,data=:data WHERE pid=:pid;");
+    }
+    $stmt->bindValue(":pid", $pid);
+    $stmt->bindValue(":time", time());
+    $stmt->bindValue(":data", json_encode($post));
+    $stmt->execute();
+    $log->log($pid, "advice", json_encode($post));
+  }
   function addPhysician($post, $pid){
     global $log;
     if(!checkAccess("physician", "dbSet")) return false;
@@ -294,7 +312,7 @@ class DB extends SQLite3 {
     $result=$stmt->execute();
     return($result);
   }
-  function getAdvice($pid){
+  function getDischargeAdvice($pid){
     global $log;
     if(!checkAccess("discharge", "dbGet")) return false;
     $stmt=$this->prepare("SELECT rowid,* FROM discharge WHERE pid=:pid;");
@@ -445,6 +463,14 @@ class DB extends SQLite3 {
     $result=$stmt->execute();
     return($result);
   }
+  function getAdvice($pid){
+    global $log;
+    if(!checkAccess("treatment", "dbGet")) return false;
+    $stmt=$this->prepare("SELECT data FROM advice WHERE pid=:pid;");
+    $stmt->bindValue(":pid", $pid);
+    $result=$stmt->execute();
+    return($result);
+  }
   function getData($pid, $id, $cat){
     global $log;
     if($cat=="physician"){
index ceae377de9479e9b2fe1f1aaa6010a32220e6455..fc36b154c5dd51a02837d3ab76bf238f73d01c94 100644 (file)
@@ -13,7 +13,7 @@ if(!empty($_GET["pid"])){
   elseif(!empty($_POST["drug"])){
     $db->addAdvice($pid, $_POST["drug"], $_POST["dose"], $_POST["route"], $_POST["frequency"], $_POST["duration"], $_POST["extra_note"]);
   }
-  $list=$db->getAdvice($pid);
+  $list=$db->getDischargeAdvice($pid);
   $view="<form method='post' id='delete'></form>";
   $view=$view."<table class='table'>";
   $view=$view."<tr><th>Drug</th><th>Dose</th><th>Route</th><th>Frequency</th><th>Duration</th><th>Note</th></tr>";
diff --git a/www/forms/advice.schema.json b/www/forms/advice.schema.json
new file mode 100644 (file)
index 0000000..f3382e1
--- /dev/null
@@ -0,0 +1,35 @@
+{
+    "$schema": "http://json-schema.org/draft/2020-12/schema",
+    "title": "advice",
+    "description": "General Measures",
+    "type": "object",
+
+    "properties": {
+        "diet": {
+            "description": "Diet",
+            "type": "string"
+        },
+        "rt_interval": {
+            "description": "RT Feed Interval",
+            "type": "string"
+        },
+        "temp_interval": {
+            "description": "Temperature Interval",
+            "type": "string"
+        },
+        "cbg_interval": {
+            "description": "CBG Interval",
+            "type": "string"
+        },
+        "posture_interval": {
+            "description": "Posture Change Interval",
+            "type": "string"
+        },
+        "other": {
+            "description": "Other Advices",
+            "type": "string",
+            "type": "textarea"
+        }
+    },
+    "required": ["diet"]
+}
index 5315f738d35e4b66f86d728567ca7000f568b9ab..60178f25d17892e83807b66657e84eef532170f6 100644 (file)
@@ -44,7 +44,7 @@ if($_GET["pid"]){
     }
     $treatments=$treatments."<li>".$t["drug"]." ".$t["dose"]." ".$t["route"]." ".$t["frequency"]." ".$start." ".$end." ".$addl;
   }
-  $dischargeArray=$db->getAdvice($pid);
+  $dischargeArray=$db->getDischargeAdvice($pid);
   while($t=$dischargeArray->fetchArray()){
     $discharge=$discharge."<li>".$t["drug"]." ".$t["dose"]." ".$t["route"]." ".$t["frequency"]." for ".$t["duration"]." ".$t["addl"];
   }
index 46357a177d4c7de41cbf5c79fe799710b2cf7aab..a5426baf21a5cb683ef3101dde78e21ad9838216 100644 (file)
@@ -19,9 +19,13 @@ if(!empty($_GET["pid"])){
   elseif(!empty($_POST["delete"])){
     $db->deleteDrug($_POST["delete"]);
   }
+  elseif(!empty($_POST["diet"])){
+    $db->advice($_POST, $pid);
+  }
   elseif(!empty($_POST["drug"])){
     $db->addDrug($pid, $_POST["drug"], $_POST["dose"], $_POST["route"], $_POST["frequency"], $_POST["date"], $_POST["time"], $_POST["duration"], $_POST["extra_note"]);
   }
+  $advice=$db->getAdvice($pid)->fetchArray()["data"];
   $list=$db->getDrugs($pid);
   $view="";
   while($drug=$list->fetchArray()){
@@ -56,6 +60,7 @@ if(!empty($_GET["pid"])){
     $view=$view."<tr class='".$omit." drug-entry' data-drug='".$drug["drug"]."' data-dose='".$drug["dose"]."' data-route='".$drug["route"]."' data-frequency='".$drug["frequency"]."' data-duration='".$drug["duration"]."' data-addl='".$drug["addl"]."'><td>".$drug["drug"]."</td><td>".$drug["dose"]."</td><td>".$drug["route"]."</td><td>".$drug["frequency"]."</td><td>".date("M j", $drug["start"]).$end."</td><td>".$drug["duration"]."</td><td>".$drug["addl"]."</td><td>".$last."</td><td><button type='submit' class='btn btn-success nomit confirm' name='give' value='".$drug["rowid"]."' form='administer' ".$omit." ".checkAccess("nursing", "form").">Give</button><button type='submit' class='btn btn-warning nomit confirm' name='omit' value='".$drug["rowid"]."' form='omitter' ".$omit." ".checkAccess("treatment", "form").">Omit</button><button type='submit' class='btn btn-secondary omit confirm' name='delete' value='".$drug["rowid"]."' form='delete' ".$omit." ".checkAccess("treatment", "form").">Delete</button></td><td class='copier'></td></tr>";
   }
   $form=schema2form("forms/drugs.schema.json");
+  $form2=schema2form("forms/advice.schema.json", null, null, null, json_decode($advice));
   if(checkAccess("treatment")=="all" && $db->getStatus($pid)->fetchArray()["status"]=="admitted"){
     $hideForm="";
   }
@@ -74,10 +79,17 @@ if(!empty($_GET["pid"])){
     <div class="container">
       <?php include(CONFIG_LIB."top.php");?>
       <?php echo getInfo($pid);?>
+      <div class="card mb-4">
+        <div class="card-body">
+          <h4 class="card-title">Advice</h4>
+          <?php echo viewData($advice);?>
+          <a id="to-form-advice" href="#forms" class="btn btn-primary float-right mb-2">Edit General Measures</a>
+        </div>
+      </div>
       <div class="card mb-4">
         <div class="card-body">
           <h4 class="card-title">Medicine List</h4>
-          <a href="#drug-form" class="btn btn-primary float-right mb-2">Add New Drug</a>
+          <a id="to-form-drug" href="#forms" class="btn btn-primary float-right mb-2">Add New Drug</a>
           <form method='post' id='omitter'>
             <input type="hidden" name="date">
             <input type="hidden" name="time">
@@ -96,13 +108,34 @@ if(!empty($_GET["pid"])){
           </table>
         </div>
       </div>
-      <div <?php echo $hideForm;?> id="drug-form">
-        <?php echo $form;?>
+      <div <?php echo $hideForm;?>>
+        <ul class="nav nav-tabs" id="form-navs" rold="tablist">
+          <li class="nav-item" role="presentation">
+            <a class="nav-link active" id="nav-drug" data-toggle="tab" href="#form-drug" role="tab" aria-controls="form-drug" aria-selected="true">Add Drug</a>
+          </li>
+          <li class="nav-item" role="presentation">
+            <a class="nav-link" id="nav-advice" data-toggle="tab" href="#form-advice" role="tab" aria-controls="form-advice" aria-selected="false">General Measures</a>
+          </li>
+        </ul>
+        <div class="tab-content" id="forms">
+          <div class="tab-pane show active" id="form-drug" role="tabpanel" aria-labelledby="nav-drug-tab">
+            <?php echo $form;?>
+          </div>
+          <div class="tab-pane" id="form-advice" role="tabpanel" aria-labelledby="nav-advice-tab">
+            <?php echo $form2;?>
+          </div>
+        </div>
       </div>
     </div>
     <?php include(CONFIG_LIB."foot.php");?>
 <script>
 $(document).ready(function(){
+  $("#to-form-drug").click(function(){
+    $("#nav-drug").tab("show");
+  });
+  $("#to-form-advice").click(function(){
+    $("#nav-advice").tab("show");
+  });
   $(".drug-entry").each(function(){
     if($(this).find("[name=omit]").is(":visible") || $(this).find("[name=delete]").is(":visible")){
       $(this).find(".copier").html("<button class='btn btn-outline-secondary btn-copy'>Copy</button>");