SMZHA20000.xjs 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. var xreqprgmlist = "/root/main/reqprgmlist";
  2. var xreqprgmcond = "/root/send/reqprgmdesc";
  3. var xdepreqlist = "/root/main/depreqlist";
  4. var xdepreqcond = "/root/send/depreqdesc";
  5. function fInit() {
  6. // 개발자정보 취득
  7. submit("TRZHA20008");
  8. // 담당자정보 취득
  9. // 개발자정보에서 accptyn으로 필터링적용함
  10. copyNodesetType("/root/init/chrginfo/chrglist", "/root/init/prgmrinfo/prgmrlist[accptyn='Y']");
  11. // 풀다운에 '전체'추가
  12. addComboItemAll("combo3|combo6", "전체");
  13. // 사용자정보 취득
  14. model.setValue("/root/send/userinfo/reqdd", getCurrentDate());
  15. submit("TRZHA20009");
  16. // 풀다운 초기화
  17. misfComboComCdList("C0114", cmb_workgb, "Y");
  18. misfComboComCdList("C0113", cmb_reqgb, "Y");
  19. misfComboComCdList("C0115", checkbox8, "N");
  20. // 개발요청서 초기화
  21. fReqPrgmInit();
  22. // 배포요청서 초기화(개발자 only)
  23. if (model.getValue("/root/init/userinfo/userlist/selectyn") == 'Y') {
  24. fDeployReqInit();
  25. var userId = getUserId();
  26. if (userId == '10257' || userId == '10258' || userId == '09248' || userId=='14298') {
  27. btn_deploy.visible = true;
  28. btn_predeploy.visible =true;
  29. } else {
  30. btn_deploy.visible = false;
  31. btn_predeploy.visible = false;
  32. }
  33. }
  34. // 구분초기화
  35. fCheckGubun();
  36. model.refresh();
  37. }
  38. // 개발요청서관리탭 초기화
  39. function fReqPrgmInit(){
  40. model.resetInstanceNode(xreqprgmlist);
  41. model.resetInstanceNode(xreqprgmcond);
  42. grd_reqprgm.rebuild();
  43. // 진료/간호/개발자 외 직종은 해당부서명 설정
  44. var jobKindCd = getUserInfo("jobkindcd")
  45. //alert(jobKindCd);
  46. if (jobKindCd != "0330" && jobKindCd != "1140"
  47. && model.getValue("/root/init/userinfo/userlist/selectyn") != 'Y') {
  48. model.setValue(xreqprgmcond + "/reqdeptnm", getUserInfo("dutplcenm"));
  49. model.setValue(xreqprgmcond + "/reqdeptcd", getUserInfo("dutplcecd"));
  50. model.setValue(xreqprgmcond + "/instcd", getUserInfo("dutplceinstcd"));
  51. button8.disabled = true;
  52. }
  53. // 일반사용자
  54. if (model.getValue("/root/init/userinfo/userlist/selectyn") != 'Y') {
  55. // 의사/간호는 해당업무 + 부서 검색가능 (CodeG:R0061, 의사:0330, 간호:1140)
  56. // 그외 직종은 해당부서 내에서만 검색가능
  57. // 직종 : 진료
  58. var jobKindCd = getUserInfo("jobkindcd")
  59. if (jobKindCd == "1140" || jobKindCd == "0330") {
  60. model.setValue(xreqprgmcond + "/jobkindcd", jobKindCd);
  61. } else {
  62. /*
  63. // 부서명 세팅
  64. model.setValue(xreqprgmcond + "/reqdeptnm", getUserInfo("dutplcenm"));
  65. model.setValue(xreqprgmcond + "/reqdeptcd", getUserInfo("dutplcecd"));
  66. model.setValue(xreqprgmcond + "/instcd", getUserInfo("dutplceinstcd"));
  67. */
  68. }
  69. // 일반사용자용 검색조건그룹 설정
  70. grp_dev.visible = false;
  71. grp_user.visible = true;
  72. grd_reqprgm.attribute("top") = "50";
  73. grd_reqprgm.attribute("height") = "655";
  74. // 탭숨기기
  75. btn_deptab.visible = false;
  76. // 일반사용자는 초기검색 실시
  77. //model.setValue("/root/send/reqprgmdesc/instcd", getUserInfo("posinstcd"));
  78. // model.setValue("/root/send/reqprgmdesc/reqmannm", getUserName());
  79. button5.dispatch("onclick");
  80. // 개발자
  81. } else {
  82. // 개발자는 기본적으로 본원/칠곡의 요청사항을 모두 조회하므로 초기화 필요없음
  83. // // 기관코드 및 사용자설정
  84. // var userInstcd = getUserInfo("posinstcd");
  85. //
  86. // if (userInstcd == '031') {
  87. //
  88. // model.setValue("/root/send/reqprgmdesc/inst031", "true");
  89. // } else if (userInstcd == '032') {
  90. //
  91. // model.setValue("/root/send/reqprgmdesc/inst032", "true");
  92. // }
  93. // fCheckInstcd();
  94. // 개발자용 검색조건그룹 설정
  95. grp_dev.visible = true;
  96. grp_user.visible = false;
  97. grd_reqprgm.attribute("top") = "185";
  98. grd_reqprgm.attribute("height") = "520";
  99. }
  100. model.refresh();
  101. }
  102. // 배포요청서관리탭 초기화
  103. function fDeployReqInit(){
  104. model.resetInstanceNode(xdepreqlist);
  105. model.resetInstanceNode(xdepreqcond);
  106. var sDate = getNewDate().getAddDate(-7, "D")
  107. var rtnDate = sDate.getFullYear();
  108. rtnDate = rtnDate.toString() + (( sDate.getMonth() + 1 > 9 ) ? sDate.getMonth() + 1 : "0" + (sDate.getMonth() + 1));
  109. rtnDate = rtnDate.toString() + (( sDate.getDate() > 9 ) ? sDate.getDate() : "0" + sDate.getDate()) ;
  110. model.setValue(xdepreqcond + "/reqfromdd", rtnDate);
  111. model.setValue(xdepreqcond + "/reqtodd", getCurrentDate());
  112. model.setValue(xdepreqcond + "/reqhopetodd", getCurrentDate());
  113. grd_deqreq.rebuild();
  114. model.refresh();
  115. }
  116. function fCheckValidation(){
  117. if(isNull(model.getValue(xdepreqcond + "/reqfromdd"))
  118. && isNull(model.getValue(xdepreqcond + "/reqtodd"))) {
  119. messageBox("요청일을", "C001");
  120. return false;
  121. }
  122. return true;
  123. }
  124. // 기관코드 제어
  125. function fCheckInstcd() {
  126. if (chk_inst031.value == "true" && chk_inst032.value != "true") {
  127. model.setValue(xreqprgmcond + "/instcd", "031");
  128. } else if (chk_inst031.value != "true" && chk_inst032.value == "true") {
  129. model.setValue(xreqprgmcond + "/instcd", "032");
  130. } else {
  131. model.setValue(xreqprgmcond + "/instcd", "");
  132. }
  133. }
  134. // 개발/통계 업무구분 제어
  135. function fCheckGubun() {
  136. if (chk_gubunDev.value == "1" && chk_gubunData.value != "1") {
  137. cmb_workgb.disabled = false;
  138. cmb_reqgb.disabled = true;
  139. model.setValue(xreqprgmcond + "/gubun", "1");
  140. } else if (chk_gubunDev.value != "1" && chk_gubunData.value == "1") {
  141. cmb_workgb.disabled = true;
  142. cmb_reqgb.disabled = false;
  143. model.setValue(xreqprgmcond + "/gubun", "2");
  144. } else if (chk_gubunDev.value == "1" && chk_gubunData.value == "1") {
  145. cmb_workgb.disabled = false;
  146. cmb_reqgb.disabled = false;
  147. model.setValue(xreqprgmcond + "/gubun", "3");
  148. } else {
  149. cmb_workgb.disabled = true;
  150. cmb_reqgb.disabled = true;
  151. model.setValue(xreqprgmcond + "/gubun", "-");
  152. }
  153. }
  154. // 배포종류 제어
  155. function fCheckDeptype() {
  156. if (chk_deptypeap.value == "1" && chk_deptypedb.value != "1") {
  157. model.setValue(xdepreqcond + "/deptype", "1");
  158. } else if (chk_deptypeap.value != "1" && chk_deptypedb.value == "1") {
  159. model.setValue(xdepreqcond + "/deptype", "2");
  160. } else {
  161. model.setValue(xdepreqcond + "/deptype", "-");
  162. }
  163. }
  164. // 배포실시
  165. function setDeploy(deploygbn) {
  166. var grdSize = grd_deqreq.rows;
  167. var chkFlag = false;
  168. var depNoList = "";
  169. for (i = 1; i < grdSize; i++) {
  170. if (model.getValue("/root/main/depreqlist[" + i + "]/chk") == "true") {
  171. depNoList += model.getValue("/root/main/depreqlist[" + i + "]/depno") + ":";
  172. chkFlag = true;
  173. }
  174. }
  175. //alert(getGridUpdateData(grd_deqreq));
  176. model.setValue("/root/send/target/deploylist", depNoList);
  177. model.makeValue("/root/send/target/deploygbn", deploygbn);
  178. if (chkFlag) {
  179. submit("TXZHA20105");
  180. button2.dispatch("onclick");
  181. }
  182. }