SMRPD04310_개인시간외확인부서장승인.xrw 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545
  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>개인시간외(부서장용)</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <dutcd>
  11. <dutcdlist/>
  12. </dutcd>
  13. <dutschedeptcnfm>
  14. <dutschedeptcnfmlist/>
  15. </dutschedeptcnfm>
  16. </main>
  17. <send>
  18. <save>
  19. <dutschedeptcnfmlist/>
  20. </save>
  21. <dutschedeptcnfm>
  22. <instcd/>
  23. <srvarmapfromdd/>
  24. <srvarmaptodd/>
  25. <dutunitcd/>
  26. <dutunitnm/>
  27. <emplno/>
  28. <emplnm/>
  29. <ymdflag>1</ymdflag>
  30. <deprtmangraprvyn/>
  31. <tempfromdd/>
  32. <temptodd/>
  33. <deptgb/>
  34. </dutschedeptcnfm>
  35. </send>
  36. <hidden>
  37. <check/>
  38. </hidden>
  39. <temp>
  40. <tempdeptcd/>
  41. </temp>
  42. <tempday>
  43. <dutinfo/>
  44. </tempday>
  45. </root>
  46. </instance>
  47. <submission id="TRRPD04311" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/dutschedeptcnfm" resultref="/root/main/dutschedeptcnfm"/>
  48. <submission id="TXRPD02601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/hiddeen/temp"/>
  49. <submission id="TRRPD03702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/dutschedeptcnfm" resultref="/root/main/dutcd"/>
  50. <submission id="TRRPD10102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/retrparams" resultref="/root/tempday/dutinfo"/>
  51. </model>
  52. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  53. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  54. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  55. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  56. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  57. <script type="javascript" src="../../../mis/dligclaznsmngtweb/js/RPD001.js"/>
  58. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  59. <script type="javascript" ev:event="xforms-ready">
  60. <![CDATA[
  61. fInit();
  62. ]]>
  63. </script>
  64. <script type="javascript">
  65. <![CDATA[
  66. function fInit()
  67. {
  68. //grd_dutschedeptcnfmlist.fixedcellcheckbox(0, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn")) = true;
  69. //grd_dutschedeptcnfmlist.fixedcellcheckbox(1, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn")) = true;
  70. misfGridInit(grd_dutschedeptcnfmlist);
  71. misfMsterDetailSet(grd_dutschedeptcnfmlist, null, "TRRPD04311" ,"Y");
  72. fSetDate();
  73. misfComboInstCdListMulti("cmb_instcd",ipt_srvarmapfromdd.value,"","N");
  74. misfGetAndSetUserInfo();
  75. misfGetUserAuth();
  76. rpdfSetControlAuth();
  77. rpdfComboCdList(cmb_dutplce); // 권한별 근무부서 세팅
  78. rpdfSetDutUnitCombo();
  79. model.setValue("/root/send/dutschedeptcnfm/dutunitcd", DUT_UNIT_CD);
  80. model.setValue("/root/send/dutschedeptcnfm/dutunitnm", DUT_UNIT_NM);
  81. model.setValue("/root/send/dutschedeptcnfm/instcd", getUserInfo("dutplceinstcd"));
  82. //화면 권한 설정
  83. btn_search.disabled = !(checkAuth("R"));
  84. btn_save.disabled = !(checkAuth("X"));
  85. cmb_dutplce.value = DUT_UNIT_CD;
  86. if (cmb_dutplce.value == "") {
  87. cmb_dutplce.select(0);
  88. }
  89. //rpdfSetControlByJobRespCd("cmb_ymdflag,ipt_srvarmapfromdd,ipt_srvarmaptodd,cmb_dutplce,ipt_emplno,btn_emplno,ipt_emplnm,rdo_deprtmangraprvyn,btn_grdadddutschedeptcnfmlist,btn_grddeldutschedeptcnfmlist,btn_search,btn_save");
  90. model.setValue("/root/send/dutschedeptcnfm/deptgb", "1");
  91. if(!btn_search.disabled)
  92. {
  93. btn_search.dispatch("DOMActivate");
  94. }
  95. model.refresh();
  96. }
  97. function fSetDate()
  98. {
  99. var dtLast = new Date(getCurrentDate().substr(0, 4), getCurrentDate().substr(4, 2), 0);
  100. var iLastDay = dtLast.getDate();
  101. submit("TRRPD10102", false);
  102. ipt_srvarmapfromdd.value = model.getValue("/root/tempday/dutinfo/dutlist/fromymd");
  103. ipt_srvarmaptodd.value = model.getValue("/root/tempday/dutinfo/dutlist/toymd");
  104. //ipt_srvarmapfromdd.value = getCurrentDate().substr(0, 6) + "01";
  105. //ipt_srvarmaptodd.value = getCurrentDate().substr(0, 6) + (iLastDay).toString();
  106. }
  107. function fSetDutCdAppList()
  108. {
  109. if (grd_dutschedeptcnfmlist.rows > 0 && grd_dutschedeptcnfmlist.row > 0)
  110. {
  111. var sDeprtAppYn = grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn"));
  112. var sFromDD = grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmfromdd"));
  113. var sSetCd = grd_dutcdlist.valueMatrix(grd_dutcdlist.row, grd_dutcdlist.colRef("dutcd"));
  114. var iRowStatus = grd_dutschedeptcnfmlist.rowStatus(grd_dutschedeptcnfmlist.row);
  115. if(sDeprtAppYn == "Y" && (iRowStatus != 1 && iRowStatus != 3))
  116. {
  117. messageBox("부서장 승인 된 내역입니다.", "I999");
  118. }
  119. else if(sDeprtAppYn == "Y" && (iRowStatus == 1 || iRowStatus == 3))
  120. {
  121. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("dutcd")) = sSetCd;
  122. if(grd_dutschedeptcnfmlist.rowStatus(grd_dutschedeptcnfmlist.row) == 0)
  123. {
  124. grd_dutschedeptcnfmlist.addStatus(grd_dutschedeptcnfmlist.row, "update");
  125. }
  126. if(sSetCd == "B")
  127. {
  128. grd_dutschedeptcnfmlist.col = grd_dutschedeptcnfmlist.colRef("srvarmfromdd");
  129. grd_dutschedeptcnfmlist.dispatch("xforms-value-changed");
  130. }
  131. }
  132. }
  133. }
  134. ]]>
  135. </script>
  136. </xhtml:head>
  137. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  138. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  139. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:230px; height:14px; ">개인시간외(부서장용)</caption>
  140. <caption id="caption4" class="patient_text_black" style="left:922px; top:0px; width:272px; "/>
  141. </group>
  142. <group id="group3" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  143. <group id="group4" style="left:0px; top:10px; width:1195px; height:56px; vertical-align:top; ">
  144. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:56px; background-color:#fffbf2; border-color:#ffd799; "/>
  145. <line id="line3" class="line_4" style="x1:1108px; y1:6px; x2:1108px; y2:51px; border-color:#ffe4bb; border-left-style:solid; "/>
  146. <button id="btn_search" class="btn1_letter2" navindex="4" style="left:1124px; top:17px; width:56px; height:22px; text-align:left; ">
  147. <caption>조회</caption>
  148. <script type="javascript" ev:event="DOMActivate">
  149. <![CDATA[
  150. //submit("TRRPD03702");
  151. misfMsterDetailRetrieve();
  152. ]]>
  153. </script>
  154. </button>
  155. <caption id="caption1" class="search_name" style="left:452px; top:32px; width:86px; height:17px; ">사원번호 :</caption>
  156. <button id="btn_emplno" class="icon_search" style="left:617px; top:32px; width:16px; height:16px; ">
  157. <caption/>
  158. <script type="javascript" ev:event="DOMActivate">
  159. <![CDATA[
  160. rpbfOpenPopUpList("SPRPB00101", ipt_emplno, "emplno,emplnm,dutunitcd,dutunitnm", "", "N");
  161. model.refresh();
  162. ]]>
  163. </script>
  164. </button>
  165. <input id="ipt_emplnm" ref="/root/send/dutschedeptcnfm/emplnm" class="input_search" navindex="3" style="left:635px; top:31px; width:104px; height:19px; ">
  166. <script type="javascript" ev:event="onkeypress">
  167. <![CDATA[
  168. if(event.keyCode == 13)
  169. {
  170. if(ipt_emplnm.value == ipt_emplnm.currentText) return;
  171. ipt_emplnm.value = ipt_emplnm.currentText;
  172. model.setValue("/root/temp/tempdeptcd", cmb_dutplce.value);
  173. rpbfValidationCheck("EMPLNM", "emplno,emplnm,dutunitcd,dutunitnm");
  174. if(cmb_dutplce.value == "") cmb_dutplce.value = model.getValue("/root/temp/tempdeptcd")
  175. model.refresh();
  176. }
  177. ]]>
  178. </script>
  179. <script type="javascript" ev:event="xforms-value-changed">
  180. <![CDATA[
  181. model.setValue("/root/temp/tempdeptcd", cmb_dutplce.value);
  182. rpbfValidationCheck("EMPLNM", "emplno,emplnm,dutunitcd,dutunitnm");
  183. if(cmb_dutplce.value == "") cmb_dutplce.value = model.getValue("/root/temp/tempdeptcd")
  184. model.refresh();
  185. ]]>
  186. </script>
  187. </input>
  188. <input id="ipt_emplno" ref="/root/send/dutschedeptcnfm/emplno" class="input_search" navindex="2" maxlength="10" style="left:540px; top:31px; width:74px; height:19px; text-align:center; ">
  189. <script type="javascript" ev:event="onkeypress">
  190. <![CDATA[
  191. if(event.keyCode == 13)
  192. {
  193. if(ipt_emplno.value == ipt_emplno.currentText) return;
  194. ipt_emplno.value = ipt_emplno.currentText;
  195. model.setValue("/root/temp/tempdeptcd", cmb_dutplce.value);
  196. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  197. if(cmb_dutplce.value == "") cmb_dutplce.value = model.getValue("/root/temp/tempdeptcd")
  198. model.refresh();
  199. }
  200. ]]>
  201. </script>
  202. <script type="javascript" ev:event="xforms-value-changed">
  203. <![CDATA[
  204. model.setValue("/root/temp/tempdeptcd", cmb_dutplce.value);
  205. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  206. if(cmb_dutplce.value == "") cmb_dutplce.value = model.getValue("/root/temp/tempdeptcd")
  207. model.refresh();
  208. ]]>
  209. </script>
  210. </input>
  211. <caption id="caption2" class="search_name" style="left:451px; top:9px; width:15px; height:17px; "/>
  212. <input id="ipt_srvarmapfromdd" ref="/root/send/dutschedeptcnfm/srvarmapfromdd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:546px; top:7px; width:91px; height:19px; text-align:center; ">
  213. <script type="javascript" ev:event="xforms-value-changed">
  214. <![CDATA[
  215. var instcd = cmb_instcd.value;
  216. if( getStringLength(ipt_srvarmapfromdd.value) == "8" ) {
  217. model.removeNodeset(cmb_instcd.attribute("ref"));
  218. model.makeNode("/root/send/dutschedeptcnfm/instcd");
  219. misfComboInstCdListMulti("cmb_instcd",ipt_srvarmapfromdd.value,"","N");
  220. cmb_instcd.value = instcd;
  221. model.refresh();
  222. }
  223. ]]>
  224. </script>
  225. </input>
  226. <input id="ipt_srvarmaptodd" ref="/root/send/dutschedeptcnfm/srvarmaptodd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:650px; top:7px; width:91px; height:19px; text-align:center; "/>
  227. <select1 id="rdo_deprtmangraprvyn" ref="/root/send/dutschedeptcnfm/deprtmangraprvyn" visibility="hidden" overflow="visible" appearance="full" cols="3" style="left:865px; top:9px; width:150px; height:14px; border-style:none; ">
  228. <choices>
  229. <item>
  230. <label>승인</label>
  231. <value>Y</value>
  232. </item>
  233. <item>
  234. <label>미승인</label>
  235. <value>N</value>
  236. </item>
  237. <item>
  238. <label>전체</label>
  239. <value/>
  240. </item>
  241. </choices>
  242. </select1>
  243. <caption id="caption7" style="left:638px; top:10px; width:11px; height:15px; ">~</caption>
  244. <caption id="caption9" class="search_name" visibility="hidden" style="left:779px; top:9px; width:86px; height:17px; ">승인여부 :</caption>
  245. <select1 id="cmb_ymdflag" ref="/root/send/dutschedeptcnfm/ymdflag" class="combo_search" appearance="minimal" style="left:472px; top:7px; width:75px; height:19px; text-align:center; ">
  246. <choices>
  247. <item>
  248. <label>적용년월</label>
  249. <value>1</value>
  250. </item>
  251. <item>
  252. <label>신청년월</label>
  253. <value>2</value>
  254. </item>
  255. </choices>
  256. </select1>
  257. <select1 id="cmb_instcd" ref="/root/send/dutschedeptcnfm/instcd" class="combo_search" navindex="1" appearance="minimal" style="left:108px; top:8px; width:230px; height:19px; ">
  258. <choices>
  259. <itemset>
  260. <label/>
  261. <value/>
  262. </itemset>
  263. </choices>
  264. </select1>
  265. <caption id="caption8" class="search_name" style="left:20px; top:9px; width:86px; height:17px; ">소속기관 :</caption>
  266. <button id="btn_dutdept" class="icon_search" style="left:192px; top:32px; width:16px; height:16px; ">
  267. <caption/>
  268. <script type="javascript" ev:event="DOMActivate">
  269. <![CDATA[
  270. misfOpenPopUpList("02", ipt_dutdeptcd,"","dutunitcd,dutunitnm", cmb_instcd.value + "," + ipt_srvarmaptodd.value, "instcd,basedd");
  271. model.refresh();
  272. ]]>
  273. </script>
  274. </button>
  275. <caption id="caption5" class="search_name" style="left:20px; top:31px; width:87px; height:17px; ">관리부서 :</caption>
  276. <input id="ipt_dutdeptnm" ref="/root/send/dutschedeptcnfm/dutunitnm" class="input_search" navindex="3" style="left:212px; top:30px; width:127px; height:19px; ">
  277. <script type="javascript" ev:event="xforms-value-changed">
  278. <![CDATA[
  279. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  280. model.refresh();
  281. ]]>
  282. </script>
  283. <script type="javascript" ev:event="onkeypress">
  284. <![CDATA[
  285. if(event.keyCode == 13)
  286. {
  287. ipt_dutdeptnm.value = ipt_dutdeptnm.currentText;
  288. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  289. model.refresh();
  290. }
  291. ]]>
  292. </script>
  293. </input>
  294. <input id="ipt_dutdeptcd" ref="/root/send/dutschedeptcnfm/dutunitcd" class="input_search" navindex="2" maxlength="10" style="left:108px; top:30px; width:80px; height:19px; ">
  295. <script type="javascript" ev:event="xforms-value-changed">
  296. <![CDATA[
  297. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  298. model.refresh();
  299. ]]>
  300. </script>
  301. <script type="javascript" ev:event="onkeypress">
  302. <![CDATA[
  303. if(event.keyCode == 13)
  304. {
  305. ipt_dutdeptcd.value = ipt_dutdeptcd.currentText;
  306. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  307. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  308. model.refresh();
  309. }
  310. ]]>
  311. </script>
  312. </input>
  313. <select1 id="cmb_dutplce" ref="/root/send/dutschedeptcnfm/dutunitcd" class="combo_search" visibility="visible" appearance="minimal" style="left:108px; top:30px; width:230px; height:19px; ">
  314. <choices>
  315. <itemset>
  316. <label/>
  317. <value/>
  318. </itemset>
  319. </choices>
  320. <script type="javascript" ev:event="xforms-value-changed">
  321. <![CDATA[
  322. btn_search.dispatch("DOMActivate");
  323. ]]>
  324. </script>
  325. </select1>
  326. <select1 id="combo1" ref="/root/send/dutschedeptcnfm/deptgb" appearance="minimal" style="left:345px; top:30px; width:100px; height:19px; ">
  327. <choices>
  328. <item>
  329. <label>근무지</label>
  330. <value>1</value>
  331. </item>
  332. <item>
  333. <label>소속부서</label>
  334. <value>2</value>
  335. </item>
  336. <item>
  337. <label>소속과(팀)</label>
  338. <value>3</value>
  339. </item>
  340. <item>
  341. <label>소속부(실)</label>
  342. <value>4</value>
  343. </item>
  344. </choices>
  345. </select1>
  346. </group>
  347. <button id="btn_grdadddutschedeptcnfmlist" class="btn2_letter3" visibility="hidden" style="left:1086px; top:68px; width:53px; height:19px; ">
  348. <caption>행추가</caption>
  349. <script type="javascript" ev:event="DOMActivate">
  350. <![CDATA[
  351. if(ipt_emplno.value == "" || ipt_emplnm.value == "")
  352. {
  353. messageBox("사원번호를 입력하십시오.", "I999");
  354. return;
  355. }
  356. misfGridIUD(grd_dutschedeptcnfmlist, "A");
  357. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmappdd")) = getCurrentDate();
  358. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("dutplcedeptcd")) = cmb_dutplce.value;
  359. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("deprtmangrinptyn")) = "Y";
  360. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn")) = "Y";
  361. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("psnworkapryn")) = "N";
  362. ]]>
  363. </script>
  364. </button>
  365. <button id="btn_grddeldutschedeptcnfmlist" class="btn2_letter3" visibility="hidden" style="left:1142px; top:68px; width:53px; height:19px; ">
  366. <caption>행삭제</caption>
  367. <script type="javascript" ev:event="DOMActivate">
  368. <![CDATA[
  369. misfGridIUD(grd_dutschedeptcnfmlist, "D");
  370. ]]>
  371. </script>
  372. </button>
  373. <datagrid id="grd_dutschedeptcnfmlist" nodeset="/root/main/dutschedeptcnfm/dutschedeptcnfmlist" allowuserresize="false" caption="근무부서^기관코드^사번^성명^직종^근무코드^근무지부서^근무시작시간^근무종료시간^부서장입력여부^승인^신청사유^밤근무월제한일수" colsep="^" colwidth="0, 0, 51, 60, 100, 94, 114, 123, 124, 0, 49, 465" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:94px; width:1193px; height:640px; ">
  374. <col ref="dutplcedeptcd" visibility="hidden"/>
  375. <col ref="instcd" visibility="hidden"/>
  376. <col ref="emplno" style="text-align:center; "/>
  377. <col ref="emplnm"/>
  378. <col ref="jobkindnm" style="text-align:left; "/>
  379. <col disabled="true" ref="dutcd" type="combo" style="text-align:left; ">
  380. <choices>
  381. <item>
  382. <label>시간외</label>
  383. <value>01</value>
  384. </item>
  385. <item>
  386. <label>야간</label>
  387. <value>02</value>
  388. </item>
  389. <item>
  390. <label>휴일</label>
  391. <value>03</value>
  392. </item>
  393. <item>
  394. <label>CALL</label>
  395. <value>04</value>
  396. </item>
  397. <item>
  398. <label>심야야간</label>
  399. <value>05</value>
  400. </item>
  401. </choices>
  402. </col>
  403. <col ref="dutplcedeptnm"/>
  404. <col disabled="true" ref="appfrom" format="yyyy-mm-dd hh:nn" style="text-align:center; "/>
  405. <col disabled="true" ref="appto" format="yyyy-mm-dd hh:nn" style="text-align:center; "/>
  406. <col checkvalue="Y,N" ref="deprtmangrinptyn" type="checkbox" visibility="hidden"/>
  407. <col checkvalue="Y,N" ref="deprtmangraprvyn" type="checkbox" visibility="hidden"/>
  408. <col disabled="true" ref="appresn"/>
  409. <script type="javascript" ev:event="onclick">
  410. <![CDATA[
  411. if(grd_dutschedeptcnfmlist.row >= grd_dutschedeptcnfmlist.fixedRows)
  412. {
  413. model.setValue("/root/send/dutschedeptcnfm/emplno", grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("emplno")));
  414. model.setValue("/root/send/dutschedeptcnfm/emplnm", grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("emplnm")));
  415. model.refresh();
  416. }
  417. if(grd_dutschedeptcnfmlist.isCell(event.focus) > 0)
  418. {
  419. if(grd_dutschedeptcnfmlist.row <= grd_dutschedeptcnfmlist.fixedRows && grd_dutschedeptcnfmlist.mouseCol == grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn"))
  420. {
  421. for(var i = 1; i < grd_dutschedeptcnfmlist.rows; i++)
  422. {
  423. grd_dutschedeptcnfmlist.addStatus(i, "update");
  424. }
  425. }
  426. }
  427. ]]>
  428. </script>
  429. <script type="javascript" ev:event="xforms-value-changed">
  430. <![CDATA[
  431. if (grd_dutschedeptcnfmlist.col == grd_dutschedeptcnfmlist.colRef("srvarmfromdd"))
  432. {
  433. var sFromDD = grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmfromdd"));
  434. var sToDD = grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmtodd"));
  435. var sDutCd = grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("dutcd"));
  436. if(sToDD.length != 8)
  437. {
  438. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmtodd")) = sFromDD;
  439. }
  440. if(sDutCd.length > 0)
  441. {
  442. if(sDutCd.substr(0, 1) == "B" && sFromDD.length == 8)
  443. {
  444. var dtCurrent = new Date(misfConvertChar2Date(sFromDD, "/"));
  445. dtCurrent.setDate(dtCurrent.getDate() + 89);
  446. model.makeValue("/root/temp/date", dtCurrent.getVarDate());
  447. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmtodd")) = model.getValue("/root/temp/date").replace("-", "").replace("-", "");
  448. }
  449. }
  450. var dayno = getDateInterval(grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmfromdd")), grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row,grd_dutschedeptcnfmlist.colRef("srvarmtodd")));
  451. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row, grd_dutschedeptcnfmlist.colRef("srvarmdayno")) = dayno + 1;
  452. model.refresh();
  453. }
  454. else if (grd_dutschedeptcnfmlist.col == grd_dutschedeptcnfmlist.colRef("srvarmtodd"))
  455. {
  456. var dayno = getDateInterval(grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row,grd_dutschedeptcnfmlist.colRef("srvarmfromdd")), grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row,grd_dutschedeptcnfmlist.colRef("srvarmtodd")));
  457. grd_dutschedeptcnfmlist.valueMatrix(grd_dutschedeptcnfmlist.row,grd_dutschedeptcnfmlist.colRef("srvarmdayno")) = dayno + 1;
  458. model.refresh();
  459. }
  460. ]]>
  461. </script>
  462. <script type="javascript" ev:event="onaftersort">
  463. <![CDATA[
  464. grd_dutschedeptcnfmlist.gridToInstance();
  465. ]]>
  466. </script>
  467. </datagrid>
  468. <line id="line1" class="line_1" style="x1:0px; y1:89px; x2:1194px; y2:89px; "/>
  469. <caption id="caption3" class="tit_2" style="left:5px; top:74px; width:165px; height:13px; ">개인신청현황</caption>
  470. <bool id="bool1" visibility="hidden" ref="/root/hidden/check" style="left:785px; top:66px; width:20px; height:20px; ">
  471. <script type="javascript" ev:event="xforms-value-changed">
  472. <![CDATA[
  473. if(model.getValue("/root/hidden/check") == "true")
  474. {
  475. for(var i=1; i<grd_dutschedeptcnfmlist.rows; i++)
  476. {
  477. if(grd_dutschedeptcnfmlist.valueMatrix(i, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn")) == "N")
  478. {
  479. grd_dutschedeptcnfmlist.valueMatrix(i, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn")) = "Y";
  480. grd_dutschedeptcnfmlist.addStatus(i, "update");
  481. }
  482. }
  483. }
  484. else
  485. {
  486. for(var i=1; i<grd_dutschedeptcnfmlist.rows; i++)
  487. {
  488. if(grd_dutschedeptcnfmlist.valueMatrix(i, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn")) == "Y")
  489. {
  490. grd_dutschedeptcnfmlist.valueMatrix(i, grd_dutschedeptcnfmlist.colRef("deprtmangraprvyn")) = "N";
  491. grd_dutschedeptcnfmlist.addStatus(i, "update");
  492. }
  493. }
  494. }
  495. model.refresh();
  496. ]]>
  497. </script>
  498. </bool>
  499. </group>
  500. <group id="group5" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  501. <button id="btn_save" class="btn4_letter2" visibility="hidden" style="left:1136px; top:3px; width:56px; height:22px; ">
  502. <caption>저장</caption>
  503. <script type="javascript" ev:event="DOMActivate">
  504. <![CDATA[
  505. if (misfSave("TXRPD02601")){
  506. btn_search.dispatch("DOMActivate");
  507. }
  508. ]]>
  509. </script>
  510. </button>
  511. <line id="line75" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
  512. <input id="opt_dutdeptnm" ref="/root/send/dutschedeptcnfm/dutunitnm" class="output_fix" disabled="true" navindex="2" visibility="hidden" style="left:715px; top:3px; width:20px; height:19px; "/>
  513. <input id="opt_dutdeptcd" ref="/root/send/dutschedeptcnfm/dutunitcd" class="output_fix" disabled="true" navindex="2" visibility="hidden" style="left:695px; top:3px; width:20px; height:19px; "/>
  514. </group>
  515. </xhtml:body>
  516. </xhtml:html>