SMRFE00410_비품수리신청등록.xrw 89 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:ex="http://www.comsquare.co.kr/xforms/excel" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:my="http://www.comsquare.co.kr/example" xmlns:ms="urn:schemas-microsoft-com:xslt" 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" xmlns:cs="http://www.comsquare.co.kr/xforms">
  4. <xhtml:head>
  5. <xhtml:title>비품 수리 신청 등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <rfehdabplist/>
  11. <grid>
  12. <rfehemhtlist/>
  13. <rfcmfacdlist/>
  14. <reqpsnlist/>
  15. </grid>
  16. <control>
  17. <rfehemhtlist>
  18. <fixasetcd/>
  19. <fixasetnm/>
  20. <reqdeptcd/>
  21. <depthngnm/>
  22. <reqpsnid/>
  23. <reqpsnnm/>
  24. <fixtrseqmtflag/>
  25. <workstat/>
  26. <btnfixasetcd/>
  27. <deptaprvreqyn>Y</deptaprvreqyn>
  28. <execdept/>
  29. <attfilenm/>
  30. <attfilepathnm/>
  31. </rfehemhtlist>
  32. <instcd/>
  33. </control>
  34. <printdata>
  35. <data/>
  36. </printdata>
  37. </main>
  38. <send>
  39. <instcd/>
  40. <instcdnm/>
  41. <reqdd1/>
  42. <reqdd2/>
  43. <reqflag>S</reqflag>
  44. <reqpsnid/>
  45. <reqpsnnm/>
  46. <fixtrseqmtflag>GE</fixtrseqmtflag>
  47. <reqdd/>
  48. <reqno/>
  49. <reqdeptcd/>
  50. <reqdeptnm/>
  51. <deptcd/>
  52. <goodflag>GE</goodflag>
  53. <searchall/>
  54. <fileupcolumn>
  55. <instcd/>
  56. <reqdd/>
  57. <fileseqno/>
  58. <reqflag/>
  59. <reqno/>
  60. <reqseqno/>
  61. <reqpsnid/>
  62. <attfilenm/>
  63. <attfilepathnm/>
  64. <reqdeptcd/>
  65. <fileupload>
  66. <file>
  67. <filename/>
  68. </file>
  69. </fileupload>
  70. <scrnid>SMRFE00410</scrnid>
  71. </fileupcolumn>
  72. <goodsrch>
  73. <fixasetcd/>
  74. <goodflaghngnm/>
  75. <instcd/>
  76. <goodflag/>
  77. <mngtdeptcd/>
  78. </goodsrch>
  79. </send>
  80. <init>
  81. <rowtemp/>
  82. <workstattemp/>
  83. <fixtrseqmtflag>
  84. <label>일반비품</label>
  85. <value>G</value>
  86. <label>의료장비</label>
  87. <value>E</value>
  88. <label>의료비품</label>
  89. <value>U</value>
  90. </fixtrseqmtflag>
  91. <instcd/>
  92. <reqflag>D</reqflag>
  93. <emplno/>
  94. <reqaprvflag/>
  95. <reqdeptcd/>
  96. </init>
  97. <temp>
  98. <rfehemhtlist/>
  99. </temp>
  100. </root>
  101. </instance>
  102. <script type="javascript" ev:event="xforms-ready">
  103. <![CDATA[
  104. //submit 되는 node 들을 초기화한다
  105. fInitialize();
  106. // btn_search.dispatch("DOMActivate");
  107. ]]>
  108. </script>
  109. <submission id="TRRFE00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/grid/rfehemhtlist"/>
  110. <submission id="TXRFE00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/grid/rfehemhtlist" resultref="/root/temp"/>
  111. <submission id="TRRFE00402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/rfehdabplist"/>
  112. <submission id="TRRSE01502" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/grid/rfcmfacdlist"/>
  113. <submission id="TRRSC06001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/init" resultref="/root/main/grid/reqpsnlist"/>
  114. <submission id="TXRSD00423" mediatype="multipart/form-data" method="form-data-post" ref="/root/send/fileupcolumn" resultref="/root/temp"/>
  115. </model>
  116. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  117. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  118. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  119. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  120. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  121. <script type="javascript">
  122. <![CDATA[
  123. function fAttfileAdd(){
  124. //파일 다운로드 하는 기능
  125. var maxsize = upd_uploadfile.attribute("filesize");
  126. model.setValue("/root/send/fileupcolumn/instcd" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("instcd") ) );
  127. model.setValue("/root/send/fileupcolumn/reqdd" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqdd") ) );
  128. // model.setValue("/root/send/fileupcolumn/reqflag" , grd_goodreq.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqflag") ) );
  129. model.setValue("/root/send/fileupcolumn/reqflag" , "S" ); //비품수리신청등록시 하드코딩 - 나중에 query에서 control
  130. model.setValue("/root/send/fileupcolumn/reqno" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqno") ) );
  131. // model.setValue("/root/send/fileupcolumn/reqseqno" , grd_goodreq.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqseqno") ) );
  132. // reqseqno에 해당하는것이 MIS.RSCMFIFL의REFSEQ 인데 수리청구에서는 reqseqno를 사용하지 않는다. - 나중에 query에서 control
  133. model.setValue("/root/send/fileupcolumn/reqpsnid" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqpsnid") ) );
  134. model.setValue("/root/send/fileupcolumn/reqdeptcd" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqdeptcd") ) );
  135. model.setValue("/root/send/fileupcolumn/attfilenm" , model.getValue("/root/main/control/rfehemhtlist/attfilenm") );
  136. model.setValue("/root/send/fileupcolumn/attfilepathnm", model.getValue("/root/send/fileupcolumn/fileupload/file") );
  137. // alert("instcd => "+model.getValue("/root/send/fileupcolumn/instcd") );
  138. // alert("reqflag => "+model.getValue("/root/send/fileupcolumn/reqflag") );
  139. // alert("reqseqno => "+model.getValue("/root/send/fileupcolumn/reqseqno") );
  140. // alert("emplno => "+model.getValue("/root/send/fileupcolumn/emplno") );
  141. // alert("filename => "+model.getValue("/root/send/fileupcolumn/fileupload/file") );
  142. // alert("attfilenm=> "+model.getValue("/root/send/fileupcolumn/attfilenm") );
  143. // alert("attfilepathnm=> "+model.getValue("/root/send/fileupcolumn/attfilepathnm") );
  144. // alert(model.getValue( ipt_uploadfile.attribute("ref") ));
  145. // alert( ipt_uploadfile.attribute("ref") );
  146. submit("TXRSD00423");
  147. if (model.getValue(gvErrorMsgPath + "/type") != "error" ){
  148. messageBox("첨부파일이 업로드" , "I002");
  149. btn_search.dispatch("DOMActivate");
  150. }
  151. //파일 업로드 후 첨부파일 팝업창을 띄워서 해당 파일이 잘 올라갔는지 확인할수 있도록 해준다.?????
  152. }
  153. function fAttfileDown(){ //첨부파일 다운로드
  154. model.setValue("/root/send/fileupcolumn/instcd" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("instcd") ) );
  155. model.setValue("/root/send/fileupcolumn/reqdd" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqdd") ) );
  156. // model.setValue("/root/send/fileupcolumn/fileseqno" , grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("fileseqno") ) ); //seqNumber
  157. model.setValue("/root/send/fileupcolumn/fileseqno" , model.getValue("/root/main/goodreq/goodreqlist/attfilepathnm") ); //seqNumber
  158. //model.setValue("/root/send/fileupcolumn/reqflag" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqflag") ) );
  159. model.setValue("/root/send/fileupcolumn/reqflag" , "S");
  160. //alert(grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqflag") ));
  161. //return;
  162. model.setValue("/root/send/fileupcolumn/reqno" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqno") ) );
  163. // model.setValue("/root/send/fileupcolumn/reqseqno" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , "900" ) ); //강제하드코딩
  164. model.setValue("/root/send/fileupcolumn/reqpsnid" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqpsnid") ) );
  165. model.setValue("/root/send/fileupcolumn/reqdeptcd" , grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row , grd_rfehemhtlist.colRef("reqdeptcd") ) );
  166. model.setValue("/root/send/fileupcolumn/attfilenm" , model.getValue("/root/main/control/rfehemhtlist/attfilepathnm") );
  167. model.setValue("/root/send/fileupcolumn/attfilepathnm" , model.getValue("/root/send/fileupcolumn/fileupload/file") );
  168. //첨부파일관련 팝업을 띄워서 첨부파일을 조회도 하고 다운로드 삭제까지 할수 있도록 구현.
  169. rszfOpenPopUpListByWndName(grd_rfehemhtlist,"","","SMRSD00420","instcd,reqdd,reqflag,reqno,reqseqno,reqpsnid,reqdeptcd,attfilepathnm","instcd,reqdd,reqflag,reqno,reqseqno,reqpsnid,reqdeptcd,attfilepathnm", "Y");
  170. //submit("TRRSD00421");
  171. btn_search.dispatch("DOMActivate");
  172. }
  173. function fInitialize()
  174. {
  175. var vInstance = document.models(0).instances(0);
  176. var cnt;
  177. if (getUserInfo("dutplceinstcd") == "017"){
  178. cap_execdept.visible = true;
  179. rdo_execdept.visible = true;
  180. }
  181. misfGridInit(grd_rfehemhtlist);
  182. misfGridInit(grd_rfehdabplist);
  183. misfGridInit(grd_temp);
  184. misfGridInit(grd_rfcmfacdlist);
  185. // rszfUserGoodFlagList(cmb_fixtrseqmtflag,getUserInfo("userid"));
  186. rszfComboBugtList(cmb_bugtcd,getUserInfo("dutplceinstcd"));
  187. // misfComboComCdListMulti("Z0007,R0055,R0055,R0032", "opt_instcd,cmb_workstat,grd_rfehemhtlist.workstat,grd_rfehdabplist.acsrsunit");
  188. // misfComboComCdListMulti("R0055,R0055,R0032,R0025,R0035", "cmb_workstat,grd_rfehemhtlist.workstat,grd_rfehdabplist.acsrsunit,grd_rfcmfacdlist.goodflag,grd_rfcmfacdlist.prodplce");
  189. misfComboComCdListMulti("R0032,R0025,R0035", "grd_rfehdabplist.acsrsunit,grd_rfcmfacdlist.goodflag,grd_rfcmfacdlist.prodplce");
  190. //addComboItem("cmb_workstat", "청구승인의뢰", "00", "above");
  191. //rszGridAddComboItem("grd_rfehemhtlist.workstat", "청구승인의뢰", "00", "above");
  192. //20081107 현업요구사항 추가
  193. //addComboItem("cmb_workstat", "재고지급", "09", "above");
  194. //rszGridAddComboItem("grd_rfehemhtlist.workstat", "재고지급", "09", "above");
  195. // addComboItem("grd_rfehemhtlist.workstat", "청구승인의뢰", "00", "above");
  196. // 사용자 권한에 따른 기관코드 Setting. [(6)수리관리, (C)신청]
  197. // rszfUserReqInstList(cmb_instcd,getUserInfo("userid"),"6","C");
  198. model.resetInstanceNode("/root/main/control/rfehemhtlist");
  199. misfMsterDetailSet(grd_rfehemhtlist, null, "TRRFE00401", "Y");
  200. misfMsterDetailSet(grd_rfcmfacdlist, null, "TRRSE01502", "N");
  201. // 기관코드 설정
  202. model.setValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
  203. model.setValue("/root/send/instcdnm", getUserInfo("dutplceinstnm"));
  204. // opt_instcdnm.value = getuUserInfo("dutplceinstnm");
  205. model.setValue(opt_reqdeptcd.attribute("ref") , getUserInfo("dutplcecd"));
  206. model.setValue(opt_reqdeptnm.attribute("ref") , getUserInfo("dutplcenm"));
  207. model.setValue("/root/send/deptcd", opt_reqdeptcd.value);
  208. // 금일 날자 설정
  209. var curdate = getCurrentDate();
  210. var cvtdate = curdate.toDate("YYYYMMDD");
  211. model.setValue("/root/send/reqdd1", curdate.substr(0,6)+"01" );
  212. model.setValue("/root/send/reqdd2", curdate.substr(0,6)+cvtdate.getMonthDay() );
  213. // 부서코드 설정
  214. model.setValue("/root/main/control/rfehemhtlist/reqdeptcd" , getUserInfo("dutplcecd"));
  215. // 부서코드명 설정
  216. model.setValue("/root/main/control/rfehemhtlist/depthngnm" , getUserInfo("dutplcenm"));
  217. // User ID 설정
  218. model.setValue("/root/main/control/rfehemhtlist/reqpsnid", getUserInfo("userid"));
  219. // User Name 설정
  220. model.setValue("/root/main/control/rfehemhtlist/reqpsnnm", getUserInfo("usernm"));
  221. // model.setValue("/root/send/fixtrseqmtflag", "EQ");
  222. // cmb_fixtrseqmtflag.select(0);
  223. // rdo_goodflag.select(3);
  224. model.refresh();
  225. model.setValue(ipt_rowtemp.attribute("ref"), "");
  226. //----------------------------------------------------------------
  227. fcontrolEnableYN(true); //1. 초기화할때
  228. //----------------------------------------------------------------
  229. // btn_search.disabled = !checkAuth("X");
  230. misfSetReadOnlyCol(grd_rfehemhtlist, "workstat", true);
  231. // 구매팀, 구매Unit 직원들만 미접수라는 표시가 뜨며 조회조건과 관계없이 미접수된 청구내역을 볼수 있다.
  232. if(getUserInfo("dutplcecd") == "4080100000" || getUserInfo("dutplcecd") == "4080102000" || getUserInfo("dutplcecd") == "4080300000")
  233. chb_searchall.visible = true;
  234. //수리 청구 승인권한 여부 판별하여 Grid의 승인 컬럼을 설정.
  235. fdeptGrantYN();
  236. model.setValue("/root/init/instcd", model.getValue("/root/send/instcd"));
  237. model.setValue("/root/init/emplno",getUserInfo("userid"));
  238. model.setValue("/root/init/reqdeptcd", "");
  239. submit("TRRSC06001");
  240. cnt = vInstance.selectNodes("/root/main/grid/reqpsnlist").length;
  241. //승인권자가 아닐 경우 사용부서 고정
  242. /*if(cnt == 0) // 칠곡 권순한 선생님 요청. 사용부서 조회 제한 조건 삭제
  243. {
  244. btn_dept.disabled = true;
  245. ipt_reqdeptcd.disabled = true;
  246. btn_reqdeptcdSearch.disabled = true;
  247. ipt_depthngnm.disabled = true;
  248. }*/
  249. //test
  250. // if( getUserInfo("userid") == "10109420"){
  251. // btn_addfile.disabled = false ;
  252. // btn_downfile.disabled = false ;
  253. //
  254. // caption8.visible = true;
  255. // ipt_attfilenm.visible = true;
  256. // btn_addfile.visible = true;
  257. // btn_downfile.visible = true;
  258. //
  259. // ipt_reqdd1.value ="20100311";
  260. // opt_reqdeptcd.value ="4080100000";
  261. // btn_search.dispatch("DOMActivate");
  262. // alert("12");
  263. //
  264. // }else{
  265. // btn_addfile.disabled = true;
  266. // btn_downfile.disabled = true;
  267. //
  268. // caption8.visible = false;
  269. // ipt_attfilenm.visible = false;
  270. // btn_addfile.visible = false;
  271. // btn_downfile.visible = false;
  272. // }
  273. // //test2
  274. // btn_downfile.visible = true;
  275. // btn_downfile.disabled = false;
  276. model.refresh();
  277. }
  278. //수리 청구 승인권한 여부 판별하여 Grid의 승인 컬럼을 설정.
  279. function fdeptGrantYN()
  280. {
  281. /* ---------------------------------------------------------------------------------------
  282. * [2007.12.12 HBH ] 청구주기 추가.
  283. * 수리,장비등 청구주기가 없는 것들은 '1'로셋팅
  284. ---------------------------------------------------------------------------------------*/
  285. // rszfGetPurcReqAuthInfo(opt_instcd.value, "S", getUserInfo("dutplcecd"), getUserInfo("userid"),"1"); //han
  286. /* 2011.03.22 비품 모두 승인불필요 처리 - 박진억 수정
  287. rszfGetPurcReqAuthInfo(opt_instcd.value, "S", opt_reqdeptcd.value , getUserInfo("userid"),"1");
  288. for(var fRow = grd_rfehemhtlist.fixedRows; fRow < grd_rfehemhtlist.rows; fRow++)
  289. {
  290. if(grd_rfehemhtlist.valueMatrix(fRow, grd_rfehemhtlist.colRef("deptaprvreqyn")) == "N"){
  291. grd_rfehemhtlist.isReadOnly(fRow,grd_rfehemhtlist.colRef("deptaprvyn")) = true;
  292. }else if( rszfGetPurcAuthInfoByCond("reqaprvflag") == "1" )
  293. {
  294. grd_rfehemhtlist.isReadOnly(fRow,grd_rfehemhtlist.colRef("deptaprvyn")) = true;
  295. }else if( rszfGetPurcAuthInfoByCond("reqaprvflag") == "2" || (rszfGetPurcDeptCd(opt_instcd.value) == (getUserInfo("dutplcecd") ) ) ) //구매팀 승인가능하도록 설정
  296. {
  297. if(grd_rfehemhtlist.valueMatrix(fRow, grd_rfehemhtlist.colRef("workstat")) == "00" || grd_rfehemhtlist.valueMatrix(fRow, grd_rfehemhtlist.colRef("workstat")) == "01" )
  298. {
  299. grd_rfehemhtlist.isReadOnly(fRow,grd_rfehemhtlist.colRef("deptaprvyn")) = false;
  300. }else{
  301. grd_rfehemhtlist.isReadOnly(fRow,grd_rfehemhtlist.colRef("deptaprvyn")) = true;
  302. }
  303. }else{
  304. grd_rfehemhtlist.isReadOnly(fRow,grd_rfehemhtlist.colRef("deptaprvyn")) = true;
  305. }
  306. }
  307. model.refresh();
  308. */
  309. }
  310. function fcontrolEnableYN(TrueFalse)
  311. {
  312. //ipt_fixasetcd.disabled = TrueFalse; //이현민막음
  313. btn_fixasetSearchs.disabled = TrueFalse;
  314. //ipt_fixasetnm.disabled = TrueFalse; //이현민막음
  315. ipt_reqdd.disabled = true;
  316. ipt_reqno.disabled = true;
  317. //사용자권한에 따라 바꾸지 못하게 막거나, 진행상황에 따라 수정 가능하게 설정
  318. if(grd_reqpsnlist.rows - grd_reqpsnlist.fixedRows == 0 && getUserInfo("dutplcecd") != "4080100000" && getUserInfo("dutplcecd") != "4080102000" && getUserInfo("dutplcecd") != "4080300000")
  319. { ipt_reqdeptcd.disabled = true;
  320. btn_reqdeptcdSearch.disabled = true;
  321. ipt_depthngnm.disabled = true;
  322. ipt_reqpsnid.disabled = true;
  323. btn_reqpsnidSearch.disabled = true;
  324. ipt_reqpsnnm.disabled = true;
  325. //btn_addfile.disabled = true;
  326. //btn_downfile.disabled = true;
  327. }else{
  328. ipt_reqdeptcd.disabled = TrueFalse;
  329. btn_reqdeptcdSearch.disabled = TrueFalse;
  330. ipt_depthngnm.disabled = TrueFalse;
  331. ipt_reqpsnid.disabled = TrueFalse;
  332. btn_reqpsnidSearch.disabled = TrueFalse;
  333. ipt_reqpsnnm.disabled = TrueFalse;
  334. }
  335. ipt_acptdeptcd.disabled = true;
  336. ipt_acptdeptnm.disabled = true;
  337. cmb_fixtrseqmtflag.disabled = true;
  338. ipt_reqtel.disabled = TrueFalse;
  339. txt_hdrncspec.disabled = TrueFalse;
  340. ipt_genrdd.disabled = TrueFalse;
  341. // ipt_genrtm.disabled = TrueFalse;
  342. if(opt_instcd.value == "103")
  343. { ipt_bugtyy.disabled = TrueFalse;
  344. cmb_bugtcd.disabled = TrueFalse;
  345. ipt_stdysubjno.disabled = TrueFalse;
  346. btn_stdysubjnm.disabled = TrueFalse;
  347. ipt_stdysubjnm.disabled = TrueFalse;
  348. }else{
  349. ipt_bugtyy.disabled = true;
  350. cmb_bugtcd.disabled = true;
  351. ipt_stdysubjno.disabled = true;
  352. btn_stdysubjnm.disabled = true;
  353. ipt_stdysubjnm.disabled = true;
  354. }
  355. ipt_chrgpsnid.disabled = true;
  356. ipt_chrgpsnnm.disabled = true;
  357. cmb_workstat.disabled = true;
  358. ipt_acptdd.disabled = true;
  359. che_acptpsncnfm.disabled = TrueFalse;
  360. ipt_deptacptdd.disabled = true;
  361. ipt_deptacptpsnid.disabled = true;
  362. ipt_deptacptpsnnm.disabled = true;
  363. txt_lastrpirrslt.disabled = true;
  364. // 부품사용내역 그리드 설정
  365. //grd_rfehdabplist.disabled = true;
  366. //real
  367. btn_addfile.disabled = TrueFalse;
  368. btn_downfile.disabled = TrueFalse;
  369. //test
  370. // if( getUserInfo("userid") == "10109420"){
  371. // btn_addfile.disabled = false ;
  372. // btn_downfile.disabled = false ;
  373. //
  374. // caption8.visible = true;
  375. // ipt_attfilenm.visible = true;
  376. // btn_addfile.visible = true;
  377. // btn_downfile.visible = true;
  378. // }else{
  379. // btn_addfile.disabled = true;
  380. // btn_downfile.disabled = true;
  381. //
  382. // caption8.visible = false;
  383. // ipt_attfilenm.visible = false;
  384. // btn_addfile.visible = false;
  385. // btn_downfile.visible = false;
  386. // }
  387. // //test2
  388. // btn_downfile.visible = true;
  389. // btn_downfile.disabled = false;
  390. model.refresh();
  391. }
  392. function fCheckTime(ftimeset)
  393. {
  394. var sTime = ftimeset.value;
  395. if(sTime.length != 4)
  396. {
  397. messageBox("네자리를 ","C001");
  398. ftimeset.value = "";
  399. return;
  400. }
  401. var sFrontTime = sTime.substr(0, 2);
  402. var sBackTime = sTime.substr(2, 2);
  403. if(parseInt(sFrontTime) > 24)
  404. {
  405. messageBox("24시를 ","E003");
  406. ftimeset.value = "";
  407. return;
  408. }
  409. if(parseInt(sBackTime) > 59)
  410. {
  411. messageBox("59분을 ","E003");
  412. ftimeset.value = "";
  413. return;
  414. }
  415. }
  416. // 수리진행상태 check
  417. function fcomboValueCheck()
  418. {
  419. btn_delete.disabled = false;
  420. fcontrolEnableYN(true); // control 수정 금지
  421. //상태에 따라서
  422. if(cmb_workstat.value == '00' || cmb_workstat.value == '01')
  423. {
  424. //ipt_fixasetcd.disabled = false; //이현민막음
  425. btn_fixasetSearchs.disabled = false;
  426. //ipt_fixasetnm.disabled = false; //이현민막음
  427. ipt_reqtel.disabled = false;
  428. ipt_reqdd.disabled = true;
  429. //real
  430. btn_addfile.disabled = false;
  431. btn_downfile.disabled = false;
  432. //사용자권한에 따라 바꾸지 못하게 막거나, 진행상황에 따라 수정 가능하게 설정
  433. if(grd_reqpsnlist.rows - grd_reqpsnlist.fixedRows == 0 &&
  434. getUserInfo("dutplcecd") != "4080100000" &&
  435. getUserInfo("dutplcecd") != "4080102000" &&
  436. getUserInfo("dutplcecd") != "4080300000")
  437. {
  438. ipt_reqdeptcd.disabled = true;
  439. btn_reqdeptcdSearch.disabled = true;
  440. ipt_depthngnm.disabled = true;
  441. }else{
  442. ipt_reqdeptcd.disabled = false;
  443. btn_reqdeptcdSearch.disabled = false;
  444. ipt_depthngnm.disabled = false;
  445. }
  446. if(opt_instcd.value == "103")
  447. {
  448. ipt_bugtyy.disabled = false;
  449. cmb_bugtcd.disabled = false;
  450. ipt_stdysubjno.disabled = false;
  451. btn_stdysubjnm.disabled = false;
  452. ipt_stdysubjnm.disabled = false;
  453. }
  454. //사용자권한에 따라 바꾸지 못하게 막거나, 진행상황에 따라 수정 가능하게 설정
  455. if(grd_reqpsnlist.rows - grd_reqpsnlist.fixedRows == 0 && getUserInfo("dutplcecd") != "4080100000" && getUserInfo("dutplcecd") != "4080102000" && getUserInfo("dutplcecd") != "4080300000")
  456. {
  457. ipt_reqpsnid.disabled = true;
  458. btn_reqpsnidSearch.disabled = true;
  459. ipt_reqpsnnm.disabled = true;
  460. }else{
  461. ipt_reqpsnid.disabled = false;
  462. btn_reqpsnidSearch.disabled = false;
  463. ipt_reqpsnnm.disabled = false;
  464. }
  465. txt_hdrncspec.disabled = false;
  466. ipt_genrdd.disabled = false;
  467. // ipt_genrtm.disabled = false;
  468. // 담당부서, 부서승인여부 활성화
  469. rdo_execdept.disabled = false;
  470. // rdo_deptaprvreqyn.disabled = false;
  471. }else if(cmb_workstat.value == '04' || (cmb_workstat.value == '07' || cmb_workstat.value == '08' )){
  472. btn_delete.disabled = true; // 삭제 금지
  473. che_acptpsncnfm.disabled = false; // 인수확인 수정
  474. //real
  475. btn_addfile.disabled = true ;
  476. btn_downfile.disabled = true;
  477. // 담당부서, 부서승인여부 비활성화
  478. rdo_execdept.disabled = true;
  479. // rdo_deptaprvreqyn.disabled = true;
  480. }else{
  481. btn_delete.disabled = true;
  482. //real
  483. btn_addfile.disabled = true ;
  484. btn_downfile.disabled = true;
  485. // 담당부서, 부서승인여부 비활성화
  486. rdo_execdept.disabled = true;
  487. // rdo_deptaprvreqyn.disabled = true;
  488. }
  489. //test
  490. // if( getUserInfo("userid") == "10109420"){
  491. // btn_addfile.disabled = false ;
  492. // btn_downfile.disabled = false ;
  493. //
  494. // caption8.visible = true;
  495. // ipt_attfilenm.visible = true;
  496. // btn_addfile.visible = true;
  497. // btn_downfile.visible = true;
  498. // }else{
  499. // btn_addfile.disabled = true;
  500. // btn_downfile.disabled = true;
  501. //
  502. // caption8.visible = false;
  503. // ipt_attfilenm.visible = false;
  504. // btn_addfile.visible = false;
  505. // btn_downfile.visible = false;
  506. // }
  507. // //test2
  508. // btn_downfile.visible = true;
  509. // btn_downfile.disabled = false;
  510. model.refresh();
  511. }
  512. // 인수 확인시 기본 사항
  513. function facptCheck()
  514. {
  515. /*-----------------------------------------------------------------------------
  516. * check box 에 체크를 하면 value 가 'N Y' 가 된다.
  517. * 'N'일경우를 먼저 체크해야하는데 VALUE가 정의되지 않아 NULL이 된다.
  518. ----------------------------------------------------------------------------- */
  519. //if(che_acptpsncnfm.value == 'N')
  520. if(che_acptpsncnfm.value.length == 0 || che_acptpsncnfm.value.length == null )
  521. {
  522. model.setValue(ipt_deptacptdd.attribute("ref"), "");
  523. model.setValue(ipt_deptacptpsnid.attribute("ref"), "");
  524. model.setValue(ipt_deptacptpsnnm.attribute("ref"), "");
  525. cmb_workstat.value = ipt_workstattemp.value;
  526. }else{
  527. model.setValue(ipt_deptacptdd.attribute("ref"), getCurrentDate().substr(0, 8));
  528. model.setValue(ipt_deptacptpsnid.attribute("ref"), getUserInfo("userid"));
  529. model.setValue(ipt_deptacptpsnnm.attribute("ref"), getUserInfo("usernm"));
  530. cmb_workstat.value = "05";
  531. che_acptpsncnfm.value= "Y";
  532. }
  533. model.refresh();
  534. }
  535. // grid onclick event
  536. // 행추가시 필요 없는 submission이 발생하여 우선은 제어를 위해 "N" 셋팅시 submission pass
  537. function fgridClickEvent(tmpStat)
  538. {
  539. //조회시 받은 Data들을 control밑으로 옮긴다
  540. //--------------------------------------------------------------------------------------------------------------
  541. model.copyNode("/root/main/control/rfehemhtlist", "/root/main/grid/rfehemhtlist[" + grd_rfehemhtlist.row + "]");
  542. //--------------------------------------------------------------------------------------------------------------
  543. ipt_workstattemp.value = cmb_workstat.value;
  544. model.copyNode("/root/temp", "/root/main/control");
  545. // 부품사용내역을 조회 하기 위한 기본값 설정.
  546. if(grd_rfehdabplist.rows > 1){
  547. misfGridInit(grd_rfehdabplist);
  548. }
  549. model.setValue("/root/send/reqdd",grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("reqdd")) );
  550. model.setValue("/root/send/reqno", grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("reqno")) );
  551. if(grd_rfehemhtlist.rows-grd_rfehemhtlist.fixedRows != 0 && tmpStat != "N") //수리청구건수가 있다면 일별수리부품내역을 아래에서 조회한다.
  552. {
  553. // ipt_fixtrseqmtflag.value = grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("fixtrseqmtflag")); //han
  554. submit("TRRFE00402"); //일별 수리 부품 내역 조회 - MIS.RFEHDABP 쪽 조회
  555. // for(var fRow = grd_rfehdabplist.fixedRows; fRow < grd_rfehdabplist.rows; fRow++)
  556. // {
  557. // grd_rfehdabplist.isReadOnly(fRow, grd_rfehdabplist.fixedCols, fRow, grd_rfehdabplist.cols-1) = true;
  558. // }
  559. grd_rfehdabplist.isReadOnly(grd_rfehdabplist.fixedRows, grd_rfehdabplist.fixedCols, grd_rfehdabplist.rows-1, grd_rfehdabplist.cols) = true;
  560. // ipt_fixtrseqmtflag.value = ""; //han
  561. }
  562. if(grd_temp.rows > 1) grd_temp.row = grd_temp.rows - 1;
  563. }
  564. // 그리드 row 이동시 작업 check
  565. function fmoveCheck()
  566. {
  567. misfGridRowStatusChange(grd_temp, "/root/temp", "/root/main/control");
  568. if ( getGridUpdateData(grd_temp) != "") {
  569. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 조회 작업을","Q003");
  570. if (ret != 6) { // not OK
  571. grd_rfehemhtlist.row = model.getValue(ipt_rowtemp.attribute("ref"));
  572. model.refresh();
  573. return false;
  574. }else{
  575. grd_temp.clearStatus();
  576. }
  577. }
  578. model.setValue(ipt_rowtemp.attribute("ref"), grd_rfehemhtlist.row);
  579. fgridClickEvent();
  580. fcomboValueCheck(); // 그리드 row 이동시 작업 check
  581. //이현민
  582. // model.refresh();
  583. }
  584. function fupdateCheckSave(i)
  585. {
  586. if(!isRequiredControls("ipt_fixasetcd"))return false;
  587. if(!isRequiredControls("ipt_reqdd"))return false;
  588. if(!isRequiredControls("ipt_reqdeptcd"))return false;
  589. if(!isRequiredControls("ipt_reqpsnid"))return false;
  590. if(!isRequiredControls("cmb_fixtrseqmtflag"))return false;
  591. if(!isRequiredControls("ipt_reqtel"))return false;
  592. if(!isRequiredControls("cmb_workstat"))return false;
  593. if(!isRequiredControls("txt_hdrncspec"))return false;
  594. //------------------------------------------------------------------------------------------------------------
  595. misfGridRowStatusChange(grd_temp, "/root/temp", "/root/main/control"); //control에 있는걸 temp로 이동시키기
  596. //------------------------------------------------------------------------------------------------------------
  597. if(grd_temp.rowStatus(grd_temp.row) != 0)
  598. {
  599. var iStatus = grd_temp.rowStatus(grd_temp.row);
  600. var sStatus = "update";
  601. model.copyNode("/root/main/grid/rfehemhtlist[" + grd_rfehemhtlist.row + "]", "/root/temp/rfehemhtlist");
  602. var sCurStatus = grd_rfehemhtlist.rowStatus(grd_rfehemhtlist.row);
  603. if(sCurStatus == 1 || sCurStatus == 3)
  604. {
  605. sStatus = "insert";
  606. }
  607. grd_rfehemhtlist.addStatus(grd_rfehemhtlist.row , sStatus);
  608. }
  609. grd_rfehemhtlist.refresh();
  610. var updtdata = getGridUpdateData(grd_rfehemhtlist);
  611. if (updtdata == "")
  612. {
  613. messageBox("변경된 데이터가","I004");
  614. return false;
  615. }
  616. for (var i=grd_rfehemhtlist.fixedRows; i<=grd_rfehemhtlist.rows; i++){
  617. grd_rfehemhtlist.valueMatrix(i, grd_rfehemhtlist.colRef("bizscrnid")) = "SMRFE00410_비품수리신청등록.xrw";
  618. }
  619. grd_rfehemhtlist.refresh();
  620. //---------------------------------------------------------------------------------------------------------
  621. misfSave("TXRFE00401");
  622. //ref /root/main/grid/rfehemhtlist
  623. //result ref /root/temp
  624. //---------------------------------------------------------------------------------------------------------
  625. if (model.getValue(gvErrorMsgPath + "/type") != "error") grd_rfehemhtlist.dispatch("onrowchanged");
  626. //misfMsterDetailRetrieve();
  627. return true;
  628. }
  629. function fmaxreqno(grd_obj) {
  630. var maxreqno = 0;
  631. for( cnt=1; cnt< grd_rfehemhtlist.rows-grd_rfehemhtlist.fixedRows ; cnt++) {
  632. if ( grd_rfehemhtlist.valueMatrix(cnt, grd_rfehemhtlist.colRef("reqdd")) == getCurrentDate().substr(0, 8) ) {
  633. if ( maxreqno < eval (grd_rfehemhtlist.valueMatrix(cnt, grd_rfehemhtlist.colRef("reqno"))) )
  634. maxreqno = eval (grd_rfehemhtlist.valueMatrix(cnt, grd_rfehemhtlist.colRef("reqno")));
  635. }
  636. }
  637. maxreqno = maxreqno + 1;
  638. // alert ( getRightPad(maxreqno+"", 4,'0') );
  639. return getRightPad(maxreqno+"", 4,'0');
  640. }
  641. function getRightPad(pStr, pLength, padString )
  642. {
  643. var tmpStr = "";
  644. if (pStr.length < pLength) {
  645. for( var i = pStr.length; i < pLength; i++){
  646. tmpStr = tmpStr + padString;
  647. }
  648. }
  649. return tmpStr + pStr;
  650. }
  651. ]]>
  652. </script>
  653. </xhtml:head>
  654. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  655. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  656. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:186px; height:14px; ">비품 수리 신청 등록</caption>
  657. </group>
  658. <group id="grp_biz" scroll="auto" style="left:0px; top:38px; width:1215px; height:762px; ">
  659. <line id="line11" class="line_2" style="x1:697px; y1:144px; x2:1192px; y2:144px; "/>
  660. <line id="line7" class="line_2" style="x1:697px; y1:409px; x2:1192px; y2:409px; "/>
  661. <line id="line6" class="line_2" style="x1:697px; y1:385px; x2:1192px; y2:385px; "/>
  662. <line id="line5" class="line_2" style="x1:697px; y1:361px; x2:1195px; y2:361px; "/>
  663. <line id="line4" class="line_2" style="x1:697px; y1:313px; x2:1191px; y2:313px; "/>
  664. <line id="line19" class="line_2" style="x1:697px; y1:97px; x2:1192px; y2:97px; "/>
  665. <line id="line28" class="line_2" style="x1:697px; y1:169px; x2:1192px; y2:169px; "/>
  666. <line id="line38" class="line_2" style="x1:697px; y1:241px; x2:1192px; y2:241px; "/>
  667. <line id="line37" class="line_2" style="x1:697px; y1:217px; x2:1192px; y2:217px; "/>
  668. <line id="line35" class="line_2" style="x1:697px; y1:193px; x2:1192px; y2:193px; "/>
  669. <line id="line24" class="line_3" style="x1:696px; y1:741px; x2:1192px; y2:741px; "/>
  670. <line id="line23" class="line_2" style="x1:697px; y1:120px; x2:1192px; y2:120px; "/>
  671. <line id="line20" class="line_2" style="x1:695px; y1:513px; x2:1193px; y2:513px; "/>
  672. <line id="line40" class="line_2" style="x1:697px; y1:265px; x2:1191px; y2:265px; "/>
  673. <group id="grp_sea" style="left:0px; top:10px; width:1195px; height:35px; vertical-align:top; ">
  674. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:35px; "/>
  675. <caption id="cap_reqdd2" class="search_name" visibility="visible" style="left:237px; top:9px; width:86px; height:17px; ">의뢰일자 :</caption>
  676. <button id="btn_search" class="btn1_letter2" navindex="8" style="left:1129px; top:7px; width:56px; height:22px; ">
  677. <caption>조회</caption>
  678. <script type="javascript" ev:event="DOMActivate">
  679. <![CDATA[
  680. if(!isRequiredControls("opt_instcdnm"))return;
  681. if(!isRequiredControls("ipt_reqdd1"))return;
  682. if(!isRequiredControls("ipt_reqdd2"))return;
  683. model.setValue("/root/send/deptcd", opt_reqdeptcd.value);
  684. misfMsterDetailRetrieve();
  685. fgridClickEvent();
  686. //model.setValue("/root/temp/rowtemp", grd_rfehemhtlist.row);
  687. fcomboValueCheck();
  688. // misfSetReadOnlyCol(grd_rfehemhtlist, "workstat", true);
  689. fdeptGrantYN();
  690. ]]>
  691. </script>
  692. </button>
  693. <line id="line13" class="line_4" style="x1:1119px; y1:7px; x2:1119px; y2:29px; border-color:#ffe4bb; border-left-style:solid; "/>
  694. <button id="btn_userSearch" class="icon_search" navindex="6" style="left:1009px; top:9px; width:16px; height:16px; ">
  695. <caption/>
  696. <script type="javascript" ev:event="DOMActivate">
  697. <![CDATA[
  698. misfOpenPopUpList("01", ipt_reqpsnids, "", "reqpsnid,reqpsnnm");
  699. ipt_reqpsnids.refresh();
  700. ipt_reqpsnnms.refresh();
  701. ]]>
  702. </script>
  703. </button>
  704. <input id="ipt_reqpsnids" ref="/root/send/reqpsnid" class="input_default" navindex="5" style="left:925px; top:8px; width:82px; height:19px; ">
  705. <script type="javascript" ev:event="xforms-value-changed">
  706. <![CDATA[
  707. // misfValidationCheck("12", "", "reqpsnid,reqpsnnm");
  708. if(ipt_reqpsnids.value.length == 0)
  709. ipt_reqpsnnms.value = "";
  710. else
  711. misfValidationCheck("01-1", "", "reqpsnid,reqpsnnm");
  712. ipt_reqpsnids.refresh();
  713. ipt_reqpsnnms.refresh();
  714. ]]>
  715. </script>
  716. </input>
  717. <input id="ipt_reqpsnnms" ref="/root/send/reqpsnnm" class="input_default" navindex="7" appearance="input" style="left:1030px; top:8px; width:82px; height:19px; ">
  718. <script type="javascript" ev:event="xforms-value-changed">
  719. <![CDATA[
  720. if(ipt_reqpsnnms.value.length == 0)
  721. ipt_reqpsnids.value = "";
  722. else
  723. misfValidationCheck("01-2", "", "reqpsnid,reqpsnnm");
  724. ipt_reqpsnids.refresh();
  725. ipt_reqpsnnms.refresh();
  726. ]]>
  727. </script>
  728. </input>
  729. <caption id="cap_reqno" class="search_name" style="left:842px; top:9px; width:83px; height:17px; ">의 뢰 자 :</caption>
  730. <input id="ipt_reqdd1" ref="/root/send/reqdd1" class="input_s_essential" navindex="1" inputtype="date" style="left:327px; top:8px; width:97px; height:19px; "/>
  731. <input id="ipt_reqdd2" ref="/root/send/reqdd2" class="input_s_essential" navindex="2" inputtype="date" style="left:439px; top:8px; width:97px; height:19px; "/>
  732. <caption id="caption13" style="left:425px; top:10px; width:20px; height:20px; font-weight:bold; ">~</caption>
  733. <caption id="cap_instcd" class="search_name" style="left:15px; top:9; width:86px; height:17px; ">기관코드 :</caption>
  734. <input id="ipt_fixtrseqmtflag" ref="/root/send/fixtrseqmtflag" visibility="hidden" style="left:20px; top:10px; width:35px; height:19px; "/>
  735. <output id="opt_instcd" ref="/root/send/instcd" class="output_fix" visibility="hidden" style="left:50px; top:10px; width:30px; height:19px; "/>
  736. <output id="opt_instcdnm" ref="/root/send/instcdnm" class="output_fix" style="left:105px; top:8px; width:125px; height:19px; text-align:center; "/>
  737. <input id="opt_reqdeptcd" ref="/root/send/reqdeptcd" class="input_default" navindex="3" appearance="input" style="left:631px; top:8px; width:75px; height:19px; ">
  738. <script type="javascript" ev:event="xforms-value-changed">
  739. <![CDATA[
  740. if(opt_reqdeptcd.value.length == 0){
  741. opt_reqdeptnm.value = "";
  742. }else
  743. {
  744. misfValidationCheck("02", "", "reqdeptcd,reqdeptnm" );
  745. }
  746. opt_reqdeptnm.refresh();
  747. opt_reqdeptcd.refresh();
  748. ]]>
  749. </script>
  750. </input>
  751. <output id="opt_reqdeptnm" ref="/root/send/reqdeptnm" class="output_fix" style="left:731px; top:8px; width:105px; height:19px; "/>
  752. <caption id="caption5" class="search_name" style="left:542px; top:9px; width:86px; height:17px; ">사용부서 :</caption>
  753. <button id="btn_dept" class="icon_search" navindex="4" style="left:710px; top:9px; width:16px; height:16px; ">
  754. <caption/>
  755. <script type="javascript" ev:event="DOMActivate">
  756. <![CDATA[
  757. misfOpenPopUpList("02", opt_reqdeptcd, "", "reqdeptcd,reqdeptnm");
  758. // 승인권자별 선택할 수 있는 부서 제한 + 구매팀, 관리Unit 는 모든 부서검색 가능
  759. grd_reqpsnlist.nodeset= "/root/main/grid/reqpsnlist[reqdeptcd='"+opt_reqdeptcd.value+"']";
  760. model.setValue("/root/init/reqdeptcd", model.getValue(opt_reqdeptcd.attribute("ref")));
  761. submit("TRRSC06001");
  762. /* 사용부서 권한조회 불필요 - 2011.03.18 박진억 수정
  763. if ((grd_reqpsnlist.rows-grd_reqpsnlist.fixedRows)==0 && getUserInfo("dutplcecd") != "4080100000" && getUserInfo("dutplcecd") != "4080102000" && getUserInfo("dutplcecd") != "4080300000")
  764. {
  765. messageBox("권한이 없는 부서입니다.","");
  766. fInitialize();
  767. }*//*else{
  768. model.setValue(ipt_reqdeptcd.attribute("ref"), model.getValue(opt_reqdeptcd.attribute("ref")));
  769. model.setValue(ipt_depthngnm.attribute("ref"), model.getValue(opt_reqdeptnm.attribute("ref")));
  770. }*/
  771. opt_reqdeptnm.refresh();
  772. opt_reqdeptcd.refresh();
  773. // btn_search.dispatch("DOMActivate");
  774. ]]>
  775. </script>
  776. </button>
  777. </group>
  778. <caption id="caption1" class="tit_2" style="left:5px; top:54px; width:75px; height:13px; ">의뢰내역</caption>
  779. <select id="chb_searchall" ref="/root/send/searchall" navindex="10" visibility="hidden" overflow="visible" appearance="full" style="left:85px; top:52px; width:70px; height:20px; border-style:none; ">
  780. <choices>
  781. <item>
  782. <label>전체조회</label>
  783. <value>Y</value>
  784. </item>
  785. </choices>
  786. </select>
  787. <line id="line1" class="line_1" style="x1:697; y1:69px; x2:1195; y2:69px; "/>
  788. <line id="line2" class="line_1" style="x1:0px; y1:69px; x2:692px; y2:69px; "/>
  789. <caption id="cap_" class="cell_1" style="left:697px; top:243px; width:90px; height:23px; vertical-align:middle; ">자산구분</caption>
  790. <caption id="cap_acptdeptcd" class="cell_1" style="left:697px; top:219px; width:90px; height:23px; vertical-align:middle; ">접수부서</caption>
  791. <caption id="cap_reqpsnid" class="cell_1" style="left:697px; top:195px; width:90px; height:23px; vertical-align:middle; ">의뢰자</caption>
  792. <caption id="cap_reqdeptcd" class="cell_1" style="left:697px; top:171px; width:90px; height:23px; vertical-align:middle; ">의뢰부서</caption>
  793. <input id="ipt_reqdeptcd" ref="/root/main/control/rfehemhtlist/reqdeptcd" class="input_s_essential" navindex="24" style="left:789px; top:173px; width:146px; height:19px; text-align:center; ">
  794. <script type="javascript" ev:event="xforms-value-changed">
  795. <![CDATA[
  796. if(ipt_reqdeptcd.value.length == 0)
  797. ipt_depthngnm.value = "";
  798. else
  799. misfValidationCheck("02", "", "reqdeptcd,depthngnm" );
  800. model.refresh();
  801. ]]>
  802. </script>
  803. </input>
  804. <caption id="caption2" class="cell_1" style="left:697px; top:122px; width:90px; height:23px; vertical-align:middle; ">의뢰일자</caption>
  805. <caption id="cap_fixasetcd" class="cell_1" style="left:697px; top:74px; width:90px; height:47px; vertical-align:middle; ">비품코드</caption>
  806. <input id="ipt_fixasetcd" ref="/root/main/control/rfehemhtlist/fixasetcd" class="input_s_essential" disabled="true" navindex="18" style="left:789px; top:76px; width:146px; height:19px; text-align:center; ">
  807. <script type="javascript" ev:event="xforms-value-changed">
  808. <![CDATA[
  809. if(ipt_fixasetcd.value != "")
  810. {
  811. rszfValidationCheck("TRRSD00241", "rfcmfacdlist", "instcd,requirementcd,requirementnm",
  812. opt_instcd.value +",fixasetcd," + ipt_fixasetcd.value,
  813. "", "fixasetcd,fixasetnm", ipt_fixasetcd, "SPRSD00240",
  814. "instcd","opt_instcd");
  815. cmb_fixtrseqmtflag.value = model.getValue("/root/init/main/rfcmfacdlist/goodflag");
  816. // 날자 자동입력
  817. model.setValue("/root/main/control/rfehemhtlist/reqdd", getCurrentDate().substr(0, 8));
  818. model.setValue("/root/main/control/rfehemhtlist/genrdd", getCurrentDate().substr(0, 8));
  819. // 의뢰번호 입력
  820. // model.setValue(ipt_reqno.attribute("ref"),Number(grd_rfehemhtlist.valueMatrix(1,grd_rfehemhtlist.colRef("reqno")))+1);
  821. }else{
  822. ipt_fixasetcd.value = "";
  823. ipt_fixasetnm.value = "";
  824. }
  825. if(ipt_fixasetcd.value.substr(0,1) == 'E')
  826. {
  827. messageBox("의료장비는 신청하실수 없습니다.","");
  828. fInitialize();
  829. }
  830. model.refresh();
  831. ]]>
  832. </script>
  833. </input>
  834. <input id="ipt_fixasetnm" ref="/root/main/control/rfehemhtlist/fixasetnm" class="input_search" disabled="true" navindex="21" style="left:789px; top:100px; width:403px; height:19px; ">
  835. <script type="javascript" ev:event="xforms-value-changed">
  836. <![CDATA[
  837. if(ipt_fixasetnm.value != "")
  838. {
  839. rszfValidationCheck("TRRSD00241", "rfcmfacdlist", "instcd,requirementcd,requirementnm",
  840. opt_instcd.value +",goodflaghngnm," + ipt_fixasetnm.value,
  841. "", "fixasetcd,fixasetnm", ipt_fixasetcd, "SPRSD00240",
  842. "instcd","opt_instcd");
  843. // 날자 자동입력
  844. model.setValue("/root/main/control/rfehemhtlist/reqdd", getCurrentDate().substr(0, 8));
  845. model.setValue("/root/main/control/rfehemhtlist/genrdd", getCurrentDate().substr(0, 8));
  846. // 의뢰번호 입력
  847. // model.setValue(ipt_reqno.attribute("ref"),Number(grd_rfehemhtlist.valueMatrix(1,grd_rfehemhtlist.colRef("reqno")))+1);
  848. }else
  849. {
  850. ipt_fixasetcd.value = "";
  851. ipt_fixasetnm.value = "";
  852. }
  853. model.refresh();
  854. ]]>
  855. </script>
  856. </input>
  857. <input id="ipt_reqno" ref="/root/main/control/rfehemhtlist/reqno" class="input_default" navindex="23" style="left:1029px; top:124px; width:163px; height:19px; "/>
  858. <caption id="caption3" class="cell_1" style="left:937px; top:122px; width:90px; height:23px; vertical-align:middle; ">의뢰번호</caption>
  859. <select1 id="rdo_execdept" ref="/root/main/control/rfehemhtlist/execdept" disabled="true" navindex="24" visibility="visible" appearance="full" cellspacing="20" cols="3" overflow="visible" style="left:790px; top:148px; width:400px; height:20px; border-style:solid; ">
  860. <choices>
  861. <item>
  862. <label>의공학과</label>
  863. <value>4090500000</value>
  864. </item>
  865. <item>
  866. <label>물류파트</label>
  867. <value>4020334000</value>
  868. </item>
  869. <item>
  870. <label>정보통신실</label>
  871. <value>4130100000</value>
  872. </item>
  873. </choices>
  874. </select1>
  875. <caption id="cap_workstat" class="cell_1" style="left:697px; top:363px; width:90px; height:23px; vertical-align:middle; ">수리진행상태</caption>
  876. <caption id="cap_chrgpsnid" class="cell_1" visibility="hidden" style="left:930px; top:45px; width:50px; height:23px; vertical-align:middle; ">수리담당자</caption>
  877. <caption id="cap_genrdd" class="cell_1" style="left:697px; top:315px; width:90px; height:23px; vertical-align:middle; ">발생일자</caption>
  878. <caption id="cap_hdrncspec" class="cell_1" style="left:697px; top:267px; width:90px; height:47px; vertical-align:middle; ">의뢰내역</caption>
  879. <input id="ipt_reqtel" ref="/root/main/control/rfehemhtlist/reqtel" class="input_s_essential" navindex="33" maxlength="15" style="left:1029px; top:245px; width:163px; height:19px; "/>
  880. <caption id="cap_reqtel" class="cell_1" style="left:937px; top:243px; width:90px; height:23px; vertical-align:middle; ">의뢰자 연락처</caption>
  881. <textarea id="txt_hdrncspec" ref="/root/main/control/rfehemhtlist/hdrncspec" class="input_s_essential" navindex="34" style="left:789px; top:269px; width:403px; height:43px; "/>
  882. <caption id="cap_acsrslist" class="cell_1" style="left:697px; top:562px; width:90px; height:177px; vertical-align:middle; ">부품사용내역</caption>
  883. <datagrid id="grd_rfehdabplist" nodeset="/root/main/rfehdabplist" caption="부품코드^부품명^수량^단위^금액" colsep="^" colwidth="90, 203, 40, 52, 70" dataheight="25" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="25" rowsep="|" tooltip="true" navindex="49" style="left:790px; top:562px; width:403px; height:177px; ">
  884. <col ref="acsrscd" style="left:0px; top:23px; width:85px; height:23px; text-align:left; "/>
  885. <col ref="acsrsnm" style="text-align:left; "/>
  886. <col ref="acsrsqty" format="#,###" style="text-align:right; "/>
  887. <col ref="acsrsunit" type="combo" style="text-align:center; ">
  888. <choices>
  889. <itemset>
  890. <label/>
  891. <value/>
  892. </itemset>
  893. </choices>
  894. </col>
  895. <col ref="acsrsamt" visibility="hidden" format="#,###" style="text-align:right; "/>
  896. </datagrid>
  897. <button id="btn_fixasetSearchs" class="icon_search" navindex="19" visibility="hidden" style="left:940px; top:77px; width:16px; height:16px; ">
  898. <caption/>
  899. <script type="javascript" ev:event="DOMActivate">
  900. <![CDATA[
  901. // 자산코드 팝업창 오픈
  902. rszfOpenPopUpListByWndName(ipt_fixasetcd, "", "fixasetcd,fixasetnm","SPRSD00240","instcd","opt_instcd");
  903. // 자산코드 확인.[자산구분을 가져오지 못해 팝업창으로 가져온 자산코드값으로 ValidationCheck을 실행하여 자산구분값을 가져옮.]
  904. ipt_fixasetcd.dispatch("xforms-value-changed");
  905. // rszfValidationCheck("TRRSD00241", "rfcmfacdlist", "instcd,requirementcd,requirementnm",
  906. // cmb_instcd.value +",fixasetcd,******",
  907. // "", "fixasetcd,fixasetnm", ipt_fixasetcd, "SPRSD00240",
  908. // "instcd","cmb_instcd");
  909. // cmb_fixtrseqmtflag.value = model.getValue("/root/init/main/rfcmfacdlist/goodflag");
  910. // 날자 자동입력
  911. model.setValue("/root/main/control/rfehemhtlist/reqdd", getCurrentDate().substr(0, 8));
  912. model.setValue("/root/main/control/rfehemhtlist/genrdd", getCurrentDate().substr(0, 8));
  913. model.refresh();
  914. ]]>
  915. </script>
  916. </button>
  917. <caption id="caption19" style="left:85px; top:355px; width:100px; height:20px; vertical-align:middle; "/>
  918. <caption id="caption24" class="tit_2" style="left:702px; top:54px; width:157px; height:13px; ">의뢰현황</caption>
  919. <input id="ipt_reqdd" ref="/root/main/control/rfehemhtlist/reqdd" class="input_s_essential" disabled="true" navindex="22" inputtype="date" style="left:789px; top:124px; width:146px; height:19px; text-align:center; "/>
  920. <button id="btn_reqdeptcdSearch" class="icon_search" navindex="25" style="left:940px; top:173px; width:16px; height:16px; ">
  921. <caption/>
  922. <script type="javascript" ev:event="DOMActivate">
  923. <![CDATA[
  924. misfOpenPopUpList("02", ipt_reqdeptcd, "", "reqdeptcd,depthngnm");
  925. // 승인권자별 선택할 수 있는 부서 제한
  926. grd_reqpsnlist.nodeset= "/root/main/grid/reqpsnlist[reqdeptcd='"+ipt_reqdeptcd.value+"']";
  927. if ((grd_reqpsnlist.rows-grd_reqpsnlist.fixedRows)==0 && getUserInfo("dutplcecd") != "4080100000" && getUserInfo("dutplcecd") != "4080102000" && getUserInfo("dutplcecd") != "4080300000")
  928. {
  929. messageBox("권한이 없는 부서입니다.","");
  930. ipt_reqdeptcd.value=opt_reqdeptcd.value;
  931. ipt_depthngnm.value=opt_reqdeptnm.value;
  932. }
  933. model.refresh();
  934. ]]>
  935. </script>
  936. </button>
  937. <input id="ipt_depthngnm" ref="/root/main/control/rfehemhtlist/depthngnm" class="input_search" navindex="26" style="left:960px; top:173px; width:232px; height:19px; text-align:center; ">
  938. <script type="javascript" ev:event="xforms-value-changed">
  939. <![CDATA[
  940. if(ipt_depthngnm.value.length == 0)
  941. ipt_reqdeptcd.value = "";
  942. else
  943. misfValidationCheck("02", "", "reqdeptcd,depthngnm");
  944. model.refresh();
  945. ]]>
  946. </script>
  947. </input>
  948. <button id="btn_reqpsnidSearch" class="icon_search" navindex="28" style="left:940px; top:197px; width:16px; height:16px; ">
  949. <caption/>
  950. <script type="javascript" ev:event="DOMActivate">
  951. <![CDATA[
  952. misfOpenPopUpList("12", ipt_reqpsnid, "", "reqpsnid,reqpsnnm");
  953. model.refresh();
  954. ]]>
  955. </script>
  956. </button>
  957. <input id="ipt_reqpsnnm" ref="/root/main/control/rfehemhtlist/reqpsnnm" class="input_search" navindex="29" style="left:960px; top:197px; width:232px; height:19px; text-align:center; ">
  958. <script type="javascript" ev:event="xforms-value-changed">
  959. <![CDATA[
  960. if(ipt_reqpsnnm.value.length == 0)
  961. ipt_reqpsnid.value = "";
  962. else
  963. misfValidationCheck("01-2", "", "reqpsnid,reqpsnnm");
  964. model.refresh();
  965. ]]>
  966. </script>
  967. </input>
  968. <input id="ipt_reqpsnid" ref="/root/main/control/rfehemhtlist/reqpsnid" class="input_s_essential" navindex="27" style="left:789px; top:197px; width:146px; height:19px; text-align:center; ">
  969. <script type="javascript" ev:event="xforms-value-changed">
  970. <![CDATA[
  971. // misfValidationCheck("12", "", "reqpsnid,reqpsnnm" );
  972. if(ipt_reqpsnid.value.length == 0)
  973. ipt_reqpsnnm.value = "";
  974. else
  975. misfValidationCheck("01-1", "", "reqpsnid,reqpsnnm");
  976. model.refresh();
  977. ]]>
  978. </script>
  979. </input>
  980. <input id="ipt_acptdeptnm" ref="/root/main/control/rfehemhtlist/acptdeptnm" class="output_fix" disabled="true" navindex="31" style="left:937px; top:221px; width:255px; height:19px; text-align:center; "/>
  981. <input id="ipt_acptdeptcd" ref="/root/main/control/rfehemhtlist/acptdeptcd" class="output_fix" disabled="true" navindex="30" style="left:789px; top:221px; width:146px; height:19px; text-align:center; "/>
  982. <input id="ipt_chrgpsnnm" ref="/root/main/control/rfehemhtlist/chrgpsnnm" class="output_fix" disabled="true" visibility="hidden" style="left:1063px; top:47px; width:42px; height:19px; text-align:center; "/>
  983. <input id="ipt_chrgpsnid" ref="/root/main/control/rfehemhtlist/chrgpsnid" class="output_fix" disabled="true" visibility="hidden" style="left:998px; top:47px; width:54px; height:19px; text-align:center; "/>
  984. <select1 id="cmb_workstat" ref="/root/main/control/rfehemhtlist/workstat" class="combo_s_essential" disabled="true" navindex="41" appearance="minimal" style="left:789px; top:365px; width:146px; height:19px; text-align:center; ">
  985. <choices>
  986. <item>
  987. <label>청구승인의뢰</label>
  988. <value>00</value>
  989. </item>
  990. <item>
  991. <label>수리의뢰</label>
  992. <value>01</value>
  993. </item>
  994. <item>
  995. <label>수리중</label>
  996. <value>03</value>
  997. </item>
  998. <item>
  999. <label>외부수리</label>
  1000. <value>10</value>
  1001. </item>
  1002. <item>
  1003. <label>수리완료</label>
  1004. <value>04</value>
  1005. </item>
  1006. <item>
  1007. <label>수리불가</label>
  1008. <value>08</value>
  1009. </item>
  1010. <item>
  1011. <label>재고지급</label>
  1012. <value>09</value>
  1013. </item>
  1014. </choices>
  1015. </select1>
  1016. <input id="ipt_genrdd" ref="/root/main/control/rfehemhtlist/genrdd" class="input_default" disabled="true" navindex="35" inputtype="date" style="left:789px; top:317px; width:146px; height:19px; text-align:center; "/>
  1017. <caption id="cap_acptdd" class="cell_1" style="left:937px; top:363px; width:90px; height:23px; vertical-align:middle; ">접수일자</caption>
  1018. <input id="ipt_acptdd" ref="/root/main/control/rfehemhtlist/acptdd" class="output_fix" disabled="true" navindex="44" format="yyyy-mm-dd" style="left:1029px; top:365px; width:163px; height:19px; text-align:center; "/>
  1019. <select1 id="cmb_fixtrseqmtflag" ref="/root/main/control/rfehemhtlist/fixtrseqmtflag" class="combo_s_essential" disabled="true" navindex="32" appearance="minimal" style="left:789px; top:245px; width:146px; height:19px; text-align:center; ">
  1020. <choices>
  1021. <itemset nodeset="/root/init/fixtrseqmtflag">
  1022. <label ref="label"/>
  1023. <value ref="value"/>
  1024. </itemset>
  1025. </choices>
  1026. </select1>
  1027. <button id="btn_delete" class="btn2_letter3" navindex="13" style="left:584px; top:48px; width:53px; height:19px; ">
  1028. <caption>행삭제</caption>
  1029. <script type="javascript" ev:event="DOMActivate">
  1030. <![CDATA[
  1031. if(fmoveCheck() != false)
  1032. {
  1033. misfGridIUD(grd_rfehemhtlist, "D");
  1034. fmoveCheck();
  1035. if(grd_rfehemhtlist.rows == 1)
  1036. {
  1037. model.makeNode("/root/main/control/rfehemhtlist/fixasetcd");
  1038. model.makeNode("/root/main/control/rfehemhtlist/fixasetnm");
  1039. model.makeNode("/root/main/control/rfehemhtlist/reqdeptcd");
  1040. model.makeNode("/root/main/control/rfehemhtlist/depthngnm");
  1041. model.makeNode("/root/main/control/rfehemhtlist/reqpsnid");
  1042. model.makeNode("/root/main/control/rfehemhtlist/reqpsnnm");
  1043. model.makeNode("/root/main/control/rfehemhtlist/fixtrseqmtflag");
  1044. model.makeNode("/root/main/control/rfehemhtlist/workstat");
  1045. model.makeNode("/root/main/control/rfehemhtlist/btnfixasetcd");
  1046. model.makeNode("/root/main/control/rfehemhtlist/deptaprvreqyn");
  1047. fInitialize();
  1048. btn_search.dispatch("DOMActivate");
  1049. }
  1050. }
  1051. ]]>
  1052. </script>
  1053. </button>
  1054. <button id="btn_insert" class="btn2_letter3" navindex="12" visibility="hidden" style="left:529px; top:48px; width:53px; height:19px; ">
  1055. <caption>행추가</caption>
  1056. <script type="javascript" ev:event="DOMActivate">
  1057. <![CDATA[
  1058. if(opt_instcd.value == null){
  1059. messageBox("기관코드가","I004");
  1060. return;
  1061. }
  1062. var statusCount = 0;
  1063. for(var fRow = 1; fRow < grd_rfehemhtlist.rows; fRow++)
  1064. {
  1065. if(grd_rfehemhtlist.rowStatus(fRow) == 1)
  1066. {
  1067. statusCount++ ;
  1068. }
  1069. }
  1070. if(statusCount < 1)
  1071. {
  1072. misfGridIUD(grd_rfehemhtlist, "A");
  1073. grd_rfehemhtlist.isReadOnly(grd_rfehemhtlist.fixedRows, grd_rfehemhtlist.fixedCols, grd_rfehemhtlist.rows-1, grd_rfehemhtlist.cols-1) = true;
  1074. misfSetReadOnlyCol(grd_rfehemhtlist, "deptaprvyn", false);
  1075. }else
  1076. {
  1077. //messageBox("한번에 한건의 데이터만 추가 할 수 있습니다", "E999");
  1078. //return;
  1079. }
  1080. grd_rfehemhtlist.refresh();
  1081. // 의뢰일자 설정
  1082. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("reqdd")) = getCurrentDate().substr(0, 8);
  1083. // 일자별 의뢰 순번 설정
  1084. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("reqno")) = fmaxreqno(grd_rfehemhtlist);
  1085. // 부서코드 설정
  1086. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("reqdeptcd")) = opt_reqdeptcd.value; //getUserInfo("dutplcecd");
  1087. /// model.setValue("/root/main/control/rfehemhtlist/reqdeptcd" , getUserInfo("dutplcecd"));
  1088. // 부서코드명 설정
  1089. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("depthngnm")) = opt_reqdeptnm.value; //getUserInfo("dutplcenm");
  1090. // model.setValue("/root/main/control/rfehemhtlist/depthngnm" , getUserInfo("dutplcenm"));
  1091. // User ID 설정
  1092. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("reqpsnid")) = getUserInfo("userid");
  1093. // model.setValue("/root/main/control/rfehemhtlist/reqpsnid", getUserInfo("userid"));
  1094. // User Name 설정
  1095. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("reqpsnnm")) = getUserInfo("usernm");
  1096. // model.setValue("/root/main/control/rfehemhtlist/reqpsnnm", getUserInfo("usernm"));
  1097. // 수리 진행 상태 설정 (수리 의뢰)
  1098. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("workstat")) = "01";
  1099. // 접수구분 ( '1': 수리 , '2' 예방)
  1100. grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("acptflag")) = "1";
  1101. // cmb_workstat.value = 1;
  1102. grd_rfehemhtlist.refresh();
  1103. fgridClickEvent("N"); // 행추가시 필요 없는 submission이 발생하여 우선은 제어를 위해 "N" 셋팅시 submission pass
  1104. fcontrolEnableYN(false); //행추가시
  1105. che_acptpsncnfm.disabled = true;
  1106. if(grd_rfehemhtlist.row != 0)
  1107. {
  1108. btn_delete.disabled = false;
  1109. }
  1110. fdeptGrantYN(); //-> 청구 권한 체크
  1111. model.refresh();
  1112. ]]>
  1113. </script>
  1114. </button>
  1115. <datagrid id="grd_temp" nodeset="/root/temp/rfehemhtlist" visibility="hidden" caption="기관코드^비품_장비구분^의뢰일자^의뢰번호^관리부서^관리부서명^의뢰자ID^의뢰자 명^발생일자^발생시간^담당자ID^담당자명^접수일자^접수시간^접수자ID^접수자이름^접수확인^접수부서^접수부서명^작업상태^고정자산코드^자산명^품명^모델명^고장내역^수리구분1^수리구분2^사용여부^최종수리상태^인수자확인^부서인수일자^부서인수자ID^부서인수자명^수리비^비고^수리완료일자^담당자전화번호^결재여부^담당자comment^결재일자^미가동일수^메일방송여부" colsep="^" colwidth="100, 100, 102, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 150, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:5px; top:210px; width:680px; height:75px; ">
  1116. <col ref="instcd"/>
  1117. <col ref="fixtrseqmtflag"/>
  1118. <col ref="reqdd"/>
  1119. <col ref="reqno"/>
  1120. <col ref="reqdeptcd"/>
  1121. <col ref="depthngnm"/>
  1122. <col ref="reqpsnid"/>
  1123. <col ref="reqpsnnm"/>
  1124. <col ref="genrdd"/>
  1125. <col ref="genrtm"/>
  1126. <col ref="chrgpsnid"/>
  1127. <col ref="chrgpsnnm"/>
  1128. <col ref="acptdd"/>
  1129. <col ref="acpttm"/>
  1130. <col ref="acptpsnid"/>
  1131. <col ref="acptpsnnm"/>
  1132. <col checkvalue="Y,N" type="checkbox"/>
  1133. <col ref="acptdeptcd"/>
  1134. <col ref="acptdeptnm"/>
  1135. <col ref="workstat"/>
  1136. <col ref="fixasetcd"/>
  1137. <col ref="fixasetnm"/>
  1138. <col ref="itemnm"/>
  1139. <col ref="goodmodel"/>
  1140. <col ref="hdrncspec"/>
  1141. <col ref="rpirflag1"/>
  1142. <col ref="rpirflag2"/>
  1143. <col ref="useyn"/>
  1144. <col ref="lastrpirstat"/>
  1145. <col ref="acptpsncnfm"/>
  1146. <col ref="deptacptdd"/>
  1147. <col ref="deptacptpsnid"/>
  1148. <col ref="deptacptpsnnm"/>
  1149. <col ref="rpiramt"/>
  1150. <col ref="cmt"/>
  1151. <col ref="rpirenddd"/>
  1152. <col ref="chrgtel"/>
  1153. <col ref="sanctyn"/>
  1154. <col ref="chrgpsncmt"/>
  1155. <col ref="sanctdd"/>
  1156. <col ref="nonworkdayno"/>
  1157. <col ref="emaildeliveyn"/>
  1158. <col ref="lastrpirrslt"/>
  1159. <col ref="reqtel"/>
  1160. <col ref="bugtyy"/>
  1161. <col ref="bugtcd"/>
  1162. <col ref="stdysubjno"/>
  1163. <col ref="stdysubjnm"/>
  1164. <col ref="deptaprvyn"/>
  1165. <col ref="deptaprvpsnid"/>
  1166. <col ref="deptaprvpsnnm"/>
  1167. <col ref="deptaprvdd"/>
  1168. <col ref="acptflag"/>
  1169. </datagrid>
  1170. <input id="ipt_rowtemp" ref="/root/init/rowtemp" visibility="hidden" appearance="input" style="left:35px; top:165px; width:100px; height:20px; "/>
  1171. <input id="ipt_workstattemp" ref="/root/init/workstattemp" navindex="42" visibility="hidden" style="left:850px; top:366px; width:100px; height:19px; "/>
  1172. <caption id="caption23" style="left:700px; top:408px; width:460px; height:26px; font-family:굴림체; font-size:9pt; font-weight:bold; color:#ff6600; vertical-align:middle; ">※수리진행상태가 '수리의뢰'인 경우에만 수정,삭제가 가능합니다.</caption>
  1173. <select1 id="rdo_deptaprvreqyn" ref="/root/main/control/rfehemhtlist/deptaprvreqyn" disabled="true" navindex="45" visibility="hidden" appearance="full" cols="2" overflow="visible" style="left:1045px; top:410px; width:152px; height:20px; border-style:none; ">
  1174. <choices>
  1175. <item>
  1176. <label>승인필요</label>
  1177. <value>Y</value>
  1178. </item>
  1179. <item selected="selected">
  1180. <label>승인불필요</label>
  1181. <value>N</value>
  1182. </item>
  1183. </choices>
  1184. <script type="javascript" ev:event="xforms-value-changed">
  1185. <![CDATA[
  1186. if(rdo_deptaprvreqyn.value == "Y"){
  1187. cmb_workstat.value = "00";
  1188. }else if(rdo_deptaprvreqyn.value == "N"){
  1189. cmb_workstat.value = "01";
  1190. }
  1191. cmb_workstat.refresh();
  1192. ]]>
  1193. </script>
  1194. </select1>
  1195. <caption id="cap_chrgtel" class="cell_1" visibility="hidden" style="left:1125px; top:45px; width:40px; height:22px; vertical-align:middle; ">담당자 연락처</caption>
  1196. <input id="ipt_chrgtel" ref="/root/main/control/rfehemhtlist/chrgtel" class="output_fix" disabled="true" visibility="hidden" editable="true" style="left:1170px; top:45px; width:13px; height:19px; text-align:left; "/>
  1197. <caption id="cap_bugtyy" class="cell_1" style="left:937px; top:315px; width:60px; height:23px; vertical-align:middle; ">예산년도</caption>
  1198. <caption id="cap_bugtcd" class="cell_1" style="left:1055px; top:315px; width:60px; height:23px; vertical-align:middle; ">예산계정</caption>
  1199. <caption id="cap_stdysubjno" class="cell_1" style="left:697px; top:339px; width:90px; height:23px; vertical-align:middle; ">연구과제</caption>
  1200. <line id="line8" class="line_2" style="x1:700px; y1:337px; x2:1195px; y2:337px; "/>
  1201. <select1 id="cmb_bugtcd" ref="/root/main/control/rfehemhtlist/bugtcd" navindex="37" appearance="minimal" style="left:1116px; top:317px; width:76px; height:19px; ">
  1202. <choices>
  1203. <itemset>
  1204. <label/>
  1205. <value/>
  1206. </itemset>
  1207. </choices>
  1208. </select1>
  1209. <input id="ipt_bugtyy" ref="/root/main/control/rfehemhtlist/bugtyy" class="input_default" disabled="true" navindex="36" inputtype="date" format="yyyy" style="left:998px; top:317px; width:56px; height:19px; "/>
  1210. <input id="ipt_stdysubjno" ref="/root/main/control/rfehemhtlist/stdysubjno" class="input_search" navindex="38" style="left:789px; top:340px; width:146px; height:19px; text-align:center; ">
  1211. <script type="javascript" ev:event="xforms-value-changed">
  1212. <![CDATA[
  1213. if(ipt_stdysubjno.value != "")
  1214. {
  1215. rszfValidationCheck("TRRSD00261", "studylist", "refcond,instcd,stdysubjno", "stdysubjno," + opt_instcd.value + "," + ipt_stdysubjno.value, "",
  1216. "stdysubjno,stdysubjnm", ipt_stdysubjno, "SPRSD00260", "instcd", "opt_instcd");
  1217. }else
  1218. {
  1219. ipt_stdysubjno.value = "";
  1220. ipt_stdysubjnm.value = "";
  1221. }
  1222. model.refresh();
  1223. ]]>
  1224. </script>
  1225. </input>
  1226. <input id="ipt_stdysubjnm" ref="/root/main/control/rfehemhtlist/stdysubjnm" class="input_search" navindex="40" style="left:956px; top:340px; width:236px; height:19px; text-align:center; ">
  1227. <script type="javascript" ev:event="xforms-value-changed">
  1228. <![CDATA[
  1229. if(ipt_stdysubjnm.value != "")
  1230. {
  1231. rszfValidationCheck("TRRSD00261", "studylist", "refcond,instcd,stdysubjnm", "stdysubjnm," + opt_instcd.value + "," + ipt_stdysubjnm.value, "",
  1232. "stdysubjno,stdysubjnm", ipt_stdysubjnm, "SPRSD00260", "instcd", "opt_instcd");
  1233. }else
  1234. {
  1235. ipt_stdysubjno.value = "";
  1236. ipt_stdysubjnm.value = "";
  1237. }
  1238. model.refresh();
  1239. ]]>
  1240. </script>
  1241. </input>
  1242. <button id="btn_stdysubjnm" class="icon_search" navindex="39" style="left:938px; top:341px; width:16px; height:16px; ">
  1243. <caption/>
  1244. <script type="javascript" ev:event="DOMActivate">
  1245. <![CDATA[
  1246. rszfOpenPopUpListByWndName(ipt_stdysubjno,"","stdysubjno,stdysubjnm","SPRSD00260","instcd","opt_instcd");
  1247. model.refresh();
  1248. ]]>
  1249. </script>
  1250. </button>
  1251. <caption id="cap_lastrpirrslt" class="cell_1" style="left:697px; top:433px; width:90px; height:127px; vertical-align:middle; ">수리내역</caption>
  1252. <textarea id="txt_lastrpirrslt" ref="/root/main/control/rfehemhtlist/lastrpirrslt" class="output_fix" navindex="48" editable="true" style="left:789px; top:433px; width:403px; height:126px; "/>
  1253. <line id="line10" class="line_3" style="x1:697px; y1:430px; x2:1192px; y2:430px; "/>
  1254. <caption id="caption4" class="tit_2" style="left:5px; top:408px; width:122px; height:14px; ">부서내 비품코드</caption>
  1255. <line id="line15" class="line_1" style="x1:0px; y1:423px; x2:692px; y2:424px; "/>
  1256. <datagrid id="grd_rfcmfacdlist" nodeset="/root/main/grid/rfcmfacdlist" caption="기관^물품구분^비품코드^비품명^관리부서^관리부서^모델^규격^대분류^중분류^소분류^구코드^거래처^제조원^제조국^구입일자^설치장소^S/N^^" colsep="^" colwidth="32, 74, 85, 150, 86, 113, 94, 85, 76, 76, 76, 74, 100, 108, 100, 85, 92, 30, 100, 100, 100, 100" ellipsis="true" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" tooltip="true" style="left:0px; top:430px; width:692px; height:315px; text-align:center; ">
  1257. <col ref="instnm" visibility="hidden" style="left:20px; top:23px; width:32px; height:23px; text-align:center; "/>
  1258. <col disabled="true" ref="goodflag" type="combo" visibility="hidden" style="text-align:center; ">
  1259. <choices>
  1260. <itemset>
  1261. <label/>
  1262. <value/>
  1263. </itemset>
  1264. </choices>
  1265. </col>
  1266. <col ref="fixasetcd" style="text-align:left; "/>
  1267. <col ref="goodflaghngnm" style="text-align:left; "/>
  1268. <col ref="mngtdeptcd" visibility="hidden" style="text-align:center; "/>
  1269. <col ref="mngtdeptnm" visibility="hidden" style="text-align:left; "/>
  1270. <col ref="goodmodel" style="text-align:left; "/>
  1271. <col ref="goodspec"/>
  1272. <col ref="lrgnm" style="text-align:left; padding-left:10; "/>
  1273. <col ref="mdlnm" style="text-align:left; padding-left:10; "/>
  1274. <col ref="smlnm" style="text-align:left; padding-left:10; "/>
  1275. <col ref="oldcd" visibility="visible" style="text-align:center; "/>
  1276. <col ref="suplplcenm" visibility="hidden" style="text-align:center; "/>
  1277. <col ref="prodcmpynm" visibility="hidden" style="text-align:center; "/>
  1278. <col ref="prodplce" type="combo" visibility="hidden" style="text-align:center; ">
  1279. <choices>
  1280. <itemset>
  1281. <label/>
  1282. <value/>
  1283. </itemset>
  1284. </choices>
  1285. </col>
  1286. <col ref="possndd" format="yyyy-mm-dd"/>
  1287. <col ref="installplcenm" style="text-align:center; "/>
  1288. <col ref="mngtno" style="text-align:left; "/>
  1289. <col ref="instcd" visibility="hidden"/>
  1290. <col ref="mngtdeptcd" visibility="hidden"/>
  1291. <col ref="prodplce" visibility="hidden"/>
  1292. <col ref="prodcmpy" visibility="hidden"/>
  1293. <script type="javascript" ev:event="ondblclick">
  1294. <![CDATA[
  1295. //misfGridIUD(grd_rfehemhtlist, "A");
  1296. if(grd_rfcmfacdlist.row > (grd_rfcmfacdlist.fixedRows-1) )
  1297. {
  1298. btn_insert.dispatch("DOMActivate");
  1299. if(grd_rfehemhtlist.rowStatus(grd_rfehemhtlist.row) == 1 )
  1300. {
  1301. grd_rfehemhtlist.refresh();
  1302. model.setValue(ipt_fixasetcd.attribute("ref"),grd_rfcmfacdlist.valueMatrix(grd_rfcmfacdlist.row, grd_rfcmfacdlist.colRef("fixasetcd")));
  1303. model.setValue(ipt_fixasetnm.attribute("ref"),grd_rfcmfacdlist.valueMatrix(grd_rfcmfacdlist.row, grd_rfcmfacdlist.colRef("goodflaghngnm")));
  1304. ipt_fixasetcd.refresh();
  1305. ipt_fixasetnm.refresh();
  1306. model.makeNode("/root/main/control/rfehemhtlist/execdept");
  1307. model.setValue("/root/main/control/rfehemhtlist/reqdd", getCurrentDate().substr(0, 8));
  1308. model.setValue("/root/main/control/rfehemhtlist/genrdd", getCurrentDate().substr(0, 8));
  1309. cmb_fixtrseqmtflag.value = grd_rfcmfacdlist.valueMatrix(grd_rfcmfacdlist.row, grd_rfcmfacdlist.colRef("goodflag"));
  1310. rdo_deptaprvreqyn.value = "N";
  1311. cmb_workstat.value = "01";
  1312. rdo_execdept.value = "4020334000";
  1313. fcomboValueCheck();
  1314. }
  1315. }
  1316. ]]>
  1317. </script>
  1318. <script type="javascript" ev:event="onaftersort">
  1319. <![CDATA[
  1320. grd_rfcmfacdlist.gridToInstance();
  1321. ]]>
  1322. </script>
  1323. </datagrid>
  1324. <select1 id="rdo_goodflag" ref="/root/send/goodflag" navindex="16" visibility="hidden" appearance="full" cellspacing="10" cols="4" overflow="visible" style="left:0px; top:395px; width:130px; height:20px; border-style:none; ">
  1325. <choices>
  1326. <item>
  1327. <label>전체</label>
  1328. <value>I</value>
  1329. </item>
  1330. <item>
  1331. <label>의료장비</label>
  1332. <value>E</value>
  1333. </item>
  1334. <item>
  1335. <label>의료비품</label>
  1336. <value>U</value>
  1337. </item>
  1338. <item>
  1339. <label>일반비품</label>
  1340. <value>G</value>
  1341. </item>
  1342. </choices>
  1343. <script type="javascript" ev:event="xforms-value-changed">
  1344. <![CDATA[
  1345. // btn_search.dispatch("DOMActivate");
  1346. ]]>
  1347. </script>
  1348. </select1>
  1349. <caption id="cap_goodflag" visibility="hidden" style="left:0px; top:395px; width:88px; height:24px; font-family:굴림체; font-size:9pt; font-weight:bold; color:#993300; vertical-align:middle; ">* 물품구분 :</caption>
  1350. <button id="btn_excel" class="btn5_letter3" navindex="14" style="left:639px; top:48px; width:53px; height:19px; ">
  1351. <caption>Excel</caption>
  1352. <script type="javascript" ev:event="DOMActivate">
  1353. <![CDATA[
  1354. var fileName = window.fileDialog("save", ",", false, "의뢰내역", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  1355. if (fileName != "")
  1356. {
  1357. grd_rfehemhtlist.saveExcel(fileName, "의뢰내역List",true,true, "");
  1358. }
  1359. ]]>
  1360. </script>
  1361. </button>
  1362. <button id="button1" class="btn5_letter3" navindex="17" style="left:638px; top:402px; width:53px; height:19px; ">
  1363. <caption>Excel</caption>
  1364. <script type="javascript" ev:event="DOMActivate">
  1365. <![CDATA[
  1366. var fileName = window.fileDialog("save", ",", false, "보유자산 List", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  1367. if (fileName != "")
  1368. {
  1369. grd_rfcmfacdlist.saveExcel(fileName, "보유자산List",true,true, "");
  1370. }
  1371. ]]>
  1372. </script>
  1373. </button>
  1374. <caption id="cap_acptpsncnfm" class="cell_1" visibility="hidden" style="left:840px; top:675px; width:40px; height:23px; vertical-align:middle; ">인수확인</caption>
  1375. <input id="ipt_deptacptpsnid" ref="/root/main/control/rfehemhtlist/deptacptpsnid" class="input_default" visibility="hidden" style="left:887px; top:701px; width:96px; height:19px; text-align:center; "/>
  1376. <input id="ipt_deptacptdd" ref="/root/main/control/rfehemhtlist/deptacptdd" class="input_default" disabled="true" visibility="hidden" inputtype="date" style="left:1076px; top:677px; width:79px; height:19px; text-align:center; "/>
  1377. <caption id="cap_deptaprvpsnid" class="cell_1" visibility="hidden" style="left:840px; top:650px; width:40px; height:23px; vertical-align:middle; ">부서승인자</caption>
  1378. <input id="ipt_deptacptpsnnm" ref="/root/main/control/rfehemhtlist/deptacptpsnnm" class="input_default" visibility="hidden" style="left:985px; top:701px; width:170px; height:19px; text-align:center; "/>
  1379. <caption id="cap_deptacptpsnid" class="cell_1" visibility="hidden" style="left:840px; top:699px; width:40px; height:23px; vertical-align:middle; ">인수자</caption>
  1380. <select id="che_acptpsncnfm" ref="/root/main/control/rfehemhtlist/acptpsncnfm" visibility="hidden" overflow="visible" appearance="full" style="left:887px; top:660px; width:0px; height:20px; border-style:none; ">
  1381. <choices>
  1382. <item>
  1383. <label>확인</label>
  1384. <value>Y</value>
  1385. </item>
  1386. </choices>
  1387. <script type="javascript" ev:event="xforms-value-changed">
  1388. <![CDATA[
  1389. facptCheck();
  1390. ]]>
  1391. </script>
  1392. </select>
  1393. <caption id="cap_deptacptdd" class="cell_1" visibility="hidden" style="left:984px; top:675px; width:40px; height:23px; vertical-align:middle; ">인수일자</caption>
  1394. <input id="ipt_deptaprvpsnid" ref="/root/main/control/rfehemhtlist/deptaprvpsnid" class="input_search" disabled="true" visibility="hidden" style="left:887px; top:653px; width:26px; height:19px; text-align:center; "/>
  1395. <input id="ipt_deptaprvpsnnm" ref="/root/main/control/rfehemhtlist/deptaprvpsnnm" class="input_search" disabled="true" visibility="hidden" style="left:964px; top:653px; width:19px; height:19px; text-align:center; "/>
  1396. <caption id="caption22" class="red" visibility="hidden" style="left:840px; top:620px; width:295px; height:26px; font-family:굴림체; font-size:9pt; font-weight:bold; color:#ff6600; vertical-align:middle; ">※수리진행상태가 '수리완료','반송','수리불가'인 경우에 인수확인 가능합니다.</caption>
  1397. <caption id="cap_deptaprvdd" class="cell_1" visibility="hidden" style="left:985px; top:650px; width:40px; height:23px; vertical-align:middle; ">부서승인일자</caption>
  1398. <input id="ipt_deptaprvdd" ref="/root/main/control/rfehemhtlist/deptaprvdd" class="input_default" disabled="true" visibility="hidden" inputtype="date" format="yyyy-mm-dd" style="left:1077px; top:653px; width:79px; height:19px; "/>
  1399. <button id="btn_accept" class="btn2_letter2" navindex="11" visibility="visible" style="left:165px; top:48px; width:42px; height:19px; ">
  1400. <caption>승인</caption>
  1401. <script type="javascript" ev:event="DOMActivate">
  1402. <![CDATA[
  1403. fupdateCheckSave();
  1404. //20081108 승인버튼으로 승인처리를 일괄로 한다.
  1405. /*
  1406. for ( var i= grd_rfehemhtlist.fixedRows; i< grd_rfehemhtlist.rows; i++) {
  1407. if( grd_rfehemhtlist.rowStatus(i) == 2 )
  1408. {
  1409. if(grd_rfehemhtlist.valueMatrix( i , grd_rfehemhtlist.colRef("deptaprvyn")) == "Y" && grd_rfehemhtlist.valueMatrix( i , grd_rfehemhtlist.colRef("workstat")) == "00" )
  1410. {
  1411. cmb_workstat.value = "01";
  1412. model.setValue("/root/main/control/rfehemhtlist/deptaprvyn", "Y");
  1413. ipt_deptaprvdd.value = getCurrentDate().substr(0, 8);
  1414. ipt_deptaprvpsnid.value = getUserInfo("userid");
  1415. ipt_deptaprvpsnnm.value = getUserInfo("usernm");
  1416. model.refresh();
  1417. fupdateCheckSave(i);
  1418. }
  1419. else if( grd_rfehemhtlist.valueMatrix( i , grd_rfehemhtlist.colRef("deptaprvyn")) == "N" || grd_rfehemhtlist.valueMatrix( i , grd_rfehemhtlist.colRef("deptaprvyn")) == "" )
  1420. {
  1421. if ( grd_rfehemhtlist.valueMatrix( i , grd_rfehemhtlist.colRef("workstat")) == "01" )
  1422. {
  1423. cmb_workstat.value = "00";
  1424. model.setValue("/root/main/control/rfehemhtlist/deptaprvyn", "N");
  1425. ipt_deptaprvdd.value = "";
  1426. ipt_deptaprvpsnid.value = "";
  1427. ipt_deptaprvpsnnm.value = "";
  1428. model.refresh();
  1429. fupdateCheckSave(i);
  1430. }
  1431. }
  1432. }
  1433. }
  1434. model.refresh();
  1435. */
  1436. ]]>
  1437. </script>
  1438. </button>
  1439. <input id="ipt_instcd" ref="/root/init/instcd" visibility="hidden" style="left:170px; top:165px; width:55px; height:15px; "/>
  1440. <input id="ipt_reqflag" ref="/root/init/reqflag" visibility="hidden" style="left:230px; top:165px; width:55px; height:19px; "/>
  1441. <input id="ipt_emplno" ref="/root/init/emplno" visibility="hidden" style="left:290px; top:165px; width:55px; height:19px; "/>
  1442. <input id="ipt_reqaprvflag" ref="/root/init/reqaprvflag" visibility="hidden" style="left:350px; top:165px; width:55px; height:19px; "/>
  1443. <input id="ipt_deptaprvreqyn" ref="/root/main/control/rfehemhtlist/deptaprvreqyn" visibility="hidden" style="left:1020px; top:76px; width:25px; height:19px; "/>
  1444. <caption id="cap_execdept" class="cell_1" visibility="hidden" style="left:960px; top:74px; width:80px; height:23px; vertical-align:middle; ">시행부서</caption>
  1445. <select1 id="radio1" ref="/root/main/control/rfehemhtlist/execdept" navindex="20" visibility="hidden" appearance="full" cellspacing="10" cols="2" overflow="visible" style="left:1041px; top:76px; width:151px; height:20px; border-style:none; ">
  1446. <choices>
  1447. <item>
  1448. <label>시설팀</label>
  1449. <value>1</value>
  1450. </item>
  1451. <item>
  1452. <label>구매관리팀</label>
  1453. <value>2</value>
  1454. </item>
  1455. </choices>
  1456. </select1>
  1457. <datagrid id="grd_rfehemhtlist" nodeset="/root/main/grid/rfehemhtlist" caption="기관코드^비품_장비구분^승인^의뢰일자^의뢰일자^의뢰부서CODE^의뢰부서^발생일자^발생시간^담당자ID^담당자^접수일자^접수시간^접수자ID^접수자^접수확인^접수부서CODE^접수부서^작업상태^비품코드^비품명^품명^모델명^규격^의뢰부서^고장내역^수리구분1^수리구분2^사용여부^최종수리상태^인수자확인^부서인수일자^부서인수자ID^부서인수자^수리비^비고^수리완료일자^담당자전화번호^결재여부^담당자comment^결재일자^미가동일수^메일방송여부^의뢰자ID^의뢰자^부서승인자ID^부서승인자명^부서승인일자^설치장소^caption1^caption2^caption3^caption4^caption5^caption6^caption7" colsep="^" colwidth="100, 100, 41, 66, 38, 100, 80, 70, 60, 70, 70, 70, 69, 70, 100, 100, 70, 100, 100, 100, 150, 85, 80, 90, 100, 68, 100, 100, 100, 100, 80, 70, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 80, 100, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" ellipsis="true" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" navindex="9" style="left:0px; top:74px; width:692px; height:321px; ">
  1458. <col ref="instcd" visibility="hidden"/>
  1459. <col ref="fixtrseqmtflag" visibility="hidden"/>
  1460. <col checkvalue="Y,N" ref="deptaprvyn" type="checkbox" visibility="hidden"/>
  1461. <col disabled="true" ref="reqdd" format="yyyy-mm-dd"/>
  1462. <col disabled="true" ref="reqno" style="text-align:center; "/>
  1463. <col ref="reqdeptcd" visibility="hidden"/>
  1464. <col ref="depthngnm" visibility="hidden"/>
  1465. <col ref="genrdd" visibility="hidden"/>
  1466. <col ref="genrtm" visibility="hidden"/>
  1467. <col ref="chrgpsnid" visibility="hidden"/>
  1468. <col ref="chrgpsnnm" visibility="hidden"/>
  1469. <col ref="acptdd" visibility="hidden"/>
  1470. <col ref="acpttm" visibility="hidden"/>
  1471. <col ref="acptpsnid" visibility="hidden"/>
  1472. <col ref="acptpsnnm" visibility="hidden"/>
  1473. <col checkvalue="Y,N" type="checkbox" visibility="hidden"/>
  1474. <col ref="acptdeptcd" visibility="hidden"/>
  1475. <col ref="acptdeptnm" visibility="hidden"/>
  1476. <col disabled="true" ref="workstat" type="combo" style="text-align:center; ">
  1477. <choices>
  1478. <item>
  1479. <label>청구승인의뢰</label>
  1480. <value>00</value>
  1481. </item>
  1482. <item>
  1483. <label>수리의뢰</label>
  1484. <value>01</value>
  1485. </item>
  1486. <item>
  1487. <label>수리중</label>
  1488. <value>03</value>
  1489. </item>
  1490. <item>
  1491. <label>외부수리</label>
  1492. <value>10</value>
  1493. </item>
  1494. <item>
  1495. <label>수리완료</label>
  1496. <value>04</value>
  1497. </item>
  1498. <item>
  1499. <label>수리불가</label>
  1500. <value>08</value>
  1501. </item>
  1502. <item>
  1503. <label>재고지급</label>
  1504. <value>09</value>
  1505. </item>
  1506. </choices>
  1507. </col>
  1508. <col ref="fixasetcd" style="text-align:center; "/>
  1509. <col disabled="true" ref="fixasetnm"/>
  1510. <col ref="itemnm" visibility="hidden"/>
  1511. <col disabled="true" ref="goodmodel"/>
  1512. <col ref="goodspec" visibility="hidden"/>
  1513. <col ref="depthngnm"/>
  1514. <col ref="hdrncspec" visibility="hidden"/>
  1515. <col ref="rpirflag1" visibility="hidden"/>
  1516. <col ref="rpirflag2" visibility="hidden"/>
  1517. <col ref="useyn" visibility="hidden"/>
  1518. <col ref="lastrpirstat" visibility="hidden"/>
  1519. <col ref="acptpsncnfm" visibility="hidden"/>
  1520. <col ref="deptacptdd" visibility="hidden"/>
  1521. <col ref="deptacptpsnid" visibility="hidden"/>
  1522. <col ref="deptacptpsnnm" visibility="hidden"/>
  1523. <col ref="rpiramt" visibility="hidden"/>
  1524. <col ref="cmt" visibility="hidden"/>
  1525. <col ref="rpirenddd" visibility="hidden"/>
  1526. <col ref="chrgtel" visibility="hidden"/>
  1527. <col ref="sanctyn" visibility="hidden"/>
  1528. <col ref="chrgpsncmt" visibility="hidden"/>
  1529. <col ref="sanctdd" visibility="hidden"/>
  1530. <col ref="nonworkdayno" visibility="hidden"/>
  1531. <col ref="emaildeliveyn" visibility="hidden"/>
  1532. <col ref="reqpsnid" visibility="hidden"/>
  1533. <col disabled="true" ref="reqpsnnm" style="text-align:center; "/>
  1534. <col ref="deptaprvpsnid" visibility="hidden"/>
  1535. <col ref="deptaprvpsnnm"/>
  1536. <col ref="deptaprvdd" visibility="hidden"/>
  1537. <col ref="lastrpirrslt" visibility="hidden"/>
  1538. <col ref="custcd" visibility="hidden"/>
  1539. <col ref="reqtel" visibility="hidden"/>
  1540. <col ref="bugtyy" visibility="hidden"/>
  1541. <col ref="bugtcd" visibility="hidden"/>
  1542. <col ref="stdysubjno" visibility="hidden"/>
  1543. <col ref="stdysubjnm" visibility="hidden"/>
  1544. <col ref="acptflag" visibility="hidden"/>
  1545. <col ref="installplcenm" visibility="hidden"/>
  1546. <col ref="deptaprvreqyn" visibility="hidden"/>
  1547. <col ref="execdept" visibility="hidden"/>
  1548. <col ref="bizscrnid" visibility="hidden"/>
  1549. <col ref="reqflag" visibility="hidden"/>
  1550. <col ref="attfilenm" visibility="hidden"/>
  1551. <col ref="attfilepathnm" visibility="hidden"/>
  1552. <script type="javascript" ev:event="onrowchanged">
  1553. <![CDATA[
  1554. fmoveCheck();
  1555. grd_rfehemhtlist.dispatch("onmouseup");
  1556. // model.refresh();
  1557. // fcontrolEnableYN(false);
  1558. ]]>
  1559. </script>
  1560. <script type="javascript" ev:event="xforms-value-changed">
  1561. <![CDATA[
  1562. //20081108 승인처리를 버튼으로 일괄처리하도록 변경
  1563. if(grd_rfehemhtlist.col == grd_rfehemhtlist.colRef("deptaprvyn"))
  1564. {
  1565. if(grd_rfehemhtlist.valueMatrix(grd_rfehemhtlist.row, grd_rfehemhtlist.colRef("deptaprvyn")) == "Y")
  1566. {
  1567. cmb_workstat.value = "01";
  1568. model.setValue("/root/main/control/rfehemhtlist/deptaprvyn", "Y");
  1569. ipt_deptaprvdd.value = getCurrentDate().substr(0, 8);
  1570. ipt_deptaprvpsnid.value = getUserInfo("userid");
  1571. ipt_deptaprvpsnnm.value = getUserInfo("usernm");
  1572. model.refresh();
  1573. }else{
  1574. cmb_workstat.value = "00";
  1575. model.setValue("/root/main/control/rfehemhtlist/deptaprvyn", "N");
  1576. ipt_deptaprvdd.value = "";
  1577. ipt_deptaprvpsnid.value = "";
  1578. ipt_deptaprvpsnnm.value = "";
  1579. model.refresh();
  1580. }
  1581. }
  1582. ]]>
  1583. </script>
  1584. <script type="javascript" ev:event="onaftersort">
  1585. <![CDATA[
  1586. grd_rfehemhtlist.gridToInstance();
  1587. ]]>
  1588. </script>
  1589. </datagrid>
  1590. <datagrid id="grd_reqpsnlist" nodeset="/root/main/grid/reqpsnlist" visibility="hidden" caption="청구부서^사원명^청구승인" colsep="^" mergecellsfixedrows="bycolrec" rowsep="|" navindex="15" style="left:130px; top:210px; width:350px; height:70px; ">
  1591. <col ref="reqdeptcd"/>
  1592. <col ref="emplnm"/>
  1593. <col ref="reqaprvflagnm"/>
  1594. </datagrid>
  1595. <caption id="caption7" style="left:358px; top:47px; width:167px; height:20px; ">* 행추가는 비품코드 더블클릭</caption>
  1596. <caption id="caption8" class="cell_1" visibility="visible" style="left:697px; top:388px; width:58px; height:23px; vertical-align:middle; ">첨부파일</caption>
  1597. <input id="ipt_attfilenm" ref="/root/main/control/rfehemhtlist/attfilenm" class="input_default" disabled="true" navindex="45" visibility="visible" style="left:756px; top:390px; width:253px; height:19px; "/>
  1598. <button id="btn_downfile" class="btn2_letter8" navindex="47" visibility="visible" style="left:1086px; top:390px; width:108px; height:19px; ">
  1599. <caption>파일수정/다운로드</caption>
  1600. <script type="javascript" ev:event="DOMActivate">
  1601. <![CDATA[
  1602. //첨부파일이 있는 경우에만 파일 다운로드하는 기능
  1603. // if ( ipt_attfilenm.value != '')
  1604. // {
  1605. //첨부파일 다운로드함수 호출
  1606. fAttfileDown();
  1607. // }else{
  1608. // messageBox("첨부된 파일이 없어서 다운로드 할수" , "I004");
  1609. // }
  1610. ]]>
  1611. </script>
  1612. </button>
  1613. <button id="btn_addfile" class="btn2_letter5" navindex="46" visibility="visible" style="left:1010px; top:390px; width:75px; height:19px; ">
  1614. <caption>파일업로드</caption>
  1615. <script type="javascript" ev:event="DOMActivate">
  1616. <![CDATA[
  1617. //첨부파일이 이미 있다면 파일 업로드 가 안되도록 막아버리자.
  1618. if ( model.getValue( ipt_attfilenm.attribute("ref")).length > 0) {
  1619. messageBox( "이미 첨부파일이 존재하여 첨부파일을 저장할수" , "I004" );
  1620. return;
  1621. }
  1622. //행추가를 통한 비품신규청구일경우 파일 업로드막기(저장후에 업로드가능해짐)
  1623. //fixasetcd
  1624. ///root/main/grid/rfehemhtlist
  1625. //ghgh
  1626. //alert(grd_rfehemhtlist.row);
  1627. //alert(model.getValue("/root/main/grid/rfehemhtlist["+grd_rfehemhtlist.row+"]/fixasetcd"));
  1628. if (model.getValue("/root/main/grid/rfehemhtlist["+grd_rfehemhtlist.row+"]/fixasetcd").length <=0 ) {
  1629. messageBox( "비품청구 저장후에 첨부파일 업로드 하실수" , "I010" );
  1630. return;
  1631. }
  1632. var files = window.fileDialog("open", "|", false);
  1633. var replacepath = "";
  1634. if ( files.length <= 0 ) return;
  1635. model.setValue(ipt_uploadfile.attribute("ref") , files); //전체파일경로와이름을 셋팅
  1636. var filename = files.substring(files.lastIndexOf('\\')+1 , files.length ); //파일이름만 나오게 문자정리
  1637. model.setValue(ipt_attfilenm.attribute("ref") , filename);
  1638. if (model.getValue( ipt_uploadfile.attribute("ref") ).length >0 && model.getValue( ipt_attfilenm.attribute("ref") ).length>0 ) {
  1639. fAttfileAdd(); //첨부파일 서버로 저장하는 메소드 호출
  1640. }
  1641. //btn_search.dispatch("DOMActivate");
  1642. model.refresh();
  1643. ]]>
  1644. </script>
  1645. </button>
  1646. <upload id="upd_uploadfile" nodeset="/root/send/fileupcolumn/fileupload/file" filecount="5" validate="true" style="left:985px; top:365px; width:25px; height:20px; "/>
  1647. <line id="line3" class="line_2" style="x1:695px; y1:387px; x2:1190px; y2:387px; "/>
  1648. <input id="ipt_uploadfile" ref="/root/send/fileupcolumn/fileupload/file" navindex="43" visibility="hidden" style="left:1000px; top:365px; width:35px; height:19px; "/>
  1649. <caption id="caption9" class="cell_1" style="left:697px; top:146px; width:90px; height:23px; vertical-align:middle; ">담당부서</caption>
  1650. <line id="line16" class="line_2" style="x1:698px; y1:560px; x2:1193px; y2:560px; "/>
  1651. <caption id="caption10" class="search_name" style="left:355px; top:400px; width:93px; height:17px; ">자산명 :</caption>
  1652. <input id="input1" ref="/root/send/goodsrch/goodflaghngnm" class="input_search" disabled="false" navindex="15" appearance="input" style="left:431px; top:400px; width:130px; height:19px; ">
  1653. <script type="javascript" ev:event="xforms-value-changed">
  1654. <![CDATA[
  1655. ]]>
  1656. </script>
  1657. <script type="javascript" ev:event="onkeydown">
  1658. <![CDATA[
  1659. ]]>
  1660. </script>
  1661. </input>
  1662. <input id="input2" ref="/root/send/goodsrch/fixasetcd" disabled="false" navindex="14" appearance="input" style="left:274px; top:400px; width:80px; height:19px; ">
  1663. <script type="javascript" ev:event="xforms-value-changed">
  1664. <![CDATA[
  1665. ]]>
  1666. </script>
  1667. <script type="javascript" ev:event="onkeyup">
  1668. <![CDATA[
  1669. ]]>
  1670. </script>
  1671. </input>
  1672. <caption id="caption11" class="search_name" style="left:185px; top:400px; width:93px; height:17px; ">자산코드 :</caption>
  1673. <button id="btn_goodsearch" class="btn5_letter3" navindex="16" visibility="visible" style="left:570px; top:400px; width:53px; height:19px; ">
  1674. <caption>조회</caption>
  1675. <script type="javascript" ev:event="DOMActivate">
  1676. <![CDATA[
  1677. model.setValue("/root/send/goodsrch/instcd", getUserInfo("dutplceinstcd"));
  1678. model.setValue("/root/send/goodsrch/mngtdeptcd", opt_reqdeptcd.value);
  1679. model.setValue("/root/send/goodsrch/goodflag", "GE");
  1680. submit("TRRSE01502");
  1681. model.refresh();
  1682. ]]>
  1683. </script>
  1684. </button>
  1685. </group>
  1686. <group id="group4" style="left:0px; top:12px; width:1195px; height:27px; ">
  1687. <button id="button27" class="btn6_letter2" navindex="50" visibility="visible" style="left:0px; top:3px; width:56px; height:22px; ">
  1688. <caption>출력</caption>
  1689. <script type="javascript" ev:event="DOMActivate">
  1690. <![CDATA[
  1691. model.copyNode("/root/main/printdata/data", grd_rfehemhtlist.attribute("nodeset") + "[" + grd_rfehemhtlist.row + "]");
  1692. model.removenode("/root/main/printdata/data/instnm");
  1693. model.makeNode("/root/main/printdata/data/instnm");
  1694. model.setValue("/root/main/printdata/data/instnm", opt_instcdnm.value);
  1695. var instcd = model.getValue("/root/main/grid/rfehemhtlist/instcd");
  1696. //exeReportPreview("RPRFE00411", "XMLSTR");
  1697. //exeReportPreview("RPRFE00601", "XMLSTR");
  1698. exeReportPreview("RPRFE00801", "XMLSTR");
  1699. ]]>
  1700. </script>
  1701. </button>
  1702. <button id="btn_init" class="btn4_letter3" navindex="52" style="left:1127px; top:3px; width:68px; height:22px; ">
  1703. <caption>초기화</caption>
  1704. <script type="javascript" ev:event="DOMActivate">
  1705. <![CDATA[
  1706. fInitialize();
  1707. ]]>
  1708. </script>
  1709. </button>
  1710. <line id="line9" class="line_6" style="x1:0px; y1:25px; x2:1195px; y2:25px; "/>
  1711. <button id="btn_save" class="btn4_letter2" navindex="51" style="left:1069px; top:3px; width:56px; height:22px; ">
  1712. <caption>저장</caption>
  1713. <script type="javascript" ev:event="DOMActivate">
  1714. <![CDATA[
  1715. if(messageBox("", "Q002") == "6")
  1716. {
  1717. //var i = grd_rfehemhtlist.row;
  1718. model.setValue( "/root/main/control/rfehemhtlist/attfilepathnm" , model.getValue( "/root/send/fileupcolumn/fileupload/file" ) );
  1719. if(fupdateCheckSave()){
  1720. btn_search.dispatch("DOMActivate");
  1721. }
  1722. }
  1723. ]]>
  1724. </script>
  1725. </button>
  1726. </group>
  1727. </xhtml:body>
  1728. </xhtml:html>