SMRAS15000_원천징수신고서관리.xrw 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333
  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. <codeinfo>
  11. <codelist>
  12. <makeflag/>
  13. <inwon1/>
  14. <makepay1/>
  15. <maketax1/>
  16. <ruraltax1/>
  17. <additionaltax1/>
  18. <refundtax1/>
  19. <dangwoltax1/>
  20. <inwon/>
  21. <makepay/>
  22. <maketax/>
  23. <ruraltax/>
  24. <additionaltax/>
  25. <refundtax/>
  26. <dangwoltax/>
  27. <yymm/>
  28. </codelist>
  29. </codeinfo>
  30. </main>
  31. <send>
  32. <reqdata>
  33. <instcd/>
  34. <yymm/>
  35. </reqdata>
  36. </send>
  37. <senddata>
  38. <execdata>
  39. <codelist/>
  40. </execdata>
  41. </senddata>
  42. <popdata>
  43. <cdgrupid/>
  44. </popdata>
  45. <init/>
  46. </root>
  47. </instance>
  48. <script type="javascript" ev:event="xforms-ready">
  49. <![CDATA[
  50. model.setValue("/root/send/reqdata/yymm", getCurrentDate().toDate().getAddDate(-1,"M").getDateFormat("YYYYMM"));
  51. misfComboInstCdListMulti("cmb_instcd",getCurrentDate(),"","N");
  52. cmb_instcd.value = getUserInfo("dutplceinstcd");
  53. readfunc();
  54. model.refresh();
  55. ]]>
  56. </script>
  57. <script type="javascript" ev:event="xforms-model-destruct">
  58. <![CDATA[
  59. //window.close();
  60. ]]>
  61. </script>
  62. <submission id="TRRAS15001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/codeinfo"/>
  63. <submission id="TXRAS15001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/senddata/execdata" resultref="/root/hidden"/>
  64. </model>
  65. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  66. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  67. <script type="javascript" src="../../../ast/tumorelctweb/js/combolist.js"/>
  68. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  69. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  70. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  71. <script type="javascript" src="../../../mis/paybaseinfomngtweb/js/RWC001.js"/>
  72. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  73. <script type="javascript" src="../../../mis/paybaseinfomngtweb/js/RWC001.js"/>
  74. <script type="javascript">
  75. <![CDATA[
  76. function readfunc(){ // 해당 조건에 대한 사용자 권한내역을 조회한다.
  77. model.removeNodeset("/root/main/codeinfo/codelist");
  78. btn_save.disabled = false;
  79. if (submit("TRRAS15001")){
  80. }
  81. model.refresh();
  82. }
  83. function datacheck(){
  84. var scdid1 = "";
  85. var scdid2 = "";
  86. for (var i = 1; i < datagrid1.rows; i ++){
  87. if (model.getValue("/root/main/codeinfo/codelist[" + i + "]/emplno") == ""){
  88. messageBox("사원번호는 필수 입력항목입니다.", "E999", "");
  89. return false;
  90. }
  91. if (model.getValue("/root/main/codeinfo/codelist[" + i + "]/createdd") == ""){
  92. messageBox("등록일은 필수 입력항목입니다.", "E999", "");
  93. return false;
  94. }
  95. if (model.getValue("/root/main/codeinfo/codelist[" + i + "]/calcddfrom") == ""){
  96. messageBox("정산시작일은 필수 입력항목입니다.", "E999", "");
  97. return false;
  98. }
  99. if (model.getValue("/root/main/codeinfo/codelist[" + i + "]/calcddto") == ""){
  100. messageBox("정산종료일은 필수 입력항목입니다.", "E999", "");
  101. return false;
  102. }
  103. scdid1 = model.getValue("/root/main/codeinfo/codelist[" + i + "]/emplno");
  104. var k = i + 1;
  105. for (var j = k; j < datagrid1.rows; j++){
  106. scdid2 = model.getValue("/root/main/codeinfo/codelist[" + j + "]/emplno");
  107. if (i != j){
  108. if (scdid1 == scdid2){
  109. messageBox(j + "번째에서 중복된 자료가 존재합니다", "E999", "");
  110. return false;
  111. }
  112. }
  113. }
  114. }
  115. return true;
  116. }
  117. function ExecData(){
  118. var update = getGridUpdateData(datagrid1);
  119. model.setValue("/root/senddata/execdata/codelist", update);
  120. if (submit("TXRAS15001")){
  121. readfunc();
  122. }
  123. }
  124. function isDate(str) { // 날짜 형식에 대한 적합여부 체크
  125. if (str == "") return true; // 빈건 체크안함
  126. if (trim(str) == "") return true; // 빈건 체크안함
  127. if (isNaN(parseInt(str))) return false; // 숫자가 아니면 false
  128. if (str.length != 8) return false; // 8자리(yyyymmdd)가 아니면 false
  129. var yy = new Number(str.substring(0, 4));
  130. var mm = new Number(str.substring(4, 6)) - 1;
  131. var dd = new Number(str.substring(6, 8));
  132. var date = new Date(yy, mm, dd);
  133. //alert(date.getFullYear() +"-" + (date.getMonth()+1) + "-" + date.getDate());
  134. if (yy != date.getFullYear() ||
  135. mm != date.getMonth() ||
  136. dd != date.getDate()) {
  137. return false; // 존재하지 않는 날짜
  138. }
  139. return true; // 존재하는 날짜
  140. }
  141. function trim(data){ // 문자에 대한 TRIM 작업
  142. return data.replace(/(^\s*)|(\s*$)/g, "");
  143. }
  144. ]]>
  145. </script>
  146. </xhtml:head>
  147. <xhtml:body pagewidth="1020px" pageheight="580px" style="margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
  148. <caption id="caption1" class="tit_1" style="left:0px; top:0px; width:252px; height:14px; ">원천징수이행상황신고서관리</caption>
  149. <shape id="rectangle1" appearance="roundrect" style="left:3px; top:18px; width:992px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  150. <button id="btn_sea" class="btn1_letter2" style="left:927px; top:24px; width:56px; height:22px; ">
  151. <caption>조회</caption>
  152. <script type="javascript" ev:event="DOMActivate">
  153. <![CDATA[
  154. readfunc();
  155. ]]>
  156. </script>
  157. </button>
  158. <line id="line6" style="x1:687px; y1:24px; x2:687px; y2:46px; border-color:#ffe4bb; border-left-style:solid; "/>
  159. <line id="line7" class="line_1" style="x1:3px; y1:81px; x2:995px; y2:81px; "/>
  160. <datagrid id="datagrid1" nodeset="/root/main/codeinfo/codelist" caption="작성구분^인원^총지급액^소득세^농어촌특별세^가산세^당월조정환급세액^총소득세^작성인원^작성총지급액^작성소득세^작성농어촌특별세^작성가산세^작성당월조정환급세액^작성총소득세^작성년월" colsep="^" colwidth="137, 80, 150, 150, 150, 150, 150, 150, 80, 150, 150, 150, 150, 150, 150, 133" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:3px; top:85px; width:992px; height:450px; ">
  161. <col ref="makeflag" type="combo">
  162. <choices>
  163. <item>
  164. <label>간이세액</label>
  165. <value>1</value>
  166. </item>
  167. <item>
  168. <label>중도퇴사</label>
  169. <value>2</value>
  170. </item>
  171. <item>
  172. <label>연말정산</label>
  173. <value>3</value>
  174. </item>
  175. <item>
  176. <label>퇴직소득</label>
  177. <value>4</value>
  178. </item>
  179. <item>
  180. <label>수정신고(세액)</label>
  181. <value>5</value>
  182. </item>
  183. <item>
  184. <label>전월미환급세액</label>
  185. <value>6</value>
  186. </item>
  187. <item>
  188. <label>기환급신청세액</label>
  189. <value>7</value>
  190. </item>
  191. <item>
  192. <label>차감잔액</label>
  193. <value>8</value>
  194. </item>
  195. <item>
  196. <label>일반환급</label>
  197. <value>9</value>
  198. </item>
  199. <item>
  200. <label>신탁재산</label>
  201. <value>10</value>
  202. </item>
  203. <item>
  204. <label>기타</label>
  205. <value>11</value>
  206. </item>
  207. <item>
  208. <label>조정대상환급세액</label>
  209. <value>12</value>
  210. </item>
  211. <item>
  212. <label>당월조정환급세액계</label>
  213. <value>13</value>
  214. </item>
  215. <item>
  216. <label>차월이월환급세액</label>
  217. <value>14</value>
  218. </item>
  219. <item>
  220. <label>환급신청액</label>
  221. <value>15</value>
  222. </item>
  223. </choices>
  224. </col>
  225. <col ref="inwon1" format="(-)#,###" style="text-align:right; "/>
  226. <col ref="makepay1" format="(-)#,###" style="text-align:right; "/>
  227. <col ref="maketax1" format="(-)#,###" style="text-align:right; "/>
  228. <col ref="ruraltax1" format="(-)#,###" style="text-align:right; "/>
  229. <col ref="additionaltax1" format="(-)#,###" style="text-align:right; "/>
  230. <col ref="refundtax1" format="(-)#,###" style="text-align:right; "/>
  231. <col ref="dangwoltax1" format="(-)#,###" style="text-align:right; "/>
  232. <col ref="inwon" type="input" format="(-)#,###"/>
  233. <col ref="makepay" type="input" format="(-)#,###" style="text-align:right; "/>
  234. <col ref="maketax" type="input" format="(-)#,###" style="text-align:right; "/>
  235. <col ref="ruraltax" type="input" format="(-)#,###" style="text-align:right; "/>
  236. <col ref="additionaltax" type="input" format="(-)#,###" style="text-align:right; "/>
  237. <col ref="refundtax" type="input" format="(-)#,###" style="text-align:right; "/>
  238. <col ref="dangwoltax" type="input" format="(-)#,###" style="text-align:right; "/>
  239. <col ref="yymm" visibility="hidden" style="text-align:center; "/>
  240. <script type="javascript" ev:event="xforms-value-changed">
  241. <![CDATA[
  242. datagrid1.rowStatus(datagrid1.row) = 2;
  243. model.refresh();
  244. ]]>
  245. </script>
  246. <script type="javascript" ev:event="onaftersort">
  247. <![CDATA[
  248. datagrid1.gridToInstance();
  249. ]]>
  250. </script>
  251. </datagrid>
  252. <caption id="caption4" class="tit_2" style="left:3px; top:65px; width:147px; height:14px; ">원천징수이행상황정보</caption>
  253. <button id="btn_grddel" class="btn2_letter3" visibility="hidden" style="left:885px; top:61px; width:53px; height:19px; ">
  254. <caption>행삭제</caption>
  255. <script type="javascript" ev:event="DOMActivate">
  256. <![CDATA[
  257. datagrid1.deleteRow(datagrid1.row);
  258. ]]>
  259. </script>
  260. </button>
  261. <button id="btn_save" class="btn4_letter2" style="left:939px; top:540px; width:56px; height:22px; ">
  262. <caption>저장</caption>
  263. <script type="javascript" ev:event="DOMActivate">
  264. <![CDATA[
  265. /*
  266. if (datacheck() == false){
  267. return;
  268. }
  269. */
  270. ExecData();
  271. ]]>
  272. </script>
  273. </button>
  274. <line id="line1" class="line_3" style="x1:3px; y1:536px; x2:995px; y2:536px; "/>
  275. <caption id="caption2" class="search_name" style="left:289px; top:26px; width:68px; height:17px; ">작성월:</caption>
  276. <input id="ipt_fromdd" ref="/root/send/reqdata/yymm" class="input_default" navindex="1" inputtype="date" format="yyyy-mm" style="left:360px; top:27px; width:101px; height:19px; text-align:center; vertical-align:middle; ">
  277. <script type="javascript" ev:event="xforms-value-changed">
  278. <![CDATA[
  279. readfunc();
  280. ]]>
  281. </script>
  282. </input>
  283. <select1 id="cmb_instcd" ref="/root/send/reqdata/instcd" class="combo_s_essential" appearance="minimal" style="left:100px; top:26px; width:161px; height:19px; text-align:left; ">
  284. <choices>
  285. <itemset>
  286. <label/>
  287. <value/>
  288. </itemset>
  289. </choices>
  290. </select1>
  291. <caption id="cap_instcd" class="search_name" style="left:11px; top:27px; width:86px; height:17px; ">기관코드 :</caption>
  292. <button id="button1" class="btn2_letter3" style="left:940px; top:61px; width:53px; height:19px; ">
  293. <caption>적용</caption>
  294. <script type="javascript" ev:event="DOMActivate">
  295. <![CDATA[
  296. for (var i = 1; i < datagrid1.rows; i++){
  297. model.setValue("/root/main/codeinfo/codelist[" + i + "]/inwon", model.getValue("/root/main/codeinfo/codelist[" + i + "]/inwon1"));
  298. model.setValue("/root/main/codeinfo/codelist[" + i + "]/makepay", model.getValue("/root/main/codeinfo/codelist[" + i + "]/makepay1"));
  299. model.setValue("/root/main/codeinfo/codelist[" + i + "]/maketax", model.getValue("/root/main/codeinfo/codelist[" + i + "]/maketax1"));
  300. model.setValue("/root/main/codeinfo/codelist[" + i + "]/ruraltax", model.getValue("/root/main/codeinfo/codelist[" + i + "]/ruraltax1"));
  301. model.setValue("/root/main/codeinfo/codelist[" + i + "]/additionaltax", model.getValue("/root/main/codeinfo/codelist[" + i + "]/additionaltax1"));
  302. model.setValue("/root/main/codeinfo/codelist[" + i + "]/refundtax", model.getValue("/root/main/codeinfo/codelist[" + i + "]/refundtax1"));
  303. model.setValue("/root/main/codeinfo/codelist[" + i + "]/dangwoltax", model.getValue("/root/main/codeinfo/codelist[" + i + "]/dangwoltax1"));
  304. datagrid1.rowStatus(i) = 2;
  305. }
  306. model.refresh();
  307. ]]>
  308. </script>
  309. </button>
  310. <button id="button2" class="btn2_letter3" style="left:830px; top:61px; width:53px; height:19px; ">
  311. <caption>행추가</caption>
  312. <script type="javascript" ev:event="DOMActivate">
  313. <![CDATA[
  314. datagrid1.addRow(datagrid1.row);
  315. for (var i = 5; i < datagrid1.rows; i++){
  316. model.setValue("/root/main/codeinfo/codelist[" + i + "]/inwon1", "0");
  317. model.setValue("/root/main/codeinfo/codelist[" + i + "]/makepay1", "0");
  318. model.setValue("/root/main/codeinfo/codelist[" + i + "]/maketax1", "0");
  319. model.setValue("/root/main/codeinfo/codelist[" + i + "]/ruraltax1", "0");
  320. model.setValue("/root/main/codeinfo/codelist[" + i + "]/additionaltax1", "0");
  321. model.setValue("/root/main/codeinfo/codelist[" + i + "]/refundtax1", "0");
  322. model.setValue("/root/main/codeinfo/codelist[" + i + "]/dangwoltax1", "0");
  323. model.setValue("/root/main/codeinfo/codelist[" + i + "]/yymm", model.getValue("/root/send/reqdata/yymm"))
  324. datagrid1.rowStatus(i) = 1;
  325. }
  326. model.refresh();
  327. ]]>
  328. </script>
  329. </button>
  330. </xhtml:body>
  331. </xhtml:html>