SMMMO02400.js 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. function fInitOrdSpec() {
  2. grd_patchosinfo.visible = true;
  3. grd_prcpdd.visible = false;
  4. grd_bfprcplist.visible = false
  5. btn_detl.visible = false;
  6. btn_prcpday.visible= false;
  7. var prcpgenrflag = opener.model.getValue ( "/root/patflag/list/prcpgenrflag" );
  8. var pid = opener.model.getValue ( "/root/paminfo/list/pid" );
  9. model.setValue ( "/root/send/cond1", "1" );
  10. model.setValue ( "/root/send/cond2", pid );
  11. model.setValue ( "/root/send/cond3", getUserInfo("dutplceinstcd"));
  12. model.setValue ( "/root/send/cond4", model.getValue ( "/root/init/srchcond1" ));
  13. model.setValue ( "/root/send/cond5", "");
  14. model.setValue ( "/root/send/cond6", "");
  15. if ( isNull(cmb_dept.value)) { //처음 띄워서 값이 없을 때
  16. model.setValue ( "/root/send/cond7", "-" );
  17. } else {
  18. model.setValue ( "/root/send/cond7", cmb_dept.value);
  19. }
  20. model.setValue ( "/root/send/cond8", model.getValue ( "/root/init/clincstdyflag" )); // 임상접수 포함.
  21. model.setValue ( "/root/send/cond9", model.getValue ( "/root/init/chkprcp" )); // 가접수 포함.
  22. model.setValue ( "/root/send/cond10", model.getValue ( "/root/init/kidney" )); // 인공신장실만.
  23. model.setValue ( "/root/send/cond99", "ordspec" );
  24. submit ( "TRMMO02501" ); //내원부서정보, 내원환자정보를 조회한다.
  25. var srcChildList = model.instances(0).selectNodes( "/root/patinfo/patchosdeptinfo" );
  26. var destNode = model.instances(0).selectSingleNode("/root/init/deptlist");
  27. if ( model.getValue ( "/root/send/cond7") == "-" ) { //전체조회가 아닌경우는 부서조회를 하지 않음으로 카피하지 않는다.
  28. model.removeNodeset ( "/root/init/deptlist/patchosdeptinfo" );
  29. for(var j = 0; j < srcChildList.length; j++) {
  30. destNode.appendChild(srcChildList.item(j).cloneNode(true));
  31. }
  32. cmb_dept.value = "-";
  33. cmb_dept.refresh();
  34. }
  35. //CP일 경우, viewer안의 컨트롤 height 사이즈를 모두 조정해야 함 (2008.08.28 JJE)
  36. if ( opener.model.getValue ( "/root/cp" ) == "Y" ) {
  37. opener.window.javascript.fResizeControls();
  38. }
  39. }
  40. function fPatChosInfo () {
  41. var flag = "";
  42. var pid = model.getValue( "/root/patinfo/patchosinfolist[" + grd_patchosinfo.row + "]/pid" );
  43. var orddd = model.getValue( "/root/patinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddd" );
  44. var prcpdd = opener.model.getValue ( "/root/init/prcpdd" );
  45. var bfflag = "bfprcp";
  46. var orddrid = model.getValue( "/root/patinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddrid" );
  47. var todd = "";
  48. var prcpgenrflag = model.getValue( "/root/patinfo/patchosinfolist[" + grd_patchosinfo.row + "]/ordtype" );
  49. var orddeptcd = model.getValue( "/root/patinfo/patchosinfolist[" + grd_patchosinfo.row + "]/orddeptcd" );
  50. var cretno = model.getValue( "/root/patinfo/patchosinfolist[" + grd_patchosinfo.row + "]/cretno" );
  51. btn_detl.visible = true; //진료내역버튼 보이기
  52. btn_prcpday.visible = false; //처방일 보이기 버튼 감추기
  53. btn_detlvw.disabled = false; //처방상세버튼 disable 풀기
  54. button9.disabled = false; //전체선택버튼 disable 풀기
  55. button6.disabled = false; //선택취소버튼 disable 풀기
  56. btn_copy.disabled = false; //처방복사버튼 disable 풀기
  57. if ( prcpgenrflag == "O" ) {
  58. model.removeNodeset ( "/root/prcpsrch" );
  59. grd_prcpdd.visible = false;
  60. grd_bfprcplist.attribute ( "left" ) = "3";
  61. grd_bfprcplist.attribute ( "width" ) = "380";
  62. grd_patchosinfo.visible = false;
  63. grd_bfprcplist.visible = true;
  64. model.setValue ( "/root/send/cond1", pid); //환자ID
  65. model.setValue ( "/root/send/cond2", orddd ); //외래:진료일, 입원:입원일
  66. model.setValue ( "/root/send/cond3", "0" ); //처방권한 구분
  67. model.setValue ( "/root/send/cond4", prcpdd ); //처방일자
  68. model.setValue ( "/root/send/cond5", bfflag ); //전처방 where 조건 구분자
  69. model.setValue ( "/root/send/cond6", flag ); //최초구분
  70. model.setValue ( "/root/send/cond7", orddrid); //의사ID,외래에서만 필요하다.
  71. model.setValue ( "/root/send/cond8", todd); //todd
  72. model.setValue ( "/root/send/cond9", prcpgenrflag ); //외래입원구분
  73. model.setValue ( "/root/send/cond10", orddeptcd ); //부서코드
  74. model.setValue ( "/root/send/cond11", cretno ); //생성번호
  75. model.makeValue( "/root/send/cond14", prcpdd );
  76. model.setValue ( "/root/send/cond99", "getBfPrcpSrchInfo" );//검색구분
  77. submit ("TRMMO00100", true)
  78. } else {
  79. model.removeNodeset ( "/root/prcpsrch" );
  80. grd_prcpdd.visible = true;
  81. grd_bfprcplist.attribute ( "left" ) = "104";
  82. grd_bfprcplist.attribute ( "width" ) = "277";
  83. grd_bfprcplist.visible = true;
  84. grd_patchosinfo.visible = false;
  85. model.setValue ( "/root/send/cond1", pid); //환자ID
  86. model.setValue ( "/root/send/cond2", orddd ); //외래:진료일, 입원:입원일
  87. model.setValue ( "/root/send/cond3", "0" ); //처방권한 구분
  88. model.setValue ( "/root/send/cond4", prcpdd ); //처방일자
  89. model.setValue ( "/root/send/cond5", bfflag ); //전처방 where 조건 구분자
  90. model.setValue ( "/root/send/cond6", flag ); //최초구분
  91. model.setValue ( "/root/send/cond7", orddrid); //의사ID,외래에서만 필요하다.
  92. model.setValue ( "/root/send/cond8", todd); //todd
  93. model.setValue ( "/root/send/cond9", prcpgenrflag ); //외래입원구분
  94. model.setValue ( "/root/send/cond10", orddeptcd ); //부서코드
  95. model.setValue ( "/root/send/cond11", cretno ); //생성번호
  96. model.makeValue( "/root/send/cond14", prcpdd );
  97. model.setValue ( "/root/send/cond99", "getBfPrcpSrchInfo" );//검색구분
  98. submit ("TRMMO02502", true)
  99. //입원 더블클릭시 입원이력의 처방일자의 마지막일자 처방내역 display
  100. if(model.getValue ( "/root/patprcpday/patprcpdaylist[1]/prcpdd" ) != ""){
  101. grd_prcpdd.row = 1;
  102. fPrcpDd("first");
  103. }
  104. }
  105. grd_bfprcplist.autoResize = true ;
  106. model.refresh();
  107. var srcNodeList = model.instances(0).selectNodes ( "/root/prcpsrch/prcplist" );
  108. for ( var i=1; i <= srcNodeList.length; i++ ) {
  109. var colorArray = model.getValue ( "/root/prcpsrch/prcplist[" + i + "]/tempcol10" ) + "^";
  110. var backgroundcolor = getArrayData (colorArray, 0, 0, "^", "|" );
  111. var fontcolor = getArrayData (colorArray, 0, 1, "^", "|" );
  112. var boldflag = getArrayData (colorArray, 0, 2, "^", "|" );
  113. if ( !isNull(backgroundcolor)) {
  114. grd_bfprcplist.rowstyle(i, "data", "background-color") = backgroundcolor;
  115. } else {
  116. grd_bfprcplist.rowstyle(i, "data", "background-color") = "#ffffff";
  117. }
  118. if ( !isNull(fontcolor)) {
  119. grd_bfprcplist.rowstyle(i, "data", "color") = fontcolor;
  120. } else {
  121. grd_bfprcplist.rowstyle(i, "data", "color") = "#000000";
  122. }
  123. if ( !isNull(boldflag)) {
  124. grd_bfprcplist.rowstyle(i, "data", "font-weight") = boldflag;
  125. } else {
  126. grd_bfprcplist.rowstyle(i, "data", "font-weight") = "normal";
  127. }
  128. }
  129. }
  130. function fPrcpDd(f) {
  131. btn_prcpday.visible = true; //처방일 보이기 버튼 보이기
  132. //btn_detl.visible = true;
  133. model.removeNodeset ( "/root/prcpsrch" );
  134. if(f == "first"){
  135. model.setValue ( "/root/send/cond4", model.getValue ( "/root/patprcpday/patprcpdaylist[1]/prcpdd" ));
  136. }
  137. else{
  138. model.setValue ( "/root/send/cond4", model.getValue ( "/root/patprcpday/patprcpdaylist[" + grd_prcpdd.row + "]/prcpdd" ));
  139. }
  140. grd_prcpdd.visible = false;
  141. grd_bfprcplist.attribute ( "left" ) = "3";
  142. grd_bfprcplist.attribute ( "width" ) = "380";
  143. grd_bfprcplist.colWidth(grd_bfprcplist.colRef ( "tempcol6" )) = 210;
  144. grd_bfprcplist.colWidth(grd_bfprcplist.colRef ( "tempcol7" )) = 320;
  145. submit ( "TRMMO00100" );
  146. grd_bfprcplist.autoResize = true ;
  147. model.refresh();
  148. var srcNodeList = model.instances(0).selectNodes ( "/root/prcpsrch/prcplist" );
  149. for ( var i=1; i <= srcNodeList.length; i++ ) {
  150. var colorArray = model.getValue ( "/root/prcpsrch/prcplist[" + i + "]/tempcol10" ) + "^";
  151. var backgroundcolor = getArrayData (colorArray, 0, 0, "^", "|" );
  152. var fontcolor = getArrayData (colorArray, 0, 1, "^", "|" );
  153. var boldflag = getArrayData (colorArray, 0, 2, "^", "|" );
  154. if ( !isNull(backgroundcolor)) {
  155. grd_bfprcplist.rowstyle(i, "data", "background-color") = backgroundcolor;
  156. } else {
  157. grd_bfprcplist.rowstyle(i, "data", "background-color") = "#ffffff";
  158. }
  159. if ( !isNull(fontcolor)) {
  160. grd_bfprcplist.rowstyle(i, "data", "color") = fontcolor;
  161. } else {
  162. grd_bfprcplist.rowstyle(i, "data", "color") = "#000000";
  163. }
  164. if ( !isNull(boldflag)) {
  165. grd_bfprcplist.rowstyle(i, "data", "font-weight") = boldflag;
  166. } else {
  167. grd_bfprcplist.rowstyle(i, "data", "font-weight") = "normal";
  168. }
  169. }
  170. }
  171. function fdetlvw() {
  172. btn_detl.visible = false; //진료내역버튼 감추기
  173. grd_prcpdd.visible = false;
  174. grd_bfprcplist.visible = false;
  175. btn_prcpday.visible = false;
  176. grd_patchosinfo.visible = true;
  177. btn_detlvw.disabled = true; //처방상세버튼 disable
  178. button9.disabled = true; //전체선택버튼 disable
  179. button6.disabled = true; //선택취소버튼 disable
  180. btn_copy.disabled = true; //처방복사버튼 disable
  181. }
  182. function fDetlPrcpDay() {
  183. btn_prcpday.visible = false;
  184. grd_prcpdd.visible = true;
  185. grd_bfprcplist.attribute ( "left" ) = "104";
  186. grd_bfprcplist.attribute ( "width" ) = "277";
  187. grd_bfprcplist.visible = true;
  188. grd_patchosinfo.visible = false;
  189. grd_bfprcplist.colWidth(grd_bfprcplist.colRef ( "tempcol6" )) = 210;
  190. grd_bfprcplist.colWidth(grd_bfprcplist.colRef ( "tempcol7" )) = 320;
  191. }