123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765 |
- "use strict";
- /**
- * mplus_safety_bleeding
- */
- var mplus_safety_bleeding = function() {
- console.log("Start----------");
- // 상속
- mplus_common.call(this);
- console.log("End----------");
- // 상위 객체 생성
- //var mplusPatient = new mplus_mobile_patient();
- //var mplusNursing = new mplus_nursing();
- //super
- var self = this;
- //==== 변수 { ====
- // column 정렬의 토글 상태 제어용 : 0: not selected, 1:오름차순, 2:내림차순
- var varToggleCol1 = 0;
- var varToggleCol2 = 0;
- var varToggleCol3 = 0;
- var varToggleCol4 = 0;
- var varToggleCol5 = 0;
- var varToggleCol6 = 0;
- var varToggleCol7 = 0;
- var varToggleCol8 = 0;
- var varResultLists = [];
- var varSearchCls = "OP"; // 조회구분(I:입원, O:외래, E:응급, OP:수술, T:시술, C:협진)
- var varSearchDateGap = 2; // 날짜검색 간격
- //투약번호 Length처리
- var inputBleedingLength = 0;
- //==== 변수 } ====
- /**
- * 초기화
- */
- this.init = function() {
- //여기서 모든화면 콤보박스데이터를 집어넣자!!! 그래야지 화면이동할때 속도가 오래걸리지않음!!!
- // 접근 권한 체크
- checkAccessPermission();
- // 초기 화면 조건 구성
- initCondition();
- // 이벤트 초기화
- addEvent();
- // 환자 검색 실행 및 환자 정보 화면 출력
- //searchPatient();
- $("#txtBleedingPatientSearch").focus();
- };
- //==== 접근 권한 체크 { ====
- var checkAccessPermission = function() {
- //if( !self.common.checkAccessJobKind( "1000")){
- // self.alertTrue("접근 권한이 없습니다.", self.common.gotoDefaultHomePage);
- //}
- //if( !self.common.checkAccessUserAuth( "01")){
- // self.alertTrue("접근 권한이 없습니다.", self.common.gotoDefaultHomePage);
- //}
- //self.common.disableElements( $("#myModalBtn"));
- };
- //==== 접근 권한 체크 } ====
- //==== 초기화 설정 { ====
- var initCondition = function() {
- // 초기 화면 조건 구성
- //환자정보 초기화
- initPatientInfo();
- // 종료 날짜를 현재 날짜로 등록
- var varCurDate = new Date();
- var strCurDate = self.util.toDate(new Date());
- $("#dateBleedingEndDt").val(strCurDate);
- // 시작 날짜를 날짜 검색 간격 전 날짜를 등록
- var var2DaysAgo = varCurDate;
- var2DaysAgo.setDate(varCurDate.getDate() - varSearchDateGap);
- var str2DaysAgo = self.util.toDate(var2DaysAgo);
- //$("#dateOppatientStartDt").val( str2DaysAgo);
- $("#dateBleedingStartDt").val(str2DaysAgo);
- };
- /**
- * 환자 정보 초기화
- */
- var initPatientInfo = function() {
- //$("#divResultRows").empty();
- //채혈 실행 버튼
- $("#btnBleedingAct").attr("disabled", true);
- $(".patient-name").text("환자명");
- $(".patient-gender").text("성별");
- $(".patient-age").text("나이");
- $(".patient-birthDt").text("생년월일");
- $(".dept-name").text("실시부서");
- $(".user-name").text("실시자명");
- $(".user-code").text("(사원번호)");
- // $(".modal-patient-name").text("-");
- // $(".modal-patient-id").text("-");
- // $(".modal-patient-age-gender").text("-");
- // $(".modal-patient-treat-cls").text("-");
- };
- /**
- * 채혈실시 초기화
- */
- var initInputBleeding = function() {
- $("#bleedingActionNum").empty();
- //CheckBoxLength 초기화
- inputBleedingLength = 0;
- //처방번호 체크
- for (var fCnt = 0; fCnt < varResultLists.length; fCnt++) {
- if ($("#checkBleedingSel" + fCnt).is(":checked")) {
- var tempSpan =
- "<p>" +
- '<span id="spanInputBleedingNum' +
- inputBleedingLength +
- '" style="">' +
- varResultLists[fCnt].col4 +
- " " +
- varResultLists[fCnt].col2 +
- " " +
- varResultLists[fCnt].col3 +
- "</span>" +
- //+ " <button type=\"button\" name=\"button\" class=\"btn btn-primary classBtnInPutActBarcode\" btnLength=\"" + inputBleedingLength + "\" id=\"btnInPutActBarcode" + inputBleedingLength + "\" style=\"color: #ffffff;background: #0067a1;text-align: center;\">"
- //+ "<span style=\"color:white;\">⊙</span></button>"
- "<p/>";
- $("#bleedingActionNum").append(tempSpan);
- inputBleedingLength++;
- }
- }
- //eventMakeBarcodeCondition();
- };
- var initBarcodeInputBleeding = function(barcodeData) {
- for (var fCnt = 0; fCnt < varResultLists.length; fCnt++) {
- if (varResultLists[fCnt].col4 == barcodeData) {
- $("#checkBleedingSel" + fCnt).prop("checked", true);
- $(".checkClassBleedingSel").trigger("change");
- return true;
- }
- }
- return false;
- };
- // 환자정보 요청
- var getPatientInfo = function() {
- var param = {
- hospitalCd: "",
- userId: gLoginUserId,
- patientId: $("#txtBleedingPatientSearch").val()
- };
- self.medical.getPatientInfo(param, processGetPatientInfo);
- };
- // 채혈 목록을 처리
- var processGetPatientInfo = function(lists) {
- $(".patient-name").text(lists[0].patientNm);
- $(".patient-gender").text(lists[0].gender);
- $(".patient-age").text(lists[0].age);
- $(".patient-birthDt").text(lists[0].birthDt);
- $(".dept-name").text(lists[0].deptNm);
- $(".user-name").text(gLoginUserNm);
- $(".user-code").text(gLoginUserId);
- // $(".modal-patient-name").text(lists[0].patientNm);
- // $(".modal-patient-id").text(lists[0].patientId);
- // $(".modal-patient-age-gender").text(lists[0].age + " / " + lists[0].gender);
- // $(".modal-patient-treat-cls").text("입원");
- getSpecimenList();
- $("#txtBleedingNumberSearchTxt").focus();
- };
- // 채혈실시
- var inputBleeding = function() {
- var params = { param: [] };
- for (var fCnt = 0; fCnt < inputBleedingLength; fCnt++) {
- params.param.push({
- param1: $("#spanInputBleedingNum" + fCnt).text(),
- param2: "20190101",
- param3: "121212",
- param4: "aaa"
- /*
- 파티마 actSpecimen 추가 예정 부분
- hospitalCd: varResultLists,
- userId: gLoginUserId,
- specimenCd: "",
- specimenNm: "",
- actSpecimenType: "",
- actSpecimenDtTm: "",
- actType: ""
- */
- });
- }
- self.safety.inputBleeding(params, processInputBleeding);
- };
- var processInputBleeding = function(lists) {
- if (lists != undefined && lists.length > 0) {
- var inputCnt = 0;
- for (var fCnt = 0; fCnt < lists.length; fCnt++) {
- if (lists[fCnt].returnCd == "0000") {
- inputCnt++;
- }
- }
- self.alert(inputCnt + "건 처리되었습니다.");
- //데이터 초기화
- $("#mplusAlertBleedingAction").modal("hide");
- initPatientInfo();
- getPatientInfo();
- $("#txtBleedingNumberSearchTxt").focus();
- } else {
- self.alert("처리중 오류가 발생했습니다.");
- }
- };
- var checkInputBleedingData = function() {
- if ($("#dateBleedingActionDate").val() == "") {
- self.alert("채혈 실시일을 입력해주세요.");
- return false;
- } else if ($("#dateBleedingActionTime").val() == "") {
- self.alert("채혈 시간을 입력해주세요.");
- return false;
- }
- //변경
- return true;
- //바코드 체크
- var btnInPutActBarcodeCheck = false;
- for (var fCnt = 0; fCnt < inputBleedingLength; fCnt++) {
- console.log("TEST : " + $("#btnInPutActBarcode" + fCnt).is("[disabled]"));
- if (!$("#btnInPutActBarcode" + fCnt).is("[disabled]")) {
- btnInPutActBarcodeCheck = true;
- }
- }
- if (btnInPutActBarcodeCheck) {
- self.alert("채혈번호 바코드를 확인해주세요.");
- return false;
- }
- return true;
- };
- var settingSetInputBleeding = function() {
- $("#dateBleedingActionDate").val(moment(new Date()).format("YYYY-MM-DD"));
- $("#dateBleedingActionTime").val(moment(new Date()).format("HH:mm:ss"));
- };
- var checkBarcodeNum = function(barcodeNum) {
- for (var fCnt = 0; fCnt < inputBleedingLength; fCnt++) {
- if (barcodeNum == $("#spanInputBleedingNum" + fCnt).text()) {
- $("#spanInputBleedingNum" + fCnt).css("color", "blue");
- $("#btnInPutActBarcode" + fCnt).attr("disabled", true);
- }
- }
- };
- // 채혈정보
- var getSpecimenList = function() {
- var param = {
- hospitalCd: "",
- userId: gLoginUserId,
- patientId: $("#txtBleedingPatientSearch").val(),
- specimenSearchCls: "0"
- };
- self.safety.getSpecimenList(param, processGetSpecimenList);
- };
- var processGetSpecimenList = function(lists){
- varResultLists = lists;
- var strDisplayTemp = "";
- $("#list-group").empty();
- if( lists.length == 0){
- // strDisplayTemp = "<div class=\"row text-center\" style=\"line-height: 60px; vertical-align: middle;\"> 검색 결과가 없습니다. </div>"
- // + "<div style=\"height: 55vh;\"></div>";
- $("#alertEmptyPatient").modal("show");
- }
- for( var i = 0; i < lists.length; i++){
- strDisplayTemp += "<li class=\"list-group-item\""+ i +" >"
- + "<div class=\"row\">"
- + "<div class=\"col-xs-6\">" + lists[i].specimenNm + "</div>"
- + "<div class=\"col-xs-4 text-center\">" + lists[i].specimenDtTm + "</div>"
- + "<div class=\"col-xs-2 text-center select_ico\"><input type=\"checkbox\" id=\"checkBleedingSel" + i + "\"></div>"
- + "<div class=\"group\"><label class=\"btn btn-check icon\" for=\"d\" ><span class=\"glyphicon glyphicon-ok\" aria-hidden=\"true\"></span></label><label class=\"btn btn-outline-check icon\" for=\"d\"><span class=\"glyphicon \" aria-hidden=\"true\"></span></label></div></li>";
- // strDisplayTemp += "<div class=\"chart-content well\">"
- // + " <div class=\"row patient-row\" patientNo=\"" + i + "\" patientId=\"" + lists[i].col1 + "\" patientNm=\"" + lists[i].col2 + "\" age=\"" + lists[i].col2 + "\" gender=\"" + lists[i].col2 + "\" treatCls=\"" + lists[i].col2 + "\" receiptNo=\"" + lists[i].col2 + "\" deptCd=\"" + lists[i].col2.trim() + "\" doctorId=\"" + lists[i].col2 + "\">"
- // + " <div class=\"col-xs-12\">"
- // + " <div class=\"col-xs-1 text-center\" style=\"padding:0px;word-break: break-word;\"><input type=\"checkbox\" class=\"form-check-input checkClassBleedingSel\" id=\"checkBleedingSel" + i + "\" disabled ></div>"
- // + " <div class=\"col-xs-2 text-center\" style=\"padding:0px;word-break: break-word;\">" + lists[i].col2 + "</div>"
- // + " <div class=\"col-xs-2 text-center\" style=\"padding:0px;word-break: break-word;\">" + lists[i].col3 + "</div>"
- // + " <div class=\"col-xs-2 text-center\" style=\"padding:0px;word-break: break-word;\">" + lists[i].col4 + "</div>"
- // + " <div class=\"col-xs-1 text-center\" style=\"padding:0px;word-break: break-word;\">" + lists[i].col5 + "</div>"
- // + " <div class=\"col-xs-1 text-center\" style=\"padding:0px;word-break: break-word;\">" + lists[i].col6 + "</div>"
- // + " <div class=\"col-xs-3 text-center\" style=\"padding:0px;word-break: break-word;\">" + lists[i].col7 + "</div>"
- // + " </div>"
- // + "</div>"
- // + "</div>";
- // //console.log( i + " : " + lists[i].patientId + " : " + lists[i].patientNm);
- }
- $("#list-group").append(strDisplayTemp); // element 추가
- eventMakeCondition();
- };
- //==== 초기화 설정 } ====
- //==== 이벤트 설정 { ====
- var addEvent = function() {
- // 컬럼 클릭의 정렬 이벤트
- eventColumnClick();
- eventRowClick();
- eventCondition();
- eventBackBlock();
- };
- // 20190228 shinsunwoo 환자의 바코드 추출 toNative 호출
- var readBarcode = function(barMode) {
- var callbackFn = "window.activeObj.readBarcodeCallBack";
- if (barMode == "search") {
- callbackFn = "window.activeObj.readBarcodeCallBack";
- } else if (barMode == "check") {
- callbackFn = "window.activeObj.readBarcodeCallBackCheck";
- } else if (barMode == "number") {
- callbackFn = "window.activeObj.readBarcodeCallBackNumber";
- } else {
- callbackFn = "window.activeObj.readBarcodeCallBack";
- }
- console.log("call readBarcode");
- var msg = {
- type: "command",
- functionType: "readBarcode",
- value: {
- callbackFn: callbackFn
- }
- };
- self.toNative(msg);
- };
- // 20190228 shinsunwoo 환자의 바코드 추출 callback 처리
- this.readBarcodeCallBack = function(returnCode) {
- var results = new Object();
- if (typeof returnCode === "string") {
- results = self.util.parseJson(returnCode);
- } else {
- results = returnCode;
- }
- if (results.success != undefined && results.success == "true") {
- console.log("readBarcode : success");
- console.log(results.result);
- $("#txtBleedingPatientSearch").val(results.result);
- getPatientInfo();
- } else {
- console.log("readBarcode : failed");
- self.alert("readBarcode APP function 호출 오류 ");
- }
- };
- this.readBarcodeCallBackCheck = function(returnCode) {
- var results = new Object();
- if (typeof returnCode === "string") {
- results = self.util.parseJson(returnCode);
- } else {
- results = returnCode;
- }
- if (results.success != undefined && results.success == "true") {
- console.log("readBarcode : success");
- console.log(results.result);
- checkBarcodeNum(results.result);
- } else {
- console.log("readBarcode : failed");
- self.alert("readBarcode APP function 호출 오류 ");
- }
- };
- this.deviceBarcodeCallBackCheck = function(returnCode) {
- var results = new Object();
- if (typeof returnCode === "string") {
- results = self.util.parseJson(returnCode);
- } else {
- results = returnCode;
- }
- if (results.success != undefined && results.success == "true") {
- console.log("readBarcode : success");
- console.log(results.result);
- checkBarcodeNum(results.result);
- } else {
- console.log("readBarcode : failed");
- self.alert("readBarcode APP function 호출 오류 ");
- }
- };
- this.readBarcodeCallBackNumber = function(returnCode) {
- var results = new Object();
- if (typeof returnCode === "string") {
- results = self.util.parseJson(returnCode);
- } else {
- results = returnCode;
- }
- if (results.success != undefined && results.success == "true") {
- console.log("readBarcode : success");
- console.log(results.result);
- $("#txtBleedingNumberSearchTxt").val(results.result);
- $("#txtBleedingNumberSearchTxt").trigger("keydown");
- } else {
- console.log("readBarcode : failed");
- self.alert("readBarcode APP function 호출 오류 ");
- }
- };
- //검색 페이지 뒤로가기 막기
- var eventBackBlock = function() {
- $(window).off("pageshow");
- $(window).bind("pageshow", function(event) {
- if (event.originalEvent.persisted) {
- document.location.reload();
- }
- });
- };
- var eventColumnClick = function() {
- /*
- $("#divResultHeaderColumn1").off("click");
- $("#divResultHeaderColumn1").on("click", function(){
- //alert("column1 clicked!!");
- sortColumn( 1, "patientId");
- });
- $("#divResultHeaderColumn2").off("click");
- $("#divResultHeaderColumn2").on("click", function(){
- //alert("column2 clicked!!");
- sortColumn( 2, "patientNm");
- });
- $("#divResultHeaderColumn3").off("click");
- $("#divResultHeaderColumn3").on("click", function(){
- //alert("column3 clicked!!");
- sortColumn( 3, "roomNm");
- });
- $("#divResultHeaderColumn4").off("click");
- $("#divResultHeaderColumn4").on("click", function(){
- //alert("column4 clicked!!");
- sortColumn( 4, "age");
- });
- $("#divResultHeaderColumn5").off("click");
- $("#divResultHeaderColumn5").on("click", function(){
- //alert("column5 clicked!!");
- sortColumn( 5, "operationDt");
- });
- $("#divResultHeaderColumn6").off("click");
- $("#divResultHeaderColumn6").on("click", function(){
- //alert("column6 clicked!!");
- sortColumn( 6, "anesthesiaTy");
- });
- $("#divResultHeaderColumn7").off("click");
- $("#divResultHeaderColumn7").on("click", function(){
- //alert("column7 clicked!!");
- sortColumn( 7, "deptNm");
- });
- $("#divResultHeaderColumn8").off("click");
- $("#divResultHeaderColumn8").on("click", function(){
- //alert("column8 clicked!!");
- sortColumn( 8, "operationStatNm");
- });
- */
- };
- var eventRowClick = function() {};
- var eventCondition = function() {
- ///////////////////////////////////////////////////////////////////////////////// 2019.09.04 추가 Start
- //데이터 전체길이 입력시 검색
- $("#txtBleedingPatientSearch").off("keydown");
- $("#txtBleedingPatientSearch").on("keydown", function(e) {
- if (
- e.keyCode == 13 &&
- $("#txtBleedingPatientSearch").val().length != 0
- ) {
- initPatientInfo();
- getPatientInfo();
- } else if (
- e.keyCode == 13 &&
- $("#txtBleedingPatientSearch").val().length == 0
- ) {
- self.alert("환자번호를 입력해주세요.");
- $("#txtBleedingPatientSearch").focus();
- }
- });
- //포커스 초기화
- $("#txtBleedingPatientSearch").off("focus");
- $("#txtBleedingPatientSearch").on("focus", function() {
- $(this).val("");
- });
- //데이터 전체길이 입력시 검색
- $("#txtBleedingNumberSearchTxt").off("keydown");
- $("#txtBleedingNumberSearchTxt").on("keydown", function(e) {
- if (e.keyCode == 13 && varResultLists.length != 0) {
- if (!initBarcodeInputBleeding($(this).val())) {
- self.alert("처방되지 않은 검체번호를 입력하셨습니다.");
- return;
- }
- $(this).val("");
- } else if (e.keyCode == 13 && varResultLists.length == 0) {
- self.alert("환자번호를 검색해주세요.");
- $("#txtBleedingPatientSearch").focus();
- }
- });
- //포커스 초기화
- $("#txtBleedingNumberSearchTxt").off("focus");
- $("#txtBleedingNumberSearchTxt").on("focus", function() {
- $(this).val("");
- $(this).prop("placeholder", "채혈바코드를 스캔해주세요.");
- });
- // 투약번호 선택 처리
- $("#btnBarcodeSearchSelect").off("click");
- $("#btnBarcodeSearchSelect").on("click", function() {
- $("#txtBleedingNumberSearchTxt").val("");
- $("#txtBleedingNumberSearchTxt").focus();
- });
- // 바코드 검색
- $("#btnBarcodeSearch").off("click");
- $("#btnBarcodeSearch").on("click", function() {
- $("#txtBleedingNumberSearchTxt").val("");
- readBarcode("number");
- });
- $("#mplusAlert").off("hidden.bs.modal");
- $("#mplusAlert").on("hidden.bs.modal", function() {
- $("#txtBleedingNumberSearchTxt").focus();
- });
- ///////////////////////////////////////////////////////////////////////////////// 2019.09.04 추가 End
- // 환자 조회 이벤트 처리
- $("#btnBleedingList").off("click");
- $("#btnBleedingList").on("click", function() {
- var searchTxt = $("#txtBleedingPatientSearch").val();
- if (searchTxt == "") {
- self.alert("환자번호를 입력해주세요.");
- return;
- }
- initPatientInfo();
- getPatientInfo();
- });
- // 바코드 검색
- $("#btnBarcodeSearch").off("click");
- $("#btnBarcodeSearch").on("click", function() {
- $("#txtBleedingPatientSearch").val("");
- readBarcode("search");
- });
- // 채혈처리
- $("#btnInputBleedingAct").off("click");
- $("#btnInputBleedingAct").on("click", function() {
- initInputBleeding();
- settingSetInputBleeding();
- $("#mplusAlertBleedingAction").modal("show");
- });
- // 채혈실시 선택
- $("#checkBleedingAll").off("change");
- $("#checkBleedingAll").on("change", function() {
- if ($("#checkBleedingAll").is(":checked")) {
- $(".checkClassBleedingSel").prop("checked", true);
- $(".checkClassBleedingSel").trigger("change");
- } else {
- $(".checkClassBleedingSel").prop("checked", false);
- $(".checkClassBleedingSel").trigger("change");
- }
- });
- // 채혈실시
- $("#btnBleedingAct").off("click");
- $("#btnBleedingAct").on("click", function() {
- if (checkInputBleedingData()) {
- inputBleeding();
- }
- });
- // 투약취소
- $("#btnBleedingCancel").off("click");
- $("#btnBleedingCancel").on("click", function() {
- $("#mplusAlertBleedingAction").modal("hide");
- $("#txtBleedingNumberSearchTxt").focus();
- });
- };
- var eventMakeCondition = function() {
- $(".checkClassBleedingSel").off("change");
- $(".checkClassBleedingSel").on("change", function() {
- var checkSelected = false;
- for (var fCnt = 0; fCnt < varResultLists.length; fCnt++) {
- if ($("#checkBleedingSel" + fCnt).is(":checked")) {
- checkSelected = true;
- break;
- }
- }
- if (checkSelected) {
- $("#btnInputBleedingAct").attr("disabled", false);
- } else {
- $("#btnInputBleedingAct").attr("disabled", true);
- }
- });
- };
- var eventMakeBarcodeCondition = function() {
- $(".classBtnInPutActBarcode").off("click");
- $(".classBtnInPutActBarcode").on("click", function() {
- //readBarcode("check");
- //TEST 삭제
- for (var fCnt = 0; fCnt < inputBleedingLength; fCnt++) {
- checkBarcodeNum($("#spanInputBleedingNum" + fCnt).text());
- }
- });
- };
- //==== 이벤트 설정 } ====
- //==== 환자 정보 조회 처리 { ====
- //==== 환자 정보 조회 처리 } ====
- //==== 컬럼 정렬 프로세스 { ====
- // 컬럼 상태를 초기화 처리
- var initColumnStatus = function() {
- varToggleCol1 = 0;
- varToggleCol2 = 0;
- varToggleCol3 = 0;
- varToggleCol4 = 0;
- varToggleCol5 = 0;
- varToggleCol6 = 0;
- varToggleCol7 = 0;
- varToggleCol8 = 0;
- // 컬럼 정렬 아이콘 초기화 : ▼ ▲
- $("#spanSortColumn1").text("");
- $("#spanSortColumn2").text("");
- $("#spanSortColumn3").text("");
- $("#spanSortColumn4").text("");
- $("#spanSortColumn5").text("");
- $("#spanSortColumn6").text("");
- $("#spanSortColumn7").text("");
- $("#spanSortColumn8").text("");
- };
-
- // 컬럼 상태를 설정(정렬 조건 적용)
- var setColumnStatus = function( columnNo){
-
- // 클릭된 column의 현재 상태를 백업
- var copyToggleStatus = 0;
- if( columnNo == 1)
- copyToggleStatus = varToggleCol1;
- else if( columnNo == 2)
- copyToggleStatus = varToggleCol2;
- else if( columnNo == 3)
- copyToggleStatus = varToggleCol3;
- else if( columnNo == 4)
- copyToggleStatus = varToggleCol4;
- else if( columnNo == 5)
- copyToggleStatus = varToggleCol5;
- else if( columnNo == 6)
- copyToggleStatus = varToggleCol6;
- else if( columnNo == 7)
- copyToggleStatus = varToggleCol7;
- else if( columnNo == 8)
- copyToggleStatus = varToggleCol8;
-
- // column 상태를 초기화
- initColumnStatus();
- // 클릭된 column의 백업된 상태에서 한단계 진핸된 상태로 변경
- if( columnNo == 1)
- copyToggleStatus == 0 ? varToggleCol1 = 1 : copyToggleStatus == 1 ? varToggleCol1 = 2 : varToggleCol1 = 1;
- else if( columnNo == 2)
- copyToggleStatus == 0 ? varToggleCol2 = 1 : copyToggleStatus == 1 ? varToggleCol2 = 2 : varToggleCol2 = 1;
- else if( columnNo == 3)
- copyToggleStatus == 0 ? varToggleCol3 = 1 : copyToggleStatus == 1 ? varToggleCol3 = 2 : varToggleCol3 = 1;
- else if( columnNo == 4)
- copyToggleStatus == 0 ? varToggleCol4 = 1 : copyToggleStatus == 1 ? varToggleCol4 = 2 : varToggleCol4 = 1;
- else if( columnNo == 5)
- copyToggleStatus == 0 ? varToggleCol5 = 1 : copyToggleStatus == 1 ? varToggleCol5 = 2 : varToggleCol5 = 1;
- else if( columnNo == 6)
- copyToggleStatus == 0 ? varToggleCol6 = 1 : copyToggleStatus == 1 ? varToggleCol6 = 2 : varToggleCol6 = 1;
- else if( columnNo == 7)
- copyToggleStatus == 0 ? varToggleCol7 = 1 : copyToggleStatus == 1 ? varToggleCol7 = 2 : varToggleCol7 = 1;
- else if( columnNo == 8)
- copyToggleStatus == 0 ? varToggleCol8 = 1 : copyToggleStatus == 1 ? varToggleCol8 = 2 : varToggleCol8 = 1;
- // 정렬 상태 화면에 그리기
- varToggleCol1 == 1 ? $("#spanSortColumn1").text("▲") : varToggleCol1 == 2 ? $("#spanSortColumn1").text("▼") : $("#spanSortColumn1").text("");
- varToggleCol2 == 1 ? $("#spanSortColumn2").text("▲") : varToggleCol2 == 2 ? $("#spanSortColumn2").text("▼") : $("#spanSortColumn2").text("");
- varToggleCol3 == 1 ? $("#spanSortColumn3").text("▲") : varToggleCol3 == 2 ? $("#spanSortColumn3").text("▼") : $("#spanSortColumn3").text("");
- varToggleCol4 == 1 ? $("#spanSortColumn4").text("▲") : varToggleCol4 == 2 ? $("#spanSortColumn4").text("▼") : $("#spanSortColumn4").text("");
- varToggleCol5 == 1 ? $("#spanSortColumn5").text("▲") : varToggleCol5 == 2 ? $("#spanSortColumn5").text("▼") : $("#spanSortColumn5").text("");
- varToggleCol6 == 1 ? $("#spanSortColumn6").text("▲") : varToggleCol6 == 2 ? $("#spanSortColumn6").text("▼") : $("#spanSortColumn6").text("");
- varToggleCol7 == 1 ? $("#spanSortColumn7").text("▲") : varToggleCol7 == 2 ? $("#spanSortColumn7").text("▼") : $("#spanSortColumn7").text("");
- varToggleCol8 == 1 ? $("#spanSortColumn8").text("▲") : varToggleCol8 == 2 ? $("#spanSortColumn8").text("▼") : $("#spanSortColumn8").text("");
- };
-
- // 컬럼 상태를 조회(정렬 조건 적용)
- var getColumnStatus = function( columnNo){
- if( columnNo == 1)
- return varToggleCol1;
- else if( columnNo == 2)
- return varToggleCol2;
- else if( columnNo == 3)
- return varToggleCol3;
- else if( columnNo == 4)
- return varToggleCol4;
- else if( columnNo == 5)
- return varToggleCol5;
- else if( columnNo == 6)
- return varToggleCol6;
- else if( columnNo == 7)
- return varToggleCol7;
- else if( columnNo == 8)
- return varToggleCol8;
- };
-
- // 컬럼의 정렬을 실행
- var sortColumn = function( columnNo, fieldName){
- // 컬럼 상태 설정
- setColumnStatus( columnNo);
- // 오름차순, 내림차순 선택
- var isAscending = true;
- getColumnStatus( columnNo) == 1 ? isAscending = true : getColumnStatus( columnNo) == 2 ? isAscending = false : isAscending = true;
- // 정렬 실행
- self.common.sortArrayObject( varResultLists, fieldName, isAscending);
- // 환자 정보 다시 그리기
- drawPatientList();
- }
- //==== 컬럼 정렬 프로세스 } ====
- };
|