SMRPD04000_개인복무계획신청인사팀승인.xrw 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389
  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. <dutschepsnworkcnfm>
  11. <dutschepsnworkcnfmlist/>
  12. </dutschepsnworkcnfm>
  13. </main>
  14. <send>
  15. <dutschepsnworkcnfm>
  16. <instcd/>
  17. <srvarmapfromdd/>
  18. <srvarmaptodd/>
  19. <dutunitcd/>
  20. <dutunitnm/>
  21. <emplno/>
  22. <emplnm/>
  23. <deprtmangraprvyn>N</deprtmangraprvyn>
  24. <nursall/>
  25. </dutschepsnworkcnfm>
  26. <save>
  27. <dutschepsnworkcnfmlist/>
  28. </save>
  29. </send>
  30. <hidden>
  31. <check/>
  32. </hidden>
  33. </root>
  34. </instance>
  35. <script type="javascript" ev:event="xforms-ready">
  36. <![CDATA[
  37. misfGridInit(grd_dutschepsnworkcnfmlist);
  38. misfMsterDetailSet(grd_dutschepsnworkcnfmlist, null, "TRRPD04001" ,"Y");
  39. // misfComboComCdListMulti("Z0007","cmb_instcd");
  40. misfComboInstCdListMulti("cmb_instcd",getCurrentDate(),"","N");
  41. ipt_srvarmapfromdd.value = getCurrentDate().substr(0, 6);
  42. ipt_srvarmaptodd.value = getCurrentDate().substr(0, 6);
  43. cmb_instcd.value = getUserInfo("dutplceinstcd");
  44. // if(getUserInfo("dutplceinstcd") != "001")
  45. // {
  46. // cmb_instcd.disabled = true;
  47. // }
  48. btn_search.disabled = !(checkAuth("R"));
  49. btn_save.disabled = !(checkAuth("X"));
  50. misfGetAndSetUserInfo();
  51. // 간호부일때는 간호부전체 체크박스를 풀수없도록 한다
  52. if ( DUT_DEPT_CD == "3040200000" ) {
  53. chk_nursall.value = 'Y'
  54. chk_nursall.disabled = true;
  55. btn_save.disabled = true;
  56. btn_grdadddutschepsnworkcnfmlist.disabled = true;
  57. btn_grddeldutschepsnworkcnfmlist.disabled = true;
  58. }
  59. ]]>
  60. </script>
  61. <submission id="TXRPD04001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/hiddeen/temp"/>
  62. <submission id="TRRPD04001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/dutschepsnworkcnfm" resultref="/root/main/dutschepsnworkcnfm"/>
  63. </model>
  64. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  65. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  66. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  67. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  68. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  69. <script type="javascript" src="../../../mis/dligclaznsmngtweb/js/RPD001.js"/>
  70. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  71. </xhtml:head>
  72. <xhtml:body pagewidth="1211" pageheight="784" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  73. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  74. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:230px; height:14px; ">개인복무계획신청인사팀승인</caption>
  75. <caption id="caption4" class="patient_text_black" style="left:922px; top:0px; width:272px; "/>
  76. </group>
  77. <group id="group3" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  78. <group id="group4" style="left:0px; top:10px; width:1195px; height:60px; vertical-align:top; ">
  79. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  80. <line id="line3" class="line_4" style="x1:1110px; y1:8px; x2:1110px; y2:51px; border-color:#ffe4bb; border-left-style:solid; "/>
  81. <button id="btn_search" class="btn1_letter2" navindex="4" style="left:1125px; top:19px; width:56px; height:22px; text-align:left; ">
  82. <caption>조회</caption>
  83. <script type="javascript" ev:event="DOMActivate">
  84. <![CDATA[
  85. misfMsterDetailRetrieve();
  86. ]]>
  87. </script>
  88. </button>
  89. <caption id="caption1" class="search_name" style="left:388px; top:35px; width:86px; height:17px; ">사원번호 :</caption>
  90. <input id="ipt_emplno" ref="/root/send/dutschepsnworkcnfm/emplno" class="input_search" navindex="2" style="left:473px; top:34px; width:95px; height:19px; text-align:center; ">
  91. <script type="javascript" ev:event="xforms-value-changed">
  92. <![CDATA[
  93. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  94. model.refresh();
  95. ]]>
  96. </script>
  97. <script type="javascript" ev:event="onkeypress">
  98. <![CDATA[
  99. if(event.keyCode == 13)
  100. {
  101. ipt_emplno.value = ipt_emplno.currentText;
  102. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  103. model.refresh();
  104. }
  105. ]]>
  106. </script>
  107. </input>
  108. <button id="btn_emplno" class="icon_search" style="left:572px; top:36px; width:16px; height:16px; ">
  109. <caption/>
  110. <script type="javascript" ev:event="DOMActivate">
  111. <![CDATA[
  112. rpbfOpenPopUpList("SPRPB00101", ipt_emplno, "emplno,emplnm,dutunitcd,dutunitnm", "", "N");
  113. model.refresh();
  114. ]]>
  115. </script>
  116. </button>
  117. <input id="ipt_emplnm" ref="/root/send/dutschepsnworkcnfm/emplnm" class="input_search" navindex="3" style="left:590px; top:34px; width:182px; height:19px; ">
  118. <script type="javascript" ev:event="xforms-value-changed">
  119. <![CDATA[
  120. rpbfValidationCheck("EMPLNM", "emplno,emplnm,dutunitcd,dutunitnm");
  121. model.refresh();
  122. ]]>
  123. </script>
  124. <script type="javascript" ev:event="onkeypress">
  125. <![CDATA[
  126. if(event.keyCode == 13)
  127. {
  128. ipt_emplnm.value = ipt_emplnm.currentText;
  129. rpbfValidationCheck("EMPLNM", "emplno,emplnm,dutunitcd,dutunitnm");
  130. model.refresh();
  131. }
  132. ]]>
  133. </script>
  134. </input>
  135. <caption id="caption2" class="search_name" style="left:388px; top:10px; width:103px; height:17px; ">적용년월 :</caption>
  136. <input id="ipt_srvarmapfromdd" ref="/root/send/dutschepsnworkcnfm/srvarmapfromdd" class="input_s_essential" inputtype="date" format="yyyy-mm" style="left:473px; top:8px; width:95px; height:19px; text-align:center; ">
  137. <script type="javascript" ev:event="xforms-value-changed">
  138. <![CDATA[
  139. var instcd = cmb_instcd.value;
  140. if( getStringLength(ipt_srvarmapfromdd.value) == "6" ) {
  141. model.removeNodeset(cmb_instcd.attribute("ref"));
  142. model.makeNode("/root/send/dutschepsnworkcnfm/instcd");
  143. misfComboInstCdListMulti("cmb_instcd",ipt_srvarmapfromdd.value+"31","","N");
  144. cmb_instcd.value = instcd;
  145. model.refresh();
  146. }
  147. ]]>
  148. </script>
  149. </input>
  150. <input id="ipt_srvarmaptodd" ref="/root/send/dutschepsnworkcnfm/srvarmaptodd" class="input_s_essential" inputtype="date" format="yyyy-mm" style="left:590px; top:8px; width:95px; height:19px; text-align:center; "/>
  151. <select1 id="cmb_instcd" ref="/root/send/dutschepsnworkcnfm/instcd" class="combo_s_essential" appearance="minimal" style="left:100px; top:8px; width:258px; height:19px; ">
  152. <choices>
  153. <itemset>
  154. <label/>
  155. <value/>
  156. </itemset>
  157. </choices>
  158. </select1>
  159. <caption id="caption5" class="search_name" style="left:15; top:10px; width:85px; height:17px; ">기 관 :</caption>
  160. <caption id="caption7" class="search_name" style="left:15; top:35px; width:86px; height:17px; ">근무부서 :</caption>
  161. <input id="ipt_dutdeptnm" ref="/root/send/dutschepsnworkcnfm/dutunitnm" class="input_search" navindex="3" style="left:208px; top:34px; width:150px; height:19px; ">
  162. <script type="javascript" ev:event="xforms-value-changed">
  163. <![CDATA[
  164. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  165. model.refresh();
  166. ]]>
  167. </script>
  168. <script type="javascript" ev:event="onkeypress">
  169. <![CDATA[
  170. if(event.keyCode == 13)
  171. {
  172. ipt_dutplcedeptnm.value = ipt_dutplcedeptnm.currentText;
  173. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  174. model.refresh();
  175. }
  176. ]]>
  177. </script>
  178. </input>
  179. <button id="btn_dutdeptcd" class="icon_search" style="left:188px; top:35px; width:16px; height:16px; ">
  180. <caption/>
  181. <script type="javascript" ev:event="DOMActivate">
  182. <![CDATA[
  183. misfOpenPopUpList("02", ipt_dutdeptcd, "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd");
  184. model.refresh();
  185. ]]>
  186. </script>
  187. </button>
  188. <input id="ipt_dutdeptcd" ref="/root/send/dutschepsnworkcnfm/dutunitcd" class="input_search" navindex="2" maxlength="10" style="left:100px; top:34px; width:85px; height:19px; text-align:center; ">
  189. <script type="javascript" ev:event="xforms-value-changed">
  190. <![CDATA[
  191. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd");
  192. model.refresh();
  193. ]]>
  194. </script>
  195. <script type="javascript" ev:event="onkeypress">
  196. <![CDATA[
  197. if(event.keyCode == 13)
  198. {
  199. ipt_dutplcedeptcd.value = ipt_dutplcedeptcd.currentText;
  200. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd");
  201. model.refresh();
  202. }
  203. ]]>
  204. </script>
  205. </input>
  206. <select1 id="rdo_deprtmangraprvyn" ref="/root/send/dutschepsnworkcnfm/deprtmangraprvyn" appearance="full" cols="3" overflow="visible" style="left:881px; top:10px; width:150px; height:19px; ">
  207. <choices>
  208. <item>
  209. <label>승인</label>
  210. <value>Y</value>
  211. </item>
  212. <item>
  213. <label>미승인</label>
  214. <value>N</value>
  215. </item>
  216. <item>
  217. <label>전체</label>
  218. <value>%</value>
  219. </item>
  220. </choices>
  221. </select1>
  222. <caption id="caption8" style="left:573px; top:11px; width:14px; height:14px; font-weight:bold; ">~</caption>
  223. <caption id="caption9" class="search_name" style="left:796px; top:10px; width:86px; height:17px; ">승인여부 :</caption>
  224. <select id="chk_nursall" ref="/root/send/dutschepsnworkcnfm/nursall" visibility="hidden" overflow="visible" appearance="full" style="left:795px; top:34px; width:85px; height:20px; border-style:none; ">
  225. <choices>
  226. <item>
  227. <label>간호부전체</label>
  228. <value>Y</value>
  229. </item>
  230. </choices>
  231. </select>
  232. </group>
  233. <button id="btn_grdadddutschepsnworkcnfmlist" class="btn2_letter3" visibility="hidden" style="left:1019px; top:74px; width:53px; height:19px; ">
  234. <caption>행추가</caption>
  235. <script type="javascript" ev:event="DOMActivate">
  236. <![CDATA[
  237. misfGridIUD(grd_dutschepsnworkcnfmlist, "A");
  238. ]]>
  239. </script>
  240. </button>
  241. <button id="btn_grddeldutschepsnworkcnfmlist" class="btn2_letter3" visibility="hidden" style="left:1073px; top:74px; width:53px; height:19px; ">
  242. <caption>행삭제</caption>
  243. <script type="javascript" ev:event="DOMActivate">
  244. <![CDATA[
  245. misfGridIUD(grd_dutschepsnworkcnfmlist, "D");
  246. ]]>
  247. </script>
  248. </button>
  249. <datagrid id="grd_dutschepsnworkcnfmlist" nodeset="/root/main/dutschepsnworkcnfm/dutschepsnworkcnfmlist" caption="기관^부서명^사원번호^성명^근무코드^신청일^신청기간^신청기간^신청일수^연차^연차^보휴^보휴^부서장승인^승인^신청사유^밤근무월제한일수|기관^부서명^사원번호^성명^근무코드^신청일^From^To^신청일수^사용^잔여^사용^잔여^부서장승인^^신청사유^밤근무월제한일수" colsep="^" colwidth="100, 100, 73, 80, 65, 90, 92, 99, 58, 57, 52, 53, 54, 45, 45, 323" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:99px; width:1195px; height:635px; ">
  250. <col ref="instcd" visibility="visible"/>
  251. <col ref="dutplcedeptnm"/>
  252. <col ref="emplno"/>
  253. <col ref="emplnm"/>
  254. <col ref="dutcd"/>
  255. <col disabled="true" ref="srvarmappdd" type="inputdate"/>
  256. <col disabled="true" ref="srvarmfromdd" type="inputdate"/>
  257. <col disabled="true" ref="srvarmtodd" type="inputdate"/>
  258. <col ref="srvarmdayno"/>
  259. <col visibility="hidden"/>
  260. <col visibility="hidden"/>
  261. <col visibility="hidden"/>
  262. <col visibility="hidden"/>
  263. <col checkvalue="Y,N" disabled="true" ref="deprtmangraprvyn" type="checkbox"/>
  264. <col checkvalue="Y,N" ref="psnworkapryn" type="checkbox"/>
  265. <col ref="appresn" type="output"/>
  266. <script type="javascript" ev:event="onclick">
  267. <![CDATA[
  268. if(grd_dutschepsnworkcnfmlist.row >= grd_dutschepsnworkcnfmlist.fixedRows)
  269. {
  270. model.setValue("/root/send/dutschepsnworkcnfm/emplno", grd_dutschepsnworkcnfmlist.valueMatrix(grd_dutschepsnworkcnfmlist.row, grd_dutschepsnworkcnfmlist.colRef("emplno")));
  271. model.setValue("/root/send/dutschepsnworkcnfm/emplnm", grd_dutschepsnworkcnfmlist.valueMatrix(grd_dutschepsnworkcnfmlist.row, grd_dutschepsnworkcnfmlist.colRef("emplnm")));
  272. model.refresh();
  273. }
  274. if(grd_dutschepsnworkcnfmlist.isCell(event.focus) > 0)
  275. {
  276. if(grd_dutschepsnworkcnfmlist.row <= grd_dutschepsnworkcnfmlist.fixedRows && grd_dutschepsnworkcnfmlist.mouseCol == grd_dutschepsnworkcnfmlist.colRef("psnworkapryn"))
  277. {
  278. for(var i = 2; i < grd_dutschepsnworkcnfmlist.rows; i++)
  279. {
  280. grd_dutschepsnworkcnfmlist.addStatus(i, "update");
  281. }
  282. }
  283. }
  284. ]]>
  285. </script>
  286. </datagrid>
  287. <line id="line1" class="line_1" style="x1:0px; y1:94px; x2:1195px; y2:94px; "/>
  288. <caption id="caption3" class="tit_2" style="left:5px; top:79px; width:100px; height:13px; ">개인신청현황</caption>
  289. <bool id="bool1" ref="/root/hidden/check" style="left:838px; top:124px; width:15px; height:20px; ">
  290. <script type="javascript" ev:event="xforms-value-changed">
  291. <![CDATA[
  292. if(model.getValue("/root/hidden/check") == "true")
  293. {
  294. for(var i=grd_dutschepsnworkcnfmlist.fixedRows; i<grd_dutschepsnworkcnfmlist.rows; i++)
  295. {
  296. if(grd_dutschepsnworkcnfmlist.valueMatrix(i, grd_dutschepsnworkcnfmlist.colRef("psnworkapryn")) == "N")
  297. {
  298. grd_dutschepsnworkcnfmlist.valueMatrix(i, grd_dutschepsnworkcnfmlist.colRef("psnworkapryn")) = "Y";
  299. grd_dutschepsnworkcnfmlist.addStatus(i, "update");
  300. }
  301. }
  302. }
  303. else
  304. {
  305. for(var i=grd_dutschepsnworkcnfmlist.fixedRows; i<grd_dutschepsnworkcnfmlist.rows; i++)
  306. {
  307. if(grd_dutschepsnworkcnfmlist.valueMatrix(i, grd_dutschepsnworkcnfmlist.colRef("psnworkapryn")) == "Y")
  308. {
  309. grd_dutschepsnworkcnfmlist.valueMatrix(i, grd_dutschepsnworkcnfmlist.colRef("psnworkapryn")) = "N";
  310. grd_dutschepsnworkcnfmlist.addStatus(i, "update");
  311. }
  312. }
  313. }
  314. model.refresh();
  315. ]]>
  316. </script>
  317. </bool>
  318. <button id="btn_excel" class="btn2_letter4" style="left:1129px; top:74px; width:64px; height:19px; ">
  319. <caption>엑셀저장</caption>
  320. <script type="javascript" ev:event="DOMActivate">
  321. <![CDATA[
  322. misfSaveExcel(grd_excelsave);
  323. ]]>
  324. </script>
  325. </button>
  326. <datagrid id="grd_excelsave" nodeset="/root/main/dutschepsnworkcnfm/dutschepsnworkcnfmlist" visibility="hidden" caption="부서명^사원번호^성명^근무코드^신청일^신청기간^신청기간^신청일수^부서장승인^승인^신청사유^밤근무월제한일수|부서명^사원번호^성명^근무코드^신청일^From^To^신청일수^부서장승인^승인^신청사유^밤근무월제한일수" colsep="^" colwidth="100, 84, 80, 65, 100, 100, 100, 58, 45, 45, 270" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:20px; top:200px; width:1075px; height:301px; ">
  327. <col ref="dutplcedeptnm"/>
  328. <col ref="emplno"/>
  329. <col ref="emplnm"/>
  330. <col ref="dutcd"/>
  331. <col disabled="true" ref="srvarmappdd" type="inputdate"/>
  332. <col disabled="true" ref="srvarmfromdd" type="inputdate"/>
  333. <col disabled="true" ref="srvarmtodd" type="inputdate"/>
  334. <col ref="srvarmdayno"/>
  335. <col checkvalue="Y,N" disabled="true" ref="deprtmangraprvyn" type="checkbox"/>
  336. <col checkvalue="Y,N" ref="psnworkapryn" type="checkbox"/>
  337. <col ref="appresn" type="output"/>
  338. </datagrid>
  339. </group>
  340. <group id="group5" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  341. <button id="btn_save" class="btn4_letter2" style="left:1139px; top:3px; width:56px; height:22px; ">
  342. <caption>저장</caption>
  343. <script type="javascript" ev:event="DOMActivate">
  344. <![CDATA[
  345. if (misfSave("TXRPD04001")){
  346. btn_search.dispatch("DOMActivate");
  347. }
  348. ]]>
  349. </script>
  350. </button>
  351. <line id="line75" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
  352. </group>
  353. </xhtml:body>
  354. </xhtml:html>