SMMQO00100.js 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278
  1. function fInitialize(){
  2. var prcsstatcd = "";
  3. if(isPopup() == true){
  4. prcsstatcd = opener.javascript.getParameter("prcsstatcd");
  5. var ano = opener.javascript.getParameter("ano");
  6. if(prcsstatcd == 0 && model.getValue("/root/main/cond/prcsstatcd") > 0){
  7. prcsstatcd = model.getValue("/root/main/cond/prcsstatcd");
  8. }
  9. if(ano == "" && model.getValue("/root/main/cond/acptno") != "" ){
  10. ano = model.getValue("/root/main/cond/acptno");
  11. }
  12. // 제안자 비공개 관련 사항 처리.
  13. if ( opener.javascript.getParameter("suggempid") != "" && opener.javascript.getParameter("suggempid") != getUserId() ) {
  14. input41.visible = false;
  15. caption11.text = "제안부서";
  16. output1.attribute("left") = "93";
  17. cap_suggempcntctel.visible = false;
  18. ipt_suggempcntctel.visible = false;
  19. cap_suggempemail.visible = false;
  20. ipt_suggempemail.visible = false;
  21. line6.attribute("y1") = "76";
  22. line6.attribute("y2") = "76";
  23. }
  24. setParameter("ano", ano);
  25. }
  26. model.removeNodeset("/root/send/cond/attach/attf"); //첨부파일 그리드의 최상위 row를 삭제
  27. model.removeNodeset("/root/tmp/attach"); //조회되어있는 첨부파일 목록을 삭제
  28. if(isPopup() != true){
  29. prcsstatcd = model.getValue("/root/main/cond/prcsstatcd");
  30. btn_close.visible = false;
  31. }
  32. /*++++++++++++++++++++++++++++++++++++++++++권한별 화면 설정+++++++++++++++++++++++++++++++++++++++++++++*/
  33. //교직원 제안접수화면용 조회
  34. if(prcsstatcd <= 1){
  35. groupRevitalize("grp_propos", "D", "N");
  36. //0. 최초등록
  37. if(prcsstatcd == "0"){
  38. btn_del.visible = false;
  39. btn_addrepl.visible = false;
  40. btn_repl.visible = false;
  41. btn_exec.visible = false;
  42. //사용자 Session정보 setting
  43. var rgstrid = getUserId();
  44. var rgstrhngnm = getUserInfo("usernm");
  45. var suggempdeptcd = getUserInfo("dutplcecd");
  46. var suggempdeptnm = getUserInfo("dutplcenm");
  47. var acptdd = getCurrentDate();
  48. model.setValue("/root/main/cond/suggempid" , rgstrid);
  49. model.setValue("/root/tmp/userid" , rgstrid);
  50. model.setValue("/root/main/cond/suggemphngnm" , rgstrhngnm);
  51. model.setValue("/root/main/cond/suggempdeptcd" , suggempdeptcd);
  52. model.setValue("/root/main/cond/suggempdeptnm" , suggempdeptnm);
  53. model.setValue("/root/main/cond/acptdd" , acptdd);
  54. //model.makeValue("/root/main/cond/srchflag" , "1");
  55. submit("TRMQK00101"); //사용자 정보 중 휴대폰,E-mail가져오는 submit
  56. var suggempemail = model.getValue("/root/tmp/userinfo/email");
  57. var suggempcntctel = model.getValue("/root/tmp/userinfo/mpphonno");
  58. model.setValue("/root/main/cond/suggempcntctel", suggempcntctel);
  59. model.setValue("/root/main/cond/suggempemail" , suggempemail);
  60. }
  61. //1. 교직원제안접수항목 조회
  62. if(prcsstatcd == "1"){
  63. btn_del.visible = false;
  64. btn_save.visible = false;
  65. btn_repl.visible = false;
  66. btn_exec.visible = false;
  67. if(isPopup() == true){
  68. model.makeValue("/root/main/cond/acptno", ano);
  69. }
  70. submit("TRMQO00100");
  71. copyNodeType("/root/main/cond", "/root/tmp/cond", "replace");
  72. copyNodeType("/root/send/cond/attach", "/root/tmp/attach", "replace");
  73. model.refresh();
  74. var userid = getUserId();
  75. var suggid = model.getValue("/root/tmp/cond/suggempid");
  76. //사용자에 따른 권한설정
  77. if(userid == suggid){
  78. btn_save.visible = true;
  79. btn_del.visible = true;
  80. btn_addrepl.visible = false;
  81. }
  82. else{
  83. btn_addrepl.visible = true;
  84. ipt_suggempcntctel.disabled = true;
  85. ipt_suggempemail.disabled = true;
  86. cmb_suggkindcd.disabled = true;
  87. ipt_subj.disabled = true;
  88. tar_suggplan.attribute("editable") = "false";
  89. tar_prescond.attribute("editable") = "false";
  90. button5.disabled = true;
  91. button6.disabled = true;
  92. }
  93. }
  94. grp_exec.attribute("visibility") = "hidden";
  95. }
  96. else{
  97. btn_repl.visible = false;
  98. btn_exec.visible = false;
  99. btn_save.visible = false;
  100. btn_del.visible = false;
  101. if(isPopup() == true){
  102. model.makeValue("/root/main/cond/acptno", ano);
  103. }
  104. submit("TRMQO00100");
  105. copyNodeType("/root/main/cond", "/root/tmp/cond", "replace");
  106. copyNodeType("/root/send/cond/attach", "/root/tmp/attach", "replace");
  107. //groupRevitalize("grp_propos", "D", "Y");
  108. model.refresh();
  109. ipt_suggempemail.disabled = true;
  110. cmb_suggkindcd.disabled = true;
  111. ipt_subj.disabled = true;
  112. tar_prescond.attribute("editable") = "false";
  113. tar_suggplan.attribute("editable") = "false";
  114. tar_prescond.refresh();
  115. tar_suggplan.refresh();
  116. button5.disabled = true;
  117. button6.disabled = true;
  118. ipt_suggempcntctel.disabled = true;
  119. var nodeCnt = getNodesetCount("/root/tmp/opin/list");
  120. var userid = getUserId();
  121. var userdeptcd = getUserInfo("dutplcecd");
  122. var suggid = model.getValue("/root/tmp/cond/suggempid");
  123. for(var i = 1; i <= nodeCnt; i++){
  124. var chgrid = model.getValue("/root/tmp/opin/list[" + i + "]/perchgrid");
  125. var chgrdept = model.getValue("/root/tmp/opin/list[" + i + "]/perchgrdeptcd");
  126. var execid = model.getValue("/root/tmp/opin/list[" + i + "]/perexecid");
  127. var execdept = model.getValue("/root/tmp/opin/list[" + i + "]/perexecdeptcd");
  128. if (userid == chgrid || userdeptcd == chgrdept){
  129. btn_repl.visible = true;
  130. }
  131. if (userid == execid || userdeptcd == execdept){
  132. btn_exec.visible = true;
  133. }
  134. }
  135. if(userid == suggid){
  136. btn_addrepl.visible = false;
  137. }else{
  138. btn_addrepl.visible = true;
  139. }
  140. if(prcsstatcd >= "7"){
  141. cap_exectretdd.value = model.getValue("/root/tmp/cond/exectretdd");
  142. cap_perexechngnm.value = model.getValue("/root/tmp/cond/perexechngnm") + "(" + model.getValue("/root/tmp/cond/dcusexecdeptnm") + ")";
  143. cap_execcnts.value = model.getValue("/root/tmp/cond/execcnts");
  144. cap_checkcnts.value = model.getValue("/root/tmp/cond/checkcnts");
  145. grp_exec.attribute("visibility") = "visible";
  146. }
  147. //추가
  148. if(prcsstatcd >= 6){
  149. grd_attach.attribute("height") = "130px";
  150. caption15.attribute("height") = "130px";
  151. cap_dcuscnts.attribute("visibility") = "visible";
  152. txt_dcuscnts.attribute("visibility") = "visible";
  153. }
  154. }
  155. //관리자는 언제든 제안접수내용을 삭제할수있다.
  156. if(checkUserGroup("UGE_QIP") || getUserId() == "DEVB07"){
  157. btn_del.visible = true;
  158. }
  159. /*++++++++++++++++++++++++++++++++++++++++++권한별 화면 설정 끝+++++++++++++++++++++++++++++++++++++++++++++*/
  160. model.refresh();
  161. }
  162. /**
  163. * @---------------------------------------------------
  164. * @desc : QI활동 계획서 저장 function
  165. * @param :
  166. * @return :
  167. * @---------------------------------------------------
  168. */
  169. function fSave(){
  170. /*+++++++++++++++++++++++필수 입력란 체크+++++++++++++++++++++++*/
  171. if(!isRequiredGroup("grp_propos")){
  172. return false;
  173. }
  174. /*+++++++++++++++++++++++++++++끝+++++++++++++++++++++++++++++++*/
  175. //Send Instance 설정
  176. model.setValue("/root/send/cond/temp/tmp", getGridUpdateData(grd_attach));
  177. var temp = model.getValue("/root/send/cond/temp/tmp");
  178. var length = temp.length;
  179. var ss = temp.substr(30, length-30);
  180. var template = "m▦rownum▦file▦attfilepath▦seq▩";
  181. var nodeCnt = getNodesetCount("/root/tmp/attach/attf");
  182. for(var i=0; i<nodeCnt; i++){
  183. template = template + "▦▦▦▦▩";
  184. }
  185. var final = template + ss;
  186. model.setValue("/root/send/cond/temp/tmp", final);
  187. copyNodeType("/root/send/cond/condition", "/root/main/cond", "replace");
  188. //submit
  189. submit("TXMQO00100");
  190. //Instance 초기화
  191. model.removenode("/root/send/cond");
  192. model.makeNode("/root/send/cond/condition");
  193. model.makeNode("/root/send/cond/attach/attf/file");
  194. model.makeNode("/root/send/cond/temp/tmp");
  195. fInitialize();
  196. }
  197. /*
  198. * @---------------------------------------------------
  199. * @desc : report를 작성하기 위한 Instance 생성 function
  200. * @param :
  201. * @return :
  202. * @---------------------------------------------------
  203. */
  204. function SetRepDetlInfo(){
  205. if(model.getValue("/root/main/cond/acptno") == ""){
  206. return;
  207. }
  208. var suggempposnm = getUserInfo("jobposnm");
  209. model.makeValue("/root/main/cond/suggempposnm" , suggempposnm);
  210. model.makeValue("/root/send/acptno", model.getValue("/root/main/cond/acptno"));
  211. submit("TRMQO00100");
  212. model.makeValue("/root/tmp/cond/suggempposnm", model.getValue("/root/main/cond/suggempposnm"));
  213. model.makeValue("/root/tmp/cond/acptyy",model.getValue("/root/main/cond/acptdd").substring(0,4));
  214. model.makeValue("/root/tmp/cond/acptmm",model.getValue("/root/main/cond/acptdd").substring(4,6));
  215. exeReportPreview("RPMQO00100", "XMLSTR", "");
  216. }