SMRPD04300_개인시간외신청.xrw 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627
  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. <dutscheapp>
  11. <dutscheapplist/>
  12. </dutscheapp>
  13. </main>
  14. <send>
  15. <save>
  16. <dutscheapplist/>
  17. </save>
  18. <dutcd>
  19. <instcd/>
  20. <dutunitcd/>
  21. <dutunitnm/>
  22. </dutcd>
  23. <dutscheapp>
  24. <instcd/>
  25. <srvarmapdd/>
  26. <emplno/>
  27. <emplnm/>
  28. <dutunitcd/>
  29. <dutunitnm/>
  30. <newElement/>
  31. <srvarmapfromdd/>
  32. <srvarmaptodd/>
  33. <ymdflag>2</ymdflag>
  34. <srvdd/>
  35. </dutscheapp>
  36. </send>
  37. <dutinfo1>
  38. <dutlist>
  39. <yoil/>
  40. </dutlist>
  41. </dutinfo1>
  42. <hidden/>
  43. <tempday>
  44. <dutinfo/>
  45. </tempday>
  46. </root>
  47. </instance>
  48. <submission id="TRRPD04301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/dutscheapp" resultref="/root/main/dutscheapp"/>
  49. <submission id="TXRPD04301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/hiddeen/temp"/>
  50. <submission id="TRRPD10102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/retrparams" resultref="/root/tempday/dutinfo"/>
  51. <submission id="TRRPD04303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/dutscheapp" resultref="/root/dutinfo1"/>
  52. </model>
  53. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  54. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  55. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  56. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  57. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  58. <script type="javascript" src="../../../mis/dligclaznsmngtweb/js/RPD001.js"/>
  59. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  60. <script type="javascript" ev:event="xforms-ready">
  61. <![CDATA[
  62. fInit();
  63. ]]>
  64. </script>
  65. <script type="javascript">
  66. <![CDATA[
  67. var DUT_UNIT_CD = "";
  68. var DUT_UNIT_NM = "";
  69. function fInit()
  70. {
  71. misfGridInit(grd_dutscheapplist);
  72. var dt = new Date(getCurrentDate().substr(0, 4), getCurrentDate().substr(4, 2), 0);
  73. submit("TRRPD10102", false);
  74. ipt_srvarmapfromdd.value = model.getValue("/root/tempday/dutinfo/dutlist/fromymd");
  75. ipt_srvarmaptodd.value = model.getValue("/root/tempday/dutinfo/dutlist/toymd");
  76. misfMsterDetailSet(grd_dutscheapplist, null, "TRRPD04301" ,"Y");
  77. misfComboInstCdListMulti("cmb_instcd",ipt_srvarmapfromdd.value,"","N");
  78. misfGetAndSetUserInfo();
  79. misfGetUserAuth();
  80. rpdfSetControlAuth();
  81. rpdfSetDutUnitCombo();
  82. cmb_dutplce.visible = false;
  83. model.setValue("/root/send/dutscheapp/instcd", getUserInfo("dutplceinstcd"));
  84. model.setValue("/root/send/dutscheapp/emplno", getUserInfo("userid"));
  85. model.setValue("/root/send/dutscheapp/emplnm", getUserInfo("usernm"));
  86. model.setValue("/root/send/dutscheapp/dutunitcd", DUT_UNIT_CD);
  87. model.setValue("/root/send/dutscheapp/dutunitnm", DUT_UNIT_NM);
  88. model.setValue("/root/send/dutcd/dutunitcd", DUT_UNIT_CD);
  89. model.setValue("/root/send/dutcd/dutunitnm", DUT_UNIT_NM);
  90. btn_search.dispatch("DOMActivate");
  91. rpdfSetControlByJobRespCd("ipt_emplno,btn_emplno,ipt_emplnm");
  92. ipt_emplno.disabled = true
  93. ipt_emplnm.disabled = true
  94. btn_emplno.disabled = true
  95. btn_search.disabled = !(checkAuth("R"));
  96. btn_save.disabled = !(checkAuth("X"));
  97. model.refresh();
  98. }
  99. function fRetrieve()
  100. {
  101. if(ipt_emplno.value == "" || ipt_emplnm.value == "")
  102. {
  103. messageBox("사원번호를", "C001");
  104. return;
  105. }
  106. model.setValue("/root/send/dutcd/instcd", model.getValue("/root/send/dutscheapp/instcd"));
  107. misfMsterDetailRetrieve();
  108. //submit("TRRPD03702");
  109. for(var i=2; i<grd_dutscheapplist.rows; i++)
  110. {
  111. var sCnfmYn = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("deprtmangraprvyn"));
  112. if(sCnfmYn == "Y")
  113. {
  114. grd_dutscheapplist.rowStyle(i, "all", "background-color") = "#DDDDDD";
  115. misfSetReadOnlyCol(grd_dutscheapplist, "dutcd,srvarmappdd,srvarmfromdd,srvarmtodd,appresn", true, i);
  116. }
  117. else
  118. {
  119. grd_dutscheapplist.rowStyle(i, "all", "background-color") = "#FFFFFF";
  120. misfSetReadOnlyCol(grd_dutscheapplist, "dutcd,srvarmappdd,srvarmfromdd,srvarmtodd,appresn", false, i);
  121. }
  122. }
  123. }
  124. function fSetHoliLen()
  125. {
  126. if (grd_dutscheapplist.col == grd_dutscheapplist.colRef("appfrom"))
  127. {
  128. var sFromDD = grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("appfrom"));
  129. var sToDD = grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("appto"));
  130. var sDutCd = grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("dutcd"));
  131. if (sFromDD != "" && sToDD != ""){
  132. if (sFromDD > sToDD){
  133. messageBox("기간 설정이 잘못 입력되었습니다.", "E999", "");
  134. return;
  135. }
  136. }
  137. /*
  138. if(sToDD.length != 8)
  139. {
  140. grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("srvarmtodd")) = sFromDD;
  141. }
  142. */
  143. //var stime = grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("appfrom").substr(8, 11));
  144. //var ttime = grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("appto").substr(8, 11));
  145. //var dayno = getTimeInterval(grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("appfrom").substr(8, 11)), grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("appto").substr(8, 11)));
  146. //alert(stime);
  147. //grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("srvarmdayno")) = dayno + 1;
  148. model.refresh();
  149. }
  150. else if (grd_dutscheapplist.col == grd_dutscheapplist.colRef("appto"))
  151. {
  152. var sFromDD = grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("appfrom"));
  153. var sToDD = grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("appto"));
  154. if (sFromDD != "" && sToDD != ""){
  155. if (sFromDD > sToDD){
  156. messageBox("기간 설정이 잘못 입력되었습니다.", "E999", "");
  157. return;
  158. }
  159. }
  160. //var dayno = getTimeInterval(grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("appfrom").substr(8, 11)), grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("appto").substr(8, 11)));
  161. //alert(dayno);
  162. //grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row,grd_dutscheapplist.colRef("srvarmdayno")) = dayno + 1;
  163. model.refresh();
  164. }
  165. }
  166. function fSave(){
  167. //fSetHoliLen();
  168. //var yoil = model.getValue("/root/tempday/dutinfo/dutlist/yoil");
  169. for(var i=1; i<grd_dutscheapplist.rows; i++){
  170. if (grd_dutscheapplist.rowStatus(i) != 4){
  171. var iudgb = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("iudgb"));
  172. var sapptm = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("apptm"));
  173. var sDutCd = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("dutcd"));
  174. var sFromDD = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("appfrom"));
  175. var sToDD = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("appto"));
  176. var sAppResn = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("appresn"));
  177. var sCnfmYn = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("deprtmangraprvyn"));
  178. var sCnfm2Yn = grd_dutscheapplist.valueMatrix(i, grd_dutscheapplist.colRef("psnworkapryn"));
  179. if (iudgb != "U"){
  180. model.setValue("/root/send/dutscheapp/srvdd", sFromDD.substr(0, 8));
  181. submit("TRRPD04303");
  182. var yoil = model.getValue("/root/dutinfo1/dutlist/yoil");
  183. //alert(sDutCd + "==" + DUT_PLCEDEPT_CD);
  184. if (sDutCd == "03"){
  185. if (DUT_PLCEDEPT_CD == "4060100000" || DUT_PLCEDEPT_CD == "3250100000"){
  186. }else{
  187. if (yoil != "0"){
  188. messageBox("휴일외에는 휴일근무를 신청할 수 없습니다..", "E999", "");
  189. return;
  190. }
  191. /*
  192. if (yoil == "0" && parseInt(sapptm) < 9){
  193. messageBox("휴일근무는 9시간이 넘어야 가능합니다. 시간외로 신청바랍니다.", "E999", "");
  194. return;
  195. }
  196. */
  197. }
  198. }
  199. }else{
  200. if (grd_dutscheapplist.rowStatus(i) != 0){
  201. if(sCnfmYn == "Y" || sCnfm2Yn == "Y"){
  202. messageBox("부서장이나 인사팀 승인이 난 내역은 수정 할 수 없습니다.", "I999");
  203. return;
  204. }
  205. if(sDutCd == "" || sFromDD == "" || sToDD == ""){
  206. messageBox("[ 근무코드 | 시작일 | 종료일 ] 은 입력하셔야 합니다.", "I999");
  207. return;
  208. }
  209. }
  210. }
  211. if (grd_dutscheapplist.rowStatus(i) != 0){
  212. if (sFromDD.length < 12){
  213. messageBox("근무시작일시를 정확히 입력하시기 바랍니다.", "E999", "");
  214. return;
  215. }
  216. if (sToDD.length < 12){
  217. messageBox("근무종료일시를 정확히 입력하시기 바랍니다.", "E999", "");
  218. return;
  219. }
  220. if (sFromDD > sToDD){
  221. messageBox("근무시작일시가 종료일시보다 큽니다.", "E999", "");
  222. return;
  223. }
  224. if ( sToDD.substr(8, 2) == 24 ){
  225. messageBox("24시는 틀린 표현입니다. 다음날 00시로 해주세요.", "E999", "");
  226. return;
  227. }
  228. }
  229. }
  230. }
  231. if (misfSave("TXRPD04301")){;
  232. fRetrieve();
  233. }
  234. }
  235. function fDelRow(){
  236. /*
  237. for(var i=0; i<grd_dutscheapplist.selectedCells.length; i++){
  238. var iRowIdx = grd_dutscheapplist.selectedCells.item(i).row;
  239. var sCnfmYn = grd_dutscheapplist.valueMatrix(iRowIdx, grd_dutscheapplist.colRef("deprtmangraprvyn"));
  240. var sCnfm2Yn = grd_dutscheapplist.valueMatrix(iRowIdx, grd_dutscheapplist.colRef("psnworkapryn"));
  241. if(sCnfmYn == "Y" || sCnfm2Yn == "Y"){
  242. messageBox("부서장이나 인사팀 승인이 난 내역은 삭제 할 수 없습니다.", "I999");
  243. continue;
  244. }else{
  245. grd_dutscheapplist.addStatus(iRowIdx, "delete");
  246. }
  247. }
  248. */
  249. var iRowIdx = grd_dutscheapplist.row;
  250. var sCnfmYn = grd_dutscheapplist.valueMatrix(iRowIdx, grd_dutscheapplist.colRef("deprtmangraprvyn"));
  251. var sCnfm2Yn = grd_dutscheapplist.valueMatrix(iRowIdx, grd_dutscheapplist.colRef("psnworkapryn"));
  252. if(sCnfmYn == "Y" || sCnfm2Yn == "Y"){
  253. messageBox("부서장이나 인사팀 승인이 난 내역은 삭제 할 수 없습니다.", "I999");
  254. return;
  255. }else{
  256. grd_dutscheapplist.addStatus(iRowIdx, "delete");
  257. }
  258. model.refresh();
  259. }
  260. function fAddRow()
  261. {
  262. if(ipt_emplno.value == "" || ipt_emplnm.value == "")
  263. {
  264. messageBox("사원번호를", "C001");
  265. return;
  266. }
  267. misfGridIUD(grd_dutscheapplist, "A");
  268. grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("deprtmangraprvyn")) = "N";
  269. grd_dutscheapplist.valueMatrix(grd_dutscheapplist.row, grd_dutscheapplist.colRef("psnworkapryn")) = "N";
  270. grd_dutscheapplist.col = grd_dutscheapplist.colRef("dutcd");
  271. grd_dutscheapplist.editCell();
  272. }
  273. ]]>
  274. </script>
  275. </xhtml:head>
  276. <xhtml:body pagewidth="1211" pageheight="784" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  277. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  278. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:230px; height:14px; ">개인시간외신청</caption>
  279. <caption id="caption4" class="patient_text_black" style="left:922px; top:0px; width:272px; "/>
  280. </group>
  281. <group id="group3" scroll="auto" style="left:0px; top:38px; width:1195px; height:742px; ">
  282. <datagrid id="grd_dutscheapplist" nodeset="/root/main/dutscheapp/dutscheapplist" caption="근무코드^근무시작시간^근무종료시간^근무시간^신청사유^부서장승인^인사팀승인^caption1^caption2^복무비용^비용지급일자^부서장&#xA;입력여부^부서장승인^인사팀승인^지출결의확인^기관코드^사번^근무지부서^밤근무월제한일수" colsep="^" colwidth="113, 120, 124, 75, 550, 82, 70, 100, 100" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:95px; width:1194px; height:645px; ">
  283. <col disabled="true" ref="dutcd" type="combo" style="text-align:left; vertical-align:middle; ">
  284. <choices>
  285. <item>
  286. <label>시간외</label>
  287. <value>01</value>
  288. </item>
  289. <item>
  290. <label>휴일</label>
  291. <value>03</value>
  292. </item>
  293. <item>
  294. <label>CALL</label>
  295. <value>04</value>
  296. </item>
  297. </choices>
  298. </col>
  299. <col disabled="true" ref="appfrom" type="input" format="yyyy-mm-dd hh:mm" style="text-align:center; "/>
  300. <col ref="appto" type="input" format="yyyy-mm-dd hh:mm" style="text-align:center; "/>
  301. <col ref="apptm" style="text-align:center; "/>
  302. <col ref="appresn" type="input"/>
  303. <col ref="deprtmangraprvyn" style="text-align:center; "/>
  304. <col ref="psnworkapryn" style="text-align:center; "/>
  305. <col ref="emplno" visibility="hidden"/>
  306. <col ref="iudgb" visibility="hidden"/>
  307. <script type="javascript" ev:event="xforms-value-changed">
  308. <![CDATA[
  309. //fSetHoliLen();
  310. if (grd_dutscheapplist.colAttribute(grd_dutscheapplist.col,"ref") == "appfrom" || grd_dutscheapplist.colAttribute(grd_dutscheapplist.col,"ref") == "appto") {
  311. if (model.getValue("/root/main/dutscheapp/dutscheapplist[" + grd_dutscheapplist.row + "]/appfrom") == ""){
  312. messageBox("시작시간을 먼저 설정하시기 바랍니다.", "E999", "");
  313. return;
  314. }
  315. var appfrom = model.getValue("/root/main/dutscheapp/dutscheapplist[" + grd_dutscheapplist.row + "]/appfrom");
  316. var appto = model.getValue("/root/main/dutscheapp/dutscheapplist[" + grd_dutscheapplist.row + "]/appto");
  317. var frDate = appfrom.substr(0, 8);
  318. var frTime = appfrom.substr(8, 4);
  319. var toDate = appto.substr(0, 8);
  320. var toTime = appto.substr(8, 4);
  321. var dutTime = rpdfGetCalcDutyTime(frDate, frTime, toDate, toTime);
  322. var dutTime_v = parseInt(dutTime / 60);
  323. var dutMin_v = dutTime % 60;
  324. model.setValue("/root/main/dutscheapp/dutscheapplist[" + grd_dutscheapplist.row + "]/apptm", dutTime_v);
  325. }
  326. ]]>
  327. </script>
  328. <script type="javascript" ev:event="onaftersort">
  329. <![CDATA[
  330. grd_dutscheapplist.gridToInstance();
  331. ]]>
  332. </script>
  333. </datagrid>
  334. <line id="line2" class="line_1" style="x1:0px; y1:94px; x2:1195px; y2:94px; "/>
  335. <group id="group4" style="left:0px; top:10px; width:1195px; height:40px; vertical-align:top; ">
  336. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:40px; background-color:#fffbf2; border-color:#ffd799; "/>
  337. <button id="btn_search" class="btn1_letter2" navindex="4" style="left:1125px; top:14px; width:56px; height:22px; text-align:left; ">
  338. <caption>조회</caption>
  339. <script type="javascript" ev:event="DOMActivate">
  340. <![CDATA[
  341. fRetrieve();
  342. ]]>
  343. </script>
  344. </button>
  345. <caption id="caption1" class="search_name" style="left:690px; top:10px; width:86px; height:17px; ">사원번호 :</caption>
  346. <button id="btn_emplno" class="icon_search" style="left:860px; top:11px; width:16px; height:16px; ">
  347. <caption/>
  348. <script type="javascript" ev:event="DOMActivate">
  349. <![CDATA[
  350. rpbfOpenPopUpList("SPRPB00101", ipt_emplno, "emplno,emplnm,dutunitcd,dutunitnm", "", "N");
  351. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  352. model.setValue("/root/send/dutcd/dutunitnm", model.getValue("/root/send/dutscheapp/dutunitnm"));
  353. model.refresh();
  354. ]]>
  355. </script>
  356. </button>
  357. <input id="ipt_emplnm" ref="/root/send/dutscheapp/emplnm" class="input_search" disabled="true" navindex="3" style="left:880px; top:10px; width:150px; height:19px; ">
  358. <script type="javascript" ev:event="onkeypress">
  359. <![CDATA[
  360. if(event.keyCode == 13)
  361. {
  362. if(ipt_emplnm.value == ipt_emplnm.currentText) return;
  363. ipt_emplnm.value = ipt_emplnm.currentText;
  364. rpbfValidationCheck("EMPLNM", "emplno,emplnm,dutunitcd,dutunitnm");
  365. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  366. model.setValue("/root/send/dutcd/dutunitnm", model.getValue("/root/send/dutscheapp/dutunitnm"));
  367. model.refresh();
  368. btn_search.dispatch("DOMActivate");
  369. }
  370. ]]>
  371. </script>
  372. <script type="javascript" ev:event="xforms-value-changed">
  373. <![CDATA[
  374. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  375. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  376. model.setValue("/root/send/dutcd/dutunitnm", model.getValue("/root/send/dutscheapp/dutunitnm"));
  377. model.refresh();
  378. btn_search.dispatch("DOMActivate");
  379. ]]>
  380. </script>
  381. </input>
  382. <input id="ipt_emplno" ref="/root/send/dutscheapp/emplno" class="input_search" disabled="true" navindex="2" style="left:776px; top:10px; width:80px; height:19px; text-align:center; ">
  383. <script type="javascript" ev:event="onkeypress">
  384. <![CDATA[
  385. if(event.keyCode == 13)
  386. {
  387. if(ipt_emplno.value == ipt_emplno.currentText) return;
  388. ipt_emplno.value = ipt_emplno.currentText;
  389. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  390. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  391. model.setValue("/root/send/dutcd/dutunitnm", model.getValue("/root/send/dutscheapp/dutunitnm"));
  392. model.refresh();
  393. btn_search.dispatch("DOMActivate");
  394. }
  395. ]]>
  396. </script>
  397. <script type="javascript" ev:event="xforms-value-changed">
  398. <![CDATA[
  399. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  400. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  401. model.setValue("/root/send/dutcd/dutunitnm", model.getValue("/root/send/dutscheapp/dutunitnm"));
  402. model.refresh();
  403. btn_search.dispatch("DOMActivate");
  404. ]]>
  405. </script>
  406. </input>
  407. <select1 id="cmb_instcd" ref="/root/send/dutscheapp/instcd" class="combo_search" navindex="1" appearance="minimal" style="left:108px; top:10px; width:231px; height:19px; ">
  408. <choices>
  409. <itemset>
  410. <label/>
  411. <value/>
  412. </itemset>
  413. </choices>
  414. <script type="javascript" ev:event="xforms-value-changed">
  415. <![CDATA[
  416. model.setValue("/root/send/dutcd/instcd", model.getValue("/root/send/dutscheapp/instcd"));
  417. ]]>
  418. </script>
  419. </select1>
  420. <caption id="caption7" class="search_name" style="left:20px; top:11px; width:86px; height:17px; ">소속기관 :</caption>
  421. <select1 id="cmb_ymdflag" ref="/root/send/dutscheapp/ymdflag" class="combo_search" disabled="true" appearance="minimal" style="left:392px; top:10px; width:75px; height:19px; text-align:center; ">
  422. <choices>
  423. <item>
  424. <label>적용년월</label>
  425. <value>1</value>
  426. </item>
  427. <item>
  428. <label>신청년월</label>
  429. <value>2</value>
  430. </item>
  431. </choices>
  432. </select1>
  433. <input id="ipt_srvarmapfromdd" ref="/root/send/dutscheapp/srvarmapfromdd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:466px; top:10px; width:91px; height:19px; text-align:center; ">
  434. <script type="javascript" ev:event="xforms-value-changed">
  435. <![CDATA[
  436. var instcd = cmb_instcd.value;
  437. if( getStringLength(ipt_srvarmapfromdd.value) == "8" ) {
  438. model.removeNodeset(cmb_instcd.attribute("ref"));
  439. model.makeNode("/root/send/dutscheapp/instcd");
  440. misfComboInstCdListMulti("cmb_instcd",ipt_srvarmapfromdd.value,"","N");
  441. cmb_instcd.value = instcd;
  442. model.refresh();
  443. }
  444. ]]>
  445. </script>
  446. </input>
  447. <input id="ipt_srvarmaptodd" ref="/root/send/dutscheapp/srvarmaptodd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:570px; top:10px; width:91px; height:19px; text-align:center; "/>
  448. <caption id="caption9" style="left:558px; top:14px; width:11px; height:15px; ">~</caption>
  449. <caption id="caption10" class="search_name" style="left:371px; top:12px; width:15px; height:17px; "/>
  450. </group>
  451. <caption id="caption8" class="tit_2" style="left:5px; top:74px; width:165px; height:13px; ">개인신청내역</caption>
  452. <button id="btn_grdadddutscheapplist" class="btn2_letter3" style="left:1086px; top:53px; width:53px; height:19px; ">
  453. <caption>행추가</caption>
  454. <script type="javascript" ev:event="DOMActivate">
  455. <![CDATA[
  456. fAddRow();
  457. model.setValue("/root/main/dutscheapp/dutscheapplist[" + grd_dutscheapplist.row + "]/appfrom", getCurrentDate());
  458. model.setValue("/root/main/dutscheapp/dutscheapplist[" + grd_dutscheapplist.row + "]/appto", getCurrentDate());
  459. model.refresh();
  460. ]]>
  461. </script>
  462. </button>
  463. <button id="btn_grddeldutscheapplist" class="btn2_letter3" style="left:1141px; top:53px; width:53px; height:19px; ">
  464. <caption>행삭제</caption>
  465. <script type="javascript" ev:event="DOMActivate">
  466. <![CDATA[
  467. fDelRow();
  468. ]]>
  469. </script>
  470. </button>
  471. <caption id="caption2" class="search_name" visibility="hidden" style="left:20px; top:46px; width:87px; height:17px; ">관리부서 :</caption>
  472. <select1 id="cmb_dutplce" ref="/root/send/dutscheapp/dutunitcd" class="combo_search" visibility="hidden" appearance="minimal" style="left:108px; top:45px; width:231px; height:19px; ">
  473. <choices>
  474. <itemset>
  475. <label/>
  476. <value/>
  477. </itemset>
  478. </choices>
  479. <script type="javascript" ev:event="xforms-value-changed">
  480. <![CDATA[
  481. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  482. btn_search.dispatch("DOMActivate");
  483. ]]>
  484. </script>
  485. </select1>
  486. <button id="btn_dutdept" class="icon_search" visibility="hidden" style="left:460px; top:42px; width:16px; height:16px; ">
  487. <caption/>
  488. <script type="javascript" ev:event="DOMActivate">
  489. <![CDATA[
  490. // misfOpenPopUpList("02", ipt_dutdeptcd, "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  491. misfOpenPopUpList("02", ipt_dutdeptcd,"","dutunitcd,dutunitnm", cmb_instcd.value + "," + ipt_srvarmaptodd.value, "instcd,basedd");
  492. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  493. model.refresh();
  494. ]]>
  495. </script>
  496. </button>
  497. <input id="ipt_dutdeptnm" ref="/root/send/dutscheapp/dutunitnm" class="input_search" navindex="3" visibility="hidden" style="left:480px; top:40px; width:127px; height:19px; ">
  498. <script type="javascript" ev:event="xforms-value-changed">
  499. <![CDATA[
  500. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  501. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  502. model.refresh();
  503. ]]>
  504. </script>
  505. <script type="javascript" ev:event="onkeypress">
  506. <![CDATA[
  507. if(event.keyCode == 13)
  508. {
  509. ipt_dutdeptnm.value = ipt_dutdeptnm.currentText;
  510. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  511. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  512. model.refresh();
  513. }
  514. ]]>
  515. </script>
  516. </input>
  517. <input id="ipt_dutdeptcd" ref="/root/send/dutscheapp/dutunitcd" class="input_search" navindex="2" visibility="hidden" maxlength="10" style="left:376px; top:40px; width:80px; height:19px; ">
  518. <script type="javascript" ev:event="xforms-value-changed">
  519. <![CDATA[
  520. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  521. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  522. model.refresh();
  523. ]]>
  524. </script>
  525. <script type="javascript" ev:event="onkeypress">
  526. <![CDATA[
  527. if(event.keyCode == 13)
  528. {
  529. ipt_dutdeptcd.value = ipt_dutdeptcd.currentText;
  530. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  531. model.setValue("/root/send/dutcd/dutunitcd", model.getValue("/root/send/dutscheapp/dutunitcd"));
  532. model.refresh();
  533. }
  534. ]]>
  535. </script>
  536. </input>
  537. </group>
  538. <group id="group5" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  539. <button id="btn_save" class="btn4_letter2" style="left:1139px; top:3px; width:56px; height:22px; ">
  540. <caption>저장</caption>
  541. <script type="javascript" ev:event="DOMActivate">
  542. <![CDATA[
  543. fSave();
  544. ]]>
  545. </script>
  546. </button>
  547. <line id="line75" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
  548. </group>
  549. <caption id="caption3" style="left:205px; top:15px; width:705px; height:35px; font-weight:bold; color:#ff0000; ">
  550. <![CDATA[근무코드가 CALL인 경우 시간외 수당이 미발생 되오니 CALL과 시간외를 구분하여 신청하여 주시기 바랍니다.
  551. 야간과 심야야간은 시간외 근무로 신청하여 주시기 바랍니다.]]>
  552. </caption>
  553. <caption id="caption5" style="left:210px; top:110px; width:705px; height:20px; font-weight:bold; color:#ff0000; ">주의사항 : 종료 시간 입력시 24:00으로 입력하지 마시고 다음날 00:00로 입력하여 주시기 바랍니다.</caption>
  554. </xhtml:body>
  555. </xhtml:html>