SPMMO15000.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241
  1. /**
  2. * @desc : 수술예약시간설정 화면 초기화
  3. * @
  4. * @param :
  5. * @return :
  6. * @author : 박유미
  7. * @---------------------------------------------------
  8. */
  9. function fInitialize_SPMMO15000(){
  10. zbcfGetCodeList(new Array("M0014", "M0017", "M0243", "M0244", "M0245"), new Array("/root/init/M0014"
  11. , "/root/init/M0017"
  12. , "/root/init/M0243"
  13. , "/root/init/M0244"
  14. , "/root/init/M0245"));
  15. reqHardCodeInfo("/root/send/reqdata", "/root/init/hardcd", 18);
  16. gANSTDEPT_CD = model.getValue("/root/init/hardcd/hardcd/hardcd");
  17. mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept", "D");
  18. mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist", gANSTDEPT_CD, "0330");
  19. addComboInstance("/root/init/userlist", "userid^usernm", "-^-", "usercombo"); //의사콤보 전체항목 추가
  20. reqOpRoomList(getCurrentDate(), "/root/init/oproomlist", "total"); //수술방 콤보 조회
  21. addComboInstance("/root/init/oproomlist", "oproomcd^oproomnm", "0000^방없음", "oproomlist"); //수술방 방없음 추가
  22. var sa = opener.javascript.getParameter("sa");
  23. sa = sa.split("/");
  24. if(sa[1] > 16){
  25. model.setValue("/root/main/opanstschecnfm/ageflag", "20");
  26. }else if(sa[1] > 12 && sa[1] <= 15){
  27. model.setValue("/root/main/opanstschecnfm/ageflag", "15");
  28. }else if(sa[1] > 8 && sa[1] <= 12){
  29. model.setValue("/root/main/opanstschecnfm/ageflag", "14");
  30. }else if(sa[1] > 5 && sa[1] <= 8){
  31. model.setValue("/root/main/opanstschecnfm/ageflag", "13");
  32. }else if(sa[1] > 3 && sa[1] <= 5){
  33. model.setValue("/root/main/opanstschecnfm/ageflag", "12");
  34. }else if(sa[1] > 1 && sa[1] <= 3){
  35. model.setValue("/root/main/opanstschecnfm/ageflag", "11");
  36. }else{
  37. model.setValue("/root/main/opanstschecnfm/ageflag", "10");
  38. }
  39. model.setValue("/root/main/opanstschecnfm/status" , "i");
  40. model.setValue("/root/main/opanstschecnfm/opcnfmdd" , opener.javascript.getParameter("opschedd"));
  41. model.setValue("/root/main/opanstschecnfm/oproomcd" , opener.javascript.getParameter("oproomcd"));
  42. model.setValue("/root/main/opanstschecnfm/opfromtmcd", opener.javascript.getParameter("opfromtmcd"));
  43. model.setValue("/root/main/opanstschecnfm/opendtmcd" , opener.javascript.getParameter("opendtmcd"));
  44. model.setValue("/root/main/opanstschecnfm/opusetm" , opener.javascript.getParameter("opusetm"));
  45. model.setValue("/root/main/opanstschecnfm/anstdrid1" , opener.javascript.getParameter("anstdrid1"));
  46. model.setValue("/root/main/opanstschecnfm/anstdrid2" , opener.javascript.getParameter("anstdrid2"));
  47. model.setValue("/root/main/opanstschecnfm/anstdrid3" , opener.javascript.getParameter("anstdrid3"));
  48. model.setValue("/root/main/opanstschecnfm/anstmthdcd", opener.javascript.getParameter("anstmthdcd"));
  49. fChngAnstMthdCmb(cmb_chnganstmthdcd, cmb_chnganstdetlmthdcd, "/root/main/opanstschecnfm/anstdetlmthdcd");
  50. model.setValue("/root/main/opanstschecnfm/oprsrvno" , opener.javascript.getParameter("oprsrvno"));
  51. model.setValue("/root/main/opanstschecnfm/ccrtno" , opener.javascript.getParameter("ccrtno"));
  52. model.setValue("/root/main/opanstschecnfm/mainoprsrvno" , opener.javascript.getParameter("mainoprsrvno"));
  53. model.setValue("/root/main/opanstschecnfm/anstreqflag" , opener.javascript.getParameter("anstreqflag"));
  54. model.setValue("/root/main/opanstschecnfm/anstdetlmthdcd", opener.javascript.getParameter("anstdetlmthdcd"));
  55. model.setValue("/root/main/opanstschecnfm/ophistno" , opener.javascript.getParameter("ophistno"));
  56. model.setValue("/root/main/opanstschecnfm/opstatcd" , "20"); //수술확정
  57. model.setValue("/root/main/opanstschecnfm/oppatflagcd" , opener.javascript.getParameter("oppatflagcd")); //수술환자구분
  58. model.setValue("/root/main/opanstschecnfm/pid" , opener.javascript.getParameter("pid")); //등록번호
  59. model.setValue("/root/main/opanstschecnfm/hngnm" , opener.javascript.getParameter("hngnm")); //이름
  60. model.setValue("/root/main/opanstschecnfm/sa" , opener.javascript.getParameter("sa")); //sa
  61. model.setValue("/root/main/opanstschecnfm/opflagcd" , opener.javascript.getParameter("opflagcd")); //수술구분코드
  62. model.setValue("/root/main/opanstschecnfm/perfdeptcd" , opener.javascript.getParameter("perfdeptcd")); //집도과
  63. model.setValue("/root/main/opanstschecnfm/perfdrid" , opener.javascript.getParameter("perfdrid")); //집도의
  64. model.setValue("/root/main/opanstschecnfm/diagcd" , opener.javascript.getParameter("diagcd")); //진단코드
  65. model.setValue("/root/main/opanstschecnfm/opcd" , opener.javascript.getParameter("opcd")); //수술코드
  66. model.setValue("/root/main/opanstschecnfm/orddeptcd" , opener.javascript.getParameter("orddeptcd"));
  67. model.setValue("/root/main/opanstschecnfm/cnstopflag" , opener.javascript.getParameter("cnstopflag")); // 협진
  68. model.setValue("/root/main/opanstschecnfm/anstccrtno" , opener.javascript.getParameter("anstccrtno")); // 마취CART
  69. model.setValue("/root/main/opanstschecnfm/reopflag" , opener.javascript.getParameter("reopflag")); // 재수술
  70. model.setValue("/root/main/opanstschecnfm/painlessflag" , opener.javascript.getParameter("painlessflag")); // painlessflag
  71. model.setValue("/root/main/opanstschecnfm/reqrsncd" , opener.javascript.getParameter("reqrsncd")); // 수술취소 변경 사유 2010.06.28 kskim
  72. model.setValue("/root/main/opanstschecnfm/aprvreqno" , opener.javascript.getParameter("aprvreqno")); // 승인번호 2010.06.28 kskim
  73. // 2008.09.25 협진문구 보여주기
  74. if(model.getValue("/root/main/opanstschecnfm/cnstopflag") == "Y") {
  75. //cap_cnfm.visible = true;
  76. // 09.02.04 주/부 변경
  77. /*var oprsrvno = model.getValue("/root/main/opanstschecnfm/oprsrvno");
  78. var mainoprsrvno = model.getValue("/root/main/opanstschecnfm/mainoprsrvno");
  79. if(oprsrvno != mainoprsrvno && mainoprsrvno == '-') {checkbox1.disabled = false;}*/
  80. // (e)
  81. // 09.02.04 주수술이 취소된 경우만 주/부 변경이 가능하도록
  82. if(!fChkMainOpYN()) return;
  83. } else { // 2008.10.20 협진인 경우는 풀어놓음 -> 협진 시간이후로 확정하는 경우 수술방선택하고 수술시간 input box disable 푸는 방법을 모르는 경우가 많음.
  84. //2008.09.01 LWS 수술방을 선택하고 시간을 입력할수 있도록 시간을 disabled
  85. ipt_fmtm.disabled = true;
  86. ipt_endtm.disabled = true;
  87. }
  88. window.modelessTopmost = true;
  89. model.refresh();
  90. }
  91. /**
  92. * @desc : 주/부 수술변경 여부
  93. * @
  94. * @param :
  95. * @return :
  96. * @author : 박유미
  97. * @---------------------------------------------------
  98. */
  99. function fChkMainOpYN(){
  100. var mainoprsrvno = model.getValue("/root/main/opanstschecnfm/mainoprsrvno");
  101. model.removeNodeset("/root/send/reqdata");
  102. model.makeValue("/root/send/reqdata/mainoprsrvno", mainoprsrvno); //등록번호
  103. if(submit("TRMMO05402")) {
  104. var rgstyn = model.getValue("/root/main/rgstinfo/rgstinfo/ret");
  105. var retmainoprsrvno = model.getValue("/root/main/rgstinfo/rgstinfo/mainoprsrvno");
  106. if(rgstyn == "Y") { // 주수술이 삭제되었음.
  107. caption1.visible = true;
  108. checkbox1.disabled = false;
  109. //window.height = 295;
  110. window.attribute("height") = 315;
  111. line8.visible = false;
  112. line1.visible = true;
  113. caption30.attribute("top") = "38px";
  114. input7.attribute("top") = "38px";
  115. caption39.attribute("top") = "62px";
  116. cmb_chngoproomcd.attribute("top") = "62px";
  117. caption31.attribute("top") = "86px";
  118. ipt_fmtm.attribute("top") = "86px";
  119. caption38.attribute("top") = "88px";
  120. ipt_endtm.attribute("top") = "86px";
  121. input8.attribute("top") = "86px";
  122. button1.attribute("top") = "86px";
  123. caption35.attribute("top") = "110px";
  124. combo13.attribute("top") = "110px";
  125. caption36.attribute("top") = "134px";
  126. combo14.attribute("top") = "134px";
  127. caption42.attribute("top") = "158px";
  128. combo16.attribute("top") = "158px";
  129. caption40.attribute("top") = "182px";
  130. cmb_chnganstmthdcd.attribute("top") = "182px";
  131. cmb_chnganstdetlmthdcd.attribute("top") = "182px";
  132. caption37.attribute("top") = "206px";
  133. cmb_chngageflag.attribute("top") = "206px";
  134. caption2.attribute("top") = "230px";
  135. checkbox1.attribute("top") = "233px";
  136. line9.visible = false;
  137. line2.visible = true;
  138. button44.attribute("top") = "260px";
  139. button43.attribute("top") = "260px";
  140. model.refresh();
  141. return true;
  142. }else{
  143. cap_cnfm.visible = true;
  144. return false;
  145. }
  146. }
  147. return true;
  148. }
  149. /**
  150. * @desc : 추가, 응급 수술마취 확정 저장
  151. * @
  152. * @param :
  153. * @return :
  154. * @author : 박유미
  155. * @---------------------------------------------------
  156. */
  157. function fClkBtnScheCnfm(){
  158. var today = getCurrentDate();
  159. var totm = getCurrentTime().substring(0,4);
  160. var opcnfmdd = model.getValue("/root/main/opanstschecnfm/opcnfmdd");
  161. var opfromtmcd = model.getValue("/root/main/opanstschecnfm/opfromtmcd");
  162. var opendtmcd = model.getValue("/root/main/opanstschecnfm/opendtmcd");
  163. var oproomcd = model.getValue("/root/main/opanstschecnfm/oproomcd");
  164. var mainoprsrvno = model.getValue("/root/main/opanstschecnfm/mainoprsrvno");
  165. if(fChkErAddOpAnstCnfm("/root/main/opanstschecnfm")==true){
  166. if(fCheckValidTime("/root/main/opanstschecnfm") == true) { //입력된 시간이 유효한지 check
  167. fChngOpTm("/root/main/opanstschecnfm"); //시간계산
  168. model.copyNode("/root/send/savedata", "/root/main/opanstschecnfm");
  169. if(submit("TXMMO05406")) {
  170. var msg = model.getValue("/root/main/opanstpatinfo/bfcnfmtmlist/msg");
  171. if(msg != "") {
  172. var chk = messageBox(msg + "\n\n", "Q012");
  173. }
  174. if(chk == "6" || msg == "") {
  175. if(submit("TXMMO05404")){
  176. opener.javascript.fReqSearch("Y");
  177. window.close();
  178. }
  179. model.refresh();
  180. }
  181. } // end fo submit
  182. }
  183. }
  184. }
  185. /**
  186. * @desc : 추가, 응급 수술마취 확정 취소
  187. * @
  188. * @param :
  189. * @return :
  190. * @author : 박유미
  191. * @---------------------------------------------------
  192. */
  193. function fClkBtnScheCncl(){
  194. opener.javascript.setParameter("SPMMO15000_rtn_useyn", "N");
  195. window.close();
  196. }
  197. /**
  198. * @desc : 초를 시분으로 전환
  199. * @
  200. * @param :
  201. * @return :
  202. * @author : 오지훈
  203. * @---------------------------------------------------
  204. */
  205. function fTransSecToHourMin(sec){
  206. var hr = 3600;
  207. var min = 60;
  208. hour = parseInt(sec/hr);
  209. min = parseInt(sec%hr/min);
  210. hour = ("" + hour + "").getLeftPad(2, "0");
  211. min = ("" + min + "").getLeftPad(2, "0");
  212. var rtnstr = hour.concat(min);
  213. return rtnstr;
  214. }