SMMNV10000.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259
  1. /* ---------------------------------------------------------------------
  2. 대기안내 환자진행현황 (대기안내공통 - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. : Create By YeoWon Lim
  6. : 2015.05.02
  7. ----------------------------------------------------------------------*/
  8. var inquiryTime = 5 * 1000 ; // 5초 (재조회시간)
  9. var clockTime = 1000 ; // 1초 (시계)
  10. var clockID;
  11. var grdintervalID;
  12. var grdToggle;
  13. /**
  14. * @group :
  15. * @ver : 2008.02.13
  16. * @by : 임여원
  17. * @---------------------------------------------------
  18. * @type : function
  19. * @access : public
  20. * @desc : 대기안내 환자조회화면초기화
  21. * @param :
  22. * @param :
  23. * @return :
  24. * @---------------------------------------------------
  25. */
  26. function fInitialize(){
  27. if(model.getValue("/root/hidden/wgopeninfo/wgopeninfolist/centcd") == "-" ) {
  28. model.setValue("/root/main/waitroominfo/waitroomtitle/deptnm", model.getValue("/root/hidden/wgopeninfo/wgopeninfolist/orddeptnm"));
  29. } else {
  30. model.setValue("/root/main/waitroominfo/waitroomtitle/deptnm", model.getValue("/root/hidden/wgopeninfo/wgopeninfolist/centnm"));
  31. }
  32. model.removenode("/root/main/waitroominfo/waitroominfolist");
  33. fSetTimer();
  34. }
  35. /**
  36. * @group :
  37. * @ver : 2007.10.09
  38. * @by : 문창곤
  39. * @---------------------------------------------------
  40. * @type : function
  41. * @access : public
  42. * @desc : 지정된 시간간격마다 그리드데이터 조회(화면 호출시 처음만 호출된다)
  43. * @param :
  44. * @param :
  45. * @return :
  46. * @---------------------------------------------------
  47. */
  48. function fSetTimer(){
  49. clockID = window.setInterval("clock();" , clockTime);
  50. grdintervalID = window.setInterval("fGetTestRoomInfo();" , inquiryTime);
  51. grdToggle = window.setInterval("fGetTestRoomToggle();", inquiryTime );
  52. }
  53. /* --------------------------------------------------*/
  54. /* type : function */
  55. /* access : public */
  56. /* desc : 외래 진료실 진행현황 조회 */
  57. /* --------------------------------------------------*/
  58. function fGetTestRoomInfo(){
  59. var sPath = "/root/main/opdinfo";
  60. model.setValue("/root/main/cond/bizdd", getCurrentDate());
  61. model.removenode("/root/send");
  62. model.makeValue("/root/send/bizdd", model.getValue("/root/main/cond/bizdd"));
  63. model.makeValue("/root/send/centcd", model.getValue("/root/hidden/wgopeninfo/wgopeninfolist/centcd"));
  64. model.makeValue("/root/send/orddeptcd", model.getValue("/root/hidden/wgopeninfo/wgopeninfolist/orddeptcd"));
  65. model.makeValue("/root/send/ordroomcd", model.getValue("/root/hidden/wgopeninfo/wgopeninfolist/ordroomcd"));
  66. setErrorOff();
  67. if (submit("TRMNV10001",false)) {
  68. model.setValue("/root/main/cond/bizdd", getCurrentDate());
  69. var i;
  70. var itemid;
  71. for(i = 1; i <= getNodesetCount("/root/main/waitroominfo/waitroominfolist") && i <= 18; i++ ) {
  72. itemid = "room" + i;
  73. document.all.item(itemid+"_roomnm").value = model.getValue("/root/main/waitroominfo/waitroominfolist[" + i + "]/ordroomnm");
  74. var m = 1;
  75. for(m = 1; m <= 5; m++ ) {
  76. document.all.item(itemid+"_pat"+m).value = "-";
  77. }
  78. var k = 2;
  79. for(j = 1; j <= getNodesetCount("/root/main/waitroominfo/waitroompatlist"); j++ ) {
  80. if(model.getValue("/root/main/waitroominfo/waitroominfolist[" + i + "]/ordroomcd") == model.getValue("/root/main/waitroominfo/waitroompatlist[" + j + "]/ordroomcd") && k <=5) {
  81. if(model.getValue("/root/main/waitroominfo/waitroompatlist[" + j + "]/patstat") == "A") {
  82. document.all.item(itemid + "_pat1").value = model.getValue("/root/main/waitroominfo/waitroompatlist[" + j + "]/patnm");
  83. } else {
  84. document.all.item(itemid + "_pat" + k).value = model.getValue("/root/main/waitroominfo/waitroompatlist[" + j + "]/patnm");
  85. k = k+1;
  86. }
  87. }
  88. }
  89. }
  90. model.refresh();
  91. } else {
  92. model.setValue("/root/init/grdStatus","grd:장애");
  93. model.removeNodeset(sPath);
  94. model.refresh();
  95. }
  96. }
  97. /* --------------------------------------------------*/
  98. /* type : function */
  99. /* access : public */
  100. /* desc : 외래 진료실 진행현황 조회 */
  101. /* --------------------------------------------------*/
  102. var tempTo = 1;
  103. function fGetTestRoomToggle(){
  104. for(i = 1; i <= 18; i++ ) {
  105. itemid = "room" + i;
  106. document.all.item(itemid).visible = false;
  107. }
  108. if (getNodesetCount("/root/main/waitroominfo/waitroominfolist") <= 6 ) {
  109. for(i = 1; i <= getNodesetCount("/root/main/waitroominfo/waitroominfolist"); i++ ) {
  110. itemid = "room" + i;
  111. document.all.item(itemid).visible = true;
  112. }
  113. } else if (getNodesetCount("/root/main/waitroominfo/waitroominfolist") <= 12 ) {
  114. if (tempTo == 1 || tempTo == 3) {
  115. for(i = 1; i <= getNodesetCount("/root/main/waitroominfo/waitroominfolist") && i<=6; i++ ) {
  116. itemid = "room" + i;
  117. document.all.item(itemid).visible = true;
  118. }
  119. tempTo = 2;
  120. } else {
  121. for(i = 7; i <= getNodesetCount("/root/main/waitroominfo/waitroominfolist") && i<=12; i++ ) {
  122. itemid = "room" + i;
  123. document.all.item(itemid).visible = true;
  124. }
  125. tempTo = 1;
  126. }
  127. } else {
  128. if (tempTo == 1) {
  129. for(i = 1; i <= getNodesetCount("/root/main/waitroominfo/waitroominfolist") && i<=6; i++ ) {
  130. itemid = "room" + i;
  131. document.all.item(itemid).visible = true;
  132. }
  133. tempTo = 2;
  134. } else if (tempTo == 2) {
  135. for(i = 7; i <= getNodesetCount("/root/main/waitroominfo/waitroominfolist") && i<=12; i++ ) {
  136. itemid = "room" + i;
  137. document.all.item(itemid).visible = true;
  138. }
  139. tempTo = 3;
  140. } else {
  141. for(i = 13; i <= getNodesetCount("/root/main/waitroominfo/waitroominfolist") && i<=18; i++ ) {
  142. itemid = "room" + i;
  143. document.all.item(itemid).visible = true;
  144. }
  145. tempTo = 1;
  146. }
  147. }
  148. }
  149. /**
  150. * @group :
  151. * @ver : 2007.10.09
  152. * @by : 문창곤
  153. * @---------------------------------------------------
  154. * @type : function
  155. * @access : public
  156. * @desc : DataTime 조회.
  157. * @param :
  158. * @param :
  159. * @return :
  160. * @---------------------------------------------------
  161. */
  162. function clock() {
  163. var tdate = getCurrentDateTime().substring(0, 4) + "년 "
  164. + getCurrentDateTime().substring(4, 6) + "월 "
  165. + getCurrentDateTime().substring(6, 8) + "일 "
  166. + getCurrentDate().toDate().getDayOfWeek("K") + "요일 ";
  167. var ttime = getCurrentDateTime().substring(8, 11) + ":"
  168. + getCurrentDateTime().substring(11, 13);
  169. model.setValue("/root/hidden/date", tdate) ;
  170. model.setValue("/root/hidden/time", ttime) ;
  171. model.refresh();
  172. }
  173. /**
  174. * @group :
  175. * @ver : 2007.10.09
  176. * @by : 문창곤
  177. * @---------------------------------------------------
  178. * @type : function
  179. * @access : public
  180. * @desc : 'ESC' or 'Q' 키를 누르면 타이머 해제 및 윈도우 닫기
  181. * @param :
  182. * @param :
  183. * @return :
  184. * @---------------------------------------------------
  185. */
  186. function fClearTimer(){
  187. var keyPressed = event.keyCode ;
  188. if(keyPressed == 27 || keyPressed == 81) // 'ESC' or 'Q' 키가 눌려진 경우
  189. {
  190. var answer = messageBox("진행현황 안내 프로그램 종료합니다.", "I") ;
  191. if(answer == 1) {
  192. fCloseBoard();
  193. }
  194. }
  195. }
  196. function fCloseBoard(){
  197. if (clockID != "") window.clearInterval(clockID);
  198. if (grdintervalID != "") window.clearInterval(grdintervalID);
  199. if (grdToggle != "") window.clearInterval(grdToggle);
  200. model.close();
  201. }