SMRPS04200_부서교육일정.xrw 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.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>SMRPS04100_부서교육현황</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <educlist/>
  11. </main>
  12. <send>
  13. <search>
  14. <appyy/>
  15. <educflag/>
  16. <dutinstcd/>
  17. <chrgdeptcd/>
  18. <chrgdeptnm/>
  19. <chrgteamnm/>
  20. <chrgteamcd/>
  21. <chrgunitnm/>
  22. <chrgunitcd/>
  23. <emplno/>
  24. <grdunitcd/>
  25. <instcd/>
  26. <posinstcd/>
  27. </search>
  28. </send>
  29. <temp/>
  30. <init/>
  31. </root>
  32. </instance>
  33. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  34. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  35. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  36. <script type="javascript" src="../../../mis/educationmngtweb/js/RPS001.js"/>
  37. <script type="javascript" ev:event="xforms-ready">
  38. <![CDATA[
  39. misfGetUserAuth();
  40. fCheckAuth();
  41. fInitialize() ;
  42. ]]>
  43. </script>
  44. <script type="javascript">
  45. <![CDATA[
  46. //========================================================================================
  47. //버튼에 대한 화면 권한 체크(R : 읽기, X : 입력/수정/삭제, P : 출력)
  48. //========================================================================================
  49. function fCheckAuth() {
  50. btn_search.disabled = !checkAuth("R") ;
  51. }
  52. ]]>
  53. </script>
  54. <submission id="TRRPS04000" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/emplinfo"/>
  55. <submission id="TRRPS04999" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/init/deptadmin"/>
  56. <submission id="TRRPS04201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/main/depteduclist"/>
  57. <submission id="TRRPS04001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/main/depteduclist"/>
  58. </model>
  59. <script type="javascript">
  60. <![CDATA[
  61. function fInitialize() {
  62. // user정보조회
  63. model.setValue(ipt_emplno.attribute("ref"),getUserInfo("userid"));
  64. submit("TRRPS04000");
  65. var nowyy = new Date();
  66. ipt_appyy.value = nowyy.getYear(); // 년도설정
  67. opt_dd.value = "(일자 : " + (nowyy.getMonth()+1) + "월 " + nowyy.getDate() + "일 현재)";
  68. // getMonth는 0~11까지 리턴한다. 그러므로 +1을 해야 실제 월을 알수있다.
  69. model.setValue(ipt_dutinstcd.attribute("ref"),model.getValue("/root/init/emplinfo/dutplceinst"));
  70. model.setValue("/root/send/search/posinstcd",model.getValue("/root/init/emplinfo/dutplceinst"));
  71. model.setValue(ipt_chrgdeptnm.attribute("ref"),model.getValue("/root/init/emplinfo/dutdeptnm"));
  72. model.setValue(ipt_chrgdeptcd.attribute("ref"), model.getValue("/root/init/emplinfo/dutdeptcd"));
  73. model.setValue(ipt_chrgteamnm.attribute("ref"),model.getValue("/root/init/emplinfo/dutteamnm"));
  74. model.setValue(ipt_chrgteamcd.attribute("ref"),model.getValue("/root/init/emplinfo/dutteamcd"));
  75. model.setValue(ipt_chrgunitnm.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitnm"));
  76. model.setValue(ipt_chrgunitcd.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitcd"));
  77. model.refresh();
  78. if ( DUTY_EDU_YN == 'Y' || getUserInfo("dutplcecd") == "4020500000" || getUserInfo("dutplcecd") == "4020503000" ) {
  79. ipt_chrgdeptnm.disabled = false;
  80. ipt_chrgteamnm.disabled = false;
  81. ipt_chrgunitnm.disabled = false;
  82. btn_dept.disabled = false;
  83. btn_team.disabled = false;
  84. btn_unit.disabled = false;
  85. }
  86. else {
  87. fCheckDisabled(); // 관리자인지 체크하여 기본 조회부분의 활성화/비활성화를 결정한다.
  88. }
  89. //그리드 초기화 작업
  90. model.removeNodeset("/root/main");
  91. misfMsterDetailSet(grd_educlist,null, "TRRPE04201" ,"Y");
  92. grd_educlist.rowHeight(grd_educlist.fixedRows-1) = 50;
  93. rpsEducSetComboList("M01-007", "cmb_educflag", "Y");
  94. misfComboCopyItemSet(cmb_educflag, "", grd_educlist, "educflag");
  95. model.refresh();
  96. }
  97. function fCheckAdmin() {
  98. // 부서교육관리자로 등록된 사람인지 체크
  99. model.setValue("/root/send/search/instcd", model.getValue("/root/init/emplinfo/dutplceinst"));
  100. submit("TRRPS04999");
  101. if( model.getValue("/root/init/deptadmin/emplno") == ipt_emplno.value ) {
  102. btn_search.disabled = false;
  103. }
  104. else {
  105. // btn_search.disabled = true;
  106. }
  107. model.refresh();
  108. }
  109. function fCheckDisabled () {
  110. fCheckAdmin();
  111. if( model.getValue("/root/init/deptadmin/teamyn") == "Y") {
  112. ipt_chrgteamnm.disabled = false;
  113. ipt_chrgunitnm.disabled = false;
  114. btn_team.disabled = false;
  115. btn_unit.disabled = false;
  116. }
  117. else if (model.getValue("/root/init/deptadmin/unityn") == "Y") {
  118. ipt_chrgunitnm.disabled = false;
  119. btn_unit.disabled = false;
  120. }
  121. else {
  122. ipt_chrgteamnm.disabled = true;
  123. ipt_chrgunitnm.disabled = true;
  124. btn_team.disabled = true;
  125. btn_unit.disabled = true;
  126. }
  127. model.refresh();
  128. }
  129. ]]>
  130. </script>
  131. </xhtml:head>
  132. <xhtml:body style="margin-left:8; margin-right:8; ">
  133. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  134. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">부서교육현황</caption>
  135. </group>
  136. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  137. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:1px; width:1195px; height:34px; background-color:#fffbf2; border-color:#ffd799; "/>
  138. <line id="line8" class="line_1" style="x1:0px; y1:60px; x2:1195px; y2:60px; "/>
  139. <caption id="caption29" class="tit_2" style="left:5px; top:46px; width:169px; height:14px; ">세부일정</caption>
  140. <button id="btn_search" class="btn1_letter2" style="left:1126px; top:7px; width:56px; height:22px; ">
  141. <caption>조회</caption>
  142. <script type="javascript" ev:event="DOMActivate">
  143. <![CDATA[
  144. if(ipt_appyy.value == "") {
  145. messageBox("년도는","I003");
  146. model.setFocus("ipt_appyy");
  147. }
  148. else {
  149. model.removenode("/root/main");
  150. model.makeNode("/root/main/depteduclist");
  151. submit("TRRPS04001");
  152. }
  153. ]]>
  154. </script>
  155. </button>
  156. <line id="line13" class="line_4" style="x1:1110px; y1:5px; x2:1110px; y2:30px; "/>
  157. <caption id="cap_appyy" class="search_name" style="left:20px; top:9px; width:90px; height:17px; ">년 도 :</caption>
  158. <input id="ipt_appyy" ref="/root/send/search/appyy" class="input_s_essential" inputtype="date" format="yyyy" appearance="input" style="left:102px; top:9px; width:82px; height:19px; text-align:center; "/>
  159. <button id="button2" class="btn2_letter4" style="left:1130px; top:40px; width:64px; height:19px; ">
  160. <caption>엑셀저장</caption>
  161. <script type="javascript" ev:event="DOMActivate">
  162. <![CDATA[
  163. var fileName = window.fileDialog ("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  164. if (fileName != "") {
  165. grd_educlist.saveExcel(fileName,"부서교육내역",false);
  166. }
  167. ]]>
  168. </script>
  169. </button>
  170. <output id="opt_dd" style="left:980px; top:40px; width:130px; height:19px; "/>
  171. <input id="ipt_dutinstcd" ref="/root/send/search/dutinstcd" disabled="true" visibility="hidden" style="left:235px; top:40px; width:50px; height:19px; "/>
  172. <input id="ipt_chrgunitnm" ref="/root/send/search/chrgunitnm" class="input_search" disabled="true" appearance="input" style="left:738px; top:9px; width:113px; height:19px; text-align:center; ">
  173. <script type="javascript" ev:event="xforms-value-changed">
  174. <![CDATA[
  175. if( ipt_chrgunitnm.value.getByteLength() == '0' ) {
  176. ipt_chrgunitcd.value = "" ;
  177. }
  178. model.refresh();
  179. ]]>
  180. </script>
  181. </input>
  182. <input id="ipt_chrgunitcd" ref="/root/send/search/chrgunitcd" disabled="true" visibility="hidden" style="left:768px; top:20px; width:70px; height:19px; "/>
  183. <caption id="caption8" class="search_name" style="left:678px; top:9px; width:86px; height:17px; ">부서 :</caption>
  184. <input id="ipt_chrgteamnm" ref="/root/send/search/chrgteamnm" class="input_search" disabled="true" visibility="visible" appearance="input" style="left:517px; top:9px; width:117px; height:19px; text-align:center; ">
  185. <script type="javascript" ev:event="xforms-value-changed">
  186. <![CDATA[
  187. if( ipt_chrgteamnm.value.getByteLength() == '0' ) {
  188. ipt_chrgteamcd.value = "" ;
  189. }
  190. model.refresh();
  191. ]]>
  192. </script>
  193. </input>
  194. <select1 id="cmb_educflag" ref="/root/send/search/educflag" class="combo_search" appearance="minimal" style="left:990px; top:9px; width:95px; height:19px; ">
  195. <choices>
  196. <itemset>
  197. <label/>
  198. <value/>
  199. </itemset>
  200. </choices>
  201. </select1>
  202. <caption id="cap_educflag" class="search_name" style="left:905px; top:9px; width:91px; height:17px; ">교육구분 :</caption>
  203. <input id="ipt_chrgteamcd" ref="/root/send/search/chrgteamcd" disabled="true" visibility="hidden" style="left:562px; top:20px; width:50px; height:19px; "/>
  204. <input id="ipt_chrgdeptnm" ref="/root/send/search/chrgdeptnm" class="input_search" disabled="true" navindex="3" visibility="visible" style="left:283px; top:9px; width:120px; height:19px; text-align:center; ">
  205. <script type="javascript" ev:event="xforms-value-changed">
  206. <![CDATA[
  207. if( ipt_chrgdeptnm.value.getByteLength() == '0' ) {
  208. ipt_chrgdeptcd.value = "" ;
  209. }
  210. model.refresh();
  211. ]]>
  212. </script>
  213. </input>
  214. <input id="ipt_chrgdeptcd" ref="/root/send/search/chrgdeptcd" class="input_search" disabled="true" navindex="2" visibility="hidden" maxlength="10" style="left:343px; top:20px; width:45px; height:19px; text-align:center; "/>
  215. <input id="ipt_emplno" ref="/root/send/search/emplno" visibility="hidden" style="left:840px; top:40px; width:90px; height:19px; "/>
  216. <button id="btn_unit" class="icon_search" disabled="true" style="left:853px; top:10px; width:16px; height:16px; ">
  217. <caption/>
  218. <script type="javascript" ev:event="DOMActivate">
  219. <![CDATA[
  220. var unitcd = ipt_chrgunitcd.value;
  221. var unitnm = ipt_chrgunitnm.value;
  222. rpsfEducOpenPopUpList("07", ipt_chrgunitnm, "", "chrgunitcd,chrgunitnm", ipt_dutinstcd.value, "instcd");
  223. if ( DUTY_EDU_YN == 'Y' || getUserInfo("dutplcecd") == "4020500000" || getUserInfo("dutplcecd") == "4020503000" ) {
  224. // unit이 달라지면 상위 부서도 가져온다..
  225. model.setValue("/root/send/search/grdunitcd", ipt_chrgunitcd.value);
  226. model.setValue("/root/send/search/emplno", "" );
  227. submit("TRRPS04000");
  228. model.setValue(ipt_emplno.attribute("ref"),getUserInfo("userid"));
  229. model.setValue("/root/send/search/chrgdeptnm", model.getValue("/root/init/emplinfo/dutdeptnm"));
  230. model.setValue("/root/send/search/chrgdeptcd", model.getValue("/root/init/emplinfo/dutdeptcd"));
  231. model.setValue("/root/send/search/chrgteamnm", model.getValue("/root/init/emplinfo/dutteamnm"));
  232. model.setValue("/root/send/search/chrgteamcd", model.getValue("/root/init/emplinfo/dutteamcd"));
  233. }
  234. else {
  235. fCheckAdmin(); // 관리자인지 체크한다.
  236. // unit이 달라지면 상위 부서도 가져온다..
  237. model.setValue("/root/send/search/grdunitcd", ipt_chrgunitcd.value);
  238. model.setValue("/root/send/search/emplno", "" );
  239. submit("TRRPS04000");
  240. // if( !btn_search.disabled &&
  241. // model.getValue("/root/send/search/chrgdeptcd") == model.getValue("/root/init/emplinfo/dutdeptcd") &&
  242. // model.getValue("/root/send/search/chrgteamcd") == model.getValue("/root/init/emplinfo/dutteamcd") ) {
  243. model.setValue(ipt_emplno.attribute("ref"),getUserInfo("userid"));
  244. model.setValue("/root/send/search/chrgdeptnm", model.getValue("/root/init/emplinfo/dutdeptnm"));
  245. model.setValue("/root/send/search/chrgdeptcd", model.getValue("/root/init/emplinfo/dutdeptcd"));
  246. model.setValue("/root/send/search/chrgteamnm", model.getValue("/root/init/emplinfo/dutteamnm"));
  247. model.setValue("/root/send/search/chrgteamcd", model.getValue("/root/init/emplinfo/dutteamcd"));
  248. // }
  249. /* else {
  250. messageBox("당신의 관리부서가 아닙니다. 확인바랍니다.","I999");
  251. ipt_chrgunitcd.value = unitcd;
  252. ipt_chrgunitnm.value = unitnm;
  253. }
  254. */ }
  255. model.refresh();
  256. ]]>
  257. </script>
  258. </button>
  259. <datagrid id="grd_educlist" nodeset="/root/main/educlist" autoresize="true" caption="부서교육코드^연도^주체단위^주체기관코드^부(실)^부서코드^과(팀)^팀코드^부서^유닛코드^교육구분^의료기관평가코드^교육명^차수^교육기간^교육기간^교육시간일정^교육&#xA;총시간^교육장소^신입&#xA;인원^재직원&#xA;인원^총인원^이수&#xA;인원^강사^예산^실시기관코드" colsep="^" colwidth="40, 50, 50, 62, 120, 40, 110, 40, 100, 40, 100, 120, 240, 40, 95, 95, 102, 45, 169, 50, 50, 50, 50, 100, 110" dataheight="25" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" selectionmode="byrow" style="left:0px; top:65px; width:1194px; height:660px; ">
  260. <col class="input_search" ref="depteduccd" visibility="hidden"/>
  261. <col class="input_search" disabled="true" ref="appyy" _key="true" style="text-align:center; "/>
  262. <col class="input_search" disabled="true" ref="mainbdunit" visibility="hidden"/>
  263. <col class="input_search" ref="dutinstcd" visibility="hidden"/>
  264. <col class="input_search" ref="chrgdeptnm" type="output" visibility="visible" style="text-align:center; "/>
  265. <col class="input_search" ref="chrgdeptcd" visibility="hidden"/>
  266. <col class="input_search" ref="chrgteamnm" type="output" visibility="visible" style="text-align:center; "/>
  267. <col class="input_search" ref="chrgteamcd" visibility="hidden"/>
  268. <col class="input_search" disabled="true" ref="chrgunitnm" type="output" style="text-align:center; "/>
  269. <col class="input_s_essential" ref="chrgunitcd" visibility="hidden"/>
  270. <col class="input_search" disabled="true" ref="educflag" type="combo" style="text-align:center; ">
  271. <choices>
  272. <itemset>
  273. <label/>
  274. <value/>
  275. </itemset>
  276. </choices>
  277. </col>
  278. <col class="input_search" disabled="true" ref="medinstvalucd" type="combo" visibility="hidden" style="text-align:center; ">
  279. <choices>
  280. <itemset>
  281. <label/>
  282. <value/>
  283. </itemset>
  284. </choices>
  285. </col>
  286. <col class="input_search" disabled="true" ref="educnm" type="input" maxlength="300" _key="true"/>
  287. <col class="input_search" disabled="true" ref="educdg" type="input" visibility="hidden" format="###" maxlength="3" style="text-align:center; "/>
  288. <col class="input_search" disabled="true" ref="educfromdd" type="inputdate" _key="true" style="text-align:center; "/>
  289. <col class="input_search" disabled="true" ref="eductodd" type="inputdate" _key="true" style="text-align:center; "/>
  290. <col class="input_search" disabled="true" ref="eductime" type="input" format="99:99-99:99" maxlength="20" style="text-align:center; "/>
  291. <col class="input_search" ref="eductm" style="text-align:center; "/>
  292. <col class="input_search" disabled="true" ref="educplce" type="input" _key="true" style="text-align:left; "/>
  293. <col class="input_search" disabled="true" ref="newpsn" type="input" visibility="hidden" format="####" maxlength="4"/>
  294. <col class="input_search" disabled="true" ref="oldpsn" type="input" visibility="hidden" format="####" maxlength="4"/>
  295. <col class="input_search" disabled="true" ref="totalpsn" format="####" maxlength="4"/>
  296. <col class="input_search" disabled="true" ref="cmpltcurspsnno" visibility="hidden" format="####" maxlength="4" style="text-align:center; "/>
  297. <col class="input_search" disabled="true" ref="lactr" type="input" maxlength="30" style="text-align:left; "/>
  298. <col class="input_search" disabled="true" ref="bugt" type="input" visibility="hidden" format="#,###" maxlength="10" style="text-align:right; "/>
  299. </datagrid>
  300. <caption id="caption1" class="search_name" style="left:445px; top:9px; width:86px; height:17px; ">과(팀) :</caption>
  301. <caption id="caption2" class="search_name" style="left:210px; top:9px; width:86px; height:17px; ">부(실) :</caption>
  302. <button id="btn_team" class="icon_search" disabled="true" style="left:637px; top:10px; width:16px; height:16px; ">
  303. <caption/>
  304. <script type="javascript" ev:event="DOMActivate">
  305. <![CDATA[
  306. rpsfEducOpenPopUpList("06", ipt_chrgteamnm, "", "chrgteamcd,chrgteamnm", ipt_dutinstcd.value, "instcd");
  307. // 과(팀)을 변경하면 부서는 모두 공백으로 변경한다.
  308. model.setValue("/root/send/search/chrgunitnm", "");
  309. model.setValue("/root/send/search/chrgunitcd", "");
  310. model.refresh();
  311. ]]>
  312. </script>
  313. </button>
  314. <button id="btn_dept" class="icon_search" disabled="true" style="left:405px; top:10px; width:16px; height:16px; ">
  315. <caption/>
  316. <script type="javascript" ev:event="DOMActivate">
  317. <![CDATA[
  318. rpsfEducOpenPopUpList("05", ipt_chrgdeptnm, "", "chrgdeptcd,chrgdeptnm", ipt_dutinstcd.value, "instcd");
  319. // 부(실)을 변경하면 과(팀), 부서는 모두 공백으로 변경한다.
  320. model.setValue("/root/send/search/chrgteamnm", "");
  321. model.setValue("/root/send/search/chrgteamcd", "");
  322. model.setValue("/root/send/search/chrgunitnm", "");
  323. model.setValue("/root/send/search/chrgunitcd", "");
  324. model.refresh();
  325. ]]>
  326. </script>
  327. </button>
  328. </group>
  329. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; "/>
  330. </xhtml:body>
  331. </xhtml:html>