SMRTR00700_면접실기총괄등록.xrw 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>면접실기점수등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <intvpracpntsumlist>
  11. <examno/>
  12. <korname/>
  13. <absnexamyn/>
  14. <hopeflag1/>
  15. <hopeflag2/>
  16. <intvpnt/>
  17. <pracpnt/>
  18. <intvpracsum/>
  19. <apntinfono/>
  20. <rregno/>
  21. <scrngflag/>
  22. </intvpracpntsumlist>
  23. </main>
  24. <send>
  25. <apntyy/>
  26. <supinfqurtyyflag>1</supinfqurtyyflag>
  27. <fstlattrmflag>1</fstlattrmflag>
  28. <trngflag>I</trngflag>
  29. <dentyn>1</dentyn>
  30. <scrngflag>2</scrngflag>
  31. <intvpracpntsumlist/>
  32. </send>
  33. <init/>
  34. <hidden/>
  35. <temp/>
  36. </root>
  37. </instance>
  38. <script type="javascript" ev:event="xforms-ready">
  39. <![CDATA[
  40. //사용자 권한
  41. fCheckAuth();
  42. // 2007-11-16 년도 디폴트설정 acwon수정
  43. /*//년도 세팅
  44. var curDate = getCurrentDate();
  45. var curMM = curDate.toDate().getDateFormat("MM");
  46. var curYY = curDate.toDate().getDateFormat("YYYY");
  47. //var addYY =getCurrentDate().toDate().getAddDate(1,'Y').getDateFormat("YYYY");
  48. if( curMM > 10 ) { // 10월 이후에 조회할 경우는 다음해 채용으로 생각함.
  49. curYY = getCurrentDate().toDate().getAddDate(1,'Y').getDateFormat("YYYY");
  50. //alert(curYY);
  51. }
  52. model.setValue("/root/send/apntyy", curYY);*/
  53. var today = getCurrentDate();
  54. var cur_mm = parseInt(today.substring(4, 6));
  55. var cur_yy = parseInt(today.substring(0, 4));
  56. if (cur_mm >= 11)
  57. cur_yy++;
  58. model.setValue("/root/send/apntyy", cur_yy);
  59. ipt_apntyy.refresh();
  60. //end
  61. //그리드 초기화
  62. misfGridInit(grd_intvpracpntlist);
  63. //데이타 셋
  64. misfMsterDetailSet(grd_intvpracpntlist,null, "TRRTR00701" ,"Y");
  65. misfComboComCdListMulti("R0237,R0238,R0151,R0239,R0240", "cmb_supinfqurtyyflag,cmb_fstlattrmflag,cmb_trngflag,cmb_dentyn,cmb_scrngflag");
  66. model.refresh();
  67. //그리드의 타이틀을 누르면 sort되는 기능
  68. grd_intvpracpntlist.explorerbar = "sort";
  69. ]]>
  70. </script>
  71. <script type="javascript">
  72. <![CDATA[
  73. //========================================================================================
  74. //버튼에 대한 화면 권한 체크(R : 읽기, X : 입력/수정/삭제, P : 출력)
  75. //========================================================================================
  76. function fCheckAuth() {
  77. btn_search.disabled = !checkAuth("R") ;
  78. btn_save.disabled = !checkAuth("X") ;
  79. }
  80. function fIntvPranPntListSave() {
  81. var updtdata = getGridUpdateData(grd_intvpracpntlist);
  82. if (updtdata == "")
  83. {
  84. messageBox("변경된 데이터가","I004");
  85. return;
  86. }
  87. // null값 체크하는 부분이 없음.
  88. //checkKeyColumn( "grd_intvpracpntlist" );
  89. model.setValue("/root/send/intvpracpntsumlist",grd_intvpracpntlist.getUpdateData());
  90. if(messageBox("","Q002") != 6 ) {
  91. return false;
  92. }
  93. misfSave("TXRTR00701");
  94. misfMsterDetailRetrieve();
  95. }
  96. ]]>
  97. </script>
  98. <submission id="TRRTR00701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/intv_pracpntlist"/>
  99. <bind id="bind_input1" ref="/root/main/intvpracpntsumlist/intvpracsum" calculate="../intvpnt + ../pracpnt"/>
  100. <submission id="TXRTR00701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/intvpracpntsumlist"/>
  101. <bind id="bind_input2" ref="/root/main/intvpracpntsumlist/intvpnt" readonly="../absnexamyn = 'Y'"/>
  102. <bind id="bind_input3" ref="/root/main/intvpracpntsumlist/pracpnt" readonly="../absnexamyn = 'Y'"/>
  103. </model>
  104. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  105. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  106. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  107. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  108. </xhtml:head>
  109. <xhtml:body style="margin-left:8; margin-right:8; ">
  110. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  111. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">면접 실기 점수 등록</caption>
  112. </group>
  113. <caption id="caption10" style="left:725px; top:705px; width:350px; height:25px; vertical-align:middle; ">상태 : 가입, 탈퇴, 보임</caption>
  114. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  115. <group id="group4" style="left:0px; top:10px; width:1195px; height:35px; vertical-align:top; ">
  116. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  117. <button id="btn_search" class="btn1_letter2" navindex="4" style="left:1125px; top:7px; width:56px; height:22px; text-align:left; ">
  118. <caption>조회</caption>
  119. <script type="javascript" ev:event="DOMActivate">
  120. <![CDATA[
  121. //리스트 조회
  122. misfMsterDetailRetrieve();
  123. //결시체크된 사항에 대해서 색깔 변화
  124. setRowStyle("grd_intvpracpntlist", "4", "Y", "absnexamyn");
  125. ]]>
  126. </script>
  127. </button>
  128. <line id="line1" class="line_4" style="x1:1110px; y1:6px; x2:1110px; y2:28px; border-color:#ffe4bb; border-left-style:solid; "/>
  129. <caption id="caption1" class="search_name" style="left:164px; top:10px; width:112px; height:17px; ">상하반기구분 :</caption>
  130. <caption id="caption2" class="search_name" style="left:895px; top:10px; width:94px; height:17px; ">전형구분 :</caption>
  131. <select1 id="cmb_supinfqurtyyflag" ref="/root/send/supinfqurtyyflag" class="combo_s_essential" navindex="2" appearance="minimal" style="left:277px; top:9px; width:85px; height:19px; ">
  132. <choices>
  133. <itemset>
  134. <label/>
  135. <value/>
  136. </itemset>
  137. </choices>
  138. </select1>
  139. <select1 id="cmb_trngflag" ref="/root/send/trngflag" class="combo_s_essential" navindex="2" appearance="minimal" style="left:653px; top:9px; width:85px; height:19px; ">
  140. <choices>
  141. <itemset>
  142. <label/>
  143. <value/>
  144. </itemset>
  145. </choices>
  146. </select1>
  147. <caption id="caption3" class="search_name" style="left:367px; top:10px; width:99px; height:17px; ">전후기구분 :</caption>
  148. <select1 id="cmb_fstlattrmflag" ref="/root/send/fstlattrmflag" class="combo_s_essential" navindex="2" appearance="minimal" style="left:468px; top:9px; width:78px; height:19px; ">
  149. <choices>
  150. <itemset>
  151. <label/>
  152. <value/>
  153. </itemset>
  154. </choices>
  155. </select1>
  156. <caption id="caption7" class="search_name" style="left:5px; top:10px; width:86px; height:17px; ">년 도 :</caption>
  157. <input id="ipt_apntyy" ref="/root/send/apntyy" class="input_s_essential" style="left:98px; top:9px; width:60px; height:19px; "/>
  158. <caption id="cap_dentyn" class="search_name" style="left:746px; top:10px; width:96px; height:17px; ">치과여부 :</caption>
  159. <select1 id="cmb_dentyn" ref="/root/send/dentyn" class="combo_s_essential" navindex="5" appearance="minimal" style="left:835px; top:9px; width:55px; height:19px; ">
  160. <choices>
  161. <itemset>
  162. <label/>
  163. <value/>
  164. </itemset>
  165. </choices>
  166. </select1>
  167. <caption id="cap_scrngflag" class="search_name" style="left:553px; top:9px; width:99px; height:17px; ">전공의구분 :</caption>
  168. <select1 id="cmb_scrngflag" ref="/root/send/scrngflag" class="combo_s_essential" navindex="6" appearance="minimal" style="left:983px; top:8px; width:107px; height:19px; ">
  169. <choices>
  170. <itemset>
  171. <label/>
  172. <value/>
  173. </itemset>
  174. </choices>
  175. </select1>
  176. </group>
  177. <datagrid id="grd_intvpracpntlist" nodeset="/root/main/intvpracpntsumlist" caption="수험번호^성명^결시^희망병원^희망과^면접점수^실기점수^총점^채용정보번호^주민등록번호^전형구분" colsep="^" colwidth="155, 134, 43, 173, 227, 152, 137, 136, 100, 100, 64" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:74px; width:1195px; height:660px; ">
  178. <col ref="examno"/>
  179. <col ref="korname"/>
  180. <col checkvalue="Y,N" ref="absnexamyn" type="checkbox"/>
  181. <col ref="hopeflag1"/>
  182. <col ref="hopeflag2"/>
  183. <col imemode="disabled" ref="intvpnt" type="input" format="###.##"/>
  184. <col imemode="disabled" ref="pracpnt" type="input" format="###.##"/>
  185. <col ref="intvpracsum" format="###.##"/>
  186. <col ref="apntinfono" visibility="hidden" style="left:1178px; top:23px; width:100px; height:23px; "/>
  187. <col ref="rregno" visibility="hidden"/>
  188. <col ref="scrngflag" visibility="hidden"/>
  189. <script type="javascript" ev:event="onendedit">
  190. <![CDATA[
  191. //엑터를 치면 다음 input컬럼으로 이동함.
  192. if( grd_intvpracpntlist.colType(grd_intvpracpntlist.col) == "input" ) {
  193. if( grd_intvpracpntlist.col == 6 && event.keyCode != 9) {
  194. grd_intvpracpntlist.col = 7;
  195. }
  196. else if ( grd_intvpracpntlist.col == 7 && event.keyCode != 9) {
  197. var rows = grd_intvpracpntlist.row;
  198. grd_intvpracpntlist.row = rows+1;
  199. grd_intvpracpntlist.col = 6;
  200. }
  201. }
  202. ]]>
  203. </script>
  204. <script type="javascript" ev:event="xforms-value-changed">
  205. <![CDATA[
  206. //결시 체크할 경우 면접점수 와 실기점수를 0으로 세팅하고 수정 불가능.
  207. if(model.getValue("/root/main/intvpracpntsumlist["+grd_intvpracpntlist.row+"]/absnexamyn") == 'Y') {
  208. model.setValue("/root/main/intvpracpntsumlist["+grd_intvpracpntlist.row+"]/intvpnt", 0.0);
  209. model.setValue("/root/main/intvpracpntsumlist["+grd_intvpracpntlist.row+"]/pracpnt",0.0);
  210. setRowStyle("grd_intvpracpntlist", "4", "Y", "absnexamyn");
  211. } else {
  212. //바탕색을 흰색을 변환
  213. grd_intvpracpntlist.rowstyle(grd_intvpracpntlist.row,"data", "background-color") ="#FFFFFF";
  214. }
  215. ]]>
  216. </script>
  217. </datagrid>
  218. <line id="line3" class="line_1" style="x1:0px; y1:69px; x2:1195px; y2:69px; "/>
  219. <caption id="caption9" class="tit_2" style="left:10px; top:54px; width:235px; height:13px; ">지원자 리스트</caption>
  220. <button id="button4" class="btn2_letter4" style="left:1056px; top:49px; width:64px; height:19px; ">
  221. <caption>엑셀저장</caption>
  222. <script type="javascript" ev:event="DOMActivate">
  223. <![CDATA[
  224. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  225. if (fileName != "")
  226. {
  227. // 안진수 수정 엑셀저장시 히든값 출력
  228. grd_intvpracpntlist.saveExcel(fileName, "", false, true);
  229. }
  230. ]]>
  231. </script>
  232. </button>
  233. <button id="button5" class="btn2_letter4" style="left:1123px; top:49px; width:64px; height:19px; vertical-align:bottom; ">
  234. <caption>엑셀입력</caption>
  235. <script type="javascript" ev:event="DOMActivate">
  236. <![CDATA[
  237. // 안진수 수정 엑셀입력시 첫 번째 row 삭제
  238. var fileName = window.fileDialog("open", ",", false, "", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  239. if (fileName != "") {
  240. grd_intvpracpntlist.loadExcel(fileName, 1, false);
  241. grd_intvpracpntlist.deleteRow(1);
  242. grd_intvpracpntlist.refresh();
  243. var sCnt = grd_intvpracpntlist.rows;
  244. grd_intvpracpntlist.clearStatus();
  245. for ( var i = 1; i < sCnt; i++) {
  246. grd_intvpracpntlist.rowStatus(i) = 2;
  247. }
  248. }
  249. ]]>
  250. </script>
  251. </button>
  252. </group>
  253. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  254. <line id="line75" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
  255. <button id="btn_save" class="btn4_letter2" style="left:1131px; top:3px; width:56px; height:22px; ">
  256. <caption>저장</caption>
  257. <script type="javascript" ev:event="DOMActivate">
  258. <![CDATA[
  259. fIntvPranPntListSave();
  260. ]]>
  261. </script>
  262. </button>
  263. </group>
  264. </xhtml:body>
  265. </xhtml:html>