SMMNP06100.xjs 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/*
  3. 수술 진행현황판(SMMNP06100_수술실 전광판관리.xrw - JScript )
  4. - Version :
  5. 1) : Ver.1.00.01
  6. - Programmer : 문창곤
  7. */
  8. /**
  9. * @group :
  10. * @ver : 2007.10.02
  11. * @by : 문창곤
  12. * @---------------------------------------------------
  13. * @type : function
  14. * @access : public
  15. * @desc : 초기화 작업
  16. * @param :
  17. * @param :
  18. * @return :
  19. * @---------------------------------------------------
  20. */
  21. function fInitialize(){
  22. ds_main_oppatlist_oppatinfo.clearData();
  23. ds_main_cond.setColumn(0, "opdd", utlf_getCurrentDate());
  24. //----(20071210)
  25. //2008-08-28 오후 7:13:39 taebum 회복실 3건인것 처리로 인한 기초코드 사용안함.
  26. // 공통코드 nodeset 정보 : root/init/M0021list/M0021
  27. // label 정보 : cdnm
  28. // value 정보 : cdid
  29. //zbcfGetCodeList(new Array("M0021"), new Array("/root/init/M0021list")); //수술환자의 현재 위치 장소에 대한 종류
  30. fGetNursHardCdInfo("'035'", utlf_getCurrentDate()); //ds_codelist
  31. //2008-09-29 오후 7:03:12 taebum add
  32. //=================================================================
  33. //M0021 기초코드 tempNode를 만든다. 종료, 회복실 선택용 노드셋
  34. // model.copyNode("/root/hidden/tempM0021", "/root/init/M0021list");
  35. // model.removeNode("/root/hidden/tempM0021/M0021[cdid='']");
  36. // model.removeNode("/root/hidden/tempM0021/M0021[cdid='00']");
  37. // model.removeNode("/root/hidden/tempM0021/M0021[cdid='41']");
  38. // model.removeNode("/root/hidden/tempM0021/M0021[cdid='42']");
  39. // model.removeNode("/root/hidden/tempM0021/M0021[cdid='43']");
  40. //=================================================================
  41. //----(20071231)
  42. var instcd = sysf_getUserInfo("dutplceinstcd");
  43. var standard_yn = "orduseyn" ;
  44. var ord_deptflag = "D" ;
  45. var rslt_ref = "ds_hidden_orddeptlist_dept" ;
  46. var sort_field = "depthngnm" ;
  47. var sort_method = "asc" ;
  48. appf_getDeptCodeList(instcd, standard_yn, ord_deptflag, sort_field, sort_method, "", "", "", rslt_ref);
  49. //---수술방
  50. ds_send.setColumn(0, "opcnfmdd", grp_biz.group1.ipt_dlivdd.value);
  51. var oParam = {};
  52. oParam.id = "TRMNP06001";
  53. oParam.service = "opanstapp.OpAnstDscMngt";
  54. oParam.method = "reqGetOmcdlist";
  55. oParam.inds = "req=ds_send";
  56. oParam.outds = "ds_init_omcdlist=omcdlist";
  57. oParam.async = false;
  58. //oParam.callback = "cf_TRMNP06001";
  59. tranf_submit(oParam);
  60. fGetOpPatList();
  61. //2008-08-20 오후 2:51:37 taebum 취소상태를 없애기 위하여 xfm안에 comboData로 사용 변경
  62. // 기존 진행상태 node 정보 : /root/init/opstatlist/opstatinfo
  63. }
  64. /**
  65. * @group :
  66. * @ver : 2007.10.02
  67. * @by : 문창곤
  68. * @---------------------------------------------------
  69. * @type : function
  70. * @access : public
  71. * @desc : 수술환자 조회.
  72. * @param :
  73. * @param :
  74. * @return :
  75. * @---------------------------------------------------
  76. */
  77. function fGetOpPatList(){
  78. ds_send_reqdata.copyRow(0, ds_main_cond, 0);
  79. //수술상태
  80. var oParam = {};
  81. oParam.id = "TRMNP01102";
  82. oParam.service = "opanstapp.OpAnstPatMngt";
  83. oParam.method = "reqGetOpstatcdInfo";
  84. oParam.inds = "reqdata=ds_send_reqdata";
  85. oParam.outds = "ds_init_opstatlist_opstatinfo=opstatinfo";
  86. oParam.async = false;
  87. //oParam.callback = "cf_TRMNP01102";
  88. tranf_submit(oParam);
  89. //조회
  90. var oParam = {};
  91. oParam.id = "TRMNP01101";
  92. oParam.service = "opanstapp.OpAnstPatMngt";
  93. oParam.method = "reqGetOpPatInfoList";
  94. oParam.inds = "reqdata=ds_send_reqdata";
  95. oParam.outds = "ds_main_oppatlist_oppatinfo=oppatinfo";
  96. oParam.async = false;
  97. //oParam.callback = "cf_TRMNP01101";
  98. tranf_submit(oParam);
  99. if( utlf_isNull(ds_main_oppatlist_oppatinfo.getColumnInfo("colEditType9")) ){
  100. ds_main_oppatlist_oppatinfo.addColumn("colEditType9", "string");
  101. }
  102. ds_main_oppatlist_oppatinfo.enableevent = false;
  103. ds_main_oppatlist_oppatinfo.updatecontrol = false;
  104. dsf_setDefaultVal(ds_main_oppatlist_oppatinfo, "colEditType9:combo");
  105. ds_main_oppatlist_oppatinfo.updatecontrol = true;
  106. ds_main_oppatlist_oppatinfo.enableevent = true;
  107. ndCnt = ds_main_oppatlist_oppatinfo.rowcount;
  108. //expr로 처리
  109. /*for( var i=0 ; i<ndCnt ; i++ )
  110. {
  111. if( ds_main_oppatlist_oppatinfo.getColumn(i, "opstatcd") == "20" ) // 수술예정 - 검정색
  112. grp_biz.grd_partrtnlist.cellStyle("color", i, 8, i, 8) = "#000000" ;
  113. else if( ds_main_oppatlist_oppatinfo.getColumn(i, "opstatcd") == "29" ) // 수술취소 - 회색
  114. grp_biz.grd_partrtnlist.cellStyle("color", i, 8, i, 8) = "#5A5A5A" ;
  115. else if( ds_main_oppatlist_oppatinfo.getColumn(i, "opstatcd") == "30" ) // 수술대기 - 분홍색
  116. //grd_partrtnlist.cellStyle("color", i, 1, i, 10) = "#FF82FF" ;
  117. grp_biz.grd_partrtnlist.cellStyle("color", i, 8, i, 8) = "#FF82FF" ;
  118. else if( ds_main_oppatlist_oppatinfo.getColumn(i, "opstatcd") == "40" ) // 수술중 - 빨강색
  119. grp_biz.grd_partrtnlist.cellStyle("color", i, 8, i, 8) = "#FF0000" ;
  120. else if( ds_main_oppatlist_oppatinfo.getColumn(i, "opstatcd") == "50" ) // 수술종료 - 파랑색
  121. grp_biz.grd_partrtnlist.cellStyle("color", i, 8, i, 8) = "#0000FF" ;
  122. else if( ds_main_oppatlist_oppatinfo.getColumn(i, "opstatcd") == "60" ) // 회복중 - 녹색
  123. //grd_partrtnlist.cellStyle("color", i, 1, i, 10) = "#00FF00" ;
  124. grp_biz.grd_partrtnlist.cellStyle("color", i, 8, i, 8) = "#50C785" ; //
  125. else if( ds_main_oppatlist_oppatinfo.getColumn(i, "opstatcd") == "70" ) // 퇴실 - 청녹색
  126. grp_biz.grd_partrtnlist.cellStyle("color", i, 8, i, 8) = "#006600" ; // i, 1, i, 10
  127. }*/
  128. fnColDisableAll();
  129. }
  130. /**
  131. * @group :
  132. * @ver : 2007.10.04
  133. * @by : 문창곤
  134. * @---------------------------------------------------
  135. * @type : function
  136. * @access : public
  137. * @desc : 수술환자리스트에서 수술진행상황 및 공개여부 수정
  138. * @param :
  139. * @param :
  140. * @return :
  141. * @---------------------------------------------------
  142. */
  143. function fClickUpdate()
  144. {
  145. if(!checkGridUpdate(grp_biz.grd_partrtnlist))
  146. {
  147. sysf_messageBox("업데이트 정보가 ", "I004");
  148. return;
  149. }
  150. var answer = sysf_messageBox("데이터 수정을 ", "Q004");
  151. if(answer == 6) {
  152. ds_send_savedata.copyData(grdf_getGridUpdateData(grp_biz.grd_partrtnlist, "all"));
  153. var oParam = {};
  154. oParam.id = "TXMNP01101";
  155. oParam.service = "opanstapp.OpAnstPatMngt";
  156. oParam.method = "reqSetOpPatInfo";
  157. oParam.inds = "savedata=ds_send_savedata";
  158. oParam.outds = "";
  159. oParam.async = false;
  160. oParam.callback = "cf_TXMNP01101";
  161. tranf_submit(oParam);
  162. if( arErrorCode.pop("TXMNP01101") > -1 ){
  163. fGetOpPatList() ; // 재 조회
  164. }
  165. }
  166. }
  167. function cf_TXMNP01101(sSvcId, nErrorCode, sErrorMsg) {
  168. arErrorCode.push(sSvcId, nErrorCode);
  169. }
  170. /**
  171. * @group :
  172. * @ver : 2007.10.04
  173. * @by : 문창곤
  174. * @---------------------------------------------------
  175. * @type : function
  176. * @access : public
  177. * @desc : 그리드 수정여부 확인
  178. * @param :
  179. * @param :
  180. * @return :
  181. * @---------------------------------------------------
  182. */
  183. function checkGridUpdate(grid)
  184. {
  185. for( var i=0 ; i<ds_main_oppatlist_oppatinfo.rowcount ; i++ ){
  186. if( ds_main_oppatlist_oppatinfo.getRowType(i) == 4 ){
  187. return true;
  188. }
  189. }
  190. return false;
  191. }
  192. /* --------------------------------------------------*/
  193. /* type : function */
  194. /* access : public */
  195. /* desc : 환자정보 가져오기 */
  196. /* param : 검색구분 */
  197. /* return : */
  198. /* --------------------------------------------------*/
  199. function fSearchPatInfo(qryflag) {
  200. frmf_modal("SPPMC02500","SPPMC02500",null,"",qryflag,150,150,"","","","","","M"); //yjh : 커밋
  201. //환자번호 copy
  202. var popupendflag = frmf_getParameter("SPPMC02500_popupendflag");
  203. if (popupendflag == "ok"){
  204. ds_main_cond.setColumn(0, "pid", ds_patinfolist.getColumn(0, "pid"));
  205. var pid = ds_patinfolist.getColumn(0, "pid");
  206. if( !utlf_isNull(pid) && pid != " " && pid != "-" ){
  207. fpidref();
  208. }
  209. }
  210. }
  211. /* --------------------------------------------------*/
  212. /* type : function */
  213. /* access : public */
  214. /* desc : 등록번호에 따른 환자정보 검색 */
  215. /* param : */
  216. /* return : */
  217. /* --------------------------------------------------*/
  218. function fpidref(){
  219. var pid = grp_biz.group1.ipt_pid.value
  220. ds_send.setColumn(0, "pid", pid);
  221. var oParam = {};
  222. oParam.id = "TRMNI00102";
  223. oParam.service = "injroomapp.InjRoomPatMngt";
  224. oParam.method = "reqGetPidRef";
  225. oParam.inds = "refCond=ds_send";
  226. oParam.outds = "ds_main_rghtref_rghtreflist=rghtreflist";
  227. oParam.async = false;
  228. oParam.callback = "cf_TRMNI00102";
  229. tranf_submit(oParam);
  230. if( arErrorCode.pop("TRMNI00102") > -1 ){
  231. var hngnm=ds_main_rghtref_rghtreflist.getColumn(0, "hngnm");
  232. //데이타가 없을시 이전 출력 내용 삭제.
  233. if( utlf_isNull(hngnm) ){
  234. grp_biz.group1.opt_hngnm.value="";
  235. grp_biz.group1.opt_gndrage.value="";
  236. grp_biz.group1.opt_rrgstno.value="";
  237. //model.makeValue("/root/main/rghtref/rghtreflist/pid","");
  238. } else {
  239. ds_main_cond.setColumn(0, "pid", ds_main_rghtref_rghtreflist.getColumn(0, "pid"));
  240. ds_main_cond.setColumn(0, "hngnm", ds_main_rghtref_rghtreflist.getColumn(0, "hngnm"));
  241. ds_main_cond.setColumn(0, "gndrage", ds_main_rghtref_rghtreflist.getColumn(0, "gndrage"));
  242. ds_main_cond.setColumn(0, "rrgstno", ds_main_rghtref_rghtreflist.getColumn(0, "rrgstno"));
  243. }
  244. }
  245. }
  246. function cf_TRMNI00102(sSvcId, nErrorCode, sErrorMsg) {
  247. arErrorCode.push(sSvcId, nErrorCode);
  248. }
  249. ]]></Script>