SPAHR00910.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. /**
  2. * 화면 초기화
  3. * @return
  4. */
  5. function fInitialize(){
  6. //debugger;
  7. opt_sender.value = getUserName(); // 사용자이름을 가져와서 보여준다.
  8. frdocheck();
  9. // 그리드의 모든 데이터를 입력상태로 바꾼다.
  10. for (i=grd_recvrlist.fixedRows; i<grd_recvrlist.rows; i++){
  11. grd_recvrlist.rowstatus(i) = 1;
  12. }
  13. // 비어있는 노드를 체크한다.
  14. var bizabbr = instance1.selectSingleNode("/root/main/bizabbr");
  15. var replytelno = instance1.selectSingleNode("/root/main/replytelno");
  16. var rsrvyn = instance1.selectSingleNode("/root/main/rsrvyn");
  17. var rsrvdate = instance1.selectSingleNode("/root/main/rsrvdate");
  18. var rsrvtime = instance1.selectSingleNode("/root/main/rsrvtime");
  19. var msgcnts = instance1.selectSingleNode("/root/main/msgcnts");
  20. if(bizabbr == null) { model.makenode("/root/main/bizabbr"); }
  21. if(replytelno == null) { model.makenode("/root/main/replytelno"); }
  22. if(rsrvyn == null) { model.makenode("/root/main/rsrvyn"); }
  23. if(rsrvdate == null) { model.makenode("/root/main/rsrvdate"); }
  24. if(rsrvtime == null) { model.makenode("/root/main/rsrvtime"); }
  25. if(msgcnts == null) { model.makenode("/root/main/msgcnts"); }
  26. // 업무대분류 코드 소문자로 변환
  27. var bizabbr_var = model.getValue("/root/main/bizabbr");
  28. model.setValue("/root/main/bizabbr",bizabbr_var.toLowerCase());
  29. model.refresh();
  30. }
  31. function fSendSmsText (msg, hngnm, mpphoneno, replytelno){
  32. model.setValue("/root/main/msgcnts", msg.cut(2000)); // 메세지(80byte)까지
  33. model.setValue("/root/main/recvrlist/recvrnm", hngnm); // 수신자 성명
  34. model.setValue("/root/main/recvrlist/recvrtelno", mpphoneno); // 수신자 전화번호
  35. model.setValue("/root/main/replytelno", replytelno); // 발신자 전화번호
  36. model.setValue("/root/main/rsrvyn", 0); // 즉시전송
  37. model.refresh();
  38. fSMSSubmit("/root/main");
  39. }
  40. function fSendSmsId (msgfrmtid, hngnm, mpphoneno, replytelno, msgparam1, msgparam2, msgparam3, msgparam4){
  41. model.setValue("/root/main/msgfrmtid", msgfrmtid); // 단문메시지 형식아이디
  42. model.setValue("/root/main/msgparam1", msgparam1); // 파라미터1
  43. model.setValue("/root/main/msgparam2", msgparam2); // 파라미터2
  44. model.setValue("/root/main/msgparam3", msgparam3); // 파라미터3
  45. model.setValue("/root/main/msgparam4", msgparam4); // 파라미터4
  46. model.setValue("/root/main/recvrlist/recvrnm", hngnm); // 수신자 성명
  47. model.setValue("/root/main/recvrlist/recvrtelno", mpphoneno); // 수신자 전화번호
  48. model.setValue("/root/main/replytelno", replytelno); // 발신자 전화번호
  49. model.setValue("/root/main/rsrvyn", 0); // 즉시전송
  50. model.refresh();
  51. fSMSSubmit("/root/main");
  52. }
  53. function frdocheck(){
  54. var req_chk = model.getValue("/root/main/rsrvyn");
  55. if (req_chk==0){
  56. ipt_trsmreqdt_date.disabled = true;
  57. ipt_trsmreqdt_time.disabled = true;
  58. }else{
  59. ipt_trsmreqdt_date.disabled = false;
  60. ipt_trsmreqdt_time.disabled = false;
  61. }
  62. }
  63. function fSelectAll(grid){
  64. for (i=grid.fixedRows; i<grid.rows; i++){
  65. model.setValue("/root/main/recvrlist["+i+"]/chk", "true") ;
  66. }
  67. model.refresh();
  68. }
  69. function fSMSSubmit(ref){
  70. // 각 필드값을 체크한다.
  71. if(model.getValue(ref+"/replytelno").getTrim()==""){
  72. messageBox("발신자 번호는 ", "I003");
  73. model.setFocus("ipt_callback");
  74. return;
  75. }
  76. var temp = model.getValue(ref+"/replytelno").length;
  77. if(temp <9){
  78. messageBox("발신자 번호는 9자리이상을 ", "C001");
  79. model.setFocus("ipt_callback");
  80. return;
  81. }
  82. if(model.getValue(ref+"/rsrvyn").getTrim()==""){
  83. messageBox("예약여부는 ", "I003");
  84. model.setFocus("rdo_rsrvyn");
  85. model.setValue(ref+"/rsrvyn", "0");
  86. frdocheck();
  87. rdo_rsrvyn.refresh();
  88. return;
  89. }
  90. if(model.getValue(ref+"/rsrvyn")==1 && // 예약설정이 1 인경우에만 체크한다.
  91. model.getValue(ref+"/rsrvdate").getTrim()==""){
  92. messageBox("예약일자는 ", "I003");
  93. model.setFocus("ipt_trsmreqdt_date");
  94. model.setFocus("rsrvdate");
  95. return;
  96. }
  97. if(model.getValue(ref+"/rsrvyn")==1 && // 예약설정이 1 인경우에만 체크한다.
  98. model.getValue(ref+"/rsrvtime").getTrim()==""){
  99. messageBox("예약시간은 ", "I003");
  100. model.setFocus("ipt_trsmreqdt_time");
  101. return;
  102. }
  103. if(model.getValue(ref+"/msgcnts").getByteLength() > 2000){
  104. messageBox("메시지내용이 2000byte를 ", "E003");
  105. return;
  106. }
  107. if(grd_recvrlist.rows <= grd_recvrlist.fixedRows) messageBox("수신자정보는 ", "I003");
  108. // 수신자 리스트가 담긴의 그리드를 체크한다.
  109. var nodeset = grd_recvrlist.nodeset;
  110. var recvrnm;
  111. var recvrtelno;
  112. var cnt = 0;
  113. for (i=grd_recvrlist.fixedRows; i<grd_recvrlist.rows; i++){
  114. cnt++;
  115. recvrnm = model.getValue(nodeset+"["+cnt+"]/recvrnm");
  116. recvrtelno = model.getValue(nodeset+"["+cnt+"]/recvrtelno");
  117. if(recvrnm.getTrim()==""){
  118. messageBox(cnt+" 번째 수신자 이름을 ", "C001");
  119. grd_recvrlist.row = i;
  120. return;
  121. }
  122. if(recvrtelno.length <10){
  123. messageBox(cnt+" 번째 수신자 전화번호는 10자리이상을 ", "C001");
  124. grd_recvrlist.row = i;
  125. return;
  126. }
  127. }
  128. model.resetInstanceNode("/root/send");
  129. var recvrid = "usernm▦userid▦mpphonno▦pid▦deptcd▩";
  130. for(var i=1; i<grd_recvrlist.rows; i++){
  131. recvrid += model.getValue(nodeset+"["+i+"]/recvrnm") + "▦";
  132. recvrid += "-" + "▦";
  133. recvrid += model.getValue(nodeset+"["+i+"]/recvrtelno") + "▦";
  134. recvrid += "-" + "▦";
  135. recvrid += "-" + "▩";
  136. }
  137. model.makeValue("/root/send/recvrid",recvrid);
  138. model.makeValue("/root/send/calltype","");
  139. model.makeValue("/root/send/msgcnts",model.getValue("/root/main/msgcnts"));
  140. model.makeValue("/root/send/insuflag","");
  141. model.makeValue("/root/send/calltelno",model.getValue("/root/main/replytelno"));
  142. if(getUserInfo("dutplceinstcd")=="032"){
  143. model.makeValue("/root/send/lmstitle","[칠곡경대병원 건진센터 안내]");
  144. }if(getUserInfo("dutplceinstcd")=="031"){
  145. model.makeValue("/root/send/lmstitle","[경대병원 건진센터 안내]");
  146. }
  147. if(submit("TXZMI00402")){
  148. messageBox("전송 요청되었습니다", "I");
  149. }
  150. }
  151. function fgriddelete(grid){
  152. var cur_row = grid.row; // 행 번호 가져오기
  153. var iStatus = grid.rowstatus(cur_row);
  154. var d_cnt = 0;
  155. var selectedRows = new Array();
  156. for (var i=grid.fixedRows; i<grid.rows; i++){
  157. var chk = model.getValue("/root/main/recvrlist["+i+"]/chk");
  158. if (chk == "Y"){
  159. selectedRows[d_cnt++] = i;
  160. }
  161. }
  162. if(d_cnt < 0){
  163. messageBox("삭제할 행을 선택해주세요.", "E");
  164. return;
  165. }
  166. for (var i=d_cnt-1; i>=0; i--){
  167. grid.deleterow(selectedRows[i],false);
  168. }
  169. model.refresh();
  170. }