123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 신장실 처치장등록 ( SMMND04400_신장실처치장등록.xrw - JScript )
- - Version :
- 1) : Ver.1.00.01
- - Author : 최원돈
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var sBDHTCUREINFO_PATH = "/root/main/bdHtCureinfo/bdHtCureinfo";
- /**
- * creat : 20101019
- * author : 최원돈
- * desc : 초기화
- */
- function fInitialize(){
-
- //조회조건 default 세팅
- model.removenode('/root/main/cond');
- model.makeValue('/root/main/cond/workdd' , getCurrentDate()); //작업일자
- model.makeValue('/root/main/cond/flag' , "H"); //구분
- model.makeValue('/root/main/cond/ngdtnursid' , getUserId()); //현재 로그인한 사용자 번호(ID)
- model.makeValue('/root/main/cond/ngdtnursnm' , getUserName()); //현재 로그인한 사용자명
-
- //그리드 노드 초기화
- model.removenode('/root/main/bdHtCureinfo');
- model.makenode('/root/main/bdHtCureinfo');
-
- initCalendar();
-
- fGetbdHtCureinfo();
- }
-
- /**
- * @desc : 신장실 처치장 등록
- * @ : 저장 상태가 신규인 경우, 무결성 데이터 검사 후 저장
- * @ : 저장 상태가 수정인 경우, 변경된 사항이 있는지 검사, 무결성 데이터 검사 후 저장
- * @param :
- * @return :
- * @author : 최원돈
- * @---------------------------------------------------
- */
- function fClkBtnbdHtCureSave(){
- if(!(compareNodeVal('/root/temp', sBDHTCUREINFO_PATH, false))){
- messageBox('저장할 데이터가', 'I004');
- return;
- }
- model.removeNodeset("/root/send/savedata");
- model.makeNode("/root/send/savedata");
- model.copyNode("/root/send/savedata", sBDHTCUREINFO_PATH);
- if(!submit('TXMND04401')){
- messageBox('저장을 실패하였습니다.', 'E999');
- return;
- }
- model.removeNodeset("/root/temp");
- model.makeNode("/root/temp");
- model.copyNode("/root/temp", sBDHTCUREINFO_PATH);
- }
- /**
- * creat : 20101014
- * author : 최원돈
- * desc : 신장실 처치장조회
- */
- function fGetbdHtCureinfo(bfcopyyn){
-
- //조건변수
- var workdd = model.getValue('/root/main/cond/workdd'); //작업일자
-
- //null 처리
- if(workdd == null)
- {
- workdd = '';
- }
-
- //send parameter 설정
- model.removenode('/root/send');
- model.makeValue('/root/send/workdd' , workdd);
- model.makeValue('/root/send/flag' , model.getValue('/root/main/cond/flag'));
- model.makeValue('/root/send/ngdtnursid', model.getValue('/root/main/cond/ngdtnursid'));
- model.makeValue('/root/send/bfcopyyn' , bfcopyyn);
-
- //submit 호출
- if(!submit('TRMND04401')){
- messageBox('조회를 실패하였습니다.', 'E999');
- model.setValue('/root/send/bfcopyyn' , '');
- return;
- }
-
- if(model.instances(0).selectNodes(sBDHTCUREINFO_PATH + "[instcd!='']").length <= 0)
- {
- model.makeValue(sBDHTCUREINFO_PATH + '/instcd' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/workdd' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/seq' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/flag' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/ngdtnursid', '');
- model.makeValue(sBDHTCUREINFO_PATH + '/fnexam' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/foexam' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/lab' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/tns' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/sled' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/delive' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/discharge' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/incnts' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/rsrv' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/xray' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/spcltest' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/op' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/dialliqd' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/dialfilm' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/hbsag' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/etc' , '');
- model.makeValue(sBDHTCUREINFO_PATH + '/machgd' , '');
- }
-
- model.removeNodeset("/root/temp");
- model.makeNode("/root/temp");
- model.copyNode("/root/temp", sBDHTCUREINFO_PATH);
- if (bfcopyyn == 'Y')
- {
- model.setValue(sBDHTCUREINFO_PATH + '/workdd', model.getValue('/root/main/cond/workdd'));
- model.setValue(sBDHTCUREINFO_PATH + '/seq', '');
- model.setValue('/root/send/bfcopyyn' , '');
- }
- model.refresh();
- }
- /**
- * creat : 20101014
- * author : 최원돈
- * desc : 신장실 처치장 출력
- */
- function fPrintHtCureList(){
- if( model.getValue(sBDHTCUREINFO_PATH + "/instcd") == ''
- || compareNodeVal('/root/temp', sBDHTCUREINFO_PATH, true))
- {
- messageBox('출력할 내역이 없습니다.', 'E999');
- return;
- }
-
- var dd = model.getValue('/root/main/cond/workdd').toDate("YYYYMMDD");
- model.setValue('/root/main/prtinfo/date'
- , '일자 : ' + dd.getDateFormat('YYYY-MM-DD ') + getDateTime(dd, 'W') + '요일');
-
- if ( model.getValue('/root/main/cond/flag') == 'H') {
- exeReportPreview("RPMND04401", "XMLSTR", "", "", "false","","","","","false", "", "");//혈액투석처치장
- } else {
- exeReportPreview("RPMND04402", "XMLSTR", "", "", "false","","","","","false", "", "");//복막투석처치장
- }
- }
-
- function initCalendar() {
- var workdd = model.getValue('/root/main/cond/workdd'); //작업일자
- if(workdd == null || workdd == '')
- {
- workdd = getCurrentDate();
- }
-
- var curDate = workdd.toDate();
-
- model.setValue("/root/hidden/calendar/year", curDate.getDateFormat('YYYY'));
- model.setValue("/root/hidden/calendar/month", curDate.getDateFormat('MM'));
- model.refresh();
-
- opt_date.value = "** " + model.getValue("/root/hidden/calendar/year") + "년 " + model.getValue("/root/hidden/calendar/month") + "월 **";
- setCalendar(curDate);
- }
-
- function setCalendar(dateObj) {
-
- // 그리드 초기화
- model.removeNodeset("/root/hidden/calendar/weeklist/list");
- grd_calendar.rebuild()
-
- var today = dateObj.getDate(); // 오늘 날짜를 가져옴.
-
- /************************
- 1. objDate.setDate(numDate)
- 로컬 시간을 사용하여 Date 개체의 날짜 값을 설정합니다.
-
- 2. objDate.getDay()
- 로컬 시간을 사용하여 Date 개체의 요일 값을 반환합니다.
-
- 0 = 일요일
- 1 = 월요일
- 2 = 화요일
- 3 = 수요일
- 4 = 목요일
- 5 = 금요일
- 6 = 토요일
- *************************/
-
- dateObj.setDate(1);
- var startDay = dateObj.getDay(); // 해당 달의 시작요일을 반환
- var days = dateObj.getMonthDay(); // 해당 달의 일수를 반환
- //nprw.dll
- /*************************
- ceil 숫자 인수보다 크거나 같은 가장 작은 정수를 반환합니다.
- *************************/
- var rows = Math.ceil( ( startDay + days ) / 7 );
- for( var i = 0; i < rows; i++ )
- grd_calendar.addRow(false);
-
- grd_calendar.rebuild();
- /*************************
- fixedRows
- 스크롤이 가능하지 않은 고정된 행 들을 몇 개나 만들 것인지를 설정 또는 리턴한다.
- *************************/
- var rowIndex = grd_calendar.fixedRows;
- var colIndex = startDay;
- for( var i = 1; i <= days; i++ ) {
- grd_calendar.valueMatrix(rowIndex, colIndex) = i;
- //grd_calendar.valueMatrix(rowIndex, colIndex+7) = "0/0";
-
- if(i == today) // 오늘 날짜이면
- {
- // 색상 표시
- var calRow = rowIndex;
- var calCol = colIndex;
- var tmpCalCol;
-
- if( calCol < 7 )
- tmpCalCol = calCol + 7;
- else
- tmpCalCol = calCol - 7;
-
- grd_calendar.rebuildStyle();
-
- grd_calendar.cellStyle("background-color", calRow, calCol) = "#daa7d9";
- grd_calendar.cellStyle("background-color", calRow, tmpCalCol) = "#daa7d9";
- }
-
- colIndex++;
- if( colIndex == 7 ) {
- colIndex = 0;
- rowIndex++;
- }
- }
- }
- function setCellColor(gridObj) {
-
- var calRow = gridObj.row;
- var calCol = gridObj.col;
- var tmpCalCol;
-
- if( calCol < 7 )
- tmpCalCol = calCol + 7;
- else
- tmpCalCol = calCol - 7;
-
- gridObj.rebuildStyle();
-
- gridObj.cellStyle("background-color", calRow, calCol) = "#daa7d9";
- gridObj.cellStyle("background-color", calRow, tmpCalCol) = "#daa7d9";
- }
- /**
- * @---------------------------------------------------
- * @desc : 두 NodeList와 NodeValue값을 비교 결과에 따라 true, false를 return한다.
- * @ref : C:\KNUProject\application\webapps\emr\prcpmngtweb\js\MMO001.js
- * @---------------------------------------------------
- */
- function compareNodeVal(desNode, srcNode, prtYn){
- var node = instance1.selectSingleNode(desNode);
- var node2 = instance1.selectSingleNode(srcNode);
- var nodeList = node.childNodes;
- var nodeList2 = node2.childNodes;
- while(childNode = nodeList.nextNode()){
- childNode2 = nodeList2.nextNode();
- //alert(childNode.NodeValue + "," + childNode2.NodeValue);
- //alert(childNode.nodeName + " : " + childNode.NodeValue);
- if(childNode.NodeValue != childNode2.NodeValue)
- {
- if ( prtYn
- && childNode.nodeName == 'workdd') // 전일복사 때문에.. 출력 시 비교는 제외
- {
- //...
- }
- else
- {
- return true; //값이 다른 경우 true
- }
- }
- }
- return false; //값이 같은 경우 false
- }
|