Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <link rel="stylesheet" href="stylesheet.css" id="pagestyle" />
- <title>Ulkoiset Potilastiedot</title>
- <script src="./date.js"></script>
- <script src="./moment.min.js"></script>
- <script src="./jquery-3.1.0.min.js"></script>
- <script type="text/javascript">
- //Global variables that contain patient content
- var diagnostic_content = ""
- var medicational_content = ""
- var patient_content = ""
- var risk_content = ""
- var doctor_content = ""
- //Utility functions:
- function init() {
- var htunnus = getQueryVariable("hetu");
- if (!htunnus)
- htunnus = "271046-667V";
- $('#page_headline').html("Potilastiedot tunnukselle " + htunnus);
- get_data(htunnus)
- }
- function getQueryVariable(variable) {
- var query = window.location.search.substring(1);
- var vars = query.split("&");
- for (var i = 0; i < vars.length; i++) {
- var pair = vars[i].split("=");
- if (pair[0] == variable) {
- return pair[1];
- }
- }
- return (false);
- }
- function parse_json_content(data) {
- console.log(data)
- for(let i = 0; i < data.total; i++)
- {
- let type = data.entry[i].resource.resourceType
- console.log("Type of entry: " + type)
- switch(type)
- {
- case "Patient":
- let patient_name = data.entry[i].resource.name[0].text
- let phoneNumber = "undefined"
- let address = data.entry[i].resource.address[0].line[0]
- let postalCode = data.entry[i].resource.address[0].postalCode
- let city = data.entry[i].resource.address[0].city
- patient_content += "<div class=\"patient_info\">Perustiedot: " + patient_name
- patient_content += ", " + address + ", " + postalCode + " " + city
- patient_content += " " + phoneNumber + "</div>"
- break;
- case "AllergyIntolerance":
- risk_content = "<div class=\"subinfo\">" + data.entry[i].resource.substance.coding[0].display.replace(/\s+/g, ' ') + "</div>"
- break;
- case "Condition":
- if(data.entry[i].resource.clinicalStatus == "Active")
- {
- let date_diagnosed = moment(data.entry[i].resource.onsetDateTime.split("+")[0])
- let condition = data.entry[i].resource.code.coding[0].display
- let diagnosed = date_diagnosed.format('DD.MM.YYYY')
- diagnostic_content += "<div class=\"info\">" + condition + "</div>"
- diagnostic_content += "<div class=\"subinfo\">Diagnosoitu: " + diagnosed + "</div><br>"
- }
- break;
- case "MedicationOrder":
- let medication = data.entry[i].resource.medicationCodeableConcept.coding[0].display
- asdf = moment(data.entry[i].resource.dateWritten.split("+")[0])
- let date_start = moment(data.entry[i].resource.dateWritten.split("+")[0])
- let date_written = date_start.format('DD.MM.YYYY')
- let date_end = moment(data.entry[i].resource.dateEnded.split("+")[0])
- let date_ended = date_end.format('DD.MM.YYYY')
- let active = ""
- if(date_end.diff(moment(), "days", true) > 0) {
- active = "Kyllä"
- } else {
- active = "Ei"
- }
- medicational_content += "<div class=\"info\">" + medication + "</div>"
- medicational_content += "<div class=\"subinfo\">Määrätty: " + date_written + "</div>"
- medicational_content += "<div class=\"subinfo\">Päättyy: " + date_ended + "</div>"
- medicational_content += "<div class=\"subinfo\">Voimassa: " + active + "</div><br>"
- break;
- case "Practitioner":
- let doctor_name = data.entry[i].resource.name.text
- doctor_content = "<div class=\"doctor_info\">Vastaava lääkäri: " + doctor_name + "</div>"
- break;
- default:
- break;
- }
- }
- if(diagnostic_content == "")
- {
- diagnostic_content = "No active diagnoses present"
- }
- diagnostic_content = "<div class=\"subtitle\">Diagnoosit</div><br>" + diagnostic_content
- medicational_content = "<div class=\"subtitle\">Lääkitykset</div><br>" + medicational_content
- risk_content = "<div class=\"subtitle\">Riskit</div><br>" + risk_content
- }
- function get_data(id) {
- $.when(
- // Get the Patient Data
- $.ajax({
- type: "GET",
- url: "http://web.testlab.local:57773/csp/healthshare/hsaccess/fhir/Bundle/" + id,
- data: {
- CacheUserName: "intersystems",
- CachePassword: "Qwerty1!"
- },
- dataType: 'json',
- success: function(data) {
- console.log("Got a response!")
- parse_json_content(data);
- }
- })
- ).then(function() {
- // All is ready now, so...
- console.log("All is ready. Lets populate the page!");
- $('#resultarea_for_patient').html(patient_content).hide().fadeIn(2000);
- setTimeout(function() {
- $('#resultarea_for_doctor').hide().html(doctor_content).fadeIn(2000);
- }, 200);
- setTimeout(function() {
- $('#resultarea_for_diagnoses').hide().html(diagnostic_content).fadeIn(2000);
- }, 300);
- setTimeout(function() {
- $('#resultarea_for_medication').hide().html(medicational_content).fadeIn(2000);
- }, 400);
- setTimeout(function() {
- $('#resultarea_for_risks').hide().html(risk_content).fadeIn(2000);
- }, 600);
- });
- }
- window.onload = init;
- </script>
- </head>
- <body>
- <div class="headline" id="page_headline"></div>
- <div id="resultarea_for_patient"></div>
- <div id="resultarea_for_doctor"></div><hr>
- <div id="resultarea_for_diagnoses"></div>
- <div id="resultarea_for_medication"></div>
- <div id="resultarea_for_risks"></div>
- <hr>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement