123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303 |
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
- <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
- <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
- <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <jsp:include page="${data._INCLUDE}/header.jsp"></jsp:include>
- <link rel="stylesheet" href="/resources/bower_components/mdi/css/materialdesignicons.min.css">
- <script>
- function ajaxErrorHandler(request, status, error){
- if (request.status === 0) {
- alert('Not connect.\n Verify Network.');
- }
- else if (request.status == 400) {
- alert('Server understood the request, but request content was invalid. [400]' + '\n\n' + request.responseText);
- }
- else if (request.status == 401) {
- alert('Unauthorized access. [401]' + '\n\n' + request.responseText);
- }
- else if (request.status == 403) {
- alert('Forbidden resource can not be accessed. [403]' + '\n\n' + request.responseText);
- }
- else if (request.status == 404) {
- alert('Requested page not found. [404]' + '\n\n' + request.responseText);
- }
- else if (request.status == 500) {
- alert('Internal server error. [500]' + '\n\n' + request.responseText);
- }
- else if (request.status == 503) {
- alert('Service unavailable. [503]' + '\n\n' + request.responseText);
- }
- else if (status === 'parsererror') {
- alert('Requested JSON parse failed. [Failed]' + '\n\n' + request.responseText);
- }
- else if (status === 'timeout') {
- alert('Time out error. [Timeout]' + '\n\n' + request.responseText);
- }
- else if (status === 'abort') {
- alert('Ajax request aborted. [Aborted]' + '\n\n' + request.responseText);
- }
- else {
- alert('Uncaught Error.' + '\n\n' + request.responseText);
- }
- }
- function saveDisplayItem() {
- var centerCode = "${data._SES_CENTER_CODE}";
-
- var temperatureDisplayYN = $('input:checkbox[id="displayItemTemperature"]').is(":checked") == true ? "Y" : "N";
- var bloodPressureDisplayYN = $('input:checkbox[id="displayItemBloodPressure"]').is(":checked") == true ? "Y" : "N";
- var pulseRateDisplayYN = $('input:checkbox[id="displayItemPulseRate"]').is(":checked") == true ? "Y" : "N";
- var oxygenSaturationDisplayYN = $('input:checkbox[id="displayItemOxygenSaturation"]').is(":checked") == true ? "Y" : "N";
- var bloodSugarDisplayYN = $('input:checkbox[id="displayItemBloodSugar"]').is(":checked") == true ? "Y" : "N";
- var symptomDisplayYN = $('input:checkbox[id="displayItemSymptom"]').is(":checked") == true ? "Y" : "N";
- var params = {
- centerCode: centerCode,
- temperatureDisplayYN: temperatureDisplayYN,
- bloodPressureDisplayYN: bloodPressureDisplayYN,
- pulseRateDisplayYN: pulseRateDisplayYN,
- oxygenSaturationDisplayYN: oxygenSaturationDisplayYN,
- bloodSugarDisplayYN: bloodSugarDisplayYN,
- symptomDisplayYN: symptomDisplayYN,
- };
- $.ajax({
- url : "./api/configuration/display",
- data : params,
- method : "PATCH",
- dataType : "json",
- success : function( datas ){
- console.log("datas");
- },
- error : ajaxErrorHandler
- })
- .done( function(){
- });
- }
- function saveAlarmValue() {
- var centerCode = "${data._SES_CENTER_CODE}";
- var temperatureThreshold = parseFloat($("#temperatureThreshold").val());
- var systolicBloodPressureThresholdMin = parseInt($("#systolicBloodPressureThresholdMin").val(), 10);
- var systolicBloodPressureThresholdMax = parseInt($("#systolicBloodPressureThresholdMax").val(), 10);
- var diastolicBloodPressureThresholdMin = parseInt($("#diastolicBloodPressureThresholdMin").val(), 10);
- var diastolicBloodPressureThresholdMax = parseInt($("#diastolicBloodPressureThresholdMax").val(), 10);
- var pulseRateThresholdMin = parseInt($("#pulseRateThresholdMin").val(), 10);
- var pulseRateThresholdMax = parseInt($("#pulseRateThresholdMax").val(), 10);
- var oxygenSaturationThreshold = parseInt($("#oxygenSaturationThreshold").val(), 10);
- var bloodSugarThresholdMin = parseInt($("#bloodSugarThresholdMin").val(), 10);
- var bloodSugarThresholdMax = parseInt($("#bloodSugarThresholdMax").val(), 10);
- var params = {
- centerCode: centerCode,
- temperatureThreshold, temperatureThreshold,
- systolicBloodPressureThresholdMin, systolicBloodPressureThresholdMin,
- systolicBloodPressureThresholdMax, systolicBloodPressureThresholdMax,
- diastolicBloodPressureThresholdMin, diastolicBloodPressureThresholdMin,
- diastolicBloodPressureThresholdMax, diastolicBloodPressureThresholdMax,
- pulseRateThresholdMin, pulseRateThresholdMin,
- pulseRateThresholdMax, pulseRateThresholdMax,
- oxygenSaturationThreshold, oxygenSaturationThreshold,
- bloodSugarThresholdMin, bloodSugarThresholdMin,
- bloodSugarThresholdMax, bloodSugarThresholdMax,
- }
- $.ajax({
- url : "./api/configuration/threshold",
- data : params,
- method : "PATCH",
- dataType : "json",
- success : function( datas ){
-
- },
- error : ajaxErrorHandler
- })
- .done( function(){
- });
- }
- $(document).ready(function() {
- $(document).on('click','#displaySave',function(){
- var checkCount = $('input:checkbox[name="displayItem"]:checked').length;
- if (checkCount == 0) {
- alert("대시보드에는 하나 이상의 항목을 표시하여야 합니다.");
- return;
- }
- const result = confirm("대시보드 표시항목을 선택하신 항목으로 설정합니다.\n\n이 항목은 해당 생활치료센터 의료진 화면에 즉시 적용됩니다.");
- if(result){
- saveDisplayItem();
- }
- });
- $(document).on('click','#alarmSave',function(){
- const result = confirm("알람 표시 설정을 변경하신 값으로 설정합니다.\n\n설정값의 알람 적용은 현재시간 이후로 수집되는 데이터에 한하여 적용되오니 참고하시기 바랍니다.");
- if(result){
- saveAlarmValue();
- }
- });
-
- });
- </script>
- </head>
- <body>
- <form id="nonface" name="nonface" action="https://lemon.medihere.com/app/vc">
- </form>
- <form id="hiddenForm">
- <input type="hidden" id="pId" name="pId" value='<c:out value="${info.id}" />'>
- <input type="hidden" id="pName" name="pName" value='<c:out value="${info.patientName}" />'>
- <input type="hidden" id="roomId" name="roomId" value='<c:out value="${info.roomNumber}" />'>
- </form>
- <div class="wrapper">
- <jsp:include page="${data._INCLUDE}/sidebar.jsp"></jsp:include>
- <div class="main">
- <jsp:include page="${data._INCLUDE}/top.jsp"></jsp:include>
- <main class="content">
- <div class="container-fluid p-0">
- <!-- 환지관리 START -->
- <div class="row">
- <div class="col-12 col-lg-6">
- <h1 class="h3 mb-3">
- 진료관리 설정
- </h1>
- </div>
- <div class="col-12 col-lg-6 text-right">
- <nav aria-label="breadcrumb">
- <ol class="breadcrumb">
- <li class="breadcrumb-item"><a href="javscript:;">Home</a></li>
- <li class="breadcrumb-item active">진료관리 설정</li>
- </ol>
- </nav>
- </div>
- </div>
- <div class="row">
- <div class="col-12">
- <div class="card">
- <div class="card-body">
- <h4 class="mb-4 subTitle display"><i class="mdi mdi-desktop-mac-dashboard"></i> 대시보드 표시 항목 설정</h4>
- <h5 class="infoCaption mb-4">우리 생활치료센터의 대시보드 화면에서 표시되는 V/S 항목을 설정 할 수 있습니다.</h5>
- <div class="row displaySetting">
- <div class="col-lg-4 bodyTitle mb-4">
- <i class="mdi mdi-check"></i>표시 항목 선택
- </div>
- <div class="col-lg-8">
- <ul class="displayList">
- <c:set var="temperatureCheck" value="${config.temperatureDisplayYN == 'Y' ? 'checked' : ''}" />
- <c:set var="bloodPressureCheck" value="${config.bloodPressureDisplayYN == 'Y' ? 'checked' : ''}" />
- <c:set var="pulseRateCheck" value="${config.pulseRateDisplayYN == 'Y' ? 'checked' : ''}" />
- <c:set var="oxygenSaturationCheck" value="${config.oxygenSaturationDisplayYN == 'Y' ? 'checked' : ''}" />
- <c:set var="bloodSugarCheck" value="${config.bloodSugarDisplayYN == 'Y' ? 'checked' : ''}" />
- <c:set var="symptomCheck" value="${config.symptomDisplayYN == 'Y' ? 'checked' : ''}" />
- <li class="displayItem"><label><input id="displayItemTemperature" type="checkbox" name="displayItem" value="Y" <c:out value="${temperatureCheck}" />><span>체온</span></label></li>
- <li class="displayItem"><label><input id="displayItemBloodPressure" type="checkbox" name="displayItem" value="Y" <c:out value="${bloodPressureCheck}" />><span>혈압</span></label></li>
- <li class="displayItem"><label><input id="displayItemPulseRate" type="checkbox" name="displayItem" value="Y" <c:out value="${pulseRateCheck}" />><span>맥박</span></label></li>
- <li class="displayItem"><label><input id="displayItemOxygenSaturation" type="checkbox" name="displayItem" value="Y" <c:out value="${oxygenSaturationCheck}" />><span>산소포화도</span></label></li>
- <li class="displayItem"><label><input id="displayItemBloodSugar" type="checkbox" name="displayItem" value="Y" <c:out value="${bloodSugarCheck}" />><span>혈당</span></label></li>
- <li class="displayItem"><label><input id="displayItemSymptom" type="checkbox" name="" value="Y" <c:out value="${symptomCheck}" />><span>임상증상</span></label></li>
- </ul>
- </div>
- </div>
- <div class="text-right">
- <button id="displaySave" type="button" class="btn btn-primary">저장</button>
- </div>
- <hr>
- <h4 class="mb-4 subTitle alarm"><i class="mdi mdi-bell-alert-outline"></i> V/S 임계치 설정</h4>
- <h5 class="infoCaption mb-4">우리 생활치료센터에서 알람으로 표시할 V/S 임계치 값을 설정 할 수 있습니다.</h5>
- <!-- <div class="row alarmSetting">
- <div class="col-lg-4 bodyTitle mb-4">
- <i class="mdi mdi-check"></i>알람 사용 선택
- </div>
- <div class="col-lg-8">
- <ul class="alarmList">
- <li class="alarmItem"><label><input type="checkbox" name="alarmUsing" value="fever" checked><span>체온</span></label></li>
- <li class="alarmItem"><label><input type="checkbox" name="alarmUsing" value="bloodPressure" checked><span>혈압</span></label></li>
- <li class="alarmItem"><label><input type="checkbox" name="alarmUsing" value="pulse" checked><span>맥박</span></label></li>
- <li class="alarmItem"><label><input type="checkbox" name="alarmUsing" value="oxygen" checked><span>산소포화도</span></label></li>
- <li class="alarmItem"><label><input type="checkbox" name="alarmUsing" value="sugar" checked><span>혈당</span></label></li>
- </ul>
- </div>
- </div> -->
- <ul class="legend">
- <c:set var="temperatureThreshold" value="${config.temperatureThreshold}" />
- <c:set var="systolicBloodPressureThresholdMin" value="${config.systolicBloodPressureThresholdMin}" />
- <c:set var="systolicBloodPressureThresholdMax" value="${config.systolicBloodPressureThresholdMax}" />
- <c:set var="diastolicBloodPressureThresholdMin" value="${config.diastolicBloodPressureThresholdMin}" />
- <c:set var="diastolicBloodPressureThresholdMax" value="${config.diastolicBloodPressureThresholdMax}" />
- <c:set var="pulseRateThresholdMin" value="${config.pulseRateThresholdMin}" />
- <c:set var="pulseRateThresholdMax" value="${config.pulseRateThresholdMax}" />
- <c:set var="oxygenSaturationThreshold" value="${config.oxygenSaturationThreshold}" />
- <c:set var="bloodSugarThresholdMin" value="${config.bloodSugarThresholdMin}" />
- <c:set var="bloodSugarThresholdMax" value="${config.bloodSugarThresholdMax}" />
- <li class="row fever">
- <div class="col-lg-4">체온</div>
- <div class="col-lg-8">
- <input id="temperatureThreshold" type="number" class="form-control w120" placeholder="체온" value="<c:out value="${temperatureThreshold}" />"> ℃ 이상시 알람
- </div>
- </li>
- <li class="row bloodPressure">
- <div class="col-lg-4">수축기 혈압</div>
- <div class="col-lg-8">
- <input id="systolicBloodPressureThresholdMin" type="number" class="form-control w120" placeholder="저혈압" value="<c:out value="${systolicBloodPressureThresholdMin}" />"> 이하
- <span>또는</span>
- <input id="systolicBloodPressureThresholdMax" type="number" class="form-control w120" placeholder="고혈압" value="<c:out value="${systolicBloodPressureThresholdMax}" />"> 이상시 알람
-
- </div>
- </li>
- <li class="row bloodPressure">
- <div class="col-lg-4">이완기 혈압</div>
- <div class="col-lg-8">
- <input id="diastolicBloodPressureThresholdMin" type="number" class="form-control w120" placeholder="저혈압" value="<c:out value="${diastolicBloodPressureThresholdMin}" />"> 이하
- <span>또는</span>
- <input id="diastolicBloodPressureThresholdMax" type="number" class="form-control w120" placeholder="고혈압" value="<c:out value="${diastolicBloodPressureThresholdMax}" />"> 이상시 알람
- </div>
- </li>
- <li class="row pulse">
- <div class="col-lg-4">맥박</div>
- <div class="col-lg-8">
- <input id="pulseRateThresholdMin" type="number" class="form-control w120" placeholder="최저맥박" value="<c:out value="${pulseRateThresholdMin}" />"> 이하
- <span>또는</span>
- <input id="pulseRateThresholdMax" type="number" class="form-control w120" placeholder="최고맥박" value="<c:out value="${pulseRateThresholdMax}" />"> 이상시 알람
- </div>
- </li>
- <li class="row oxygen">
- <div class="col-lg-4">산소포화도</div>
- <div class="col-lg-8">
- <input id="oxygenSaturationThreshold" type="number" class="form-control w120" placeholder="산소포화도" value="<c:out value="${oxygenSaturationThreshold}" />"> % 이하시 알람
- </div>
- </li>
- <li class="row sugar">
- <div class="col-lg-4">혈당</div>
- <div class="col-lg-8">
- <input id="bloodSugarThresholdMin" type="number" class="form-control w120" placeholder="저혈당" value="<c:out value="${bloodSugarThresholdMin}" />"> 이하
- <span>또는</span>
- <input id="bloodSugarThresholdMax" type="number" class="form-control w120" placeholder="고혈당" value="<c:out value="${bloodSugarThresholdMax}" />"> 이상시 알람
- </div>
- </li>
- </ul>
- </div>
- <div class="text-right">
- <button id="alarmSave" type="button" class="btn btn-primary">저장</button>
- </div>
- </div>
- </div>
- </div>
- <!-- 환자관리 END -->
- </div>
- </main>
- <jsp:include page="${data._INCLUDE}/footer.jsp"></jsp:include>
- </div>
- </div>
- </body>
- </html>
|