"use strict"; /** * mplus_modal_medicalrecord */ var mplus_modal_medicalrecord = function(){ // 상속 mplus_common.call(this); // 상위 객체 생성 //var mplusPatient = new mplus_mobile_patient(); //var mplusNursing = new mplus_nursing(); //super var self = this; //==== 변수 { ==== var varResultLists = []; //==== 변수 } ==== var varGetDeviceInfo; /** * 초기화 */ this.init = function(){ //여기서 모든화면 콤보박스데이터를 집어넣자!!! 그래야지 화면이동할때 속도가 오래걸리지않음!!! //데이터 initData(); // 초기 화면 조건 구성 initCondition(); // 이벤트 초기화 addEvent(); }; //==== 초기화 설정 { ==== var initData = function(){ $("#sltMedicalRecordListSearch").val("1");//기록 목록조회 $("#sltMedicalRecordListSearch").trigger("change");//header 처리 $("#chkMedicalRecordSelfList").prop("checked" , false);//본인기록 /* * 진료기록 안드로이드 앱버전체크 후 안내 계획 폐지 //앱버전체크 var toNaiveMsg = { "type" : "command", "functionType" : "getDeviceInfo", "value" : { "callbackFn":"window.activeObj.toNativeCallbackFn" } }; */ //self.toNative(toNaiveMsg); }; this.toNativeCallbackFn = function(result){ varGetDeviceInfo = result; console.log(JSON.stringify(varGetDeviceInfo)); }; var initCondition = function(){ // 초기 화면 조건 구성 // 일자 설정 initStartEndDate(); searchMedicalRecord(); }; var searchMedicalRecord = function(){ if($("#sltMedicalRecordListSearch").val() == 1){//기록목록조회 var param = { userId:gLoginUserId, patientId:gPatientId, startDt: moment($("#txtMedicalRecordStartDt").val()).format("YYYYMMDD"), endDt: moment($("#txtMedicalRecordEndDt").val()).format("YYYYMMDD"), deptCd:gPatientDeptCd, personalRecordYn:($("#chkMedicalRecordSelfList").prop("checked") == true ? "Y" : "N" ), searchCls:gPatientTreatCls }; //console.log("TEST : " + JSON.stringify(param)); self.medical.getMediRecordList(param, processSearchMediRecordList); }else if($("#sltMedicalRecordListSearch").val() == 2){//기록내용조회 var param = { userId:gLoginUserId, patientId:gPatientId, startDt: moment($("#txtMedicalRecordStartDt").val()).format("YYYYMMDD"), endDt: moment($("#txtMedicalRecordEndDt").val()).format("YYYYMMDD"), deptCd:gPatientDeptCd, personalRecordYn:($("#chkMedicalRecordSelfList").prop("checked") == true ? "Y" : "N" ), searchCls:gPatientTreatCls }; //console.log("TEST : " + JSON.stringify(param)); self.medical.getMediRecordFormList(param, processSearchMediRecordFormList); } }; var processSearchMediRecordList = function(lists){ //console.log(JSON.stringify(lists)); varResultLists = lists; var strDisplayTemp = ""; $("#divMedicalRecordRows").empty(); for( var i = 0; i < lists.length; i++){ var medicalRecordColor = ""; if(lists[i].medicalRecordSubTitle != null && lists[i].medicalRecordSubTitle != "-"){ medicalRecordColor = "color:#C86400;"; } strDisplayTemp += "
" + "
" + "
" + ((moment(lists[i].medicalRecordDt).format("YYYY-MM-DD") != "Invalid date") ? moment(lists[i].medicalRecordDt).format("YYYY-MM-DD") : "-") + "
" + "
" + lists[i].medicalRecordFormNm + "
" + "
" + lists[i].medicalRecordSubTitle + "
" + "
" + lists[i].lastWriter + "
" + "
" + "
" ; //console.log( i + " : " + lists[i].deptNm); } $("#divMedicalRecordRows").append(strDisplayTemp); // element 추가 addEventSearchMediRecord(); // row click event 추가 }; var processSearchMediRecordFormList = function(lists){ //console.log(JSON.stringify(lists)); varResultLists = lists; var strDisplayTemp = ""; $("#divMedicalRecordRows").empty(); for( var i = 0; i < lists.length; i++){ strDisplayTemp += "
" + "
" + "
" + lists[i].medicalRecordFormNm + "
" + "
" + "
" ; //console.log( i + " : " + lists[i].deptNm); } $("#divMedicalRecordRows").append(strDisplayTemp); // element 추가 addEventSearchMediRecord(); // row click event 추가 }; var addEventSearchMediRecord = function() { $("#divMedicalRecordRows .list-group-item").off("click"); // 기존 이벤트 해제 $("#divMedicalRecordRows .list-group-item").on("click", function(e){ //진료기록 조회 리스트 검색 처리 var varMedicalRecordrowNo = ""; var varMedicalRecordSeq = ""; var varMedicalRecordFormCd = ""; if(e.currentTarget.attributes.rowNo !== undefined){ varMedicalRecordrowNo = e.currentTarget.attributes.rowNo.value; } if(e.currentTarget.attributes.medicalRecordSeq !== undefined){ varMedicalRecordSeq = e.currentTarget.attributes.medicalRecordSeq.value; } if(e.currentTarget.attributes.medicalRecordFormCd !== undefined){ varMedicalRecordFormCd = e.currentTarget.attributes.medicalRecordFormCd.value; } /* 2019 03 11 iSO일 경우 alert후 return */ /* if(gLoginUserId == "29990030"){ }else if(self.isIos()){ //console.log("iOS입니다."); self.alert("iOS에서 본 기능은 서비스 개발중입니다."); return; }else{//안드로이드일때 처리 }*/ if($("#sltMedicalRecordListSearch").val() == 1 && varMedicalRecordSeq != ""){//기록목록조회 /* var initParam = { medicalRecordFormNm:varResultLists[varMedicalRecordrowNo].medicalRecordFormNm, userId:gLoginUserId, patientId:gPatientId, deptCd:gPatientDeptCd, searchCls:gPatientTreatCls, medicalRecordSeq:varMedicalRecordSeq }; //$("#modalMedicalRecordRslt").modal("show"); //mplusModalMedicalrecorddetail.initList(initParam); */ //진료 기록 상세 조회 var sendParam = { userId:gLoginUserId, patientId:gPatientId, deptCd:gPatientDeptCd, searchCls:gPatientTreatCls, medicalRecordSeq:varMedicalRecordSeq }; //console.log(JSON.stringify(sendParam)); self.medical.getMediRecordDetail(sendParam, processMedicalRecordResult); }else if($("#sltMedicalRecordListSearch").val() == 2 && varMedicalRecordFormCd != ""){//기록내용조회 /* var initParam = { medicalRecordFormNm:varResultLists[varMedicalRecordrowNo].medicalRecordFormNm, userId:gLoginUserId, patientId:gPatientId, deptCd:gPatientDeptCd, startDt: moment($("#txtMedicalRecordStartDt").val()).format("YYYYMMDD"), endDt: moment($("#txtMedicalRecordEndDt").val()).format("YYYYMMDD"), personalRecordYn:($("#chkMedicalRecordSelfList").prop("checked") == true ? "Y" : "N" ), medicalRecordFormCd:varMedicalRecordFormCd, searchCls:gPatientTreatCls }; //$("#modalMedicalRecordRslt").modal("show"); //mplusModalMedicalrecorddetail.initContents(initParam); */ //진료 기록 내용 상세 조회 var sendParam = { userId:gLoginUserId, patientId:gPatientId, deptCd:gPatientDeptCd, startDt:moment($("#txtMedicalRecordStartDt").val()).format("YYYYMMDD"), endDt:moment($("#txtMedicalRecordEndDt").val()).format("YYYYMMDD"), personalRecordYn:($("#chkMedicalRecordSelfList").prop("checked") == true ? "Y" : "N" ), medicalRecordFormCd:varMedicalRecordFormCd, searchCls:gPatientTreatCls }; //console.log(JSON.stringify(sendParam)); self.medical.getMediRecordContentDetail(sendParam, processMedicalRecordResult); }else{ self.alert("데이터 오류입니다. 관리자에게 문의하세요."); return; } }); }; var processMedicalRecordResult = function(lists){ if(lists[0].url != null && lists !== undefined){ //$("#divMedicalRecordResult").append(lists[0].url); // element 추가 var jsonMsg = { "type":"command", "functionType":"popup", "value" : { "url" : lists[0].url, "method": "GET", // Default "GET" ** 2017-10-19 추가 "parameters": "-" // POST 인 경우만, GET 인 경우는 "url" 에 모두 붙여서 전달 ** 2017-10-19 추가 } }; self.toNative(jsonMsg); }else{ self.alert("데이터 오류입니다. 관리자에게 문의하세요."); } }; var initStartEndDate = function(){ //오늘일자 로드 var varToday = new Date(); //일요일이면 차주 가져오기 //다른 요일이면 해당 요일 처리 $("#txtMedicalRecordEndDt").val( moment(varToday).format("YYYY-MM-DD") ); varToday.setDate(varToday.getDate() - 6); $("#txtMedicalRecordStartDt").val( moment(varToday).format("YYYY-MM-DD") ); }; //==== 초기화 설정 } ==== //==== 이벤트 설정 { ==== var addEvent = function(){ //$("#btnLogout").on("click", function(){ // logout(); //}); eventColumnClick(); eventRowClick(); eventConditionClick(); }; var eventConditionClick = function(){ // 1주 버튼클릭 $("#btnMedicalRecordOneWeekSearch").off('click'); // 기존 이벤트 해제 $("#btnMedicalRecordOneWeekSearch").on('click', function(e){ var varSelDate = new Date($("#txtMedicalRecordEndDt").val()); varSelDate.setDate(varSelDate.getDate() - 6); $("#txtMedicalRecordStartDt").val( moment(varSelDate).format("YYYY-MM-DD") ); }); // 1달 버튼클릭 $("#btnMedicalRecordOneMonthSearch").off('click'); // 기존 이벤트 해제 $("#btnMedicalRecordOneMonthSearch").on('click', function(e){ var varSelDate = new Date($("#txtMedicalRecordEndDt").val()); varSelDate.setDate(varSelDate.getDate() - 1); varSelDate.setMonth(varSelDate.getMonth() - 1); $("#txtMedicalRecordStartDt").val( moment(varSelDate).format("YYYY-MM-DD") ); }); // 3달 버튼클릭 $("#btnMedicalRecordThreeMonthSearch").off('click'); // 기존 이벤트 해제 $("#btnMedicalRecordThreeMonthSearch").on('click', function(e){ var varSelDate = new Date($("#txtMedicalRecordEndDt").val()); varSelDate.setDate(varSelDate.getDate() - 1); varSelDate.setMonth(varSelDate.getMonth() - 3); $("#txtMedicalRecordStartDt").val( moment(varSelDate).format("YYYY-MM-DD") ); }); // 조회버튼 $("#btnMedicalRecordSearch").off('click'); // 기존 이벤트 해제 $("#btnMedicalRecordSearch").on('click', function(e){ //로우 초기화 $("#divMedicalRecordRows").empty(); searchMedicalRecord(); }); $("#sltMedicalRecordListSearch").off("change"); $("#sltMedicalRecordListSearch").on("change", function(){ var strDisplayTemp = ""; //header변경 if($("#sltMedicalRecordListSearch").val() == 1){//기록목록조회 $("#divMedicalRecordListResultHeader").empty(); strDisplayTemp = "
" + "
" + "
" + "

접수일

" + "
" + "
" + "

서식명

" + "
" + "
" + "

부제목

" + "
" + "
" + "

최종작성

" + "
" + "
" + "
" ; }else if($("#sltMedicalRecordListSearch").val() == 2){//기록내용조회 $("#divMedicalRecordListResultHeader").empty(); strDisplayTemp = "
" + "
" + "
" + "

해당기간 기록내용조회 선택

" + "
" + "
" + "
" ; } $("#divMedicalRecordListResultHeader").append(strDisplayTemp); searchMedicalRecord(); }); }; var eventColumnClick = function(){ }; var eventRowClick = function(){ }; //==== 이벤트 설정 } ==== //==== 서비스 실행 { ==== //==== 서비스 실행 { ==== };