SMMNG02302_세탁물청구관리(응급).xrw 47 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237
  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. <lnrqinfo>
  11. <lnrqlist>
  12. <goodcd/>
  13. <goodnm/>
  14. <goodspec/>
  15. <goodunit/>
  16. <reqcnt/>
  17. <reqid/>
  18. <outcnt/>
  19. <outid/>
  20. <stockcnt/>
  21. <remark1/>
  22. <reqdd/>
  23. <deptcd/>
  24. <ioflag/>
  25. <instcd/>
  26. <deptnm/>
  27. <reqnm/>
  28. <outnm/>
  29. </lnrqlist>
  30. <csrdeptlist/>
  31. </lnrqinfo>
  32. <cond>
  33. <reqfromdd/>
  34. <deptcd/>
  35. <instcd/>
  36. <lowdept/>
  37. <reqtodd/>
  38. </cond>
  39. <csrdeptlist/>
  40. <possmenucnt/>
  41. <possmenulist/>
  42. </main>
  43. <send>
  44. <reqfromdd/>
  45. <deptcd/>
  46. <rexport/>
  47. <grupid/>
  48. <gubuncd>01</gubuncd>
  49. <cdid/>
  50. <lowflag/>
  51. <cdgrupid>T64</cdgrupid>
  52. <lnrqflag/>
  53. <reqtodd/>
  54. <grupdeptcd/>
  55. <date/>
  56. </send>
  57. <init>
  58. <csrdeptinfo/>
  59. <grupcdinfo/>
  60. <grupdeptlist/>
  61. <timeinfo/>
  62. </init>
  63. <temp>
  64. <prtinfo/>
  65. </temp>
  66. <tmp>
  67. <prtinfo/>
  68. </tmp>
  69. </root>
  70. </instance>
  71. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  72. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  73. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  74. <script type="javascript" src="../../../emr/carecomweb/js/CareCom.js"/>
  75. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  76. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  77. <script type="javascript" ev:event="xforms-ready">
  78. <![CDATA[
  79. grd_lnrqlist.fixedcellcheckbox(0,1) = true;
  80. fInitialize();
  81. ]]>
  82. </script>
  83. <submission id="TRMNG00402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/csrdeptlist"/>
  84. <submission id="TRMNG02303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/lnrqinfo"/>
  85. <submission id="TRMNG02305" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/grupcdinfo"/>
  86. <submission id="TRMNG02308" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/lncal"/>
  87. <submission id="TRMNG00506" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/timedata" resultref="/root/time"/>
  88. <submission id="TXMNG02303" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/temp"/>
  89. <submission id="TRMNG00404" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/deptcodelist"/>
  90. <submission id="TRMNV00001" mediatype="application/x-www-form-urlencoded" method="post"/>
  91. <submission id="TXMNG02305" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/prntdata" resultref="/root/temp"/>
  92. <submission id="TRMNG02302" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  93. <submission id="TRMNG00405" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/grupdeptlist"/>
  94. <submission id="TXMNG02306" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send1/reqdata" resultref="/root/temp"/>
  95. <submission id="TRMNG02106" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  96. <submission id="TRMNG02309" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/tmp/prtinfo"/>
  97. <submission id="TXMNG02307" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/temp"/>
  98. </model>
  99. <script type="javascript">
  100. <![CDATA[
  101. var da = getCurrentDate();
  102. var dat = ((da.toDate("YYYYMMDD")).getAddDate(-1, "D")).getDateFormat("YYYYMMDD") ;
  103. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  104. function fInitialize()
  105. {
  106. model.setValue(opt_instcdnm.attribute("ref"), getUserInfo("dutplceinstnm")); //기관코드
  107. model.setValue(ipt_reqtodd.attribute("ref"), getCurrentDate());
  108. //model.setValue(ipt_reqfromdd.attribute("ref"), dat);
  109. model.setValue(ipt_reqfromdd.attribute("ref"), getCurrentDate());
  110. rdo_lnrqlist.value = "00";
  111. submit("TRMNG02305");
  112. fGetHardCodeInfo("/root/send/grupid", "/root/init/csrdeptinfo", "160"); // 중앙공급실 부서코드 조회
  113. var userdutplcecd = model.getValue("/root/init/csrdeptinfo/codelist[cdid = '"+getUserInfo("dutplcecd")+"']/cdid");
  114. if (!isNull(userdutplcecd)) {
  115. model.setValue(cmb_deptcd.attribute("ref"), "");
  116. model.setValue("/root/send/cdid", "Y");
  117. btn_cmtsav.visible =true;
  118. } else {
  119. model.setValue(cmb_deptcd.attribute("ref"), getUserInfo("dutplcecd"));
  120. model.setValue("/root/send/cdid", "N");
  121. cmb_deptcd.disabled = true; //중앙공급실이 아닐 경우 부서선택 숨김
  122. btn_time.visible = false;
  123. btn_cmtsav.visible =false;
  124. }
  125. cmb_deptcd.refresh();
  126. // 화면 권한 설정
  127. fOrdChk();
  128. // 청구가능 시간 체크
  129. if ( model.getValue("/root/send/cdid") == "N" ) {
  130. fTimeChk();
  131. }
  132. model.makeValue("/root/send/reqdata/instcd", getUserInfo("dutplceinstcd"));
  133. model.makeValue("/root/send/reqdata/useyn", "Y");
  134. model.makeValue("/root/send/reqdata/deptcd", getUserInfo("dutplcecd"));
  135. submit("TRMNG00402");
  136. submit("TRMNG00404");
  137. addComboItem("cmb_deptcd","--전체--", "","above");
  138. submit("TRMNG02302");
  139. var getuserinstcd = model.getValue("/root/temp/useinfo/cdid");
  140. if (getuserinstcd == "Y" ) {
  141. chk_low.visible = true;
  142. } else {
  143. chk_low.visible = false;
  144. cmb_lowdept.visible = false;
  145. }
  146. submit("TRMNG00405");
  147. addComboItem("cmb_grupdept", "전체", "");
  148. if ( model.getValue("root/send/cdid") == "N") {
  149. fChkInfo();
  150. }
  151. fSearch();
  152. }
  153. function fChkInfo() {
  154. model.setValue("/root/send/reqtodd", model.getValue(ipt_reqtodd.attribute("ref")));
  155. var lowdeptflag = chk_low.value;
  156. if(lowdeptflag == "Y") {
  157. model.setValue("/root/send/deptcd", model.getValue(cmb_lowdept.attribute("ref")));
  158. } else {
  159. model.setValue("/root/send/deptcd", model.getValue(cmb_deptcd.attribute("ref")));
  160. }
  161. submit("TRMNG02106");
  162. var chk = model.getValue("/root/temp/chkinfo/chkyn");
  163. var chkday = model.getValue("/root/temp/chkinfo/reqdd");
  164. var date = (chkday.toDate("YYYYMMDD")).getDateFormat("YYYY년MM월DD일");
  165. if (chk == "Y") {
  166. alert(date + " 청구목록중 미수령한 목록이 있습니다. 미수령 목록이 있을시 청구를 할수 없습니다. 일반청구 및 응급청구 목록을 확인하세요.");
  167. btn_add.visible = false;
  168. btn_req.visible = false;
  169. btn_del.visible = false;
  170. } else {
  171. btn_add.visible = true;
  172. btn_req.visible = true;
  173. btn_del.visible = true;
  174. }
  175. }
  176. function fTimeChk() {
  177. var date = getCurrentDate();
  178. var time = getCurrentTime();
  179. var week = getCurrentWeek();
  180. var deptcd = getUserInfo("dutplcecd");
  181. model.setValue("/root/send/date", date);
  182. submit("TRMNG02308");
  183. var holiflag = model.getValue("/root/lncal/lncalinfo/holiflag");
  184. var supcdid = model.getValue("/root/lncal/lncalinfo/supcdid");
  185. if ( holiflag == "Y" && week != "0") {
  186. model.makeValue("/root/send/timedata/daykind", "2");
  187. } else if ( week == "6" ) {
  188. model.makeValue("/root/send/timedata/daykind", "3");
  189. } else if (week == "0" ) {
  190. model.makeValue("/root/send/timedata/daykind", "4");
  191. } else if ( holiflag != "Y") {
  192. model.makeValue("/root/send/timedata/daykind", "1");
  193. }
  194. model.makeValue("/root/send/timedata/reqdd", date);
  195. model.makeValue("/root/send/timedata/time", time);
  196. model.makeValue("/root/send/timedata/erflag", "Y");
  197. if ( chk_low.value == "Y" ) {
  198. model.makeValue("/root/send/timedata/deptcd", cmb_lowdept.value );
  199. } else {
  200. model.makeValue("/root/send/timedata/deptcd", deptcd);
  201. }
  202. submit("TRMNG00506");
  203. var timechk = model.getValue("/root/time/timeinfo/timechk");
  204. if ( timechk !="Y") {
  205. alert("청구 가능시간이 아닙니다. 청구 가능시간을 확인하십시오.");
  206. btn_add.disabled = true;
  207. btn_req.disabled = true;
  208. btn_del.disabled = true;
  209. }
  210. }
  211. function fOrdChk() {
  212. var ord = model.getValue("/root/send/cdid");
  213. if( ord == "Y" ) {
  214. btn_grup.visible = false;
  215. btn_add.visible = false;
  216. btn_del.visible = false;
  217. btn_req.visible = false;
  218. btn_rec.visible = false;
  219. caption4.visible = true;
  220. cmb_grupdept.visible = true;
  221. btn_outconf.attribute("left") = 1123;
  222. btn_outpr.attribute("left") = 1080;
  223. btn_allout.attribute("left") = 1013;
  224. btn_reqcancle.attribute("left") = 923;
  225. btn_reqconf.attribute("left") = 856;
  226. } else if ( ord == "N") {
  227. btn_outconf.visible = false;
  228. btn_outpr.visible = false;
  229. btn_allout.visible = false;
  230. btn_reqcancle.visible = false;
  231. btn_reqconf.visible =false;
  232. caption4.visible = false;
  233. cmb_grupdept.visible = false;
  234. btn_req.attribute("left") = 1099;
  235. btn_del.attribute("left") = 1053;
  236. btn_add.attribute("left") = 1008;
  237. btn_grup.attribute("left") = 897;
  238. }
  239. }
  240. function fUsrSetting() {
  241. var ioflag;
  242. var userdutplcecd = model.getValue("/root/init/csrdeptinfo/codelist[cdid = '"+getUserInfo("dutplcecd")+"']/cdid");
  243. submit("TRMNG02302");
  244. var getuserinstcd = model.getValue("/root/temp/useinfo/cdid");
  245. for(var i = 1; i < grd_lnrqlist.rows; i++) {
  246. ioflag = model.getValue("/root/main/lnrqinfo/lnrqlist[" + i + "]/ioflag");
  247. outidflag = model.getValue("/root/main/lnrqinfo/lnrqlist[" + i + "]/outid");
  248. reqidflag = model.getValue("/root/main/lnrqinfo/lnrqlist[" + i + "]/reqid");
  249. if(ioflag == "N") {
  250. grd_lnrqlist.rowStatus(i) = "1";
  251. if (!isNull(userdutplcecd) && isNull(outidflag)) {
  252. grd_lnrqlist.colType(grd_lnrqlist.colRef("reqcnt")) = 'output'; //중앙공급실에서 병동 청구수량 비활성화
  253. } else if (isNull(userdutplcecd) && isNull(outidflag)) {
  254. grd_lnrqlist.colType(grd_lnrqlist.colRef("outcnt")) = 'output'; //병동에서에서 병동 불출수량 비활성화
  255. }
  256. }
  257. if (ioflag == "O" && !isNull(userdutplcecd)) {
  258. grd_lnrqlist.colType(grd_lnrqlist.colRef("reqcnt")) = 'output'; //중앙공급실에서 병동 청구수량 비활성화
  259. if (isNull(outidflag)) {
  260. grd_lnrqlist.rowStatus(i) = "2";
  261. }
  262. } else if (ioflag == "O" && isNull(userdutplcecd)) {
  263. grd_lnrqlist.colType(grd_lnrqlist.colRef("outcnt")) = 'output'; //병동에서에서 병동 불출수량 비활성화
  264. if (isNull(reqidflag)) {
  265. grd_lnrqlist.rowStatus(i) = "2";
  266. }
  267. }
  268. }
  269. }
  270. function fSearch() {
  271. model.setValue("/root/send/reqfromdd", model.getValue(ipt_reqfromdd.attribute("ref")));
  272. model.setValue("/root/send/reqtodd", model.getValue(ipt_reqtodd.attribute("ref")));
  273. model.setValue("/root/send/deptcd", model.getValue(cmb_deptcd.attribute("ref")));
  274. model.setValue("/root/send/gubuncd", model.getValue(rdo_gubuncd.attribute("ref"))); //마스터코드구분 01:물품마스터02:창고마스터
  275. model.makeValue("/root/send/erflag", "Y");
  276. submit("TRMNG02303", "false");
  277. fUsrSetting();
  278. fStyleChk();
  279. }
  280. function fStyleChk() {
  281. for ( i = grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++ ) {
  282. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "06" ) {
  283. grd_lnrqlist.cellStyle("background-color", i, grd_lnrqlist.colRef("lnrqflag")) = "#99CC00";
  284. } else {
  285. grd_lnrqlist.cellStyle("background-color", i, grd_lnrqlist.colRef("lnrqflag")) = "#FFFFFF";
  286. }
  287. }
  288. }
  289. function fPrintRex() {
  290. var fromdd = model.getValue(ipt_reqfromdd.attribute("ref"));
  291. var todd = model.getValue(ipt_reqtodd.attribute("ref"));
  292. model.removenode("/root/send/report/porqlist");
  293. model.makeNode("/root/send/report/porqlist");
  294. copyNodesetType("/root/send/report/lnrqlist", "/root/main/lnrqinfo/lnrqlist");
  295. var userdutplcecd = model.getValue("/root/init/csrdeptinfo/codelist[cdid = '"+getUserInfo("dutplcecd")+"']/cdid");
  296. // 중앙공급실 유저만 출력여부 업데이트
  297. if (getUserInfo("dutplcecd") == userdutplcecd) {
  298. fSaveprnt();
  299. }
  300. // exeReportPreview("RPMNG02301", "XMLSTR", "/root/main/lnrqinfo/lnrqlist");
  301. //
  302. if(cmb_grupdept.value == "") {
  303. exeReportPreview("RPMNG02301", "XMLSTR", "/root/main/lnrqinfo/lnrqlist");
  304. } else {
  305. if(todd != fromdd) {
  306. messageBox("그룹별 출력은 기간별로 출력하실 수 없습니다. ", "E");
  307. return;
  308. }
  309. model.makeNode("/root/temp/prtinfo");
  310. submit("TRMNG02309");
  311. model.makeValue("/root/tmp/flag", "응급");
  312. exeReportPreview("RPMNG02302", "XMLSTR");
  313. }
  314. fSearch();
  315. }
  316. function fSearch2() {
  317. model.setValue("/root/send/reqfromdd", model.getValue(ipt_reqfromdd.attribute("ref")));
  318. model.setValue("/root/send/reqtodd", model.getValue(ipt_reqtodd.attribute("ref")));
  319. model.setValue("/root/send/deptcd", model.getValue(cmb_lowdept.attribute("ref")));
  320. model.setValue("/root/send/gubuncd", model.getValue(rdo_gubuncd.attribute("ref"))); //마스터코드구분 01:물품마스터02:창고마스터
  321. model.makeValue("/root/send/erflag", "Y");
  322. submit("TRMNG02303", "false");
  323. fUsrSetting();
  324. fStyleChk();
  325. }
  326. function fSaveprnt() {
  327. for (i=0; i< grd_lnrqlist.rows; i++) {
  328. if(grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("prntdt")) == "" || grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("prntdt")) == null ) {
  329. grd_lnrqlist.rowStatus(i) = 2;
  330. }
  331. }
  332. model.makeValue("/root/send/prntdata/porqlist", getGridUpdateData(grd_lnrqlist) );
  333. submit("TXMNG02305");
  334. }
  335. function fSettingGoodList(pnode) {
  336. var codynode = instance1.selectNodes(pnode + "/*");
  337. var addRow = grd_lnrqlist.rows - grd_lnrqlist.fixedRows;
  338. for (var j = 1; j <= codynode.length; j++)
  339. {
  340. if(addRow > grd_lnrqlist.rows - grd_lnrqlist.fixedRows)
  341. {
  342. misfGridIUD(grd_lnrqlist,"A");
  343. addRow = grd_lnrqlist.rows - grd_lnrqlist.fixedRows;
  344. }
  345. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/deptcd" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/deptcd"));
  346. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/goodcd" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/goodcd"));
  347. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/goodcdseq" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/goodcdseq"));
  348. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/lngoodnm" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/lngoodnm"));
  349. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/goodmodel" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/goodmodel"));
  350. // model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/goodspec" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/goodspec"));
  351. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/goodunit" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/goodunit"));
  352. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/reqnm" , getUserInfo("usernm"));
  353. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/reqid" , getUserInfo("userid"));
  354. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/lnrqflag" , "01"); // 청구구분( 01: 청구 , 02 : 불출, 03: 수령, 04:운송)
  355. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/lnsfcnt" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/lnsfcnt"));
  356. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/lnrlcnt" , model.getValue(pnode +"/" + "grd_lnrqlist" + "[" + j + "]/lnrlcnt"));
  357. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/reqdd" , ipt_reqtodd.value);
  358. model.setValue(grd_lnrqlist.nodeset + "[" + addRow + "]/erflag" , "Y");
  359. addRow = addRow + 1;
  360. }
  361. grd_lnrqlist.colDisabled(grd_lnrqlist.colRef("lnrqflag")) = true;
  362. grd_lnrqlist.colDisabled(grd_lnrqlist.colRef("deptcd")) = true;
  363. model.recalculate();
  364. model.refresh();
  365. }
  366. ]]>
  367. </script>
  368. </xhtml:head>
  369. <xhtml:body guideline="1,1196;2,786;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  370. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  371. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:186px; height:14px; ">린넨보관실청구관리(응급)</caption>
  372. </group>
  373. <group id="grp_biz" scroll="auto" style="left:0px; top:100px; width:1195px; height:680px; ">
  374. <caption id="caption12" class="tit_2" style="left:5px; top:9px; width:195px; height:13px; font-family:굴림체; ">린넨보관실청구관리(응급)</caption>
  375. <line id="line1" class="line_1" style="x1:0px; y1:25px; x2:1193px; y2:26px; "/>
  376. <button id="btn_req" class="btn5_letter2" style="left:770px; top:3px; width:42px; height:19px; ">
  377. <caption>청구</caption>
  378. <script type="javascript" ev:event="DOMActivate">
  379. <![CDATA[
  380. // 청구 가능 시간 체크
  381. if ( model.getValue("/root/send/cdid") == "N" ) {
  382. var time = fTimeChk();
  383. if (time == 6 ) {
  384. return;
  385. }
  386. }
  387. var userid = getUserInfo("userid");
  388. for ( i = grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++ ) {
  389. if (grd_lnrqlist.valueMatrix( i , grd_lnrqlist.colRef("nowcnt") ) == "" ) {
  390. alert( "현재고량을 입력하십시오" );
  391. return;
  392. }
  393. if ( grd_lnrqlist.rowStatus(i) == 2 ) {
  394. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("reqid") ) = userid;
  395. }
  396. }
  397. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  398. if ( submit("TXMNG02303") ) {
  399. alert("청구 처리되었습니다.");
  400. }
  401. if ( chk_low.value == "Y") {
  402. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  403. } else {
  404. fSearch();
  405. }
  406. ]]>
  407. </script>
  408. </button>
  409. <datagrid id="grd_lnrqlist" nodeset="/root/main/lnrqinfo/lnrqlist" caption="^응급여부^구분^부서명^품목코드^상세코드^린넨품명^상세규격^단위^안전재고량^현재고량^청구요청량^청구자^불출량^불출자^운송량^운송자^수령량^수령자^실재고 수량^비고^상세설명^출력여부^출력시간" colsep="^" colwidth="50, 65, 65, 96, 86, 65, 100, 70, 67, 80, 80, 80, 75, 75, 80, 65, 70, 70, 70, 77, 125, 100, 60, 120, 34, 30, 28, 100, 100, 100, 100" explorerbar="sort" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:26px; width:1190px; height:640px; ">
  410. <col checkvalue="Y,N" ref="chkyn" type="checkbox"/>
  411. <col checkvalue="Y,N" editable="false" ref="erflag" type="checkbox"/>
  412. <col disabled="true" editable="false" ref="lnrqflag" type="combo" style="text-align:center; ">
  413. <choices>
  414. <itemset nodeset="/root/init/grupcdinfo/grupcdlist">
  415. <label ref="cdnm"/>
  416. <value ref="cdid"/>
  417. </itemset>
  418. </choices>
  419. </col>
  420. <col ref="deptcd" type="combo" style="text-align:center; ">
  421. <choices>
  422. <itemset nodeset="/root/main/csrdeptlist">
  423. <label ref="deptnm"/>
  424. <value ref="deptcd"/>
  425. </itemset>
  426. </choices>
  427. </col>
  428. <col editable="false" ref="goodcd" type="inputbutton" visibility="visible" style="text-align:center; "/>
  429. <col ref="goodcdseq" visibility="visible" style="text-align:right; "/>
  430. <col ref="lngoodnm" visibility="visible" style="text-align:center; "/>
  431. <col ref="goodmodel" visibility="visible" style="text-align:center; "/>
  432. <col ref="goodunit" visibility="visible" style="text-align:center; "/>
  433. <col ref="lnsfcnt" format="#,###"/>
  434. <col ref="nowcnt" type="input" format="#,###"/>
  435. <col ref="reqcnt" format="#,###"/>
  436. <col ref="reqnm" visibility="visible"/>
  437. <col ref="outcnt" type="input" visibility="visible" format="#,###"/>
  438. <col ref="outnm" visibility="visible"/>
  439. <col ref="trscnt" format="#,###"/>
  440. <col ref="trsnm"/>
  441. <col ref="reccnt" format="#,###"/>
  442. <col ref="recnm"/>
  443. <col ref="lnrlcnt" visibility="hidden" format="#,###"/>
  444. <col ref="remark" type="input"/>
  445. <col ref="gooddesc" visibility="visibile"/>
  446. <col ref="prntyn" visibility="visible"/>
  447. <col ref="prntdt" visibility="visible" format="yyyy/mm/dd hh:nn:ss"/>
  448. <col ref="prntnm" visibility="hidden"/>
  449. <col ref="reqdd" visibility="hidden"/>
  450. <col ref="deptcd" visibility="hidden"/>
  451. <col ref="instcd" visibility="hidden"/>
  452. <col ref="reqid" visibility="hidden"/>
  453. <col ref="outid" visibility="hidden"/>
  454. <col ref="seqno" visibility="hidden"/>
  455. <col ref="outdt" visibility="hidden"/>
  456. <col ref="trsdt" visibility="hidden"/>
  457. <col ref="lnedflag" visibility="hidden"/>
  458. <script type="javascript" ev:event="xforms-value-changed">
  459. <![CDATA[
  460. var ord = model.getValue("/root/send/cdid");
  461. if ( grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("lnedflag") ) == "A" ) {
  462. alert("마감된 청구내역은 변경하실수 없습니다.");
  463. if ( chk_low.value == "Y") {
  464. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  465. } else {
  466. fSearch();
  467. }
  468. return;
  469. }
  470. else if (grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("lnedflag") ) = "B" && grd_lnrqlist.col == grd_lnrqlist.colRef("outcnt") && ord == "Y" ) {
  471. if ( grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("lnrqflag") ) > "03" ) {
  472. var btn = messageBox("불출량을 수정하시겠습니까?", "Q");
  473. if (btn == "6") {
  474. var lnrlcnt = parseInt(grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("outcnt")), 10)
  475. + parseInt(grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("nowcnt")), 10);
  476. model.makeValue("/root/send1/reqdata/lnrlcnt", lnrlcnt);
  477. model.makeValue("/root/send1/reqdata/reqdd", grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("reqdd")) );
  478. model.makeValue("/root/send1/reqdata/seqno", grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("seqno")) );
  479. model.makeValue("/root/send1/reqdata/outcnt", grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("outcnt")) );
  480. model.makeValue("/root/send1/reqdata/lnrqflag", grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("lnrqflag")) );
  481. if ( submit("TXMNG02306") ) {
  482. alert("불출량 수정되었습니다.");
  483. if ( chk_low.value == "Y") {
  484. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  485. } else {
  486. fSearch();
  487. }
  488. return;
  489. }
  490. model.removenode("/root/send1/reqdata");
  491. } else {
  492. if ( chk_low.value == "Y") {
  493. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  494. } else {
  495. fSearch();
  496. }
  497. return;
  498. }
  499. }
  500. }
  501. var lnsfcnt = grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("lnsfcnt"));
  502. var nowcnt = grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("nowcnt"));
  503. if ( grd_lnrqlist.col == grd_lnrqlist.colRef("nowcnt") ) {
  504. if (grd_lnrqlist.valueMatrix(grd_lnrqlist.row, grd_lnrqlist.colRef("lnrqflag") ) != "01" ) {
  505. alert("청구 상태가 아니면 현재고량을 수정하실수 없습니다.");
  506. if ( chk_low.value == "Y") {
  507. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  508. } else {
  509. fSearch();
  510. }
  511. return;
  512. }
  513. lnsfcnt = parseInt(lnsfcnt);
  514. if(nowcnt == "") {
  515. nowcnt = 0;
  516. }
  517. nowcnt = parseInt(nowcnt);
  518. if(nowcnt > lnsfcnt) {
  519. messageBox("현재고량은 안전재고량보다 크게 입력할 수 없습니다.", "E");
  520. grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("nowcnt") ) = "";
  521. grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("reqcnt") ) = "";
  522. return;
  523. }
  524. if ( nowcnt != "") {
  525. if ( nowcnt == grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("lnsfcnt") ) ) {
  526. alert("현재고량이 안전재고량과 동일합니다. 청구요청량이 0 입니다.");
  527. grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("nowcnt") ) = "";
  528. grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("reqcnt") ) = "";
  529. } else {
  530. grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("reqcnt")) = lnsfcnt - nowcnt;
  531. }
  532. }
  533. if(nowcnt == 0) {
  534. grd_lnrqlist.valueMatrix( grd_lnrqlist.row, grd_lnrqlist.colRef("reqcnt")) = lnsfcnt - nowcnt;
  535. }
  536. }
  537. ]]>
  538. </script>
  539. <script type="javascript" ev:event="onkeypress">
  540. <![CDATA[
  541. var row = grd_lnrqlist.row;
  542. if(event.keyCode == 13) { // Enter 쳤을 경우 아래 수량으로
  543. if(grd_lnrqlist.col == grd_lnrqlist.colRef("reqcnt") || grd_lnrqlist.col == grd_lnrqlist.colRef("outcnt")) { //불출수량이나 미불출수량 엔터시
  544. if(grd_lnrqlist.row + 1 < grd_lnrqlist.rows) {
  545. grd_lnrqlist.row = row + 1;
  546. }
  547. }
  548. }
  549. ]]>
  550. </script>
  551. <script type="javascript" ev:event="onbuttonclick">
  552. <![CDATA[
  553. if ( model.getValue("/root/temp/reqflag") == "S") {
  554. model.removeNodeset(gvParamPath + "/SPMNG02301_/SPMNG02301_value");
  555. if(grd_lnrqlist.col == grd_lnrqlist.colRef("goodcd") ) {
  556. model.removeNodeset("/root/copynode");
  557. model.makeNode("/root/copynode");
  558. model.refresh();
  559. if ( chk_low.value == "Y") {
  560. setParameter("deptcd", cmb_lowdept.value);
  561. } else {
  562. setParameter("deptcd", cmb_deptcd.value);
  563. }
  564. rszfOpenPopUpListByWndName(grd_lnrqlist,"","goodcd,goodcdseq,goodnm,goodmodel,goodspec,goodunit,lnsfcnt,lnrlcnt,deptcd","SPMNG02301","","", "Y");
  565. var CSV = model.getValue(gvParamPath +"/SPMNG02301_/SPMNG02301_value");
  566. setCSVToNode("/root/copynode", CSV, "grd_lnrqlist");
  567. fSettingGoodList("/root/copynode");
  568. }
  569. } else if ( model.getValue("/root/temp/reqflag") == "G") {
  570. model.removeNodeset(gvParamPath + "/SPMNG02302_/SPMNG02302_value");
  571. if(grd_lnrqlist.col == grd_lnrqlist.colRef("goodcd") ) {
  572. model.removeNodeset("/root/copynode");
  573. model.makeNode("/root/copynode");
  574. model.refresh();
  575. if ( chk_low.value == "Y") {
  576. setParameter("deptcd", cmb_lowdept.value);
  577. } else {
  578. setParameter("deptcd", cmb_deptcd.value);
  579. }
  580. rszfOpenPopUpListByWndName(grd_lnrqlist,"","goodcd,goodcdseq,goodnm,goodmodel,goodspec,goodunit,lnsfcnt,lnrlcnt,deptcd","SPMNG02302","","", "Y");
  581. var CSV = model.getValue(gvParamPath +"/SPMNG02302_/SPMNG02302_value");
  582. setCSVToNode("/root/copynode", CSV, "grd_lnrqlist");
  583. fSettingGoodList("/root/copynode");
  584. }
  585. }
  586. ]]>
  587. </script>
  588. <script type="javascript" ev:event="onaftersort">
  589. <![CDATA[
  590. grd_lnrqlist.gridToInstance();
  591. ]]>
  592. </script>
  593. </datagrid>
  594. <select1 id="rdo_gubuncd" ref="/root/send/gubuncd" disabled="true" visibility="hidden" appearance="full" cols="2" overflow="visible" style="left:220px; top:5px; width:165px; height:15px; border-style:none; ">
  595. <choices>
  596. <item>
  597. <label>물품마스터</label>
  598. <value>01</value>
  599. </item>
  600. <item>
  601. <label>창고마스터</label>
  602. <value>02</value>
  603. </item>
  604. </choices>
  605. </select1>
  606. <button id="btn_add" class="btn2_letter2" style="left:680px; top:3px; width:42px; height:19px; ">
  607. <caption>추가</caption>
  608. <script type="javascript" ev:event="DOMActivate">
  609. <![CDATA[
  610. // 청구 가능 시간 체크
  611. if ( model.getValue("/root/send/cdid") == "N" ) {
  612. var time = fTimeChk();
  613. if (time == 6 ) {
  614. return;
  615. }
  616. }
  617. model.makeValue("/root/temp/reqflag", "S");
  618. grd_lnrqlist.addRow();
  619. ]]>
  620. </script>
  621. </button>
  622. <button id="btn_del" class="btn5_letter2" style="left:725px; top:3px; width:42px; height:19px; ">
  623. <caption>삭제</caption>
  624. <script type="javascript" ev:event="DOMActivate">
  625. <![CDATA[
  626. // 청구 가능 시간 체크
  627. if ( model.getValue("/root/send/cdid") == "N" ) {
  628. var time = fTimeChk();
  629. if (time == 6 ) {
  630. return;
  631. }
  632. }
  633. var cnt = 0;
  634. var dnt = 0;
  635. var inscnt = 0;
  636. var rows = grd_lnrqlist.rows;
  637. for ( i=grd_lnrqlist.fixedRows; i <= rows; i++ ) {
  638. var j = i - dnt;
  639. if ( grd_lnrqlist.valueMatrix( j , grd_lnrqlist.colRef("chkyn") ) == "Y" && grd_lnrqlist.valueMatrix(j, grd_lnrqlist.colRef("lnrqflag")) == "01" && grd_lnrqlist.rowStatus(j) != 3) {
  640. grd_lnrqlist.rowStatus(j) = 4;
  641. cnt++;
  642. } else if ( grd_lnrqlist.valueMatrix( j , grd_lnrqlist.colRef("chkyn") ) == "Y" && grd_lnrqlist.valueMatrix(j, grd_lnrqlist.colRef("lnrqflag")) == "01" && grd_lnrqlist.rowStatus(j) == 3) {
  643. grd_lnrqlist.deleteRow(j);
  644. dnt++;
  645. } else if ( grd_lnrqlist.valueMatrix( j , grd_lnrqlist.colRef("chkyn") ) != "Y" && grd_lnrqlist.valueMatrix(j, grd_lnrqlist.colRef("lnrqflag")) == "01" && grd_lnrqlist.rowStatus(j) == 1 ) {
  646. alert(1);
  647. inscnt ++;
  648. }
  649. }
  650. if ( dnt < 1 && cnt < 1) {
  651. alert("선택된 삭제목록이 없습니다.");
  652. return;
  653. }
  654. if ( inscnt > 0 ) {
  655. var btn = messageBox("신규 청구내역이 있습니다. 청구하시겠습니까?", "Q");
  656. if (btn == "6") {
  657. for ( i = grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++ ) {
  658. if (grd_lnrqlist.valueMatrix( i , grd_lnrqlist.colRef("nowcnt") ) == "" ) {
  659. alert( "현재고량을 입력하십시오" );
  660. return;
  661. }
  662. if ( grd_lnrqlist.rowStatus(i) == 2 ) {
  663. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("reqid") ) = userid;
  664. }
  665. }
  666. } else {
  667. if ( chk_low.value == "Y") {
  668. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  669. } else {
  670. fSearch();
  671. }
  672. return;
  673. }
  674. }
  675. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  676. if ( submit("TXMNG02303") ) {
  677. alert(cnt + "건이 삭제 처리되었습니다");
  678. }
  679. if ( chk_low.value == "Y") {
  680. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  681. } else {
  682. fSearch();
  683. }
  684. ]]>
  685. </script>
  686. </button>
  687. <button id="btn_outpr" class="btn5_letter2" style="left:1034px; top:3px; width:42px; height:19px; ">
  688. <caption>불출</caption>
  689. <script type="javascript" ev:event="DOMActivate">
  690. <![CDATA[
  691. var cnt = 0;
  692. for ( i=grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++) {
  693. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("chkyn")) == "Y" && grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "02" &&
  694. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("outcnt")) == "0") {
  695. alert("선택한 청구확인 목록중 불출량이 입력되지 않은 목록이 있습니다.");
  696. return;
  697. }
  698. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("chkyn")) == "Y" &&
  699. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "02" &&
  700. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("outcnt")) != "0" ) {
  701. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) = "03"
  702. grd_lnrqlist.rowStatus(i) = 2;
  703. cnt ++;
  704. }
  705. }
  706. if (cnt < 1) {
  707. alert("선택된 청구확인목록이 없습니다.");
  708. return;
  709. }
  710. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  711. if ( submit("TXMNG02303") ) {
  712. alert(cnt + "건이 불출 처리되었습니다.");
  713. }
  714. if ( chk_low.value == "Y") {
  715. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  716. } else {
  717. fSearch();
  718. }
  719. ]]>
  720. </script>
  721. </button>
  722. <button id="btn_rec" class="btn5_letter2" style="left:1145px; top:3px; width:42px; height:19px; ">
  723. <caption>수령</caption>
  724. <script type="javascript" ev:event="DOMActivate">
  725. <![CDATA[
  726. var cnt = 0;
  727. for ( i=grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++) {
  728. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("chkyn")) == "Y" && grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "05" ) {
  729. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) = "06"
  730. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("reccnt")) = grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("trscnt"));
  731. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrlcnt")) = parseInt(grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("trscnt")), 10) + parseInt(grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("nowcnt")), 10);
  732. grd_lnrqlist.rowStatus(i) = 2;
  733. cnt++;
  734. }
  735. }
  736. if (cnt < 1 ) {
  737. alert("선택된 운송목록이 없습니다.");
  738. return;
  739. }
  740. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  741. if ( submit("TXMNG02303") ) {
  742. alert(cnt + "건이 수령 처리되었습니다.");
  743. }
  744. if ( chk_low.value == "Y") {
  745. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  746. } else {
  747. fSearch();
  748. }
  749. ]]>
  750. </script>
  751. </button>
  752. <button id="btn_allout" class="btn5_letter4" style="left:968px; top:3px; width:64px; height:19px; ">
  753. <caption>일괄불출</caption>
  754. <script type="javascript" ev:event="DOMActivate">
  755. <![CDATA[
  756. var cnt = 0;
  757. for ( i=grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++) {
  758. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "02" && grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("outcnt")) == "0" ) {
  759. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("outcnt")) = grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("reqcnt"));
  760. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) = "03"
  761. grd_lnrqlist.rowStatus(i) = 2;
  762. cnt++;
  763. } else if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "02" && grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("outcnt")) != "0") {
  764. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) = "03"
  765. grd_lnrqlist.rowStatus(i) = 2;
  766. cnt++;
  767. }
  768. }
  769. if (cnt< 1) {
  770. alert("선택된 청구확인목록이 없습니다.");
  771. return;
  772. }
  773. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  774. if ( submit("TXMNG02303") ) {
  775. alert(cnt + "건이 일괄불출 처리되었습니다.");
  776. }
  777. if ( chk_low.value == "Y") {
  778. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  779. } else {
  780. fSearch();
  781. }
  782. ]]>
  783. </script>
  784. </button>
  785. <button id="btn_reqconf" class="btn5_letter4" style="left:814px; top:3px; width:64px; height:19px; ">
  786. <caption>청구확인</caption>
  787. <script type="javascript" ev:event="DOMActivate">
  788. <![CDATA[
  789. var cnt = 0; // 선택한 청구목록 count
  790. for (i = grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++) {
  791. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("chkyn")) == "Y" && grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "01" ) {
  792. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) = "02";
  793. grd_lnrqlist.rowStatus(i) = 2;
  794. cnt++; // 선택한 횟수 계산
  795. }
  796. }
  797. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  798. if ( cnt < 1 ) { // 선택한 청구목록이 없으면
  799. alert("선택된 청구목록이 없습니다.");
  800. return;
  801. }
  802. if ( submit("TXMNG02303")) {
  803. alert(cnt + "건이 청구확인 처리되었습니다.");
  804. }
  805. if ( chk_low.value == "Y") {
  806. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  807. } else {
  808. fSearch();
  809. }
  810. ]]>
  811. </script>
  812. </button>
  813. <button id="btn_outconf" class="btn5_letter4" style="left:1078px; top:3px; width:64px; height:19px; ">
  814. <caption>불출확인</caption>
  815. <script type="javascript" ev:event="DOMActivate">
  816. <![CDATA[
  817. var cnt = 0;
  818. for ( i=grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++) {
  819. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("chkyn")) == "Y" && grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "03" ) {
  820. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) = "04"
  821. grd_lnrqlist.rowStatus(i) = 2;
  822. cnt++;
  823. }
  824. }
  825. if (cnt < 1) {
  826. alert("선택된 불출목록이 없습니다.");
  827. return;
  828. }
  829. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  830. if ( submit("TXMNG02303") ) {
  831. alert(cnt + "건이 불출확인 처리되었습니다.");
  832. }
  833. if ( chk_low.value == "Y") {
  834. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  835. } else {
  836. fSearch();
  837. }
  838. ]]>
  839. </script>
  840. </button>
  841. <button id="btn_grup" class="btn2_letter4" visibility="hidden" style="left:612px; top:3px; width:64px; height:19px; ">
  842. <caption>그룹청구</caption>
  843. <script type="javascript" ev:event="DOMActivate">
  844. <![CDATA[
  845. model.makeValue("/root/temp/reqflag", "G");
  846. grd_lnrqlist.addRow();
  847. ]]>
  848. </script>
  849. </button>
  850. <button id="btn_reqcancle" class="btn5_letter6" style="left:880px; top:3px; width:86px; height:19px; ">
  851. <caption>청구확인취소</caption>
  852. <script type="javascript" ev:event="DOMActivate">
  853. <![CDATA[
  854. var cnt = 0; // 선택한 청구확인목록 count
  855. for (i = grd_lnrqlist.fixedRows; i < grd_lnrqlist.rows; i++) {
  856. if ( grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("chkyn")) == "Y" && grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) == "02" ) {
  857. grd_lnrqlist.valueMatrix(i, grd_lnrqlist.colRef("lnrqflag")) = "01";
  858. grd_lnrqlist.rowStatus(i) = 2;
  859. cnt++; // 선택한 청구확인목록 횟수
  860. }
  861. }
  862. model.makeValue("/root/send/savedata/lnrqlist", getGridUpdateData(grd_lnrqlist) );
  863. if ( cnt < 1 ) { // 선택한 청구확인목록이 없으면
  864. alert("선택된 청구확인목록이 없습니다.");
  865. return;
  866. }
  867. if (submit("TXMNG02303") ) {
  868. alert(cnt + "건이 청구확인취소 처리되었습니다");
  869. }
  870. if ( chk_low.value == "Y") {
  871. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  872. } else {
  873. fSearch();
  874. }
  875. ]]>
  876. </script>
  877. </button>
  878. <button id="btn_time" class="btn3_letter6" style="left:185px; top:1px; width:104px; height:22px; ">
  879. <caption>청구시간관리</caption>
  880. <script type="javascript" ev:event="DOMActivate">
  881. <![CDATA[
  882. modal("SMMNG00501");
  883. ]]>
  884. </script>
  885. </button>
  886. <output id="output1" ref="/root/time/timeinfo/endtm" format="hh:nn:ss" style="left:485px; top:3px; width:55px; height:19px; font-weight:bold; color:#0000ff; "/>
  887. <output id="output2" ref="/root/time/timeinfo/starttm" format="hh:nn:ss" style="left:420px; top:3px; width:55px; height:19px; font-weight:bold; color:#0000ff; "/>
  888. <caption id="caption5" class="hand" style="left:300px; top:5px; width:130px; height:15px; ">청구 가능시간 :</caption>
  889. <caption id="caption7" style="left:472px; top:4px; width:20px; height:20px; ">~</caption>
  890. <output id="output3" ref="/root/send/date" visibility="hidden" style="left:560px; top:2px; width:35px; height:19px; "/>
  891. <button id="btn_cmtsav" class="btn5_letter4" visibility="hidden" style="left:788px; top:3px; width:64px; height:19px; ">
  892. <caption>비고저장</caption>
  893. <script type="javascript" ev:event="DOMActivate">
  894. <![CDATA[
  895. var updtdata = getGridUpdateData(grd_lnrqlist);
  896. if(updtdata == "" || updtdata == null) {
  897. messageBox("수정할 내역이 없습니다.");
  898. }
  899. model.makeValue("/root/send/savedata/reqlist", updtdata);
  900. submit("TXMNG02307");
  901. btn_search.dispatch("DOMActivate");
  902. ]]>
  903. </script>
  904. </button>
  905. </group>
  906. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:20px; width:1195px; height:70px; background-color:#fffbf2; border-color:#ffd799; ">.,m</shape>
  907. <select1 id="cmb_lowdept" ref="/root/main/cond/lowdept" appearance="minimal" style="left:690px; top:30px; width:100px; height:19px; ">
  908. <choices>
  909. <itemset nodeset="/root/main/deptcodelist">
  910. <label ref="deptnm"/>
  911. <value ref="deptcd"/>
  912. </itemset>
  913. </choices>
  914. <script type="javascript" ev:event="xforms-value-changed">
  915. <![CDATA[
  916. if ( model.getValue("/root/send/cdid") == "Y" ) {
  917. fTimeChk();
  918. }
  919. btn_search.dispatch("DOMActivate");
  920. ]]>
  921. </script>
  922. </select1>
  923. <caption id="caption2" class="search_name" style="left:620px; top:30px; width:88px; height:17px; ">부서명:</caption>
  924. <caption id="cap_csrreqdeptcd" class="search_name" style="left:260px; top:30px; width:68px; height:17px; ">청구일:</caption>
  925. <button id="btn_search" class="btn1_letter2" navindex="2" style="left:1018px; top:46px; width:56px; height:22px; ">
  926. <caption>조회</caption>
  927. <script type="javascript" ev:event="DOMActivate">
  928. <![CDATA[
  929. if ( chk_low.value == "Y") {
  930. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  931. } else {
  932. fSearch();
  933. }
  934. if ( model.getValue("/root/send/cdid") == "N" ) {
  935. fChkInfo();
  936. }
  937. ]]>
  938. </script>
  939. </button>
  940. <input id="ipt_reqfromdd" ref="/root/main/cond/reqfromdd" class="input_default" inputtype="date" maxlength="6" format="yyyy-mm-dd" style="left:330px; top:30px; width:90px; height:19px; ">
  941. <script type="javascript" ev:event="xforms-value-changed">
  942. <![CDATA[
  943. fSearch();
  944. ]]>
  945. </script>
  946. </input>
  947. <line id="line2" class="line_4" style="x1:1012px; y1:25px; x2:1012px; y2:85px; "/>
  948. <caption id="cap_instcd" class="search_name" style="left:10px; top:30px; width:86px; height:17px; ">기관코드 :</caption>
  949. <output id="opt_instcdnm" ref="/root/main/cond/instcd" class="output_fix" style="left:100px; top:30px; width:150px; height:19px; text-align:center; "/>
  950. <button id="button3" class="btn1_letter2" style="left:1076px; top:46px; width:56px; height:22px; ">
  951. <caption>엑셀</caption>
  952. <script type="javascript" ev:event="DOMActivate">
  953. <![CDATA[
  954. var fileName = window.fileDialog("save", ",", false, "세탁물청구관리(응급)", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  955. if (fileName != "")
  956. {
  957. grd_lnrqlist.saveExcel(fileName, "SheetName", false, false, "", "", "false");
  958. }
  959. ]]>
  960. </script>
  961. </button>
  962. <button id="btn_prt" class="btn1_letter2" style="left:1134px; top:46px; width:56px; height:22px; ">
  963. <caption>출력</caption>
  964. <script type="javascript" ev:event="DOMActivate">
  965. <![CDATA[
  966. fPrintRex();
  967. ]]>
  968. </script>
  969. </button>
  970. <select id="chk_low" ref="/root/send/lowflag" overflow="visible" appearance="full" style="left:910px; top:30px; width:75px; height:20px; border-style:none; ">
  971. <choices>
  972. <item>
  973. <label>하위부서</label>
  974. <value>Y</value>
  975. </item>
  976. </choices>
  977. <script type="javascript" ev:event="xforms-value-changed">
  978. <![CDATA[
  979. var ord = model.getValue("/root/send/cdid");
  980. if ( chk_low.value == "Y" ) {
  981. cmb_deptcd.visible = false;
  982. cmb_lowdept.visible = true;
  983. if( ord == "Y" ) {
  984. btn_grup.visible = false;
  985. btn_add.visible = true;
  986. btn_del.visible = true;
  987. btn_req.visible = true;
  988. btn_rec.visible = true;
  989. btn_outconf.visible = false;
  990. btn_outpr.visible = false;
  991. btn_allout.visible = false;
  992. btn_reqcancle.visible = false;
  993. btn_reqconf.visible =false;
  994. btn_req.attribute("left") = 1099;
  995. btn_del.attribute("left") = 1053;
  996. btn_add.attribute("left") = 1008;
  997. btn_grup.attribute("left") = 897;
  998. }
  999. if ( cmb_lowdept.value != null && cmb_lowdept.value != "") {
  1000. fSearch2();
  1001. }
  1002. } else {
  1003. cmb_deptcd.visible = true;
  1004. cmb_lowdept.visible = false;
  1005. if ( ord == "Y" ) {
  1006. btn_grup.visible = false;
  1007. btn_add.visible = false;
  1008. btn_del.visible = false;
  1009. btn_req.visible = false;
  1010. btn_rec.visible = false;
  1011. btn_outconf.visible = true;
  1012. btn_outpr.visible = true;
  1013. btn_allout.visible = true;
  1014. btn_reqcancle.visible = true;
  1015. btn_reqconf.visible =true;
  1016. btn_outconf.attribute("left") = 1123;
  1017. btn_outpr.attribute("left") = 1080;
  1018. btn_allout.attribute("left") = 1013;
  1019. btn_reqcancle.attribute("left") = 923;
  1020. btn_reqconf.attribute("left") = 856;
  1021. }
  1022. fSearch();
  1023. }
  1024. ]]>
  1025. </script>
  1026. </select>
  1027. <select1 id="cmb_deptcd" ref="/root/main/cond/deptcd" disabled="false" appearance="minimal" style="left:690px; top:30px; width:100px; height:19px; ">
  1028. <choices>
  1029. <itemset nodeset="/root/main/csrdeptlist">
  1030. <label ref="deptnm"/>
  1031. <value ref="deptcd"/>
  1032. </itemset>
  1033. </choices>
  1034. <script type="javascript" ev:event="xforms-value-changed">
  1035. <![CDATA[
  1036. btn_search.dispatch("DOMActivate");
  1037. ]]>
  1038. </script>
  1039. </select1>
  1040. <caption id="caption1" class="search_name" style="left:10px; top:60px; width:83px; height:17px; ">구 분 :</caption>
  1041. <select1 id="rdo_lnrqlist" ref="/root/send/lnrqflag" appearance="full" cols="8" overflow="visible" style="left:95px; top:60px; width:380px; height:20px; border-style:none; ">
  1042. <choices>
  1043. <itemset nodeset="/root/init/grupcdinfo/grupcdlist">
  1044. <label ref="cdnm"/>
  1045. <value ref="cdid"/>
  1046. </itemset>
  1047. </choices>
  1048. <script type="javascript" ev:event="xforms-value-changed">
  1049. <![CDATA[
  1050. if ( chk_low.value == "Y") {
  1051. fSearch2(); // 하위부서 check시 조회는 하위부서로.
  1052. } else {
  1053. fSearch();
  1054. }
  1055. ]]>
  1056. </script>
  1057. </select1>
  1058. <caption id="caption3" style="left:420px; top:30px; width:15px; height:20px; ">~</caption>
  1059. <input id="ipt_reqtodd" ref="/root/main/cond/reqtodd" class="input_default" inputtype="date" maxlength="6" format="yyyy-mm-dd" style="left:430px; top:30px; width:90px; height:19px; ">
  1060. <script type="javascript" ev:event="xforms-value-changed">
  1061. <![CDATA[
  1062. fSearch();
  1063. ]]>
  1064. </script>
  1065. </input>
  1066. <caption id="caption4" class="search_name" style="left:620px; top:60px; width:88px; height:17px; ">그룹명:</caption>
  1067. <select1 id="cmb_grupdept" ref="/root/send/grupdeptcd" appearance="minimal" style="left:690px; top:60px; width:100px; height:19px; ">
  1068. <choices>
  1069. <itemset nodeset="/root/init/grupdeptlist">
  1070. <label ref="grupdeptnm"/>
  1071. <value ref="grupdeptcd"/>
  1072. </itemset>
  1073. </choices>
  1074. <script type="javascript" ev:event="xforms-value-changed">
  1075. <![CDATA[
  1076. btn_search.dispatch("DOMActivate");
  1077. ]]>
  1078. </script>
  1079. </select1>
  1080. </xhtml:body>
  1081. </xhtml:html>