SMRWD06000_직원식수공제현황.xrw 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764
  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. <empldiet>
  11. <empldietlist>
  12. <eatdd/>
  13. <hngnm/>
  14. <emplno/>
  15. <cardid/>
  16. <breakmeal/>
  17. <breakmealtm/>
  18. <lunchmeal/>
  19. <lunchmealtm/>
  20. <dinnermeal/>
  21. <dinnermealtm/>
  22. <paytransyn/>
  23. <payappyn/>
  24. </empldietlist>
  25. </empldiet>
  26. <payappyn>
  27. <payappynlist>
  28. <chkyn/>
  29. </payappynlist>
  30. </payappyn>
  31. </main>
  32. <send>
  33. <searchitem>
  34. <eatfromdd/>
  35. <eattodd/>
  36. <mealflag/>
  37. <emplnm/>
  38. <emplno/>
  39. <instcd>012</instcd>
  40. <deduym/>
  41. <queryflag>A</queryflag>
  42. <payappyn>-</payappyn>
  43. </searchitem>
  44. <data>
  45. <empletc/>
  46. </data>
  47. <payappsend>
  48. <instcd/>
  49. <payym/>
  50. <payitemcd/>
  51. <payfromdd/>
  52. <paytodd/>
  53. <retireyn/>
  54. </payappsend>
  55. </send>
  56. <temp>
  57. </temp>
  58. <init>
  59. <basecode>
  60. <meal>
  61. <A0055>
  62. <cdid/>
  63. <cdnm/>
  64. </A0055>
  65. </meal>
  66. </basecode>
  67. </init>
  68. <paytemp/>
  69. </root>
  70. </instance>
  71. <script type="javascript" ev:event="xforms-ready">
  72. <![CDATA[
  73. finit();
  74. btn_search1.disabled = !checkAuth("R");
  75. btn_excel.disabled = !checkAuth("P");
  76. ]]>
  77. </script>
  78. <script type="javascript">
  79. <![CDATA[
  80. //초기화
  81. function finit() {
  82. misfGridInit(grd_emplidcard);
  83. // 화면open시 공통코드 setting
  84. //zbcfGetCodeList( new Array( "A0055" ), new Array( "/root/init/basecode/meal" ) );
  85. //model.setValue("/root/send/searchitem/deduym", getCurrentDate().toDate().getDateFormat("YYYYMM"));
  86. //model.setValue("/root/send/searchitem/eatfromdd", getCurrentDate());
  87. //model.setValue("/root/send/searchitem/eattodd", getCurrentDate());
  88. model.setValue("/root/send/searchitem/mealflag", "-");
  89. model.resetInstanceNode("/root/send/data");
  90. model.removeNodeset("/root/main/emplidcard");
  91. model.removeNodeset("/root/main/empletc");
  92. //현재는 505번지 식당으로 강제 세팅
  93. if (getUserInfo("dutplceinstcd") == "001" || getUserInfo("dutplceinstcd") == "103" || getUserInfo("dutplceinstcd") == "012" ) {
  94. model.setValue(cmb_instcd.attribute("ref") , "012");
  95. }
  96. else {
  97. model.setValue(cmb_instcd.attribute("ref") , getUserInfo("dutplceinstcd") );
  98. if (getUserInfo("dutplceinstcd") == "017" ) {
  99. btn_retirepayapp.visible = true;
  100. }
  101. }
  102. misfComboInstCdListMulti("cmb_instcd",getCurrentDate(),"","N");
  103. //var deduym = model.getValue(ipt_deduym.attribute("ref"));
  104. //var dedudd = deduym+"01";
  105. model.setValue(ipt_eatfromdd.attribute("ref") , getCurrentDate().toDate().getDateFormat("YYYYMMDD"));
  106. model.setValue(ipt_eattodd.attribute("ref") , getCurrentDate().toDate().getDateFormat("YYYYMMDD"));
  107. model.setValue("/root/send/searchitem/deduym", getCurrentDate().toDate().getDateFormat("YYYYMM"));
  108. model.refresh();
  109. }
  110. //초기화
  111. function finit_pay() {
  112. misfGridInit(grd_emplidcard);
  113. // 화면open시 공통코드 setting
  114. //zbcfGetCodeList( new Array( "A0055" ), new Array( "/root/init/basecode/meal" ) );
  115. model.setValue("/root/send/searchitem/deduym", getCurrentDate().toDate().getDateFormat("YYYYMM"));
  116. //model.setValue("/root/send/searchitem/eatfromdd", getCurrentDate());
  117. //model.setValue("/root/send/searchitem/eattodd", getCurrentDate());
  118. model.setValue("/root/send/searchitem/mealflag", "-");
  119. model.resetInstanceNode("/root/send/data");
  120. model.removeNodeset("/root/main/emplidcard");
  121. model.removeNodeset("/root/main/empletc");
  122. //현재는 505번지 식당으로 강제 세팅
  123. //model.setValue(cmb_instcd.attribute("ref") , getUserInfo("dutplceinstcd"));
  124. misfComboComCdListMulti("Z0007","cmb_instcd2");
  125. var deduym = model.getValue(ipt_deduym2.attribute("ref"));
  126. var dedudd = deduym+"01";
  127. if (getUserInfo("dutplceinstcd") == "017" ) {
  128. model.setValue(ipt_eattodd.attribute("ref") , dedudd.toDate().getAddDate(-1, "M").getDateFormat("YYYYMM") + dedudd.toDate().getAddDate(-1, "M").getMonthDay());
  129. model.setValue(ipt_eatfromdd.attribute("ref") , dedudd.toDate().getAddDate(-1, "M").getDateFormat("YYYYMM") + "01");
  130. }
  131. else {
  132. model.setValue(ipt_eattodd.attribute("ref") , deduym + "15");
  133. model.setValue(ipt_eatfromdd.attribute("ref") , dedudd.toDate().getAddDate(-1, "M").getDateFormat("YYYYMM")+"16");
  134. }
  135. model.refresh();
  136. }
  137. //기타식수관리 그리드의 소계,합계,총계 구하기
  138. function fsum() {
  139. var val = 0;
  140. var temp = 0;
  141. var sum = 0;
  142. var totalsum = 0;
  143. for ( i=1; i<grd_empletc.rows-2; i++) {
  144. //조식
  145. for (var k = 1; k <= 7; k++) {
  146. val = model.getValue("/root/main/empletc/data["+ i +"]/psnno" + k);
  147. if (val > 0) {
  148. temp = parseInt(temp) + parseInt(val);
  149. }
  150. if (k == 2) {
  151. model.setValue("/root/main/empletc/data["+ i +"]/insum1", temp);
  152. sum = sum + temp;
  153. temp = 0;
  154. } else if (k == 7) {
  155. model.setValue("/root/main/empletc/data["+ i +"]/outsum1", temp);
  156. model.setValue("/root/main/empletc/data["+ i +"]/sum1", sum + temp);
  157. totalsum = totalsum + sum + temp;
  158. }
  159. }
  160. temp = 0;
  161. sum = 0;
  162. //중식
  163. for (var k = 8; k <= 14; k++) {
  164. val = model.getValue("/root/main/empletc/data["+ i +"]/psnno" + k);
  165. if (val > 0) {
  166. temp = parseInt(temp) + parseInt(val);
  167. }
  168. if (k == 9) {
  169. model.setValue("/root/main/empletc/data["+ i +"]/insum2", temp);
  170. sum = sum + temp;
  171. temp = 0;
  172. } else if (k == 14) {
  173. model.setValue("/root/main/empletc/data["+ i +"]/outsum2", temp);
  174. model.setValue("/root/main/empletc/data["+ i +"]/sum2", sum + temp);
  175. totalsum = totalsum + sum + temp;
  176. }
  177. }
  178. temp = 0;
  179. sum = 0;
  180. //석식
  181. for (var k = 15; k <= 21; k++) {
  182. val = model.getValue("/root/main/empletc/data["+ i +"]/psnno" + k);
  183. if (val > 0) {
  184. temp = parseInt(temp) + parseInt(val);
  185. }
  186. if (k == 16) {
  187. model.setValue("/root/main/empletc/data["+ i +"]/insum3", temp);
  188. sum = sum + temp;
  189. temp = 0;
  190. } else if (k == 21) {
  191. model.setValue("/root/main/empletc/data["+ i +"]/outsum3", temp);
  192. model.setValue("/root/main/empletc/data["+ i +"]/sum3", sum + temp);
  193. totalsum = totalsum + sum + temp;
  194. }
  195. }
  196. temp = 0;
  197. sum = 0;
  198. model.setValue("/root/main/empletc/data["+ i +"]/totalsum", totalsum);
  199. totalsum = 0;
  200. }
  201. grd_empletc.refresh();
  202. }
  203. ]]>
  204. </script>
  205. <bind id="bind_ward" ref="/root/main/data/ward" readonly="../ward!=''"/>
  206. <submission id="TRRWD06001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/searchitem" resultref="/root/main/empldiet"/>
  207. <submission id="TRRWD06002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/searchitem" resultref="/root/main/payappyn"/>
  208. <submission id="TXRWZ00303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/payappsend" resultref="/root/paytemp"/>
  209. </model>
  210. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  211. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  212. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  213. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  214. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  215. </xhtml:head>
  216. <xhtml:body guideline="1,1194;2,751;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  217. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  218. <caption id="caption1" class="tit_1" style="left:0px; top:0px; width:189px; height:14px; ">직원식상세현황</caption>
  219. </group>
  220. <group id="grp_biz" scroll="auto" style="left:0px; top:18px; width:1195px; height:744px; ">
  221. <switch id="switch1" style="left:0px; top:26px; width:1194px; height:718px; ">
  222. <case id="case1" selected="true">
  223. <group id="group2" style="left:0px; top:5px; width:1187px; height:45px; vertical-align:top; ">
  224. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:2px; top:2px; width:1182px; height:40px; background-color:#fffbf2; "/>
  225. <button id="btn_search1" class="btn1_letter2" style="left:1122px; top:13px; width:56px; height:22px; ">
  226. <caption>조회</caption>
  227. <script type="javascript" ev:event="DOMActivate">
  228. <![CDATA[
  229. var fromdd = model.getValue("/root/send/searchitem/eatfromdd");
  230. var todd = model.getValue("/root/send/searchitem/eattodd");
  231. if (getDateInterval(fromdd, todd) < 0) {
  232. messageBox("조회 시작일은 종료일보다 클 수", "I004");
  233. return;
  234. } else {
  235. submit("TRRWD06001");
  236. grd_emplidcard.subtotalposition = "below";
  237. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("breakmeal"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  238. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("lunchmeal"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  239. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("dinnermeal"),"format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  240. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("totmeal"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  241. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("totmealamt"),"format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  242. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("breakmealamt"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  243. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("lunchmealamt"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  244. grd_emplidcard.subtotal("sum" ,-1 , grd_emplidcard.colRef("dinnermealamt"),"format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  245. }
  246. // 급여이체
  247. // if (grd_emplidcard.rows - grd_emplidcard.fixedRows > 0) {
  248. // var payyn = grd_emplidcard.valueMatrix(grd_emplidcard.fixedRows,grd_emplidcard.colRef("payyn"));
  249. // if (payyn == "Y") {
  250. btn_paysave.disabled = false;
  251. // }
  252. // else {
  253. // btn_paysave.disabled = true;
  254. // }
  255. // }
  256. // else {
  257. // btn_paysave.disabled = true;
  258. // }
  259. ]]>
  260. </script>
  261. </button>
  262. <line id="line13" style="x1:1106px; y1:4px; x2:1106px; y2:42px; "/>
  263. <caption id="caption3" class="search_name" style="left:220px; top:12px; width:86px; height:17px; ">식수일자 :</caption>
  264. <input id="ipt_eatfromdd" ref="/root/send/searchitem/eatfromdd" class="input_s_essential" disabled="false" inputtype="date" style="left:304px; top:11px; width:90px; height:19px; "/>
  265. <caption id="caption11" class="search_n_b" style="left:399px; top:13px; width:12px; height:17px; font-weight:bolder; ">~</caption>
  266. <input id="ipt_eattodd" ref="/root/send/searchitem/eattodd" class="input_s_essential" disabled="false" inputtype="date" style="left:414px; top:11px; width:90px; height:19px; "/>
  267. <caption id="caption4" class="search_name" style="left:515px; top:12px; width:64px; height:17px; ">끼니 :</caption>
  268. <select1 id="rdo_mealflag" ref="/root/send/searchitem/mealflag" class="combo_s_essential" appearance="minimal" style="left:577px; top:12px; width:72px; height:19px; ">
  269. <choices>
  270. <item>
  271. <label>전체</label>
  272. <value>-</value>
  273. </item>
  274. <item>
  275. <label>조식</label>
  276. <value>1</value>
  277. </item>
  278. <item>
  279. <label>중식</label>
  280. <value>2</value>
  281. </item>
  282. <item>
  283. <label>석식</label>
  284. <value>3</value>
  285. </item>
  286. </choices>
  287. </select1>
  288. <select1 id="cmb_instcd" ref="/root/send/searchitem/instcd" class="combo_s_essential" disabled="true" appearance="minimal" style="left:99px; top:11px; width:115px; height:19px; ">
  289. <choices>
  290. <itemset>
  291. <label/>
  292. <value/>
  293. </itemset>
  294. </choices>
  295. </select1>
  296. <caption id="cap_instcd" class="search_name" style="left:9px; top:12px; width:81px; height:17px; ">식수기관:</caption>
  297. <caption id="caption6" class="search_name" style="left:659px; top:12px; width:63px; height:17px; ">사번 :</caption>
  298. <button id="btn_emplno" class="icon_search" style="left:794px; top:12px; width:16px; height:16px; ">
  299. <caption/>
  300. <script type="javascript" ev:event="DOMActivate">
  301. <![CDATA[
  302. var recv_list = "emplno,emplnm" ;
  303. rpbfOpenPopUpList("SPRPB00101", ipt_emplnos, recv_list,"","N");
  304. model.refresh();
  305. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  306. btn_search1.dispatch("DOMActivate");
  307. }
  308. ]]>
  309. </script>
  310. </button>
  311. <input id="ipt_emplnos" ref="/root/send/searchitem/emplno" class="input_default" style="left:725px; top:12px; width:67px; height:19px; ">
  312. <script type="javascript" ev:event="onkeyup">
  313. <![CDATA[
  314. if (ipt_emplnos.currentText != null && ipt_emplnos.currentText != "" ) {
  315. inputEnterKey("ipt_emplnos", "xforms-value-changed");
  316. }
  317. ]]>
  318. </script>
  319. <script type="javascript" ev:event="xforms-value-changed">
  320. <![CDATA[
  321. var recv_list = "emplno,emplnm" ;
  322. rpbfValidationCheck("EMPLNO", recv_list);
  323. model.refresh();
  324. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  325. btn_search1.dispatch("DOMActivate");
  326. }
  327. ]]>
  328. </script>
  329. </input>
  330. <input id="ipt_emplnms" ref="/root/send/searchitem/emplnm" class="input_default" style="left:813px; top:12px; width:76px; height:19px; ">
  331. <script type="javascript" ev:event="onkeyup">
  332. <![CDATA[
  333. if (ipt_emplnms.currentText != null && ipt_emplnms.currentText != "" ) {
  334. inputEnterKey("ipt_emplnms", "xforms-value-changed");
  335. }
  336. ]]>
  337. </script>
  338. <script type="javascript" ev:event="xforms-value-changed">
  339. <![CDATA[
  340. var recv_list = "emplno,emplnm" ;
  341. rpbfValidationCheck("EMPLNM", recv_list);
  342. model.refresh();
  343. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  344. btn_search1.dispatch("DOMActivate");
  345. }
  346. ]]>
  347. </script>
  348. </input>
  349. <select1 id="cmb_payappyn" ref="/root/send/searchitem/payappyn" class="combo_s_essential" appearance="minimal" style="left:1017px; top:14px; width:72px; height:19px; ">
  350. <choices>
  351. <item>
  352. <label>전체</label>
  353. <value>-</value>
  354. </item>
  355. <item>
  356. <label>Y</label>
  357. <value>Y</value>
  358. </item>
  359. <item>
  360. <label>N</label>
  361. <value>N</value>
  362. </item>
  363. </choices>
  364. </select1>
  365. <caption id="caption2" class="search_name" style="left:900px; top:14px; width:112px; height:17px; ">급여반영여부 :</caption>
  366. </group>
  367. <line id="line1" class="line_1" style="x1:0px; y1:79px; x2:1190px; y2:79px; "/>
  368. <datagrid id="grd_emplidcard" nodeset="/root/main/empldiet/empldietlist" caption="식수일자^사원번호^성명^교직구분^기관^부서^카드ID^조식^조식^중식^중식^석식^석식^계^계^급여공제금액^공제월^이체작업여부^급여반영여부^|식수일자^사원번호^성명^교직구분^기관^부서^카드ID^횟수^금액^횟수^금액^횟수^금액^횟수^금액^급여공제금액^공제월^이체작업여부^급여반영여부^" colsep="^" colwidth="67, 64, 64, 83, 100, 100, 56, 36, 82, 32, 82, 36, 82, 34, 82, 89, 52, 33, 33, 39" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:0px; top:85px; width:1190px; height:621px; text-align:center; ">
  369. <col ref="eatdd" format="yyyy-mm-dd"/>
  370. <col ref="emplno" style="text-align:center; "/>
  371. <col ref="hngnm"/>
  372. <col ref="prfshipflagnm"/>
  373. <col ref="dutplceinstnm"/>
  374. <col ref="dutunitnm"/>
  375. <col ref="cardid" visibility="hidden"/>
  376. <col ref="breakmeal"/>
  377. <col ref="breakmealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  378. <col ref="lunchmeal"/>
  379. <col ref="lunchmealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  380. <col ref="dinnermeal"/>
  381. <col ref="dinnermealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  382. <col ref="totmeal"/>
  383. <col ref="totmealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  384. <col ref="paydeduamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  385. <col ref="payappmm"/>
  386. <col ref="paytransyn"/>
  387. <col ref="payappyn"/>
  388. <col ref="dutplceinst" visibility="hidden"/>
  389. </datagrid>
  390. <select1 id="radio1" ref="/root/send/searchitem/queryflag" appearance="full" cols="2" overflow="visible" style="left:5px; top:56px; width:115px; height:20px; border-style:solid; ">
  391. <choices>
  392. <item>
  393. <label>일자별</label>
  394. <value>A</value>
  395. </item>
  396. <item>
  397. <label>개인별</label>
  398. <value>B</value>
  399. </item>
  400. </choices>
  401. </select1>
  402. <button id="btn_excel" class="btn2_letter4" style="left:1120px; top:55px; width:64px; height:19px; ">
  403. <caption>엑셀저장</caption>
  404. <script type="javascript" ev:event="DOMActivate">
  405. <![CDATA[
  406. var filename = window.fileDialog("save", ",", false, "직원식공제현황", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  407. if (filename != "") {
  408. grd_emplidcard.saveExcel(filename, "grd_emplidcard", true, false, "", "", "");
  409. }
  410. ]]>
  411. </script>
  412. </button>
  413. </case>
  414. <case id="case2">
  415. <datagrid id="grd_empldietlist" nodeset="/root/main/empldiet/empldietlist" caption="식수일자^사원번호^성명^기관^부서^카드ID^조식^조식^중식^중식^석식^석식^계^계^급여공제금액^이체작업여부^급여반영여부^|식수일자^사원번호^성명^기관^부서^카드ID^횟수^금액^횟수^금액^횟수^금액^횟수^금액^급여공제금액^이체작업여부^급여반영여부^" colsep="^" colwidth="72, 77, 73, 122, 113, 56, 45, 97, 38, 96, 38, 99, 37, 89, 91, 33, 33, 100" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:0px; top:84px; width:1190px; height:622px; text-align:center; ">
  416. <col ref="eatdd" format="yyyy-mm-dd"/>
  417. <col ref="emplno" style="text-align:center; "/>
  418. <col ref="hngnm"/>
  419. <col ref="dutplceinstnm"/>
  420. <col ref="dutunitnm"/>
  421. <col ref="cardid" visibility="hidden"/>
  422. <col ref="breakmeal"/>
  423. <col ref="breakmealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  424. <col ref="lunchmeal"/>
  425. <col ref="lunchmealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  426. <col ref="dinnermeal"/>
  427. <col ref="dinnermealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  428. <col ref="totmeal"/>
  429. <col ref="totmealamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  430. <col ref="paydeduamt" format="(-)#,###" style="text-align:right; vertical-align:middle; "/>
  431. <col ref="paytransyn"/>
  432. <col ref="payappyn"/>
  433. <col ref="dutplceinst" visibility="hidden"/>
  434. </datagrid>
  435. <line id="line2" class="line_1" style="x1:0px; y1:79px; x2:1190px; y2:79px; "/>
  436. <select1 id="rdo_queryflagpay" ref="/root/send/searchitem/queryflag" appearance="full" cols="2" overflow="visible" style="left:5px; top:56px; width:115px; height:20px; border-style:solid; ">
  437. <choices>
  438. <item>
  439. <label>일자별</label>
  440. <value>A</value>
  441. </item>
  442. <item>
  443. <label>개인별</label>
  444. <value>B</value>
  445. </item>
  446. </choices>
  447. </select1>
  448. <group id="group3" style="left:5px; top:5px; width:1182px; height:46px; vertical-align:top; ">
  449. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1182px; height:45px; background-color:#fffbf2; "/>
  450. <button id="button1" class="btn1_letter2" style="left:1117px; top:12px; width:56px; height:22px; ">
  451. <caption>조회</caption>
  452. <script type="javascript" ev:event="DOMActivate">
  453. <![CDATA[
  454. var fromdd = model.getValue("/root/send/searchitem/eatfromdd");
  455. var todd = model.getValue("/root/send/searchitem/eattodd");
  456. if (getDateInterval(fromdd, todd) < 0) {
  457. messageBox("조회 시작일은 종료일보다 클 수", "I004");
  458. return;
  459. } else {
  460. submit("TRRWD06001");
  461. grd_empldietlist.subtotalposition = "below";
  462. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("breakmeal"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  463. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("lunchmeal"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  464. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("dinnermeal"),"format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  465. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("totmeal"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  466. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("totmealamt"),"format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  467. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("breakmealamt"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  468. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("lunchmealamt"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  469. grd_empldietlist.subtotal("sum" ,-1 , grd_empldietlist.colRef("dinnermealamt"),"format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 1, "합계");
  470. }
  471. // 급여이체
  472. // if (grd_emplidcard.rows - grd_emplidcard.fixedRows > 0) {
  473. // var payyn = grd_emplidcard.valueMatrix(grd_emplidcard.fixedRows,grd_emplidcard.colRef("payyn"));
  474. // if (payyn == "Y") {
  475. btn_paysave.disabled = false;
  476. btn_retirepayapp.disabled = false;
  477. // }
  478. // else {
  479. // btn_paysave.disabled = true;
  480. // }
  481. // }
  482. // else {
  483. // btn_paysave.disabled = true;
  484. // }
  485. ]]>
  486. </script>
  487. </button>
  488. <line id="line3" style="x1:1106px; y1:1px; x2:1106px; y2:46px; "/>
  489. <caption id="caption5" class="search_name" style="left:345px; top:13px; width:58px; height:17px; ">기간:</caption>
  490. <input id="ipt_eatfromdd2" ref="/root/send/searchitem/eatfromdd" class="input_s_essential" disabled="true" inputtype="date" style="left:399px; top:12px; width:90px; height:19px; "/>
  491. <caption id="caption7" class="search_n_b" style="left:494px; top:12px; width:12px; height:17px; font-weight:bolder; ">~</caption>
  492. <input id="ipt_eattodd2" ref="/root/send/searchitem/eattodd" class="input_s_essential" disabled="true" inputtype="date" style="left:509px; top:12px; width:90px; height:19px; "/>
  493. <caption id="caption8" class="search_name" style="left:607px; top:13px; width:59px; height:17px; ">끼니:</caption>
  494. <select1 id="cmb_mealflag2" ref="/root/send/searchitem/mealflag" class="combo_s_essential" appearance="minimal" style="left:661px; top:12px; width:62px; height:19px; ">
  495. <choices>
  496. <item>
  497. <label>전체</label>
  498. <value>-</value>
  499. </item>
  500. <item>
  501. <label>조식</label>
  502. <value>1</value>
  503. </item>
  504. <item>
  505. <label>중식</label>
  506. <value>2</value>
  507. </item>
  508. <item>
  509. <label>석식</label>
  510. <value>3</value>
  511. </item>
  512. </choices>
  513. </select1>
  514. <select1 id="cmb_instcd2" ref="/root/send/searchitem/instcd" class="combo_s_essential" disabled="true" appearance="minimal" style="left:86px; top:12px; width:100px; height:19px; ">
  515. <choices>
  516. <itemset>
  517. <label/>
  518. <value/>
  519. </itemset>
  520. </choices>
  521. </select1>
  522. <caption id="caption9" class="search_name" style="left:5px; top:13px; width:81px; height:17px; ">식수기관:</caption>
  523. <caption id="caption10" class="search_name" style="left:734px; top:13px; width:72px; height:17px; ">사번:</caption>
  524. <button id="button2" class="icon_search" style="left:854px; top:12px; width:16px; height:16px; ">
  525. <caption/>
  526. <script type="javascript" ev:event="DOMActivate">
  527. <![CDATA[
  528. var recv_list = "emplno,emplnm" ;
  529. rpbfOpenPopUpList("SPRPB00101", ipt_emplnos, recv_list,"","N");
  530. model.refresh();
  531. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  532. btn_search1.dispatch("DOMActivate");
  533. }
  534. ]]>
  535. </script>
  536. </button>
  537. <input id="ipt_emplnos2" ref="/root/send/searchitem/emplno" class="input_default" style="left:790px; top:12px; width:62px; height:19px; ">
  538. <script type="javascript" ev:event="onkeyup">
  539. <![CDATA[
  540. if (ipt_emplnos.currentText != null && ipt_emplnos.currentText != "" ) {
  541. inputEnterKey("ipt_emplnos2", "xforms-value-changed");
  542. }
  543. ]]>
  544. </script>
  545. <script type="javascript" ev:event="xforms-value-changed">
  546. <![CDATA[
  547. var recv_list = "emplno,emplnm" ;
  548. rpbfValidationCheck("EMPLNO", recv_list);
  549. model.refresh();
  550. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  551. btn_search1.dispatch("DOMActivate");
  552. }
  553. ]]>
  554. </script>
  555. </input>
  556. <input id="ipt_emplnms2" ref="/root/send/searchitem/emplnm" class="input_default" style="left:873px; top:12px; width:71px; height:19px; ">
  557. <script type="javascript" ev:event="onkeyup">
  558. <![CDATA[
  559. if (ipt_emplnms.currentText != null && ipt_emplnms.currentText != "" ) {
  560. inputEnterKey("ipt_emplnms2", "xforms-value-changed");
  561. }
  562. ]]>
  563. </script>
  564. <script type="javascript" ev:event="xforms-value-changed">
  565. <![CDATA[
  566. var recv_list = "emplno,emplnm" ;
  567. rpbfValidationCheck("EMPLNM", recv_list);
  568. model.refresh();
  569. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  570. btn_search1.dispatch("DOMActivate");
  571. }
  572. ]]>
  573. </script>
  574. </input>
  575. <caption id="caption12" class="search_name" style="left:192px; top:13px; width:68px; height:17px; ">공제월:</caption>
  576. <input id="ipt_deduym2" ref="/root/send/searchitem/deduym" class="input_s_essential" inputtype="date" format="yyyy-mm" style="left:259px; top:12px; width:80px; height:19px; ">
  577. <script type="javascript" ev:event="xforms-value-changed">
  578. <![CDATA[
  579. var deduym = ipt_deduym2.value;
  580. var dedudd = deduym+"01";
  581. model.setValue(ipt_eattodd2.attribute("ref") , deduym + "15");
  582. model.setValue(ipt_eatfromdd2.attribute("ref") , dedudd.toDate().getAddDate(-1, "M").getDateFormat("YYYYMM")+"16");
  583. ipt_eatfromdd2.refresh();
  584. ipt_eattodd2.refresh();
  585. ]]>
  586. </script>
  587. </input>
  588. <select1 id="cmb_payappyn2" ref="/root/send/searchitem/payappyn" class="combo_s_essential" appearance="minimal" style="left:1035px; top:12px; width:62px; height:19px; ">
  589. <choices>
  590. <item>
  591. <label>전체</label>
  592. <value>-</value>
  593. </item>
  594. <item>
  595. <label>Y</label>
  596. <value>Y</value>
  597. </item>
  598. <item>
  599. <label>N</label>
  600. <value>N</value>
  601. </item>
  602. </choices>
  603. </select1>
  604. <caption id="caption13" class="search_name" style="left:955px; top:13px; width:82px; height:17px; ">급여반영:</caption>
  605. </group>
  606. <button id="btn_excelsave2" class="btn2_letter4" style="left:1120px; top:55px; width:64px; height:19px; ">
  607. <caption>엑셀저장</caption>
  608. <script type="javascript" ev:event="DOMActivate">
  609. <![CDATA[
  610. var filename = window.fileDialog("save", ",", false, "직원식급여이체현황", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  611. if (filename != "") {
  612. grd_empldietlist.saveExcel(filename, "grd_empldietlist", true, false, "", "", "");
  613. }
  614. ]]>
  615. </script>
  616. </button>
  617. <button id="btn_paysave" class="btn5_letter4" disabled="true" style="left:970px; top:55px; width:64px; height:19px; ">
  618. <caption>급여이체</caption>
  619. <script type="javascript" ev:event="DOMActivate">
  620. <![CDATA[
  621. if(!isRequiredControls("cmb_instcd","ipt_deduym2"))return;
  622. var retMes = messageBox("자료를 급여이체하시겠습니까?", "Q999");
  623. if ( retMes != 6) {
  624. return;
  625. }
  626. submit("TRRWD06002");
  627. var chkyn= model.getValue("/root/main/payappyn/payappynlist/chkyn");
  628. if(chkyn =='Y'){
  629. messageBox("급여이체 자료가 이미","I001");
  630. return;
  631. }
  632. var instcd = cmb_instcd.value;
  633. var payym = ipt_deduym2.value;
  634. var payfromdd = ipt_eatfromdd2.value;
  635. var paytodd = ipt_eattodd2.value;
  636. var retireyn = "N";
  637. var payitemcd = "60260";
  638. model.setValue("/root/send/payappsend/instcd",cmb_instcd.value);
  639. model.setValue("/root/send/payappsend/payym",payym);
  640. model.setValue("/root/send/payappsend/payitemcd",payitemcd);
  641. model.setValue("/root/send/payappsend/payfromdd",payfromdd);
  642. model.setValue("/root/send/payappsend/paytodd",paytodd);
  643. model.setValue("/root/send/payappsend/retireyn",retireyn);
  644. misfSave("TXRWZ00303");
  645. if (model.getValue(gvErrorMsgPath + "/type") != "error"){
  646. messageBox("급여이체작업이","I001");
  647. btn_search1.dispatch("DOMActivate");
  648. }
  649. ]]>
  650. </script>
  651. </button>
  652. <button id="btn_retirepayapp" class="btn5_letter5" disabled="true" style="left:1040px; top:55px; width:75px; height:19px; ">
  653. <caption>퇴직자이체</caption>
  654. <script type="javascript" ev:event="DOMActivate">
  655. <![CDATA[
  656. if(!isRequiredControls("cmb_instcd","ipt_deduym2"))return;
  657. var retMes = messageBox("자료를 급여이체하시겠습니까?", "Q999");
  658. if ( retMes != 6) {
  659. return;
  660. }
  661. var instcd = cmb_instcd.value;
  662. var payym = ipt_deduym2.value;
  663. var payfromdd = ipt_eatfromdd2.value;
  664. var paytodd = ipt_eattodd2.value;
  665. var retireyn = "Y";
  666. var payitemcd = "60260";
  667. model.setValue("/root/send/payappsend/instcd",cmb_instcd.value);
  668. model.setValue("/root/send/payappsend/payym",payym);
  669. model.setValue("/root/send/payappsend/payitemcd",payitemcd);
  670. model.setValue("/root/send/payappsend/payfromdd",payfromdd);
  671. model.setValue("/root/send/payappsend/paytodd",paytodd);
  672. model.setValue("/root/send/payappsend/retireyn",retireyn);
  673. misfSave("TXRWZ00303");
  674. if (model.getValue(gvErrorMsgPath + "/type") != "error"){
  675. messageBox("급여이체작업이","I001");
  676. btn_search1.dispatch("DOMActivate");
  677. }
  678. ]]>
  679. </script>
  680. </button>
  681. </case>
  682. </switch>
  683. <button id="btn_eatsel" class="btn_sw" group="tab" selected="true" style="left:5px; top:3px; width:100px; height:22px; ">
  684. <caption>식수조회</caption>
  685. <script type="javascript" ev:event="DOMActivate">
  686. <![CDATA[
  687. model.toggle("case1");
  688. model.refresh();
  689. finit();
  690. ]]>
  691. </script>
  692. </button>
  693. <button id="btn_eatpay" class="btn_sw" group="tab" style="left:107px; top:3px; width:100px; height:22px; ">
  694. <caption>급여이체</caption>
  695. <script type="javascript" ev:event="DOMActivate">
  696. <![CDATA[
  697. model.toggle("case2");
  698. model.refresh();
  699. finit_pay();
  700. ]]>
  701. </script>
  702. </button>
  703. </group>
  704. </xhtml:body>
  705. </xhtml:html>