SMRSD00402_비품청구승인관리.xrw 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : 비품청구승인관리.xrw
  4. * 설 명 : 비품청구승인관리
  5. * 설 계 자 :
  6. * 작 성 자 :
  7. * 작 성 일 :
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title>물품청구관리</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <list>
  20. <goodreq>
  21. <goodreqlist/>
  22. </goodreq>
  23. <reqset>
  24. <reqsetlist/>
  25. </reqset>
  26. </list>
  27. <goodreq>
  28. <goodreqlist>
  29. <goodnm/>
  30. <cmt/>
  31. </goodreqlist>
  32. </goodreq>
  33. </main>
  34. <send>
  35. <save>
  36. <reqsetlist>
  37. </reqsetlist>
  38. <goodreqlist/>
  39. </save>
  40. <reqset>
  41. <instcd/>
  42. <instcdnm/>
  43. <requserno/>
  44. <requsernm/>
  45. <reqpridflag>1</reqpridflag>
  46. <reqflag/>
  47. <reqfrdd/>
  48. <reqtodd/>
  49. <deptaprvyn>N</deptaprvyn>
  50. <workflag>1</workflag>
  51. </reqset>
  52. <goodreq>
  53. <instcd/>
  54. <reqdd/>
  55. <reqno/>
  56. <reqdeptcd/>
  57. <reqflag/>
  58. <workflag>1</workflag>
  59. <reqpridflag/>
  60. <deptaprvyn>N</deptaprvyn>
  61. </goodreq>
  62. </send>
  63. <init>
  64. <ReqpridLists>
  65. <reqpridlist>
  66. <reqprid>1</reqprid>
  67. <reqpridnm>
  68. <![CDATA[일]]>
  69. </reqpridnm>
  70. </reqpridlist>
  71. <reqpridlist>
  72. <reqprid>4</reqprid>
  73. <reqpridnm>
  74. <![CDATA[월]]>
  75. </reqpridnm>
  76. </reqpridlist>
  77. </ReqpridLists>
  78. <workflag>
  79. <label>청 구</label>
  80. <value>1</value>
  81. <label>반 품</label>
  82. <value>2</value>
  83. </workflag>
  84. <reqdeptcd/>
  85. <reqdeptnm/>
  86. <reqfinaldeptcd/>
  87. <reqfinaldeptnm/>
  88. <reqflag/>
  89. </init>
  90. <hidden/>
  91. <temp/>
  92. <copynode/>
  93. <tempdept>
  94. <tempdeptcd/>
  95. <tempdeptnm/>
  96. </tempdept>
  97. </root>
  98. </instance>
  99. <script type="javascript" ev:event="xforms-ready">
  100. <![CDATA[
  101. fInit();
  102. var cmbworkflagold = ""; //작업구분콤보의 예전값을 가지고 있는 변수
  103. ]]>
  104. </script>
  105. <submission id="TRRSD00413" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqset" resultref="/root/main/list/reqset"/>
  106. <submission id="TRRSD11101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/goodreq" resultref="/root/main/list/goodreq"/>
  107. <submission id="TXRSD00413" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/temp"/>
  108. </model>
  109. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  110. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  111. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  112. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  113. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  114. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  115. <script type="javascript" src="../../../mis/reqweb/js/SMRSD00403.js"/>
  116. </xhtml:head>
  117. <xhtml:body autorefresh="true" guideline="2,799;1,8;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  118. <group id="grp_biz" scroll="auto" style="left:0px; top:21px; width:1195px; height:759px; ">
  119. <group id="grp_main" style="left:1px; top:70px; width:1188px; height:653px; border-color:#c0c0c0; border-style:solid; ">
  120. <line id="lin_main" class="line_1" style="x1:439px; y1:25px; x2:1179px; y2:26px; "/>
  121. <datagrid id="grd_reqset" nodeset="/root/main/list/reqset/reqsetlist" caption="Chk^부서코드^청구부서^청구일자^청구번호^비품접수건수^건수" colsep="^" colwidth="31, 0, 88, 79, 59, 85, 50, 0, 100, 100, 100, 100" dataheight="25" ellipsis="true" explorerbar="sortshow" extendlastcol="false" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:3px; top:29px; width:417px; height:617px; ">
  122. <col checkvalue="Y,N" ref="chk" type="checkbox" visibility="hidden"/>
  123. <col ref="goodcd"/>
  124. <col ref="reqdeptnm"/>
  125. <col ref="reqdd" format="yyyy-mm-dd" style="text-align:center; "/>
  126. <col ref="reqno" style="text-align:center; "/>
  127. <col ref="acptcount" visibility="visible"/>
  128. <col ref="reqcount" style="text-align:right; "/>
  129. <col ref="prodcmpynm"/>
  130. <col ref="reqdeptcd" visibility="hidden"/>
  131. <col ref="goodqty" visibility="hidden"/>
  132. <col ref="instcd" visibility="hidden"/>
  133. <col ref="deptaprvyn" visibility="hidden"/>
  134. <script type="javascript" ev:event="onrowchanged">
  135. <![CDATA[
  136. grd_reqset.dispatch("onmouseup");
  137. //model.copyNode("/root/send/goodreq", "/root/main/list/reqset/reqsetlist[" + grd_reqset.row +"]");
  138. model.setValue("/root/send/goodreq/instcd",model.getValue("/root/send/reqset/instcd")) ;
  139. model.setValue("/root/send/goodreq/reqdd",grd_reqset.valueMatrix(grd_reqset.row, grd_reqset.colRef("reqdd"))) ;
  140. model.setValue("/root/send/goodreq/reqno",grd_reqset.valueMatrix(grd_reqset.row, grd_reqset.colRef("reqno"))) ;
  141. model.setValue("/root/send/goodreq/reqdeptcd",grd_reqset.valueMatrix(grd_reqset.row, grd_reqset.colRef("reqdeptcd"))) ;
  142. model.setValue("/root/send/goodreq/reqflag",model.getValue("/root/send/reqset/reqflag")) ;
  143. model.setValue("/root/send/goodreq/workflag",model.getValue("/root/send/reqset/workflag")) ;
  144. model.setValue("/root/send/goodreq/reqpridflag",model.getValue("/root/send/reqset/reqpridflag")) ;
  145. model.setValue("/root/send/goodreq/deptaprvyn",model.getValue("/root/send/reqset/deptaprvyn")) ;
  146. //submit("TRRSD00414");
  147. submit("TRRSD11101");
  148. ]]>
  149. </script>
  150. <script type="javascript" ev:event="onaftersort">
  151. <![CDATA[
  152. grd_reqset.gridToInstance();
  153. ]]>
  154. </script>
  155. <script type="javascript" ev:event="xforms-value-changed">
  156. <![CDATA[
  157. for (var i = grd_reqset.fixedRows ; i< grd_reqset.rows ; i++)
  158. {
  159. if ( grd_reqset.valueMatrix( i , grd_reqset.colRef("chk") ) != "Y" )
  160. {
  161. grd_reqset.removeStatus( i , "update" );
  162. }
  163. }
  164. ]]>
  165. </script>
  166. </datagrid>
  167. <datagrid id="grd_goodreq" nodeset="/root/main/list/goodreq/goodreqlist" caption="^순번^물품명^모델^규격^제조회사^청구사유^청구수량^청구^청구자^상세청구사유^기관코드^청구구분^청구부서^청구일자^청구번호^접수여부" colsep="^" colwidth="48, 37, 191, 85, 71, 65, 83, 66, 0, 67, 100, 66, 59, 66, 63, 52, 59" dataheight="25" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:439px; top:29px; width:742px; height:545px; ">
  168. <col checkvalue="Y,N" ref="fixchoice" type="checkbox"/>
  169. <col ref="reqseqno"/>
  170. <col ref="goodnm"/>
  171. <col ref="goodmodel"/>
  172. <col ref="goodspec"/>
  173. <col ref="prodcmpynm"/>
  174. <col ref="workflagnm"/>
  175. <col ref="reqqty" format="#,###.#" style="text-align:right; "/>
  176. <col ref="requnit" style="text-align:center; "/>
  177. <col ref="reqpsnnm"/>
  178. <col ref="cmt"/>
  179. <col ref="instcd"/>
  180. <col ref="reqflag"/>
  181. <col ref="reqdeptcd"/>
  182. <col ref="reqdd"/>
  183. <col ref="reqno"/>
  184. <col ref="deptaprvyn"/>
  185. <script type="javascript" ev:event="onclick">
  186. <![CDATA[
  187. // grp_allsize.attribute("visibility") ="hidden" ;
  188. ]]>
  189. </script>
  190. <script type="javascript" ev:event="onbuttonclick">
  191. <![CDATA[
  192. // fGoodreqButtonClick() ;
  193. ]]>
  194. </script>
  195. <script type="javascript" ev:event="xforms-value-changed">
  196. <![CDATA[
  197. for (var i = grd_goodreq.fixedRows ; i< grd_goodreq.rows ; i++)
  198. {
  199. if ( grd_goodreq.valueMatrix( i , grd_goodreq.colRef("fixchoice") ) != "Y" )
  200. {
  201. grd_goodreq.removeStatus( i , "update" );
  202. }
  203. }
  204. ]]>
  205. </script>
  206. <script type="javascript" ev:event="onrowchanged">
  207. <![CDATA[
  208. //tar_cmt.value = model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/cmt");
  209. //행이 변할때 마다 하단에 상세청구사유가 변해야 한다.
  210. if( grd_goodreq.rows >= grd_goodreq.fixedRows )
  211. {
  212. model.resetInstanceNode("/root/main/goodreq");
  213. model.copyNode("/root/main/goodreq/goodreqlist" ,grd_goodreq.nodeset + "["+ (grd_goodreq.row-grd_goodreq.fixedrows+1) + "]");
  214. model.refresh();
  215. }
  216. ]]>
  217. </script>
  218. <script type="javascript" ev:event="onkeydown">
  219. <![CDATA[
  220. // fGoodreqOnKeyDown();
  221. ]]>
  222. </script>
  223. <script type="javascript" ev:event="onentercell">
  224. <![CDATA[
  225. // fGoodreqOnEnterCell();
  226. ]]>
  227. </script>
  228. <script type="javascript" ev:event="onaftersort">
  229. <![CDATA[
  230. grd_goodreq.gridToInstance();
  231. ]]>
  232. </script>
  233. </datagrid>
  234. <line id="line1" class="line_1" style="x1:4px; y1:25px; x2:418px; y2:26px; "/>
  235. <caption id="cap_title_plceord" class="tit_2" style="left:6px; top:9px; width:148px; height:14px; ">부서별 비품청구내역</caption>
  236. <caption id="caption3" class="tit_2" style="left:442px; top:9px; width:126px; height:14px; ">비품청구 상세내역</caption>
  237. <button id="btn_save" class="btn4_letter4" style="left:1100px; top:2px; width:80px; height:22px; ">
  238. <caption>승 인</caption>
  239. <script type="javascript" ev:event="DOMActivate">
  240. <![CDATA[
  241. //비품청구 상세내역에 접수여부 즉 부서승인은 상단의 작업구분이 미승인일경우 Y
  242. //작업구분이 승인일 경우 N로 하여 청구승인을 하도록 하자!!
  243. for (var i = grd_goodreq.fixedRows ; i< grd_goodreq.rows ; i++) {
  244. if ( model.getValue("/root/send/reqset/deptaprvyn") == "N" ) {
  245. model.setValue( "/root/main/list/goodreq/goodreqlist["+i+"]/deptaprvyn" , "Y" )
  246. }
  247. else if ( model.getValue("/root/send/reqset/deptaprvyn") == "Y" ){
  248. model.setValue( "/root/main/list/goodreq/goodreqlist["+i+"]/deptaprvyn" , "N" )
  249. }
  250. }
  251. var updtdata = getGridUpdateData(grd_goodreq);
  252. if (updtdata == "")
  253. {
  254. messageBox("변경된 데이터가","I004");
  255. return;
  256. }
  257. model.setValue("/root/send/save/goodreqlist" ,grd_goodreq.getUpdateData());
  258. submit("TXRSD00413");
  259. if (model.getValue(gvErrorMsgPath + "/type") == "error") return;
  260. btn_search.dispatch("DOMActivate");
  261. ]]>
  262. </script>
  263. </button>
  264. <line id="line2" class="line_1" style="x1:440px; y1:602px; x2:1181px; y2:603px; "/>
  265. <textarea id="txt_cmt" ref="/root/main/goodreq/goodreqlist/cmt" disabled="true" maxlength="100" style="left:509px; top:606px; width:673px; height:40px; "/>
  266. <caption id="caption13" class="cell_1" style="left:439px; top:606px; width:66px; height:40px; vertical-align:middle; ">청구사유</caption>
  267. <caption id="caption5" class="tit_2" style="left:444px; top:584px; width:190px; height:14px; ">비품청구 상세청구사유 내역</caption>
  268. </group>
  269. <group id="grp_sea" style="left:0px; top:2px; width:1195px; height:60px; vertical-align:top; ">
  270. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:58px; background-color:#fffbf2; border-color:#ffd799; "/>
  271. <caption id="caption4" class="search_name" visibility="hidden" style="left:761px; top:10px; width:86px; height:17px; ">작업구분 :</caption>
  272. <caption id="caption11" class="search_name" style="left:11px; top:8px; width:86px; height:17px; ">기관코드 :</caption>
  273. <caption id="caption16" class="search_name" style="left:270px; top:35px; width:86px; height:17px; ">청구일자 :</caption>
  274. <caption id="caption18" class="search_name" visibility="hidden" style="left:555px; top:10px; width:86px; height:17px; ">청구주기 :</caption>
  275. <select1 id="cmb_workflag" ref="/root/send/reqset/workflag" class="combo_default" visibility="hidden" appearance="minimal" style="left:855px; top:10px; width:94px; height:19px; ">
  276. <choices>
  277. <item>
  278. <label>청구</label>
  279. <value>1</value>
  280. </item>
  281. <item>
  282. <label>반납</label>
  283. <value>2</value>
  284. </item>
  285. <item>
  286. <label>상비품청구</label>
  287. <value>3</value>
  288. </item>
  289. <item>
  290. <label>상비품반납</label>
  291. <value>4</value>
  292. </item>
  293. </choices>
  294. <script type="javascript" ev:event="xforms-value-changed">
  295. <![CDATA[
  296. btn_search.dispatch("DOMActivate");
  297. ]]>
  298. </script>
  299. </select1>
  300. <select1 id="cmb_reqpridflag" ref="/root/send/reqset/reqpridflag" class="combo_default" visibility="hidden" appearance="minimal" style="left:640px; top:10px; width:110px; height:19px; ">
  301. <choices>
  302. <item>
  303. <label>일</label>
  304. <value>1</value>
  305. </item>
  306. </choices>
  307. <script type="javascript" ev:event="xforms-value-changed">
  308. <![CDATA[
  309. btn_search.dispatch("DOMActivate");
  310. ]]>
  311. </script>
  312. </select1>
  313. <output id="opt_requsernm" ref="/root/send/reqset/requsernm" class="output_fix" appearance="output" style="left:160px; top:33px; width:94px; height:19px; "/>
  314. <output id="opt_requser" ref="/root/send/reqset/requserno" class="output_fix" appearance="output" style="left:96px; top:33px; width:63px; height:19px; "/>
  315. <line id="line14" class="line_4" style="x1:1045px; y1:5px; x2:1045px; y2:52px; "/>
  316. <button id="btn_search" class="btn1_letter2" navindex="7" style="left:1055px; top:17px; width:56px; height:22px; text-align:left; ">
  317. <caption>조회</caption>
  318. <script type="javascript" ev:event="DOMActivate">
  319. <![CDATA[
  320. misfGridInit(grd_reqset);
  321. misfGridInit(grd_goodreq);
  322. submit("TRRSD00413");
  323. model.refresh();
  324. ]]>
  325. </script>
  326. </button>
  327. <output id="opt_instcd" ref="/root/send/reqset/instcd" class="output_fix" visibility="hidden" style="left:110px; top:8px; width:30px; height:19px; "/>
  328. <output id="opt_instcdnm" ref="/root/send/reqset/instcdnm" class="output_fix" style="left:96px; top:8px; width:158px; height:19px; "/>
  329. <input id="ipt_reqfrdd" ref="/root/send/reqset/reqfrdd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:360px; top:35px; width:94px; height:19px; "/>
  330. <caption id="caption1" style="left:458px; top:37px; width:16px; height:15px; ">~</caption>
  331. <input id="ipt_reqtodd" ref="/root/send/reqset/reqtodd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:470px; top:35px; width:94px; height:19px; "/>
  332. <caption id="caption9" class="search_name" style="left:11px; top:33px; width:86px; height:17px; ">승 인 자 :</caption>
  333. <caption id="caption14" class="search_name" style="left:270px; top:8px; width:86px; height:17px; ">청구구분 :</caption>
  334. <select1 id="cmb_reqflag" ref="/root/send/reqset/reqflag" class="combo_default" appearance="minimal" style="left:360px; top:8px; width:110px; height:19px; ">
  335. <choices>
  336. <item>
  337. <label>일반비품</label>
  338. <value>D</value>
  339. </item>
  340. </choices>
  341. </select1>
  342. <caption id="caption2" class="search_name" style="left:601px; top:33px; width:86px; height:17px; ">작업구분 :</caption>
  343. <select1 id="rdo_acqtflag" ref="/root/send/reqset/deptaprvyn" appearance="full" cellspacing="10" cols="6" overflow="visible" style="left:695px; top:35px; width:110px; height:15px; background-color:transparent; border-style:none; ">
  344. <choices>
  345. <item>
  346. <label>미승인</label>
  347. <value>N</value>
  348. </item>
  349. <item>
  350. <label>승인</label>
  351. <value>Y</value>
  352. </item>
  353. </choices>
  354. <script type="javascript" ev:event="xforms-value-changed">
  355. <![CDATA[
  356. if (rdo_acqtflag.value == "Y") {
  357. btn_save.text = "승인취소";
  358. } else {
  359. btn_save.text = "승 인";
  360. }
  361. btn_search.dispatch("DOMActivate");
  362. ]]>
  363. </script>
  364. </select1>
  365. </group>
  366. <!--
  367. <group id="grp_main" style="left:593px; top:90px; width:602px; height:663px; border-color:#c0c0c0; border-style:solid; ">
  368. <line id="lin_main" class="line_1" style="x1:4px; y1:27px; x2:593px; y2:28px; "/>
  369. <datagrid id="grd_goodreq" nodeset="/root/main/list/goodreq/goodreqlist" caption="기관코드^청구구분^청구일자^청구번호^순번^물품코드^물품명^규격(ALL SIZE)^모델^제조회사^기준량^수액집계^재고량^청구^청구/구매단위^청구/구매단위^청구/구매단위^전월^승인^승인" colsep="^" colwidth="0, 0, 0, 0, 35, 95, 251, 135, 96, 78, 48, 62, 53, 58, 43, 40, 35, 45, 30, 59, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:3px; top:29px; width:592px; height:628px; ">
  370. -->
  371. </group>
  372. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:23px; ">
  373. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:186px; height:14px; ">비품청구승인관리</caption>
  374. </group>
  375. </xhtml:body>
  376. </xhtml:html>