]> Softwares of Agnibho - simpleipd.git/blobdiff - www/res/calc.js
Merge branch 'master' of agnibho.com:~/repo/public/simpleipd
[simpleipd.git] / www / res / calc.js
index 81ed6ec4d56b8c2156f0f40ce3cdb40fc44bb5ed..f3a972074f253a1e8602b38aec0471683d00c561 100644 (file)
@@ -9,11 +9,21 @@ function entrySort(i, j){
     return -1;
   }
 }
+function crcl(cr, bw, age, sex){
+  if(sex=="female"){
+    factor=0.85;
+  }
+  else{
+    factor=1;
+  }
+  crcl=((140-age)*bw*factor)/(72*cr);
+  return(crcl);
+}
 var io=[];
-var clinical={pr:[], rr:[], temperature:[], spo2:[], sbp:[], dbp:[], cbg:[]};
+var clinical={pr:[], rr:[], temperature:[], spo2:[], sbp:[], dbp:[], cbg:[], bw:[]};
 var reports={};
 var treatment={};
-var clinDict={pr: "Pulse Rate", rr: "Respiratory Rate", temperature: "Temperature", spo2: "SpO2", sbp: "Systolic BP", dbp: "Diastolic BP", cbg: "CBG"}
+var clinDict={pr: "Pulse Rate", rr: "Respiratory Rate", temperature: "Temperature", spo2: "SpO2", sbp: "Systolic BP", dbp: "Diastolic BP", cbg: "CBG", bw: "Body Weight"}
 var reportsDict={};
 $(document).ready(function(){
   var ctx1=$("#clinChart")[0].getContext("2d");
@@ -62,6 +72,9 @@ $(document).ready(function(){
       if(entry.cbg){
         clinical.cbg.push([stamp, entry.cbg]);
       }
+      if(entry.bw){
+        clinical.bw.push([stamp, entry.bw]);
+      }
     });
     // INTAKE-OUTPUT
     approxIn=0;
@@ -119,6 +132,9 @@ $(document).ready(function(){
         if(entry.cbg){
           clinical.cbg.push([stamp, entry.cbg]);
         }
+        if(entry.bw){
+          clinical.bw.push([stamp, entry.bw]);
+        }
       });
       Object.keys(clinical).forEach(function(i){
         clinical[i].sort(entrySort);
@@ -151,6 +167,15 @@ $(document).ready(function(){
           obj[key]=reports[key];
           return obj;
         },{});
+        try{
+          crclVal=crcl(reports["creat-report-rft"].slice(-1)[0][1], clinical.bw.slice(-1)[0][1], $("#info-age").text(), $("#info-sex").text());
+        }
+        catch(e){
+          crclVal=null;
+        }
+        if(crclVal){
+          $("#crcl").text("Creatinine Clearance: "+crclVal.toFixed(1)+" mL/min");
+        }
         Object.keys(reports).forEach(function(i){
           reports[i].sort(entrySort);
           $("#reportsVar").html($("#reportsVar").html()+"<option value="+i+">"+reportsDict[i]+"</option>");