SPPAO00501_현금영수증승인.xrw 131 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SPPAO00500_현금영수증승인.xrw
  4. * 설 명 : 현금승인 => 승인 단계는 수납시에 처리한다[CMC]
  5. * 설 계 자 : 유정란
  6. * 작 성 자 : 유정란
  7. * 작 성 일 : 2007.06.05
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  12. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  13. <xhtml:head>
  14. <xhtml:title>현금영수증승인</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <iptflag>
  20. <cashedit/>
  21. <cashallinfo/>
  22. <aprvfromdd/>
  23. <cashaprv/>
  24. <svancncl/>
  25. <ioflag/>
  26. <aprvsrchflag>-</aprvsrchflag>
  27. <oldaprvno/>
  28. <aprvtodd/>
  29. <vanflag/>
  30. <receiptyn/>
  31. </iptflag>
  32. <cash>
  33. <totrcptamt/>
  34. <totcashamt/>
  35. <subtotalamt/>
  36. </cash>
  37. <cash2>
  38. <cash_pid/>
  39. <cash_rcptdd/>
  40. <cash_rcptno/>
  41. <cash_rcptseqno/>
  42. <cash_seqno/>
  43. <cash_instcd/>
  44. <cash_rcptstat/>
  45. <cash_ordtype/>
  46. <cash_keyinptflag/>
  47. <cash_indinstflag/>
  48. <cash_qualcnfmflag/>
  49. <cash_qualcnfmno/>
  50. <cash_aprvflag/>
  51. <cash_aprvno/>
  52. <cash_aprvdd/>
  53. <cash_aprvtm/>
  54. <cash_cashamt/>
  55. <cash_rcptexecdd/>
  56. <cash_rcpttm/>
  57. <cash_rcptrid/>
  58. <cash_preamtyn/>
  59. <cash_innrtretyn/>
  60. <cash_remfact/>
  61. <cash_fstrgstrid/>
  62. <cash_fstrgstdt/>
  63. <cash_lastupdtrid/>
  64. <cash_lastupdtdt/>
  65. </cash2>
  66. <h_svan>
  67. <svan>
  68. <svan_chk/>
  69. <svan_pid/>
  70. <svan_aprvflag/>
  71. <svan_aprvdd/>
  72. <svan_aprvtm/>
  73. <svan_aprvno/>
  74. <svan_instcd/>
  75. <svan_vancd/>
  76. <svan_keyinptflag/>
  77. <svan_indinstflag/>
  78. <svan_qualcnfmflag/>
  79. <svan_qualcnfmno/>
  80. <svan_cashamt/>
  81. <svan_trmnno/>
  82. <svan_rcptexecdd/>
  83. <svan_rcpttm/>
  84. <svan_rcptrid/>
  85. <svan_remfact/>
  86. <svan_fstrgstrid/>
  87. <svan_fstrgstdt/>
  88. <svan_lastupdtrid/>
  89. <svan_lastupdtdt/>
  90. </svan>
  91. </h_svan>
  92. <h_cash>
  93. <cash>
  94. <cash_pid/>
  95. <cash_rcptdd/>
  96. <cash_rcptno/>
  97. <cash_rcptseqno/>
  98. <cash_seqno/>
  99. <cash_instcd/>
  100. <cash_rcptstat/>
  101. <cash_ordtype/>
  102. <cash_keyinptflag/>
  103. <cash_indinstflag/>
  104. <cash_qualcnfmflag/>
  105. <cash_qualcnfmno/>
  106. <cash_aprvflag/>
  107. <cash_aprvno/>
  108. <cash_aprvdd/>
  109. <cash_aprvtm/>
  110. <cash_cashamt/>
  111. <cash_rcptexecdd/>
  112. <cash_rcpttm/>
  113. <cash_rcptrid/>
  114. <cash_preamtyn/>
  115. <cash_innrtretyn/>
  116. <cash_remfact/>
  117. <cash_fstrgstrid/>
  118. <cash_fstrgstdt/>
  119. <cash_lastupdtrid/>
  120. <cash_lastupdtdt/>
  121. </cash>
  122. </h_cash>
  123. <m_opmi>
  124. <opmi/>
  125. </m_opmi>
  126. </main>
  127. <send>
  128. <data1/>
  129. <data2/>
  130. <data3/>
  131. <data4/>
  132. </send>
  133. <init>
  134. <P0390list>
  135. <P0390/>
  136. </P0390list>
  137. <P0073list>
  138. <P0073/>
  139. </P0073list>
  140. <P0354list>
  141. <P0354/>
  142. </P0354list>
  143. <P0049list>
  144. <P0049/>
  145. </P0049list>
  146. <P0001list>
  147. <P0001/>
  148. </P0001list>
  149. </init>
  150. <hidden>
  151. <session/>
  152. <cardaprvresult/>
  153. </hidden>
  154. <init_pam>
  155. <init>
  156. <P0032list>
  157. <P0032>
  158. <cdid/>
  159. <cdnm/>
  160. </P0032>
  161. </P0032list>
  162. </init>
  163. </init_pam>
  164. </root>
  165. </instance>
  166. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  167. <submission id="TXPAC00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/tmp"/>
  168. <submission id="TXPAO00552" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/n_svan/svan" resultref="/root/main/h_svan"/>
  169. <submission id="TRPAO00551" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/h_svan"/>
  170. <submission id="TRPAO00005" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/magm/magminfo" resultref="/root/magm/aprvinfo"/>
  171. <submission id="TRPAO00006" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/rcptuser/rcptuserinfosend" resultref="/root/rcptuser/rcptuserinfo"/>
  172. <submission id="TRPAM00105" mediatype="application/x-www-form-urlencoded" method="post"/>
  173. </model>
  174. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  175. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  176. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  177. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  178. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  179. <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
  180. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  181. <script type="javascript" src="../../../pam/opatmngtweb/js/PMOCOM.js"/>
  182. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  183. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM001.js"/>
  184. <script type="javascript" ev:event="xforms-ready">
  185. <![CDATA[
  186. if (checkOpener()){
  187. gFLAG = opener.javascript.getParameter("SPPAO00500_FLAG");
  188. //opener.javascript.setParameter("SPPAO00500_FLAG", '');
  189. if( gFLAG == 'I' ){
  190. //fAutoGetcashAprv();
  191. }else if( gFLAG == 'D' ){
  192. //fAutoCnclcashAprv();
  193. }else{
  194. fInit();
  195. }
  196. }
  197. //fInit();
  198. //fGetUserInfosSampling();
  199. ]]>
  200. </script>
  201. <script type="javascript" ev:event="xforms-close">
  202. <![CDATA[
  203. if (checkOpener()){
  204. //노드복사
  205. fCopyCashNodes();
  206. var SPPAO00500_RTN = opener.javascript.getParameter("SPPAO00500_RTN");
  207. var totcashamt = parseInt(model.getValue("/root/main/cash/totcashamt") );
  208. if( SPPAO00500_RTN != 'Y' ){
  209. if (ExistCashCount != getNodesetCount("/root/main/h_cash/cash/cash_pid")) {
  210. messageBox("현금영수증내역이 변경되었습니다. 변경된 내역을 메인창으로 복사합니다!", "E999", "");
  211. opener.javascript.setParameter("SPPAO00500_RTN", "Y");
  212. opener.javascript.setParameter("SPPAO00500_TotCashAmt",totcashamt);
  213. return false;
  214. }
  215. }
  216. }
  217. ]]>
  218. </script>
  219. <script type="javascript">
  220. <![CDATA[
  221. var gMulticnt, gMultiSend, gRcptdd, gRcptno, gRcptseqno, gTotrcptamt,
  222. strSend, strRcv, gPid, gQualcnfmflag, gQualcnfmno, gIndinstflag, gOrdtype,
  223. gKeyInptFlag, gSwipeData, gFLAG;
  224. var ExistCashCount;
  225. function fInit()
  226. {
  227. //임시 ***************************************************************************************************************//
  228. //model.setValue("/root/hidden/tmpvanyn","Y");
  229. //임시 ***************************************************************************************************************//
  230. //공통코드조회
  231. zbcfGetCodeList(
  232. new Array("P0390","P0073","P0354", "P0049", "P0001"),
  233. new Array("/root/init/P0390list"
  234. ,"/root/init/P0073list"
  235. ,"/root/init/P0354list"
  236. ,"/root/init/P0049list"
  237. ,"/root/init/P0001list"
  238. )
  239. );
  240. pamfGetCodeList(new Array("P0032"),new Array("/root/init_pam/init/P0032list"));
  241. model.resetInstanceNode("/root/main/iptflag");
  242. model.resetInstanceNode("/root/main/cash");
  243. model.resetInstanceNode("/root/main/cash2");
  244. model.removeNodeset("/root/main/h_svan/svan");
  245. model.removeNodeset("/root/main/h_cash/cash");
  246. model.removeNodeset("/root/main/m_opmi/opmi");
  247. model.setValue("/root/main/iptflag/cashedit","");
  248. model.setValue("/root/main/cash/totrcptamt","0");
  249. model.setValue("/root/main/cash/totcashamt","0");
  250. model.setValue("/root/main/cash/subtotalamt","0");
  251. model.setValue("/root/main/cash2/cash_keyinptflag","K");
  252. model.setValue("/root/main/cash2/cash_qualcnfmflag","1");
  253. model.setValue("/root/main/cash2/cash_indinstflag","00");
  254. model.setValue("/root/main/cash2/cash_cashamt","0");
  255. //2015/11/02 이정택 수정
  256. swt_cashlist.selectedIndex = 0;
  257. btn_cashvan.selected = true;
  258. btn_cashrcpt.selected = false;
  259. /*
  260. swt_cashlist.selectedIndex = 1;
  261. btn_cashvan.selected = false;
  262. btn_cashrcpt.selected = true;
  263. */
  264. //2015/11/02 이정택 수정
  265. model.setFocus("ipt_qualcnfmno");
  266. //2008-06-02 이동식 추가
  267. btn_makecashaprv.visible = false;
  268. btn_cashaprv.visible = true;
  269. btn_cashcncl.visible = true;
  270. // ICPos 적용 관연 vanflag는 필수처리
  271. model.setValue("/root/main/iptflag/vanflag", model.getValue("/root/init_pam/init/P0032list/P0032[cdid = '200']/cdnm"));
  272. // KOVAN - KOCES 이관작업 관련 : PAM로긴한 경우에만 보임
  273. // pam으로 로그인시에는 기준자료 체크하여 카드 밴사 선택하도록 수정(2017/10/24)
  274. if (getUserInfo("userid") == "PAM") {
  275. rdo_valflag.visible = true;
  276. var P0032_400 = model.getValue("/root/init_pam/init/P0032list/P0032[cdid = '400']/cdnm")
  277. if(!isNull(P0032_400)){
  278. model.setValue("/root/main/iptflag/vanflag", P0032_400);
  279. }else{
  280. model.setValue("/root/main/iptflag/vanflag", model.getValue("/root/init_pam/init/P0032list/P0032[cdid = '200']/cdnm"));
  281. }
  282. }
  283. opener.javascript.setParameter("SPPAO00500_RTN","");
  284. var SPPAO00500_PARM = opener.javascript.getParameter("SPPAO00500_PARM");
  285. var array_parm = SPPAO00500_PARM.split("▦");
  286. gMulticnt = array_parm[0]; //외래등록의 멀티접수인 경우만 해당멀티건수 나머지는 default '0'으로 세팅
  287. gMultiSend = array_parm[1]; //외래등록 멀티접수인 경우만 각각의 본인부담액을 보낸다. 나머지는 '-'
  288. gTotrcptamt = array_parm[2];
  289. strSend = array_parm[3];
  290. strRcv = array_parm[4];
  291. gPid = array_parm[5];
  292. gOrdtype = array_parm[6];
  293. gIndinstflag = array_parm[7];
  294. gQualcnfmno = array_parm[8];
  295. gKeyInptFlag = array_parm[9];
  296. //gOrdtype = array_parm[11];
  297. gSwipeData = array_parm[10];
  298. gQualcnfmflag = array_parm[11];
  299. gFLAG = opener.javascript.getParameter("SPPAO00500_FLAG");
  300. if (isNaN(gTotrcptamt))
  301. {
  302. messageBox("수납대상금액이 수치형이 아닙니다!","E999","");
  303. //return;
  304. }
  305. else
  306. {
  307. model.setValue("/root/main/cash/totrcptamt",gTotrcptamt);
  308. fCashamtCalc();
  309. }
  310. if (strSend != null && strSend != "" && strSend != " " && strSend != "-")
  311. {
  312. copyNodesetType("/root/main/h_cash", strSend, "replace", model, opener.model);
  313. //넘겨준 현금영수증 노드 수 저장
  314. ExistCashCount = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  315. fCashamtCalc();
  316. }else{
  317. ExistCashCount = 0;
  318. }
  319. if (gMultiSend != null && gMultiSend != "" && gMultiSend != " " && gMultiSend != "-")
  320. {
  321. copyNodesetType("/root/main/m_opmi", gMultiSend, "replace", model, opener.model);
  322. }
  323. // model.setValue("/root/main/cash2/cash_cashamt",gTotrcptamt.toString());
  324. // model.refresh();
  325. opener.javascript.setParameter("SPPAO00500_PARM","");
  326. opener.javascript.setParameter("SPPAO00500_FLAG","");
  327. //2015/11/02 이정택
  328. //model.makeValue("/root/main/iptflag/aprvfromdd", getDateTime(getCurrentDate().toDate().getAddDate(-1, "Y"), "D"));
  329. model.setValue("/root/main/iptflag/aprvfromdd", getCurrentDate().substr(0,4)+"0101");
  330. //2015/11/02 이정택
  331. model.setValue("/root/main/iptflag/aprvtodd", getCurrentDate());
  332. model.setValue("/root/main/iptflag/ioflag", gOrdtype);
  333. model.setValue("/root/main/iptflag/aprvsrchflag", '-');
  334. //현금영수증 승인정보 조회
  335. //외래/입원 카드밴 정보 조회
  336. //if( gFLAG != 'I' && gFLAG != 'D' ){
  337. //if( gFLAG != 'I' ){
  338. model.resetInstanceNode("/root/send");
  339. fSubmitBefore();
  340. fSubmitAfter();
  341. model.setValue("/root/send/data1", gPid);
  342. model.setValue("/root/send/data3", gOrdtype); //외래/입원구분
  343. //model.setValue("/root/send/data4", '42'); //승인내역
  344. model.setValue("/root/send/data2", model.getValue("/root/main/iptflag/aprvfromdd"));
  345. model.setValue("/root/send/data5", model.getValue("/root/main/iptflag/aprvtodd"));
  346. model.setValue("/root/send/data4", model.getValue("/root/main/iptflag/aprvsrchflag"));
  347. //2015/11/02 이정택 수정
  348. //2008-01-16 이동식 추가 - 카드승인 전체 조회
  349. //model.setValue("/root/send/data2", getCurrentDate());
  350. if( submit("TRPAO00551", false) ){
  351. }
  352. //}
  353. //이동식 추가..
  354. if (gIndinstflag != null && gIndinstflag != "" && gIndinstflag != " " && gIndinstflag != "-" &&
  355. gQualcnfmflag != null && gQualcnfmflag != "" && gQualcnfmflag != " " && gQualcnfmflag != "-" &&
  356. gTotrcptamt != null && gTotrcptamt != "" && gTotrcptamt != " " && gTotrcptamt != "-" &&
  357. gQualcnfmno != null && gQualcnfmno != "" && gQualcnfmno != " " && gQualcnfmno != "-")
  358. {
  359. //신분확인구분이 사업자번호일때 지출증빙 세팅한다.
  360. if( gQualcnfmflag == '4' ){
  361. model.setValue("/root/main/cash2/cash_indinstflag" ,'01'); //지출증빙
  362. }else{
  363. model.setValue("/root/main/cash2/cash_indinstflag" ,gIndinstflag);
  364. }
  365. model.setValue("/root/main/cash2/cash_qualcnfmflag" ,gQualcnfmflag);
  366. model.setValue("/root/main/cash2/cash_qualcnfmno" ,gQualcnfmno);
  367. if( gKeyInptFlag != '' && gKeyInptFlag != ' ' && gKeyInptFlag != '-' ){
  368. model.setValue("/root/main/cash2/cash_keyinptflag" , gKeyInptFlag);
  369. //model.setValue("/root/main/cash/swipedata" , gSwipeData);
  370. }else{
  371. model.setValue("/root/main/cash2/cash_keyinptflag" ,'K');
  372. }
  373. //model.refresh();
  374. }
  375. model.refresh();
  376. }
  377. function fInit2()
  378. {
  379. model.resetInstanceNode("/root/main/cash2");
  380. //model.setValue("/root/main/cash/swipedata", "");
  381. var subtotalamt = parseInt(model.getValue("/root/main/cash/totrcptamt")) - parseInt(model.getValue("/root/main/cash/totcashamt"));
  382. model.setValue("/root/main/cash/subtotalamt", subtotalamt);
  383. model.setValue("/root/main/cash2/cash_cashamt",subtotalamt);
  384. model.setValue("/root/main/iptflag/cashedit","");
  385. checkbox1.dispatch("xforms-value-changed");
  386. model.setValue("/root/main/cash2/cash_keyinptflag","S");
  387. model.setValue("/root/main/cash2/cash_qualcnfmflag","1");
  388. model.setValue("/root/main/cash2/cash_indinstflag","00");
  389. model.setValue("/root/main/cash2/cash_cashamt","0");
  390. model.makeValue("/root/main/cash/subtotalamt", "0");
  391. //2015/11/02 이정택 주석처리(현금 승인취소 후 날짜가 변해버리는 오류 방지)
  392. /*
  393. model.setValue("/root/main/iptflag/aprvfromdd", getCurrentDate());
  394. model.setValue("/root/main/iptflag/aprvtodd", getCurrentDate());
  395. */
  396. // 2015/11/02 이정택(현금영수증 승인 및 취소 후 자동 재조회)
  397. button1.dispatch("DOMActivate");
  398. model.refresh();
  399. }
  400. function fCashamtCalc()
  401. {
  402. var rowcnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  403. var cash_cashamt = 0;
  404. var totrcptamt = model.getValue("/root/main/cash/totrcptamt");
  405. if (rowcnt > 0)
  406. {
  407. for (i = 1; i <= rowcnt; i++)
  408. {
  409. if( gOrdtype.toUpperCase( ) != 'O' ){
  410. if( model.getValue("/root/main/h_cash/cash["+ i +"]/cash_rcptdd") == ''
  411. || model.getValue("/root/main/h_cash/cash["+ i +"]/cash_rcptdd") == ' '
  412. || model.getValue("/root/main/h_cash/cash["+ i +"]/cash_rcptdd") == '-' ){
  413. cash_cashamt = parseInt(cash_cashamt) + parseInt(model.getValue("/root/main/h_cash/cash["+ i +"]/cash_cashamt"));
  414. }
  415. }else{
  416. cash_cashamt = parseInt(cash_cashamt) + parseInt(model.getValue("/root/main/h_cash/cash["+ i +"]/cash_cashamt"));
  417. }
  418. // cash_cashamt = parseInt(cash_cashamt) + parseInt(model.getValue("/root/main/h_cash/cash["+ i +"]/cash_cashamt"));
  419. }
  420. /*
  421. if (checkOpener()){
  422. if (parseInt(totrcptamt) < parseInt(cash_cashamt))
  423. {
  424. messageBox("현금총액이 수납금액을 초과합니다!","E999","");
  425. }
  426. }
  427. */
  428. model.setValue("/root/main/cash/totcashamt",cash_cashamt);
  429. model.setValue("/root/main/cash2/cash_cashamt", parseInt(totrcptamt) - parseInt(cash_cashamt) );
  430. }
  431. else{
  432. model.setValue("/root/main/cash/totcashamt","0");
  433. model.setValue("/root/main/cash2/cash_cashamt", parseInt(totrcptamt) );
  434. }
  435. model.refresh();
  436. }
  437. //2007-10-10 이동식 추가 - 카드승인
  438. function fGetCashAprv(){
  439. //카드 승인금액이 있을 경우에 승인
  440. var vcashamt = parseInt(model.getValue("/root/main/cash2/cash_cashamt"));
  441. if( vcashamt != 0 ){
  442. //현금영수증승인
  443. //입원은 승인 따지 않는다.
  444. //if( gOrdtype == 'O' ){
  445. //현금영수증 승인
  446. //swipe 데이타 읽어, 입력구분 세팅
  447. fAppCardVanData("03" //data1 vangb van사구분
  448. ,"41" //data2 ordergb 거래구분 41:현금영수증승인
  449. ,getCurrentDate() //data3 mdate 회계일자
  450. ,gPid //data4 pano 등록번호
  451. ,gOrdtype //data5 iogb 입외구분
  452. ,"" //data6 deptcode 진료과코드
  453. ,"" //data7 diagdate 진료일자
  454. ,model.getValue("/root/hidden/session/sess_userid") //data8 clientid 수납자
  455. ,model.getValue("/root/main/cash2/cash_keyinptflag") //data9 entrymode 입력구분
  456. ,gSwipeData //data10 track2data 트랙data
  457. ,model.getValue("/root/main/cash2/cash_qualcnfmno") //data11 신분확인번호
  458. ,model.getValue("/root/main/cash2/cash_qualcnfmflag") //data12 신분확인구분
  459. ,model.getValue("/root/main/cash2/cash_indinstflag") //data13 개인법인구분
  460. ,vcashamt //data14 netamt 금액
  461. ,"" //data15 oldappdate 원거래승인일자(취소시)
  462. ,"" //data16 oldapptime 원거래승인시간(취소시)
  463. ,"" //data17 oldappno 원거래승인번호(취소시)
  464. ,"" //data18
  465. ,"" //data19
  466. ,"" //data20
  467. ,model.getValue("/root/main/iptflag/vanflag") //data21 VAN구분
  468. );
  469. if (model.getValue("/root/tmp/appvanif/replystat") != "0000" ) {
  470. messageBox("현금영수증승인실패 => "+ model.getValue("/root/tmp/appvanif/cashname") ,"E999","");
  471. return false;
  472. }
  473. //}
  474. //현금영수증 승인시 전표 출력토록 프로그램 수정 ( 2017/10/30)
  475. if (model.getValue("/root/main/iptflag/receiptyn") == "Y") {
  476. model.removeNodeset("/root/temp/receipt");
  477. model.makevalue("/root/temp/receipt/pid" , gPid);
  478. model.makevalue("/root/temp/receipt/aprvflag" , "42");
  479. model.makevalue("/root/temp/receipt/aprvdd" , model.getValue("/root/tmp/appvanif/approvaldate"));
  480. model.makevalue("/root/temp/receipt/aprvtm" , model.getValue("/root/tmp/appvanif/approvaltime"));
  481. model.makevalue("/root/temp/receipt/aprvno" , model.getValue("/root/tmp/appvanif/approvalno"));
  482. model.makevalue("/root/temp/receipt/ordtype" , gOrdtype);
  483. model.makevalue("/root/temp/receipt/instcd" , model.getValue("/root/hidden/session/sess_posinstcd"));
  484. model.makevalue("/root/temp/receipt/ordtype", "카드전표재출력");
  485. modal("SPPAO01900", "1", "200", "200", "SPPAO01900", "", "");
  486. }
  487. //현금영수증 승인시 전표 출력토록 프로그램 수정 ( 2017/10/30)
  488. //2012-09-26
  489. //자동승인인 경우 차액 승인시 노드 생성하지 않는다.
  490. if( model.getValue("/root/main/iptflag/svancncl") == 'Y' ){
  491. return true;
  492. }
  493. //수납내역 별로 카드내역을 쪼갬
  494. var m_opmi = parseInt(getNodesetCount("/root/main/m_opmi/opmi/opmi_pid"));
  495. // var c_cash = parseInt(getNodesetCount("/root/main/c_cash/cash/cash_pid"));
  496. // var recashaprv = model.getValue("/root/main/iptflag/recashaprv");
  497. if( m_opmi > 0 ){
  498. for( var i = 1; i <= m_opmi; i++ ){
  499. // grd_cash.addItem();
  500. // currow = grd_cash.row;
  501. if( model.getValue("/root/main/m_opmi/opmi["+( i )+"]/opmi_cashamt") != 0 ){
  502. currow = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid")) + 1;
  503. model.removeNodeset("/root/main/h_cash/cash["+currow+"]");
  504. //카드승인정보는 추후 받아온 데이터 로 처리
  505. //model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvyn", 'Y');
  506. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_mseqno", model.getValue("/root/main/m_opmi/opmi["+( i )+"]/opmi_mseqno"));
  507. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_pid", gPid);
  508. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptdd", '');
  509. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptno", '0');
  510. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptseqno", '0');
  511. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", '0');
  512. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  513. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptstat", 'Y');
  514. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_ordtype", gOrdtype);
  515. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag")); //키입력구분
  516. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  517. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  518. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  519. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvflag", model.getValue("/root/tmp/appvanif/ordergb")); //42:현금영수증승인응답
  520. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvno", model.getValue("/root/tmp/appvanif/approvalno") ); //승인번호
  521. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvdd", model.getValue("/root/tmp/appvanif/approvaldate") ); //승인일자
  522. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvtm", model.getValue("/root/tmp/appvanif/approvaltime") ); //승인시간
  523. if( m_opmi == 1 ){
  524. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_cashamt", vcashamt); //카드금액
  525. }else{
  526. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_cashamt", model.getValue("/root/main/m_opmi/opmi["+( i )+"]/opmi_cashamt")); //카드금액
  527. }
  528. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptexecdd", '');
  529. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcpttm", '');
  530. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptrid", '');
  531. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_preamtyn", "N");
  532. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_innrtretyn", "N");
  533. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_remfact", '');
  534. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstrid", '');
  535. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstdt", '');
  536. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtrid", '');
  537. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtdt", '');
  538. }
  539. }
  540. }else {
  541. // grd_cash.addItem();
  542. // currow = grd_cash.row;
  543. currow = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid")) + 1;
  544. model.removeNodeset("/root/main/h_cash/cash["+currow+"]");
  545. //model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvyn", 'Y');
  546. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_pid", gPid);
  547. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptdd", '');
  548. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptno", '0');
  549. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptseqno", '0');
  550. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", '0');
  551. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  552. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptstat", 'Y');
  553. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_ordtype", gOrdtype);
  554. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag")); //키입력구분
  555. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  556. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  557. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  558. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvflag", model.getValue("/root/tmp/appvanif/ordergb")); //42:현금영수증승인응답
  559. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvno", model.getValue("/root/tmp/appvanif/approvalno") ); //승인번호
  560. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvdd", model.getValue("/root/tmp/appvanif/approvaldate") ); //승인일자
  561. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvtm", model.getValue("/root/tmp/appvanif/approvaltime") ); //승인시간
  562. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_cashamt", vcashamt); //카드금액
  563. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptexecdd", '');
  564. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcpttm", '');
  565. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptrid", '');
  566. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_preamtyn", "N");
  567. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_innrtretyn", "N");
  568. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_remfact", '');
  569. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstrid", '');
  570. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstdt", '');
  571. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtrid", '');
  572. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtdt", '');
  573. //2017/10/18 건진 카드/현금영수증 일원화 작업(이정택)
  574. if(gOrdtype=="H"){
  575. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_vancd", model.getValue("/root/tmp/appvanif/vangb"));
  576. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", model.getValue("/root/tmp/appvanif/seqno"));
  577. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_clientid", model.getValue("/root/tmp/appvanif/clientid"));
  578. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_replystat", model.getValue("/root/tmp/appvanif/replystat"));
  579. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_publishbank", model.getValue("/root/tmp/appvanif/publishbank"));
  580. }
  581. }
  582. grd_cash.rebuild();
  583. }else{
  584. messageBox("현금영수증 승인금액이 잘못 입력되었습니다. 현금영수증 승인금액을 확인하세요.", "E999", "");
  585. return false;
  586. }
  587. return true;
  588. }
  589. //END..
  590. //2007-12-10 이동식 추가
  591. //카드취소
  592. function fCnclCashAprv(){
  593. var svanCncl = model.getValue("/root/main/iptflag/svancncl");
  594. if( svanCncl != 'Y' ){
  595. //멀티 승인 내역 취소시 체크로직
  596. var aprvno = model.getValue("/root/main/cash2/cash_aprvno");
  597. var multiCnt = getNodesetCount("/root/main/h_cash/cash[ cash_aprvno = '" + aprvno + "' ]/cash_pid");
  598. if( multiCnt > 1 ){
  599. if( getNodesetCount("/root/main/m_opmi/opmi/opmi_pid") > 1 ){
  600. var totalCashAmt = 0;
  601. for( var i = 1; i <= getNodesetCount("/root/main/h_cash/cash/cash_pid"); i++ ){
  602. if( aprvno == model.getValue("/root/main/h_cash/cash[" + i + "]/cash_aprvno")){
  603. totalCashAmt = parseInt(totalCashAmt) + parseInt(model.getValue("/root/main/h_cash/cash[" + i + "]/cash_cashamt"));
  604. }
  605. }
  606. if( messageBox("멀티승인 취소: 총 승인취소 금액은 [" + totalCashAmt + "원] 입니다. 계속 진행하시겠습니까?", "Q999", "") != 6 ){
  607. return false;
  608. }
  609. model.setValue("/root/main/cash2/cash_cashamt", totalCashAmt);
  610. }else{
  611. messageBiox("취소하려는 현금영수증 승인번호와 같은 승인번호를 가진 승인내역이 2건 이상 있습니다. 정보지원팀에 문의하세요!!", "E999", "") ;
  612. return fasle;
  613. }
  614. }else if( multiCnt < 1 ){
  615. messageBox("취소하려는 현금영수증 승인번호와 같은 승인번호를 가진 승인내역이 존재하지 않습니다. 확인 후 다시 시도해 주세요", "E999", "") ;
  616. return fasle;
  617. }
  618. }
  619. var currow = grd_cash.row;
  620. var cashAmt = model.getValue("/root/main/cash2/cash_cashamt");
  621. vSwipeData = model.getValue("/root/main/cash2/cash_qualcnfmno")+"=";
  622. vSwipeData = vSwipeData.getRightPad(40, " ");
  623. //if( gOrdtype == 'O'){
  624. //카드승인 취소 처리
  625. fAppCardVanData("03" //data1 //vangb van사구분
  626. ,"51" //data2 //ordergb 거래구분 51:현금영수증취소
  627. ,getCurrentDate() //data3 //mdate 회계일자
  628. ,gPid //data4 //pano 등록번호
  629. ,gOrdtype //data5 //iogb 입외구분
  630. ,'' //data6 //deptcode 진료과코드
  631. ,'' //data7 //diagdate 진료일자
  632. ,model.getValue("/root/hidden/session/sess_userid") //data8 //clientid 수납자
  633. ,model.getValue("/root/main/cash2/cash_keyinptflag") //data9 //entrymode 입력구분
  634. ,vSwipeData //data10 //track2data 트랙data
  635. ,model.getValue("/root/main/cash2/cash_qualcnfmno") //data11 //신분확인번호
  636. ,model.getValue("/root/main/cash2/cash_qualcnfmflag") //data12 //신분확인구분
  637. ,model.getValue("/root/main/cash2/cash_indinstflag") //data13 //개인법인구분
  638. ,cashAmt //data14 //netamt 금액
  639. ,model.getValue("/root/main/cash2/cash_aprvdd") //data15 //oldappdate 원거래승인일자(취소시)
  640. ,model.getValue("/root/main/cash2/cash_aprvtm") //data16 //oldapptime 원거래승인시간(취소시)
  641. ,model.getValue("/root/main/cash2/cash_aprvno") //data17 //oldappno 원거래승인번호(취소시)
  642. ,"" //data18
  643. ,"" //data19
  644. ,"" //data20
  645. ,model.getValue("/root/main/iptflag/vanflag") //data21 VAN구분
  646. );
  647. if (model.getValue("/root/tmp/appvanif/replystat") != "0000" ) {
  648. messageBox("현금영수증승인실패 => "+ model.getValue("/root/tmp/appvanif/cashname") ,"E999","");
  649. return false;
  650. }
  651. //}
  652. //현금영수증 승인시 전표 출력토록 프로그램 수정 ( 2017/10/30)
  653. if (model.getValue("/root/main/iptflag/receiptyn") == "Y") {
  654. model.removeNodeset("/root/temp/receipt");
  655. model.makevalue("/root/temp/receipt/pid" , gPid);
  656. model.makevalue("/root/temp/receipt/aprvflag" , "52");
  657. model.makevalue("/root/temp/receipt/aprvdd" , model.getValue("/root/tmp/appvanif/approvaldate"));
  658. model.makevalue("/root/temp/receipt/aprvtm" , model.getValue("/root/tmp/appvanif/approvaltime"));
  659. model.makevalue("/root/temp/receipt/aprvno" , model.getValue("/root/tmp/appvanif/approvalno"));
  660. model.makevalue("/root/temp/receipt/ordtype" , gOrdtype);
  661. model.makevalue("/root/temp/receipt/instcd" , model.getValue("/root/hidden/session/sess_posinstcd"));
  662. model.makevalue("/root/temp/receipt/ordtype", "카드전표재출력");
  663. modal("SPPAO01900", "1", "200", "200", "SPPAO01900", "", "");
  664. }
  665. //현금영수증 승인시 전표 출력토록 프로그램 수정 ( 2017/10/30)
  666. //2008-01-02 이동식 추가 - 승인내역취소일 경우
  667. if( svanCncl == 'Y' ){
  668. return true;
  669. }
  670. //END...
  671. var m_opmi = getNodesetCount("/root/main/m_opmi/opmi/opmi_pid");
  672. var nodeCnt2 = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  673. if( m_opmi > 0 ){
  674. for (var i=1; i <= m_opmi ; i++) {
  675. for( var inner = 0; inner <= nodeCnt2; inner++ ){
  676. if( model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno") == model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_mseqno")
  677. && aprvno == model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_aprvno") ){
  678. //기존 카드노드 취소 처리
  679. // model.setValue("/root/main/h_cash/cash[" + inner + "]/cash_rcptstat", "C");
  680. //승인취소 노드 생성
  681. currow = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid")) + 1;
  682. model.removeNodeset("/root/main/h_cash/cash["+currow+"]");
  683. //카드승인정보는 추후 받아온 데이터 로 처리
  684. //model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvyn", 'Y');
  685. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_mseqno", model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno"));
  686. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_pid", gPid);
  687. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptdd", '');
  688. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptno", '0');
  689. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptseqno", '0');
  690. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", '0');
  691. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  692. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptstat", 'Y');
  693. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_ordtype", gOrdtype);
  694. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag")); //키입력구분
  695. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  696. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  697. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  698. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvflag", model.getValue("/root/tmp/appvanif/ordergb")); //42:현금영수증승인응답
  699. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvno", model.getValue("/root/tmp/appvanif/approvalno") ); //승인번호
  700. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvdd", model.getValue("/root/tmp/appvanif/approvaldate") ); //승인일자
  701. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvtm", model.getValue("/root/tmp/appvanif/approvaltime") ); //승인시간
  702. // if( m_opmi == 1 ){
  703. // model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_cashamt", parseInt(cashAmt) * -1); //카드금액
  704. // }else{
  705. // model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_cashamt", parseInt(model.getValue("/root/main/m_opmi/opmi[" + i + "]/opmi_cashamt")) * -1); //카드금액
  706. // }
  707. if(eval(gMulticnt) == 1){
  708. if( parseInf( model.getValue("/root/main/cash2/cash_cashamt")) > 0 ){
  709. model.setValue("/root/main/h_cash/cash[" +currow+ "]/cash_cashamt", parseInt(model.getValue("/root/main/cash2/cash_cashamt")) * -1 );
  710. }
  711. }else{
  712. model.setValue("/root/main/h_cash/cash[" +currow+ "]/cash_cashamt", parseInt(model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_cashamt")) * -1 );
  713. }
  714. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptexecdd", '');
  715. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcpttm", '');
  716. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptrid", '');
  717. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_preamtyn", "N");
  718. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_innrtretyn", "N");
  719. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_remfact", '');
  720. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstrid", '');
  721. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstdt", '');
  722. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtrid", '');
  723. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtdt", '');
  724. }
  725. }
  726. //}
  727. }//end for (var i=0; i < m_opmi ; i++)
  728. // var nodeCount = getNodesetCount("/root/main/h_cash/cash");
  729. // for(var i = 1; i <= nodeCount; i++){
  730. // if( aprvno == model.getValue("/root/main/h_cash/cash[" + i + "]/cash_aprvno")
  731. // && parseInt(model.getValue("/root/main/h_cash/cash[" + i + "]/cash_cashamt") ) > 0){
  732. //
  733. // //model.makeNode("/root/main/h_cash/cash[" + i + "]/cash_aprvyn");
  734. // model.setValue("/root/main/h_cash/cash[" + i + "]/cash_rcptstat", "C");
  735. // }
  736. // }
  737. }else {
  738. // grd_cash.addItem();
  739. // currow = grd_cash.row;
  740. currow = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid")) + 1;
  741. model.removeNodeset("/root/main/h_cash/cash["+currow+"]");
  742. //model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvyn", 'Y');
  743. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_pid", gPid);
  744. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptdd", '');
  745. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptno", '0');
  746. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptseqno", '0');
  747. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", '0');
  748. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  749. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptstat", 'Y');
  750. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_ordtype", gOrdtype);
  751. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag")); //키입력구분
  752. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  753. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  754. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  755. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvflag", model.getValue("/root/tmp/appvanif/ordergb")); //42:현금영수증승인응답
  756. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvno", model.getValue("/root/tmp/appvanif/approvalno") ); //승인번호
  757. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvdd", model.getValue("/root/tmp/appvanif/approvaldate") ); //승인일자
  758. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvtm", model.getValue("/root/tmp/appvanif/approvaltime") ); //승인시간
  759. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_cashamt", parseInt(model.getValue("/root/main/cash2/cash_cashamt")) * -1); //카드금액
  760. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptexecdd", '');
  761. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcpttm", '');
  762. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptrid", '');
  763. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_preamtyn", "N");
  764. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_innrtretyn", "N");
  765. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_remfact", '');
  766. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstrid", '');
  767. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstdt", '');
  768. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtrid", '');
  769. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtdt", '');
  770. //2017/10/24 건진 신용카드/현금영수증 일원화 작업(이정택)
  771. if(gOrdtype=="H"){
  772. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_vancd", model.getValue("/root/tmp/appvanif/vangb"));
  773. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", model.getValue("/root/tmp/appvanif/seqno"));
  774. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_clientid", model.getValue("/root/tmp/appvanif/clientid"));
  775. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_replystat", model.getValue("/root/tmp/appvanif/replystat"));
  776. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_publishbank", model.getValue("/root/tmp/appvanif/publishbank"));
  777. }
  778. //2017/10/24 건진 신용카드/현금영수증 일원화 작업(이정택)
  779. // var nodeCount = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  780. // for(var i = 1; i <= nodeCount; i++){
  781. // if( aprvno == model.getValue("/root/main/h_cash/cash[" + i + "]/cash_aprvno")
  782. // && parseInt(model.getValue("/root/main/h_cash/cash[" + i + "]/cash_cashamt") ) > 0){
  783. //
  784. // //model.makeNode("/root/main/h_cash/cash[" + i + "]/cash_aprvyn");
  785. // model.setValue("/root/main/h_cash/cash[" + i + "]/cash_rcptstat", "C");
  786. // }
  787. // }
  788. }
  789. return true;
  790. }
  791. function fApproveCash(){
  792. //신분확인구분,개인법인구분,신분확인번호,결제금액
  793. var cash_qualcnfmflag = model.getValue("/root/main/cash2/cash_qualcnfmflag");
  794. if (cash_qualcnfmflag == null || cash_qualcnfmflag == "" || cash_qualcnfmflag == " " || cash_qualcnfmflag == "-")
  795. {
  796. messageBox("신분확인구분이 미입력되었습니다!","E999","");
  797. return;
  798. }
  799. // ICPos의 경우 카드번호는 Key-In처리 불가
  800. if (model.getValue("/root/main/iptflag/vanflag") == "KOCES_IC"
  801. && cash_qualcnfmflag == "3"
  802. && model.getValue("/root/main/cash2/cash_keyinptflag") == "K")
  803. {
  804. messageBox("IC단말기의 경우 현금영수증 카드는 Key-In으로 처리불가능합니다!\r\n"
  805. + "Swipe 선택 후 IC단말기를 통해 카드리딩 / 번호입력하십시오.","E999","");
  806. return;
  807. }
  808. var cash_indinstflag = model.getValue("/root/main/cash2/cash_indinstflag");
  809. if (cash_indinstflag == null || cash_indinstflag == "" || cash_indinstflag == " " || cash_indinstflag == "-")
  810. {
  811. messageBox("개인법인구분이 미입력되었습니다!","E999","");
  812. return;
  813. }
  814. // ICPos + 카드번호의 경우 ICPos단말기에서 리딩하도록 변경
  815. var cash_qualcnfmno = model.getValue("/root/main/cash2/cash_qualcnfmno");
  816. if (model.getValue("/root/main/iptflag/vanflag") != "KOCES_IC" || cash_qualcnfmflag != "3" ) {
  817. if (cash_qualcnfmno == null || cash_qualcnfmno == "" || cash_qualcnfmno == " " || cash_qualcnfmno == "-")
  818. {
  819. messageBox("신분확인번호가 미입력되었습니다!","E999","");
  820. return;
  821. }
  822. }
  823. var cash_cashamt = model.getValue("/root/main/cash2/cash_cashamt");
  824. if (cash_cashamt == null || cash_cashamt == "" || cash_cashamt == " " || cash_cashamt == "-")
  825. {
  826. messageBox("현금금액이 미입력되었습니다!","E999","");
  827. return;
  828. }
  829. //승인금액 체크
  830. var totrcptamt = model.getValue("/root/main/cash/totrcptamt");
  831. var totcashamt = model.getValue("/root/main/cash/totcashamt");
  832. var cash_cashamt = model.getValue("/root/main/cash2/cash_cashamt");
  833. if( parseInt(model.getValue("/root/main/cash/totrcptamt")) ==
  834. parseInt( model.getValue("/root/main/cash/totcashamt")) ){
  835. // if( messageBox("수납대상금액과 현금영수증 승인금액이 같습니다. 더이상 현금영수증승인 할 금액이 없습니다. 계속 진행 하시겠습니까?", "Q999", "") != 6 ){
  836. // return false;
  837. // }
  838. }else if( parseInt(model.getValue("/root/main/cash/totrcptamt")) <
  839. parseInt( model.getValue("/root/main/cash/totcashamt")) + parseInt(model.getValue("/root/main/cash2/cash_cashamt")) ){
  840. // if( messageBox("수납대상금액보다 현금영수증 승인금액이 많습니다. 계속 진행 하시겠습니까?", "Q999", "") != 6 ){
  841. // return false;
  842. // }
  843. }else if( parseInt(model.getValue("/root/main/cash/totrcptamt")) <= 0 ){
  844. // if( messageBox("수납대상금액이 0원 이거나 마이너스 금액입니다. 계속 진행 하시겠습니까?", "Q999", "") != 6 ){
  845. // return false;
  846. // }
  847. }else if( parseInt(model.getValue("/root/main/cash2/cash_cashamt")) == 0){
  848. messageBox("결제금액이 0원입니다. 확인하시고 다시 현금영수증승인하세요!", "E999", "");
  849. return false;
  850. }
  851. // if (eval(gMulticnt) > 1 ){ //멀티승인
  852. //
  853. // if (parseInt(totrcptamt) - parseInt(totcashamt) != parseInt(cash_cashamt)){
  854. //
  855. // messageBox("멀티수납시 수납금액 전체를 현금영수증 승인하셔야 합니다!!","E999","");
  856. // return false;
  857. // }
  858. // }
  859. //실제 카드 승인 및 승인 노드 생성
  860. if(! fGetCashAprv() ){
  861. //messageBox("카드 승인 실패했습니다. 다시 시도해 주세요.", "E999", "");
  862. return false;
  863. }
  864. //END..
  865. return true;
  866. }
  867. //2008-01-22 이동식 추가 - 메인창에 카드노드 복사
  868. function fCopyCashNodes(){
  869. if (strRcv != null && strRcv != "" && strRcv != " " && strRcv != "-") {
  870. //2008-01-02 이동식 추가
  871. //2017/09/11 건진쪽 소스 추가
  872. if( gOrdtype.toUpperCase( ) == 'O' ){
  873. // if( gRtnType == 'A' ){
  874. //
  875. // copyNodesetType(strRcv, "/root/main/h_cash", "replace", opener.model, model);
  876. //
  877. // }else{
  878. //copyNodesetType(strRcv, "/root/main/h_cash", "replace", opener.model, model);
  879. //외래의 경우 rcptstat = 'Y' 인 경우만 리턴.
  880. model.removeNodeset("/root/main/h_cash2");
  881. model.makeNode("/root/main/h_cash2");
  882. var cnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  883. var cash2Cnt = 0;
  884. for( var i = 1; i <= cnt; i++ ){
  885. if( model.getValue("/root/main/h_cash/cash[" + i + "]/cash_rcptstat") == 'Y'){
  886. cash2Cnt = parseInt(cash2Cnt) + 1;
  887. model.makeNode("/root/main/h_cash2/cash[" + cash2Cnt + "]");
  888. copyNodeType("/root/main/h_cash2/cash[" + cash2Cnt + "]", "/root/main/h_cash/cash["+ i +"]", "after");
  889. }
  890. }
  891. copyNodesetType(strRcv, "/root/main/h_cash2", "replace", opener.model, model);
  892. // }
  893. }else if( gOrdtype.toUpperCase( ) == 'H' ){ // 2017/09/11 건진쪽 소스 추가
  894. copyNodesetType(strRcv, "/root/main/h_cash", "replace", opener.model, model);
  895. }else{
  896. //입원의 경우 새로 승인딴 노드만 리턴.
  897. model.makeNode("/root/main/h_cash2/cash");
  898. var cnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  899. var cash2Cnt = 0;
  900. for( var i = 1; i <= cnt; i++ ){
  901. if( model.getValue("/root/main/h_cash/cash[" + i + "]/cash_rcptdd") == ''
  902. || model.getValue("/root/main/h_cash/cash[" + i + "]/cash_rcptdd") == ' '
  903. || model.getValue("/root/main/h_cash/cash[" + i + "]/cash_rcptdd") == '-'){
  904. cash2Cnt = parseInt(cash2Cnt) + 1;
  905. model.makeNode("/root/main/h_cash2/cash[" + cash2Cnt + "]");
  906. copyNodeType("/root/main/h_cash2/cash[" + cash2Cnt + "]", "/root/main/h_cash/cash["+ i +"]", "after");
  907. }
  908. }
  909. copyNodesetType(strRcv, "/root/main/h_cash2", "replace", opener.model, model);
  910. }
  911. }
  912. }
  913. //2012-09-27 기존 로직 백업
  914. function fAutoCnclCashAprv(){
  915. var cash_cashamt = 0;
  916. var cash_cashamt_row = 0;
  917. var copyrow = 0;
  918. rowCnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  919. if( parseInt(rowCnt) > 0 ){
  920. for (var i = 1; i <= rowCnt; i++)
  921. {
  922. cash_cashamt_row = model.getValue("/root/main/h_cash/cash["+ i +"]/cash_cashamt");
  923. cash_cashamt = parseInt(cash_cashamt) + parseInt(cash_cashamt_row);
  924. if( model.getValue("/root/main/h_cash/cash["+ i +"]/cash_aprvflag") == '42' ){
  925. copyrow = i;
  926. }
  927. }
  928. if (parseInt(cash_cashamt) > 0){
  929. if( parseInt(model.getValue("/root/main/cash/totrcptamt")) != parseInt(cash_cashamt) ){
  930. cash_cashamt = parseInt(model.getValue("/root/main/cash/totrcptamt")) - parseInt(cash_cashamt);
  931. }
  932. model.copyNode("/root/main/cash2","/root/main/h_cash/cash[" + copyrow + "]");
  933. // alert( copyrow );
  934. // alert( instance1.selectNodesXml("/root/main/cash2"));
  935. // alert( instance1.selectNodesXml("/root/main/h_cash/cash[" + copyrow + "]"));
  936. model.setValue("/root/main/cash2/cash_cashamt", cash_cashamt);
  937. // alert( cash_cashamt );
  938. // alert( instance1.selectNodesXml("/root/main/cash2"));
  939. model.refresh();
  940. grd_cash.row = copyrow;
  941. if( ! fCancelCash() ){
  942. // messageBox("현금영수증승인취소 도중 오류가 발생했습니다. 현금영수증팝업창에서 수동으로 작업을 진행해 주세요.", "E999", "");
  943. return false;
  944. }
  945. }else if (cash_cashamt == 0){
  946. messageBox("현금영수증승인 금액이 없습니다. 현금영수증팝업창에서 확인 후 작업을 계속 진행하세요.", "E999", "");
  947. return false;
  948. }else{
  949. messageBox("현금영수증승인 금액이 마이너스 금액[" + cash_cashamt + "]입니다. 현금영수증팝업창에서 확인 후 작업을 계속 진행하세요.", "E999", "");
  950. return false;
  951. }
  952. }
  953. // for( var i = 1; i <= rowCnt; i++ ){
  954. //
  955. // model.copyNode("/root/main/cash2","/root/main/h_cash/cash["+ i +"]");
  956. // grd_cash.row = i;
  957. // if( ! fCancelCash() ){
  958. // if( i == 1 ){
  959. // return false;
  960. // }else{
  961. // messageBox("현금영수증승인취소 도중 오류가 발생했습니다. 현금영수증팝업창에서 수동으로 작업을 진행해 주세요.", "E999", "");
  962. // //opener.ivr_cashpopup.visible = true;
  963. // return 'cnclError';
  964. // }
  965. // }else{
  966. // if (eval(gMulticnt) > 0){
  967. //
  968. // break;
  969. // }
  970. // }
  971. // }
  972. var totcashamt = parseInt(model.getValue("/root/main/cash/totcashamt") );
  973. opener.javascript.setParameter("SPPAO00500_RTN","Y");
  974. opener.javascript.setParameter("SPPAO00500_TotCashAmt",totcashamt);
  975. //노드 복사
  976. fCopyCashNodes();
  977. return true;
  978. }
  979. //END..
  980. //2012-09-27 현금영수증 승인 취소 로직 수정
  981. function fAutoCnclCashAprv_new(){
  982. //alert("1");
  983. var cash_cashamt = 0;
  984. var cash_cashamt_row = 0;
  985. var rcptamt = 0;
  986. var copyrow = 0;
  987. rowCnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  988. if( parseInt(rowCnt) > 0 ){
  989. //alert("2");
  990. //기승인 금액과 수납금액을 비교한다.
  991. //멀티수납일 때 기승인 금액과 수납금액 계산
  992. var m_opmi = getNodesetCount("/root/main/m_opmi/opmi/opmi_pid");
  993. //var nodeCnt2 = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  994. if( m_opmi > 0 ){
  995. var currow = 0;
  996. var rcptamt_row = 0;
  997. for (var i=1; i <= m_opmi ; i++) {
  998. rcptamt_row = parseInt(model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_cashamt"));
  999. //수납대상 금액이 0원보다 크면 무조건 승인
  1000. if( parseInt(rcptamt_row) >= 0 ){
  1001. rcptamt = parseInt(rcptamt) + parseInt(rcptamt_row);
  1002. //수납대상 금액이 환불이면 기승인 금액 체크하여 취소 후 재승인 여부를 결정한다.
  1003. }else{
  1004. //개별 금액 초기화
  1005. cash_cashamt_row = 0;
  1006. for( var inner = 1; inner <= rowCnt; inner++ ){
  1007. if( model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno")
  1008. == model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_mseqno")){
  1009. //기승인 금액 세팅
  1010. cash_cashamt_row = parseInt(cash_cashamt_row) + parseInt(model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_cashamt"));
  1011. }
  1012. }
  1013. //기승인 금액이 있을 경우
  1014. if( parseInt(cash_cashamt_row) > 0 ){
  1015. if( parseInt(cash_cashamt_row) >= parseInt(rcptamt_row) * -1 ){
  1016. cash_cashamt = parseInt(rcptamt_row);
  1017. rcptamt = parseInt(rcptamt) + parseInt(rcptamt_row);
  1018. }else{
  1019. cash_cashamt = parseInt(cash_cashamt_row) * -1;
  1020. rcptamt = parseInt(rcptamt) + (parseInt(cash_cashamt_row) * -1);
  1021. }
  1022. }else{
  1023. continue;
  1024. }
  1025. }
  1026. //노드 생성
  1027. var currow = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid")) + 1;
  1028. model.removeNodeset("/root/main/h_cash/cash["+currow+"]");
  1029. //현금영수증승인정보는 추후 받아온 데이터 로 처리
  1030. //model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvyn", 'Y');
  1031. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_mseqno", model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno"));
  1032. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_pid", gPid);
  1033. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptdd", '');
  1034. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptno", '0');
  1035. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptseqno", '0');
  1036. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", '0');
  1037. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  1038. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptstat", 'Y');
  1039. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_ordtype", gOrdtype);
  1040. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_keyinptflag", ''); //키입력구분
  1041. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_indinstflag", '');
  1042. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmflag", '');
  1043. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmno", '');
  1044. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvflag", ''); //42:현금영수증승인응답
  1045. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvno", ''); //승인번호
  1046. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvdd", ''); //승인일자
  1047. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvtm", ''); //승인시간
  1048. model.setValue("/root/main/h_cash/cash[" +currow+ "]/cash_cashamt", cash_cashamt ); //현금영수증 승인 및 취소 금액
  1049. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptexecdd", '');
  1050. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcpttm", '');
  1051. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptrid", '');
  1052. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_preamtyn", "N");
  1053. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_innrtretyn", "N");
  1054. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_remfact", '');
  1055. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstrid", '');
  1056. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstdt", '');
  1057. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtrid", '');
  1058. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtdt", '');
  1059. }
  1060. //승인 대상금액이 0원이므로 승인 완료처리한다.
  1061. if( rcptamt == 0 ){
  1062. //생성된 노드 삭제
  1063. var nodeCnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  1064. for( var i = nodeCnt; i > 0; i-- ){
  1065. if( model.getValue("/root/main/h_cash/cash["+ i +"]/cash_aprvno") == '' ){
  1066. model.removeNodeset("/root/main/h_cash/cash["+ i +"]");
  1067. }
  1068. }
  1069. //alert("3");
  1070. //노드 복사
  1071. fCopyCashNodes();
  1072. return true;
  1073. }
  1074. //단일 수납일 때 기승인 금액과 수납금액 계산
  1075. //단일의 취소 승인은 수납금액은 모조건 환불이다!!
  1076. }else{
  1077. //alert("4");
  1078. //rowCnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  1079. for (var i = 1; i <= rowCnt; i++)
  1080. {
  1081. cash_cashamt_row = model.getValue("/root/main/h_cash/cash["+ i +"]/cash_cashamt");
  1082. cash_cashamt = parseInt(cash_cashamt) + parseInt(cash_cashamt_row);
  1083. }
  1084. //alert(cash_cashamt);
  1085. if (parseInt(cash_cashamt) > 0){
  1086. //최종 승인 금액에 기승인 금액이 더해져 있으므로 기승인 금액을 뺀 나머지 금액만 구한다.
  1087. rcptamt = parseInt(model.getValue("/root/main/cash/totrcptamt")) - parseInt(cash_cashamt);
  1088. //alert(rcptamt);
  1089. //승인금액 비교.
  1090. //현금영수증 기승인금액이 환불금액보다 크거나 같을 경우/ 작을 경우를 각각 처리한다.
  1091. //크거나 같을 경우
  1092. if( parseInt(cash_cashamt) >= ( parseInt(rcptamt) * -1 ) ){ //환불금이므로 비교시 -1를 곱한다.
  1093. //rcptamt = parseInt(rcptamt) * -1; //승인취소금액을 확정한다.
  1094. //승인금액이 환불금 보다 작을 경우
  1095. }else{
  1096. //환불금 보다 작으면 승인금액만큼만 취소한다.
  1097. rcptamt = parseInt(cash_cashamt) * -1; //승인취소금액을 확정한다.
  1098. }
  1099. //alert(rcptamt);
  1100. //노드 생성
  1101. var currow = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid")) + 1;
  1102. model.removeNodeset("/root/main/h_cash/cash["+currow+"]");
  1103. //model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvyn", 'Y');
  1104. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_pid", gPid);
  1105. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptdd", '');
  1106. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptno", '0');
  1107. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptseqno", '0');
  1108. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_seqno", '0');
  1109. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  1110. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptstat", 'Y');
  1111. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_ordtype", gOrdtype);
  1112. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_keyinptflag", ''); //키입력구분
  1113. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_indinstflag", '');
  1114. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmflag", '');
  1115. model.makeValue("/root/main/h_cash/cash[" +currow+ "]/cash_qualcnfmno", '');
  1116. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvflag", ''); //42:현금영수증승인응답
  1117. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvno", ''); //승인번호
  1118. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvdd", ''); //승인일자
  1119. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_aprvtm", ''); //승인시간
  1120. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_cashamt", rcptamt); //카드금액
  1121. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptexecdd", '');
  1122. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcpttm", '');
  1123. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_rcptrid", '');
  1124. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_preamtyn", "N");
  1125. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_innrtretyn", "N");
  1126. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_remfact", '');
  1127. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstrid", '');
  1128. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_fstrgstdt", '');
  1129. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtrid", '');
  1130. model.makeValue("/root/main/h_cash/cash["+currow+"]/cash_lastupdtdt", '');
  1131. }else{
  1132. //alert("5");
  1133. //취소할 내역이 없으므로 승인 완료 처리
  1134. //노드 복사
  1135. fCopyCashNodes();
  1136. return true;
  1137. }
  1138. }
  1139. //alert("6");
  1140. //test
  1141. //return false;
  1142. //차액관리
  1143. var cnclAmt = 0;
  1144. //전체 금액 계산한 것이 환불일 때만 취소 승인!!
  1145. if( parseInt(rcptamt) < 0 ){
  1146. //alert("12");
  1147. //밴승인 취소 체크
  1148. model.setValue("/root/main/iptflag/svancncl", "Y");
  1149. //svan 내역중 가장 최근 내역을 취소한다.
  1150. //단 이미 취소되었거나 입원에서 승인한 내역은 패스한다.
  1151. var svancnt = getNodesetCount("/root/main/h_svan/svan/svan_pid");
  1152. for( var i = 1; i <= svancnt; i++ ){
  1153. //이미 취소된 내역이거나 입원에서 승인한 내역은 패스
  1154. if( model.getValue("/root/main/h_svan/svan[" + i + "]/svan_cnclyn") == "Y"
  1155. || model.getValue("/root/main/h_svan/svan[" + i + "]/svan_ordtype") != "O" ){
  1156. continue;
  1157. }
  1158. //취소금액을 저장
  1159. cnclAmt = parseInt(cnclAmt) + parseInt(model.getValue("/root/main/h_svan/svan[" + i + "]/svan_cashamt"));
  1160. //승인취소로직 시작!!
  1161. //카드승인내역 초기화
  1162. model.removeNodeset("/root/main/cash2");
  1163. //model.makeValue("/root/main/cash2/cash_svan", 'Y');
  1164. model.makeValue("/root/main/cash2/cash_pid", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_pid"));
  1165. model.makeValue("/root/main/cash2/cash_rcptdd", '');
  1166. model.makeValue("/root/main/cash2/cash_rcptno", '');
  1167. model.makeValue("/root/main/cash2/cash_rcptseqno", '');
  1168. model.makeValue("/root/main/cash2/cash_seqno", '');
  1169. model.makeValue("/root/main/cash2/cash_instcd", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_instcd"));
  1170. model.makeValue("/root/main/cash2/cash_rcptstat", '');
  1171. model.makeValue("/root/main/cash2/cash_ordtype", gOrdtype);
  1172. model.makeValue("/root/main/cash2/cash_keyinptflag", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_keyinptflag"));
  1173. model.makeValue("/root/main/cash2/cash_indinstflag", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_indinstflag"));
  1174. model.makeValue("/root/main/cash2/cash_qualcnfmflag", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_qualcnfmflag"));
  1175. model.makeValue("/root/main/cash2/cash_qualcnfmno", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_qualcnfmno"));
  1176. model.makeValue("/root/main/cash2/cash_aprvflag", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_aprvflag"));
  1177. model.makeValue("/root/main/cash2/cash_aprvno", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_aprvno"));
  1178. model.makeValue("/root/main/cash2/cash_aprvdd", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_aprvdd"));
  1179. model.makeValue("/root/main/cash2/cash_aprvtm", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_aprvtm"));
  1180. model.makeValue("/root/main/cash2/cash_cashamt", model.getValue("/root/main/h_svan/svan[" + i + "]/svan_cashamt"));
  1181. model.makeValue("/root/main/cash2/cash_rcptexecdd", '');
  1182. model.makeValue("/root/main/cash2/cash_rcpttm", '');
  1183. model.makeValue("/root/main/cash2/cash_rcptrid", '');
  1184. model.makeValue("/root/main/cash2/cash_preamtyn", 'N');
  1185. model.makeValue("/root/main/cash2/cash_innrtretyn", 'N');
  1186. model.makeValue("/root/main/cash2/cash_remfact", '');
  1187. model.makeValue("/root/main/cash2/cash_fstrgstrid", '');
  1188. model.makeValue("/root/main/cash2/cash_fstrgstdt", '');
  1189. model.makeValue("/root/main/cash2/cash_lastupdtrid", '');
  1190. model.makeValue("/root/main/cash2/cash_lastupdtdt", '');
  1191. if( ! fCancelCash() ){
  1192. messageBox("현금영수증승인취소 도중 오류가 발생했습니다. 현금영수증팝업창에서 수동으로 작업을 진행해 주세요.", "E999", "");
  1193. return false;
  1194. }
  1195. //alert("cnclAmt" + cnclAmt);
  1196. //취소 대상의 금액을 비교한다.
  1197. //취소할 금액이 반환금액보다 크다면 취소하고 차액 승인한다.
  1198. if( parseInt(cnclAmt) >= parseInt(rcptamt) * -1 ){
  1199. rcptamt = parseInt(rcptamt) + parseInt(cnclAmt);
  1200. break;
  1201. }
  1202. }
  1203. //alert("rcptamt" + rcptamt);
  1204. //차액 발생시 차액 재승인
  1205. if( parseInt(rcptamt) > 0 ){
  1206. //차액승인로직 시작!!
  1207. //카드승인내역 초기화
  1208. //model.removeNodeset("/root/main/cash2");
  1209. //model.makeValue("/root/main/cash2/cash_svan", 'Y');
  1210. model.setValue("/root/main/cash2/cash_pid", gPid);
  1211. model.setValue("/root/main/cash2/cash_rcptdd", '');
  1212. model.setValue("/root/main/cash2/cash_rcptno", '');
  1213. model.setValue("/root/main/cash2/cash_rcptseqno", '');
  1214. model.setValue("/root/main/cash2/cash_seqno", '');
  1215. model.setValue("/root/main/cash2/cash_instcd", '');
  1216. model.setValue("/root/main/cash2/cash_rcptstat", '');
  1217. model.setValue("/root/main/cash2/cash_ordtype", gOrdtype);
  1218. //취소한 번호로 그대로 재 승인 한다.
  1219. // model.setValue("/root/main/cash2/cash_keyinptflag", 'K');
  1220. // if( gQualcnfmflag == '4' ){
  1221. // model.setValue("/root/main/cash2/cash_indinstflag" ,'01'); //지출증빙
  1222. // }else{
  1223. // model.setValue("/root/main/cash2/cash_indinstflag" ,gIndinstflag);
  1224. // }
  1225. // model.setValue("/root/main/cash2/cash_qualcnfmflag", gQualcnfmflag);
  1226. // model.setValue("/root/main/cash2/cash_qualcnfmno", gQualcnfmno);
  1227. model.setValue("/root/main/cash2/cash_aprvflag", '');
  1228. model.setValue("/root/main/cash2/cash_aprvno", '');
  1229. model.setValue("/root/main/cash2/cash_aprvdd", '');
  1230. model.setValue("/root/main/cash2/cash_aprvtm", '');
  1231. model.setValue("/root/main/cash2/cash_cashamt", rcptamt);
  1232. model.setValue("/root/main/cash2/cash_rcptexecdd", '');
  1233. model.setValue("/root/main/cash2/cash_rcpttm", '');
  1234. model.setValue("/root/main/cash2/cash_rcptrid", '');
  1235. model.setValue("/root/main/cash2/cash_preamtyn", 'N');
  1236. model.setValue("/root/main/cash2/cash_innrtretyn", 'N');
  1237. model.setValue("/root/main/cash2/cash_remfact", '');
  1238. model.setValue("/root/main/cash2/cash_fstrgstrid", '');
  1239. model.setValue("/root/main/cash2/cash_fstrgstdt", '');
  1240. model.setValue("/root/main/cash2/cash_lastupdtrid", '');
  1241. model.setValue("/root/main/cash2/cash_lastupdtdt", '');
  1242. //alert( instance1.selectNodesXml("/root/main/cash2"));
  1243. //alert("9");
  1244. if( ! fGetCashAprv() ){
  1245. // messageBox("현금영수증 차액 승인 도중 오류가 발생했습니다. 현금영수증팝업창에서 수동으로 작업을 진행해 주세요.", "E999", "");
  1246. return false;
  1247. }
  1248. //승인정보 세팅
  1249. var aprvNode = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid"));
  1250. for( var crow = 1; crow <= aprvNode; crow++ ){
  1251. if( model.getValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvno") == '' ){
  1252. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag")); //키입력구분
  1253. model.setValue("/root/main/h_cash/cash[" +crow+ "]/cash_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  1254. model.setValue("/root/main/h_cash/cash[" +crow+ "]/cash_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  1255. model.setValue("/root/main/h_cash/cash[" +crow+ "]/cash_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  1256. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvflag", model.getValue("/root/tmp/appvanif/ordergb")); //42:현금영수증승인응답
  1257. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvno", model.getValue("/root/tmp/appvanif/approvalno") ); //승인번호
  1258. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvdd", model.getValue("/root/tmp/appvanif/approvaldate") ); //승인일자
  1259. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvtm", model.getValue("/root/tmp/appvanif/approvaltime") ); //승인시간
  1260. }
  1261. }
  1262. }else{
  1263. //승인정보 세팅
  1264. var aprvNode = parseInt(getNodesetCount("/root/main/h_cash/cash/cash_pid"));
  1265. for( var crow = 1; crow <= aprvNode; crow++ ){
  1266. if( model.getValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvno") == '' ){
  1267. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag")); //키입력구분
  1268. model.setValue("/root/main/h_cash/cash[" +crow+ "]/cash_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  1269. model.setValue("/root/main/h_cash/cash[" +crow+ "]/cash_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  1270. model.setValue("/root/main/h_cash/cash[" +crow+ "]/cash_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  1271. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvflag", model.getValue("/root/tmp/appvanif/ordergb")); //42:현금영수증승인응답
  1272. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvno", model.getValue("/root/tmp/appvanif/approvalno") ); //승인번호
  1273. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvdd", model.getValue("/root/tmp/appvanif/approvaldate") ); //승인일자
  1274. model.setValue("/root/main/h_cash/cash[" +crow+"]/cash_aprvtm", model.getValue("/root/tmp/appvanif/approvaltime") ); //승인시간
  1275. }
  1276. }
  1277. }
  1278. }
  1279. }else{
  1280. //2012-09-25 변경 적용
  1281. //기승인 내역이 없이 승인취소 시에는 취소를 할 필요 없으므로 true 를 리턴한다.
  1282. //alert("7");
  1283. //노드 복사
  1284. fCopyCashNodes();
  1285. return true;
  1286. }
  1287. var totcashamt = parseInt(model.getValue("/root/main/cash/totcashamt") );
  1288. opener.javascript.setParameter("SPPAO00500_RTN","Y");
  1289. opener.javascript.setParameter("SPPAO00500_TotCashAmt",totcashamt);
  1290. //alert("8");
  1291. //노드 복사
  1292. fCopyCashNodes();
  1293. return true;
  1294. }
  1295. //END..
  1296. //2007-12-13 이동식 추가 : 카드취소 로직 함수 처리
  1297. function fCancelCash(){
  1298. if( model.getValue("/root/main/iptflag/svancncl") != 'Y' ){
  1299. var currow = grd_cash.row;
  1300. if (currow < 1)
  1301. {
  1302. messageBox("승인취소할 현금영수증내역을 선택하십시요!","E999","");
  1303. return false;
  1304. }
  1305. //마이너스 금액인 경우 이미 취소된 내역이므로 리턴
  1306. var cash_cashamt = model.getValue("/root/main/cash2/cash_cashamt");
  1307. cash_cashamt = parseInt(cash_cashamt);
  1308. if (model.getValue("/root/main/h_cash/cash[" + currow + "]/cash_rcptstat") == 'D' || model.getValue("/root/main/h_cash/cash[" + currow + "]/cash_rcptstat") == 'C'){
  1309. messageBox("이미 승인취소된 내역입니다!","E999","");
  1310. return false;
  1311. }
  1312. }
  1313. var cash_qualcnfmflag = model.getValue("/root/main/cash2/cash_qualcnfmflag");
  1314. if (cash_qualcnfmflag == null || cash_qualcnfmflag == "" || cash_qualcnfmflag == " " || cash_qualcnfmflag == "-")
  1315. {
  1316. messageBox("신분확인구분이 미입력되었습니다!","E999","");
  1317. return;
  1318. }
  1319. var cash_indinstflag = model.getValue("/root/main/cash2/cash_indinstflag");
  1320. if (cash_indinstflag == null || cash_indinstflag == "" || cash_indinstflag == " " || cash_indinstflag == "-")
  1321. {
  1322. messageBox("개인법인구분이 미입력되었습니다!","E999","");
  1323. return;
  1324. }
  1325. var cash_qualcnfmno = model.getValue("/root/main/cash2/cash_qualcnfmno");
  1326. if (cash_qualcnfmno == null || cash_qualcnfmno == "" || cash_qualcnfmno == " " || cash_qualcnfmno == "-")
  1327. {
  1328. messageBox("신분확인번호가 미입력되었습니다!","E999","");
  1329. return;
  1330. }
  1331. var cash_cashamt = model.getValue("/root/main/cash2/cash_cashamt");
  1332. if (cash_cashamt == null || cash_cashamt == "" || cash_cashamt == " " || cash_cashamt == "-")
  1333. {
  1334. messageBox("현금금액이 미입력되었습니다!","E999","");
  1335. return;
  1336. }else if ( parseInt( cash_cashamt ) < 0 ){
  1337. model.setValue("/root/main/cash2/cash_cashamt", parseInt(cash_cashamt) * -1 );
  1338. }
  1339. //실제 승인 취소
  1340. if(! fCnclCashAprv() ){
  1341. return false;
  1342. }
  1343. //END..
  1344. return true;
  1345. }
  1346. //END..
  1347. //2007-12-11 이동식 추가 - 승인
  1348. function fAutoGetCashAprv(){
  1349. //btn_cashaprv.dispatch("DOMActivate");
  1350. if( ! fApproveCash() ){
  1351. return false;
  1352. }
  1353. //btn_confirm.dispatch("DOMActivate");
  1354. var totcashamt = parseInt(model.getValue("/root/main/cash/totcashamt") );
  1355. opener.javascript.setParameter("SPPAO00500_RTN","Y");
  1356. opener.javascript.setParameter("SPPAO00500_TotCashAmt",totcashamt);
  1357. //노드복사
  1358. fCopyCashNodes();
  1359. return true;
  1360. }
  1361. //END..
  1362. //강제승인
  1363. function fForceCashAprv(flag){
  1364. var cash_qualcnfmflag = model.getValue("/root/main/cash2/cash_qualcnfmflag");
  1365. if (cash_qualcnfmflag == null || cash_qualcnfmflag == "" || cash_qualcnfmflag == " " || cash_qualcnfmflag == "-")
  1366. {
  1367. messageBox("신분확인구분이 미입력되었습니다!","E999","");
  1368. return false;
  1369. }
  1370. var cash_indinstflag = model.getValue("/root/main/cash2/cash_indinstflag");
  1371. if (cash_indinstflag == null || cash_indinstflag == "" || cash_indinstflag == " " || cash_indinstflag == "-")
  1372. {
  1373. messageBox("개인법인구분이 미입력되었습니다!","E999","");
  1374. return false;
  1375. }
  1376. var cash_qualcnfmno = model.getValue("/root/main/cash2/cash_qualcnfmno");
  1377. if (cash_qualcnfmno == null || cash_qualcnfmno == "" || cash_qualcnfmno == " " || cash_qualcnfmno == "-")
  1378. {
  1379. messageBox("신분확인번호가 미입력되었습니다!","E999","");
  1380. return false;
  1381. }
  1382. var cash_cashamt = model.getValue("/root/main/cash2/cash_cashamt");
  1383. if (cash_cashamt == null || cash_cashamt == "" || cash_cashamt == " " || cash_cashamt == "-")
  1384. {
  1385. messageBox("현금금액이 미입력되었습니다!","E999","");
  1386. return false;
  1387. }
  1388. var cash_aprvdd = model.getValue("/root/main/cash2/cash_aprvdd");
  1389. if (cash_aprvdd == null || cash_aprvdd == "" || cash_aprvdd == " " || cash_aprvdd == "-")
  1390. {
  1391. messageBox("승인일자가 미입력되었습니다!","E999","");
  1392. model.setValue("/root/main/cash2/cash_aprvdd", '')
  1393. return false;
  1394. }
  1395. var cash_aprvtm = model.getValue("/root/main/cash2/cash_aprvtm");
  1396. if (cash_aprvtm == null || cash_aprvtm == "" || cash_aprvtm == " " || cash_aprvtm == "-")
  1397. {
  1398. messageBox("승인시간이 미입력되었습니다!","E999","");
  1399. model.setValue("/root/main/cash2/cash_aprvtm", '')
  1400. return false;
  1401. }
  1402. var cash_aprvno = model.getValue("/root/main/cash2/cash_aprvno");
  1403. if (cash_aprvno == null || cash_aprvno == "" || cash_aprvno == " " || cash_aprvno == "-")
  1404. {
  1405. messageBox("승인번호가 미입력되었습니다!","E999","");
  1406. model.setValue("/root/main/cash2/cash_aprvno", '')
  1407. return false;
  1408. }
  1409. var cash_keyinptflag = model.getValue("/root/main/cash2/cash_keyinptflag");
  1410. if (cash_keyinptflag == null || cash_keyinptflag == "" || cash_keyinptflag == " " || cash_keyinptflag == "-")
  1411. {
  1412. model.setValue("/root/main/cash2/cash_keyinptflag","K");
  1413. model.refresh();
  1414. }
  1415. //결제금액 체크
  1416. if( flag == 'I' ){
  1417. var totrcptamt = model.getValue("/root/main/cash/totrcptamt");
  1418. var totcashamt = model.getValue("/root/main/cash/totcashamt");
  1419. var cash_cashamt = model.getValue("/root/main/cash2/cash_cashamt");
  1420. if( parseInt(model.getValue("/root/main/cash/totrcptamt")) ==
  1421. parseInt( model.getValue("/root/main/cash/totcashamt")) ){
  1422. // if( messageBox("수납대상금액과 현금영수증 승인금액이 같습니다. 더이상 현금영수증승인 할 금액이 없습니다. 계속 진행 하시겠습니까?", "Q999", "") != 6 ){
  1423. // return false;
  1424. // }
  1425. }else if( parseInt(model.getValue("/root/main/cash/totrcptamt")) <
  1426. parseInt( model.getValue("/root/main/cash/totcashamt")) + parseInt(model.getValue("/root/main/cash2/cash_cashamt")) ){
  1427. // if( messageBox("수납대상금액보다 현금영수증 승인금액이 많습니다. 계속 진행 하시겠습니까?", "Q999", "") != 6 ){
  1428. // return false;
  1429. // }
  1430. }else if( parseInt(model.getValue("/root/main/cash/totrcptamt")) <= 0 ){
  1431. // if( messageBox("수납대상금액이 0원 이거나 마이너스 금액입니다. 계속 진행 하시겠습니까?", "Q999", "") != 6 ){
  1432. // return false;
  1433. // }
  1434. }else if( parseInt(model.getValue("/root/main/cash2/cash_cashamt")) == 0){
  1435. messageBox("결제금액이 0원입니다. 확인하시고 다시 현금영수증승인하세요!", "E999", "");
  1436. return false;
  1437. }
  1438. // if (eval(gMulticnt) > 1 ){ //멀티승인
  1439. //
  1440. // if (parseInt(totrcptamt) - parseInt(totcashamt) != parseInt(cash_cashamt)){
  1441. //
  1442. // messageBox("멀티수납시 수납금액 전체를 현금영수증 승인하셔야 합니다!!","E999","");
  1443. // return false;
  1444. // }
  1445. // }
  1446. }
  1447. //van 노드 생성
  1448. if( flag == 'I' ){
  1449. model.removeNodeset("/root/main/n_svan/svan");
  1450. model.makeValue("/root/main/n_svan/svan/svan_pid", gPid);
  1451. model.makeValue("/root/main/n_svan/svan/svan_aprvflag", '42');
  1452. model.makeValue("/root/main/n_svan/svan/svan_aprvdd", model.getValue("/root/main/cash2/cash_aprvdd"));
  1453. model.makeValue("/root/main/n_svan/svan/svan_aprvtm", model.getValue("/root/main/cash2/cash_aprvtm"));
  1454. model.makeValue("/root/main/n_svan/svan/svan_aprvno", model.getValue("/root/main/cash2/cash_aprvno"));
  1455. //model.makeValue("/root/main/n_svan/svan/svan_ordtype", gOrdtype);
  1456. model.makeValue("/root/main/n_svan/svan/svan_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  1457. model.makeValue("/root/main/n_svan/svan/svan_vancd", '-');
  1458. model.makeValue("/root/main/n_svan/svan/svan_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag"));
  1459. model.makeValue("/root/main/n_svan/svan/svan_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  1460. model.makeValue("/root/main/n_svan/svan/svan_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  1461. model.makeValue("/root/main/n_svan/svan/svan_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  1462. model.makeValue("/root/main/n_svan/svan/svan_cashamt", model.getValue("/root/main/cash2/cash_cashamt"));
  1463. model.makeValue("/root/main/n_svan/svan/svan_trmnno", model.getValue("-"));
  1464. model.makeValue("/root/main/n_svan/svan/svan_rcptexecdd", '-');
  1465. model.makeValue("/root/main/n_svan/svan/svan_rcpttm", '-');
  1466. model.makeValue("/root/main/n_svan/svan/svan_rcptrid", '');
  1467. model.makeValue("/root/main/n_svan/svan/svan_remfact", "강제승인");
  1468. model.makeValue("/root/main/n_svan/svan/svan_fstrgstrid", '');
  1469. model.makeValue("/root/main/n_svan/svan/svan_fstrgstdt", '');
  1470. model.makeValue("/root/main/n_svan/svan/svan_lastupdtrid", '');
  1471. model.makeValue("/root/main/n_svan/svan/svan_lastupdtdt", '');
  1472. model.setValue("/root/main/cash2/cash_aprvflag", '42');
  1473. model.setValue("/root/main/cash2/cash_rcptstat", 'Y');
  1474. model.setValue("/root/main/cash2/cash_ordtype", gOrdtype);
  1475. // model.setValue("/root/main/cash2/cash_vancd", '');
  1476. model.setValue("/root/main/cash2/cash_remfact", '강제승인');
  1477. }else if( flag == 'D' ){
  1478. model.removeNodeset("/root/main/n_svan/svan");
  1479. model.makeValue("/root/main/n_svan/svan/svan_pid", gPid);
  1480. model.makeValue("/root/main/n_svan/svan/svan_aprvflag", '52');
  1481. model.makeValue("/root/main/n_svan/svan/svan_aprvdd", model.getValue("/root/main/cash2/cash_aprvdd"));
  1482. model.makeValue("/root/main/n_svan/svan/svan_aprvtm", model.getValue("/root/main/cash2/cash_aprvtm"));
  1483. model.makeValue("/root/main/n_svan/svan/svan_aprvno", model.getValue("/root/main/cash2/cash_aprvno"));
  1484. //model.makeValue("/root/main/n_svan/svan/svan_ordtype", gOrdtype);
  1485. model.makeValue("/root/main/n_svan/svan/svan_instcd", model.getValue("/root/hidden/session/sess_posinstcd"));
  1486. model.makeValue("/root/main/n_svan/svan/svan_vancd", '-');
  1487. model.makeValue("/root/main/n_svan/svan/svan_keyinptflag", model.getValue("/root/main/cash2/cash_keyinptflag"));
  1488. model.makeValue("/root/main/n_svan/svan/svan_indinstflag", model.getValue("/root/main/cash2/cash_indinstflag"));
  1489. model.makeValue("/root/main/n_svan/svan/svan_qualcnfmflag", model.getValue("/root/main/cash2/cash_qualcnfmflag"));
  1490. model.makeValue("/root/main/n_svan/svan/svan_qualcnfmno", model.getValue("/root/main/cash2/cash_qualcnfmno"));
  1491. model.makeValue("/root/main/n_svan/svan/svan_cashamt", model.getValue("/root/main/cash2/cash_cashamt"));
  1492. model.makeValue("/root/main/n_svan/svan/svan_trmnno", model.getValue("-"));
  1493. model.makeValue("/root/main/n_svan/svan/svan_rcptexecdd", '-');
  1494. model.makeValue("/root/main/n_svan/svan/svan_rcpttm", '-');
  1495. model.makeValue("/root/main/n_svan/svan/svan_rcptrid", '');
  1496. model.makeValue("/root/main/n_svan/svan/svan_remfact", "강제승인");
  1497. model.makeValue("/root/main/n_svan/svan/svan_fstrgstrid", '');
  1498. model.makeValue("/root/main/n_svan/svan/svan_fstrgstdt", '');
  1499. model.makeValue("/root/main/n_svan/svan/svan_lastupdtrid", '');
  1500. model.makeValue("/root/main/n_svan/svan/svan_lastupdtdt", '');
  1501. model.setValue("/root/main/cash2/cash_aprvflag", '52');
  1502. model.setValue("/root/main/cash2/cash_rcptstat", 'Y');
  1503. model.setValue("/root/main/cash2/cash_ordtype", gOrdtype);
  1504. // model.setValue("/root/main/cash2/cash_vancd", '');
  1505. model.setValue("/root/main/cash2/cash_remfact", '강제승인취소');
  1506. }
  1507. if( ! submit("TXPAO00552") ){
  1508. messageBox("승인내역을 정상적으로 저장하지 못했습니다.", "E999","");
  1509. return false;
  1510. }else{
  1511. //model.removeNodeset("/root/main/n_svan/svan");
  1512. model.resetInstanceNode("/root/send");
  1513. fSubmitBefore();
  1514. fSubmitAfter();
  1515. model.setValue("/root/send/data1", gPid);
  1516. model.setValue("/root/send/data3", gOrdtype);
  1517. model.setValue("/root/send/data4", "-");
  1518. if( ! submit("TRPAO00551") ){
  1519. messageBox("승인내역을 가져오지 못했습니다. 승인내역조회를 하신 후 '강제결제'하신 내역을 '수납내역생성'하세요.", "E999","");
  1520. return false;
  1521. }else{
  1522. var cnt = getNodesetCount("/root/main/h_svan/svan/svan_pid");
  1523. var aprvflag = '';
  1524. var check = true;
  1525. if( flag == 'I' ){
  1526. aprvflag = '42';
  1527. }else{
  1528. aprvflag = '52';
  1529. }
  1530. for( var i = 1; i <= cnt; i ++ ){
  1531. if( model.getValue("/root/main/h_svan/svan[" + i + "]/svan_aprvno") == model.getValue("/root/main/cash2/cash_aprvno")
  1532. && model.getValue("/root/main/h_svan/svan[" + i + "]/svan_aprvflag") == aprvflag){
  1533. grd_svan.row = i;
  1534. check = true;
  1535. model.setValue("/root/main/iptflag/cashedit", "Y");
  1536. checkbox1.dispatch("xforms-value-changed");
  1537. break;
  1538. }
  1539. check = false;
  1540. }
  1541. if( check == true ){
  1542. //카드내역 생성
  1543. if(fMakeCashAprvSpec()){
  1544. return true;
  1545. }else{
  1546. return false;
  1547. }
  1548. }else{
  1549. messageBox("승인내역을 다시 조회하신 후 '강제결제'하신 현금영수증내역을 생성하십시요.", "E999", "");
  1550. swt_cashlist.selectedIndex = 0;
  1551. btn_cashvan.selected = true;
  1552. btn_cashrcpt.selected = false;
  1553. model.setFocus("ipt_qualcnfmno");
  1554. return false;
  1555. }
  1556. }
  1557. }
  1558. }
  1559. //END
  1560. //카드내역생성
  1561. function fMakeCashAprvSpec(){
  1562. //강제승인할 van 정보가 선택되었는지 확인!
  1563. if( model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvno")
  1564. != model.getValue("/root/main/cash2/cash_aprvno") ){
  1565. messageBox("van정보를 선택하지 않으셨습니다. 선택 후 다시 시도하세요!", "E999", "");
  1566. model.resetInstanceNode("/root/main/cash2");
  1567. model.refresh();
  1568. return false;
  1569. }
  1570. /*
  1571. //결제금액 체크
  1572. if(model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvflag") == '42'){
  1573. var totrcptamt = model.getValue("/root/main/cash/totrcptamt");
  1574. var totcashamt = model.getValue("/root/main/cash/totcashamt");
  1575. var cash_cashamt = model.getValue("/root/main/cash2/cash_cashamt");
  1576. if (eval(gMulticnt) > 0)
  1577. {
  1578. if (parseInt(totrcptamt) == parseInt(totcashamt))
  1579. {
  1580. messageBox("수납대상금액이 없습니다. 확인 후 다시 시도해주세요.","E999","");
  1581. return false;
  1582. }
  1583. else if (parseInt(totrcptamt) > parseInt(totcashamt))
  1584. {
  1585. if (parseInt(totrcptamt) - parseInt(totcashamt) > parseInt(cash_cashamt))
  1586. {
  1587. messageBox("멀티접수시 대상금액 전체를 현금영수증승인해야 합니다!","E999","");
  1588. return false;
  1589. }
  1590. else if (parseInt(totrcptamt) < parseInt(cash_cashamt))
  1591. {
  1592. if( messageBox("결제금액이 수납대상금액을 초과합니다!","E999","") != 6 ){
  1593. return false;
  1594. }
  1595. }
  1596. }
  1597. }else{
  1598. if (totrcptamt < cash_cashamt){
  1599. messageBox("현금영수증 승인금액이 수납대상금액을 초과합니다!","E999","");
  1600. return;
  1601. }
  1602. }
  1603. }else{
  1604. //멀티 승인 내역 취소시 체크로직
  1605. var aprvno = model.getValue("/root/main/iptflag/oldaprvno");
  1606. if (eval(gMulticnt) > 0){
  1607. if( aprvno == '' || aprvno == ' ' || aprvno == '-' ){
  1608. messageBox("멀티승인내역 취소의 경우 이전 승인번호를 입력하셔야 합니다. 이전 승인번호를 입력 후 취소하세요", "E999", "");
  1609. return false;
  1610. }
  1611. var multiCnt = getNodesetCount("/root/main/h_cash/cash[ cash_aprvno = '" + aprvno + "' ]/cash_pid");
  1612. if( multiCnt > 1 ){
  1613. if( getNodesetCount("/root/main/m_opmi/opmi/opmi_pid") > 1 ){
  1614. // messageBox("멀티승인 내역입니다. 같이 승인된 내역을 일괄취소합니다.", "I999", "");
  1615. var totalCashAmt = 0;
  1616. for( var i = 1; i <= getNodesetCount("/root/main/h_cash/cash/cash_pid"); i++ ){
  1617. if( aprvno == model.getValue("/root/main/h_cash/cash[" + i + "]/cash_aprvno")){
  1618. totalCashAmt = parseInt(totalCashAmt) + parseInt(model.getValue("/root/main/h_cash/cash[" + i + "]/cash_cashamt"));
  1619. }
  1620. }
  1621. if( model.getValue("/root/main/cash2/cash_cashamt") != totalCashAmt ){
  1622. var retValue = messageBox("입력하신 '이전 승인번호'로 승인된 금액과 승인취소금액이 다릅니다.[멀티승인 금액 : " + totalCashAmt + "]\n멀티승인된 금액으로 승인취소 하시겠습니까?", "Q999", "");
  1623. if( retValue == 6 ){
  1624. model.setValue("/root/main/cash2/cash_cashamt", totalCashAmt);
  1625. }else{
  1626. return false;
  1627. }
  1628. }
  1629. }
  1630. }else if( multiCnt < 1 ){
  1631. messageBox("같은 승인번호를 가진 승인내역이 존재하지 않습니다. 확인 후 다시 시도해 주세요", "E999", "") ;
  1632. return fasle;
  1633. }
  1634. }else{
  1635. var sumCashAmt = 0;
  1636. for( var i = 1; i <= getNodesetCount("/root/main/h_cash/cash/cash_pid"); i++ ){
  1637. sumCashAmt = parseInt(sumCashAmt) + parseInt(model.getValue("/root/main/h_cash/cash[" + i + "]/cash_cashamt"));
  1638. }
  1639. if( model.getValue("/root/main/cash2/cash_cashamt") > sumCashAmt ){
  1640. messageBox("승인 취소금액이 현재 승인된 금액합보다 큽니다. 확인 후 다시 입력하세요.", "E999", "");
  1641. return false;
  1642. }
  1643. }
  1644. }
  1645. */
  1646. //현금영수증내역생성 - 2008-01-02 이동식
  1647. if( model.getValue("/root/main/iptflag/cashedit") == 'Y' ){
  1648. //현금영수증승인 내역일 경우
  1649. if( model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvflag") == '42' ){ //현금영수증 승인내역
  1650. model.setValue("/root/main/cash2/cash_rcptstat", "Y");
  1651. //2008-03-14 이동식 수정 - 정상 카드 노드 생성
  1652. var multiCnt = 0;
  1653. var nodeCnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  1654. var cashNode = '/root/main/h_cash/cash';
  1655. if(eval(gMulticnt) > 0){
  1656. //일반 멀티 내역!!
  1657. //카드노드 생성
  1658. multiCnt = getNodesetCount("/root/main/m_opmi/opmi/opmi_pid");
  1659. var check = 'N';
  1660. for( var i = 1; i <= multiCnt; i++ ){
  1661. if( model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_cashamt") != 0 ){
  1662. for( var inner = 1; inner <= nodeCnt; inner++ ){
  1663. if( model.getValue(cashNode + "[" + inner + "]/cash_mseqno") == model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno")
  1664. && model.getValue(cashNode + "[" + inner + "]/cash_aprvno") == model.getValue("/root/main/cash2/cash_aprvno")){
  1665. check = 'Y';
  1666. break;
  1667. }else{
  1668. check = 'N';
  1669. }
  1670. }
  1671. if( check != 'N' ){
  1672. continue;
  1673. }
  1674. //카드 승인 노드 생성.
  1675. nodeCnt = parseInt(nodeCnt) + 1;
  1676. model.makeNode( cashNode + "[" + nodeCnt + "]");
  1677. model.makeValue( cashNode + "[" + nodeCnt + "]/cash_mseqno", model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno"));
  1678. copyNodeType( cashNode + "[" + nodeCnt + "]", "/root/main/cash2", "after");
  1679. model.setValue(cashNode + "[" + nodeCnt + "]/cash_pid", gPid);
  1680. model.setValue(cashNode + "[" + nodeCnt + "]/cash_preamtyn", 'N');
  1681. model.setValue(cashNode + "[" + nodeCnt + "]/cash_innrtretyn", 'N');
  1682. model.setValue(cashNode + "[" + nodeCnt + "]/cash_rcptdd", '');
  1683. model.setValue(cashNode + "[" + nodeCnt + "]/cash_rcptno", '');
  1684. if(eval(gMulticnt) > 1){
  1685. model.setValue( cashNode + "[" + nodeCnt + "]/cash_cashamt", model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_cashamt") );
  1686. }
  1687. }
  1688. }
  1689. }else{
  1690. nodeCnt = parseInt(nodeCnt) + 1;
  1691. model.makeNode( cashNode + "[" + nodeCnt + "]");
  1692. model.copyNode( cashNode + "[" + nodeCnt + "]", "/root/main/cash2");
  1693. model.setValue(cashNode + "[" + nodeCnt + "]/cash_pid", gPid);
  1694. model.setValue(cashNode + "[" + nodeCnt + "]/cash_innrtretyn", 'N');
  1695. model.setValue(cashNode + "[" + nodeCnt + "]/cash_preamtyn", 'N');
  1696. model.setValue(cashNode + "[" + nodeCnt + "]/cash_rcptdd", '');
  1697. model.setValue(cashNode + "[" + nodeCnt + "]/cash_rcptno", '');
  1698. }
  1699. }else if( model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvflag") == '52' ){ //현금영수증승인취소
  1700. model.setValue("/root/main/cash2/cash_rcptstat", "Y");
  1701. // var aprvno = model.getValue("/root/main/cash2/cash_aprvno");
  1702. var aprvno = model.getValue("/root/main/iptflag/oldaprvno");
  1703. var multiCnt = 0;
  1704. var nodeCnt = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  1705. var nodeCnt2 = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  1706. if(eval(gMulticnt) > 0){
  1707. multiCnt = getNodesetCount("/root/main/m_opmi/opmi/opmi_pid");
  1708. for( var i = 1; i <= multiCnt; i++ ){
  1709. for( var inner = 0; inner <= nodeCnt2; inner++ ){
  1710. if( model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno") == model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_mseqno")
  1711. && aprvno == model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_aprvno") ){
  1712. //기존 카드노드 취소 처리
  1713. // model.setValue("/root/main/h_cash/cash[" + inner + "]/cash_rcptstat", "C");
  1714. //승인취소 노드 생성
  1715. nodeCnt = parseInt(nodeCnt) + 1;
  1716. model.makeNode("/root/main/h_cash/cash[" + nodeCnt + "]");
  1717. model.makeValue( "/root/main/h_cash/cash[" + nodeCnt + "]/cash_mseqno", model.getValue("/root/main/m_opmi/opmi["+ i +"]/opmi_mseqno"));
  1718. copyNodeType( "/root/main/h_cash/cash[" + nodeCnt + "]", "/root/main/cash2", "after");
  1719. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_pid", gPid);
  1720. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_preamtyn", 'N');
  1721. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_innrtretyn", 'N');
  1722. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_rcptdd", '');
  1723. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_rcptno", '');
  1724. if(eval(gMulticnt) == 1){
  1725. if( parseInf( model.getValue("/root/main/cash2/cash_cashamt")) > 0 ){
  1726. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_cashamt", parseInt(model.getValue("/root/main/cash2/cash_cashamt")) * -1 );
  1727. }
  1728. }else{
  1729. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_cashamt", parseInt(model.getValue("/root/main/h_cash/cash["+ inner +"]/cash_cashamt")) * -1 );
  1730. }
  1731. break;
  1732. }
  1733. }
  1734. }
  1735. }else{
  1736. nodeCnt = parseInt(nodeCnt) + 1;
  1737. model.makeNode("/root/main/h_cash/cash[" + nodeCnt + "]");
  1738. model.copyNode("/root/main/h_cash/cash[" + nodeCnt + "]", "/root/main/cash2");
  1739. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_pid", gPid);
  1740. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_innrtretyn", 'N');
  1741. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_preamtyn", 'N');
  1742. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_rcptno", '');
  1743. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_rcptdd", '');
  1744. model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_cashamt", parseInt(model.getValue("/root/main/cash2/cash_cashamt")) * -1 );
  1745. //model.setValue("/root/main/h_cash/cash[" + nodeCnt + "]/cash_cashamt", parseInt(model.getValue("/root/main/cash2/cash_cashamt")) );
  1746. //var nodeCount = getNodesetCount("/root/main/h_cash/cash/cash_pid");
  1747. // var aprvno = model.getValue("/root/main/cash2/cash_aprvno");
  1748. // for(var i = 1; i <= nodeCnt; i++){
  1749. // if( aprvno == model.getValue("/root/main/h_cash/cash[" + i + "]/cash_aprvno")
  1750. // && parseInt(model.getValue("/root/main/h_cash/cash[" + i + "]/cash_cashamt") ) > 0){
  1751. //
  1752. // //model.makeNode("/root/main/h_cash/cash[" + i + "]/cash_aprvyn");
  1753. // model.setValue("/root/main/h_cash/cash[" + i + "]/cash_rcptstat", "C");
  1754. // }
  1755. // }
  1756. }
  1757. }
  1758. }//if( model.getValue("/root/main/iptflag/cashedit") == 'Y' ){
  1759. //2015/11/02 이정택 수정
  1760. swt_cashlist.selectedIndex = 0;
  1761. btn_cashvan.selected = true;
  1762. btn_cashrcpt.selected = false;
  1763. /*
  1764. swt_cashlist.selectedIndex = 1;
  1765. btn_cashvan.selected = false;
  1766. btn_cashrcpt.selected = true;
  1767. */
  1768. //2015/11/02 이정택 수정
  1769. model.setFocus("ipt_qualcnfmno");
  1770. fCashamtCalc();
  1771. fInit2();
  1772. return true;
  1773. }
  1774. function fAfterChangeQualcnfmno(){
  1775. //현금영수증 선택시
  1776. model.setValue("/root/main/cash2/cash_qualcnfmno", ipt_qualcnfmno.currentText);
  1777. if ((ipt_qualcnfmno.currentText).length >18) {
  1778. //16자리보다 크면,
  1779. // "="이 있으면, swipe
  1780. if ( (ipt_qualcnfmno.currentText).indexOf("=") >0 ) {
  1781. var vSwipeData = "";
  1782. var vCardno_array = "";
  1783. var vCardno = "";
  1784. //vSwipeData = model.getValue("/root/hidden/com/card_cardno");
  1785. vSwipeData = ipt_qualcnfmno.currentText;
  1786. // swipe 시 첫글자에 ?
  1787. if ( vSwipeData.indexOf("?") >= 0 ) {
  1788. vSwipeData = (vSwipeData).substr(1,37);
  1789. }
  1790. if ( vSwipeData.indexOf("/") >= 0 ) {
  1791. vSwipeData = (vSwipeData).substr(1,37);
  1792. }
  1793. vSwipeData = vSwipeData.getRightPad(40, " ");
  1794. // model.setValue("/root/hidden/com/swipedata", vSwipeData );
  1795. vCardno_array = vSwipeData.split("=");
  1796. vCardno = vCardno_array[0];
  1797. // swipe 시 첫글자에 ?
  1798. if ( vCardno.indexOf("?") >= 0 ) {
  1799. vCardno = (vCardno).substr(1,16);
  1800. }
  1801. //유효일자
  1802. var vValiterm = (vCardno_array[1]).substr(0,4);
  1803. model.setValue("/root/main/cash2/cash_qualcnfmno", vCardno);
  1804. model.setValue("/root/main/cash2/cash_keyinptflag","S");
  1805. //현금영수증확인구분(1.주민,2.전화,3.카드,4.사업자)
  1806. model.setValue("/root/main/cash2/cash_qualcnfmflag","3");
  1807. //현금영수증일때는 할부개월에 법인/개인구분(개인:00 사업자:01)
  1808. // model.setValue("/root/hidden/com/card_allotmm",model.getValue("/root/hidden/com/cash_indinstflag") );
  1809. }
  1810. //2013-01-28
  1811. //현금영수증 사업자 카드
  1812. vCardno = model.getValue("/root/main/cash2/cash_qualcnfmno");
  1813. if( vCardno.length == 18 && vCardno.substr(8, 1) == '9' ){
  1814. //현금영수증확인구분(1.주민,2.전화,3.카드,4.사업자)
  1815. model.setValue("/root/main/cash2/cash_qualcnfmflag","3");
  1816. //현금영수증일때는 할부개월에 법인/개인구분(개인:00 사업자:01)
  1817. model.setValue("/root/main/cash2/cash_indinstflag", '01');
  1818. }
  1819. model.refresh();
  1820. model.setFocus("ipt_cashamt");
  1821. }
  1822. else if ((ipt_qualcnfmno.currentText).length ==16 || (ipt_qualcnfmno.currentText).length ==15 || (ipt_qualcnfmno.currentText).length ==18) {
  1823. var vSwipeData = "";
  1824. vSwipeData = model.getValue("/root/main/cash2/cash_qualcnfmno")+"=";
  1825. vSwipeData = vSwipeData.getRightPad(40, " ");
  1826. model.setValue("/root/main/cash2/cash_keyinptflag","S");
  1827. //현금영수증확인구분(1.주민,2.전화,3.카드,4.사업자)
  1828. model.setValue("/root/main/cash2/cash_qualcnfmflag","3");
  1829. //2013-01-28
  1830. //현금영수증 사업자 카드
  1831. vCardno = model.getValue("/root/main/cash2/cash_qualcnfmno");
  1832. if( vCardno.length == 18 && vCardno.substr(8, 1) == '9' ){
  1833. //현금영수증확인구분(1.주민,2.전화,3.카드,4.사업자)
  1834. model.setValue("/root/main/cash2/cash_qualcnfmflag","3");
  1835. //현금영수증일때는 할부개월에 법인/개인구분(개인:00 사업자:01)
  1836. model.setValue("/root/main/cash2/cash_indinstflag", '01');
  1837. }
  1838. model.refresh();
  1839. model.setFocus("ipt_cashamt");
  1840. }
  1841. else {
  1842. //16자리보다 작으면, 주민번호 혹은 전화번호 사업장번호
  1843. var vSwipeData = "";
  1844. vSwipeData = model.getValue("/root/main/cash2/cash_qualcnfmno")+"=";
  1845. vSwipeData = vSwipeData.getRightPad(40, " ");
  1846. //현금영수증확인구분(1.주민,2.전화,3.카드,4.사업자)
  1847. //길이가 13자리이면,주민번호
  1848. if ( (model.getValue("/root/main/cash2/cash_qualcnfmno")).length==13 ) {
  1849. model.setValue("/root/main/cash2/cash_qualcnfmflag","1");
  1850. }
  1851. else {
  1852. //앞 3자리 010,011,016,017,018,019 이면 전화
  1853. if ( (model.getValue("/root/main/cash2/cash_qualcnfmno")).substr(0,3) == "010" ||
  1854. (model.getValue("/root/main/cash2/cash_qualcnfmno")).substr(0,3) == "011" ||
  1855. (model.getValue("/root/main/cash2/cash_qualcnfmno")).substr(0,3) == "016" ||
  1856. (model.getValue("/root/main/cash2/cash_qualcnfmno")).substr(0,3) == "017" ||
  1857. (model.getValue("/root/main/cash2/cash_qualcnfmno")).substr(0,4) == "0130" ||
  1858. (model.getValue("/root/main/cash2/cash_qualcnfmno")).substr(0,3) == "018" ||
  1859. (model.getValue("/root/main/cash2/cash_qualcnfmno")).substr(0,3) == "019"
  1860. ) {
  1861. model.setValue("/root/main/cash2/cash_qualcnfmflag","2");
  1862. }
  1863. else {
  1864. //16자리 길이 미만일 때 13자리 주민번호 제외 후 핸드폰 앞자리 체크 나머지는 사업장
  1865. model.setValue("/root/main/cash2/cash_qualcnfmflag","4");
  1866. // model.setValue("/root/hidden/com/cash_indinstflag","01"); //지출증빙
  1867. }
  1868. } //length ==13
  1869. model.setValue("/root/main/cash2/cash_keyinptflag","K");
  1870. model.refresh();
  1871. model.setFocus("ipt_cashamt");
  1872. }//lenth ==16
  1873. }
  1874. ]]>
  1875. </script>
  1876. </xhtml:head>
  1877. <xhtml:body pagewidth="900" pageheight="680" style="margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
  1878. <group id="group3" scroll="auto" style="left:0px; top:0px; width:868px; height:650px; ">
  1879. <switch id="swt_cashlist" style="left:0px; top:185px; width:868px; height:405px; border-color:#c7a3cf; border-style:solid; ">
  1880. <case id="case_cashvan" selected="true">
  1881. <datagrid id="grd_svan" nodeset="/root/main/h_svan/svan" class="datagrid2" caption="^승인구분^신분확인구분^신분확인번호^결제금액^개인/법인^승인번호^승인일자^시간^승인자^최종작업시간^caption1^caption2^caption3^caption4^caption5^caption6^caption7^caption8^caption9^caption10^caption11^caption12^caption13^caption14^caption15^caption16" colsep="^" colwidth="20, 70, 91, 103, 74, 62, 79, 74, 54, 68, 120" dataheight="25" defaultrows="2" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:5px; top:40px; width:855px; height:358px; ">
  1882. <col ref="svan_chk" type="checkbox" Boolean="false, true"/>
  1883. <col disabled="true" ref="svan_aprvflag" type="combo">
  1884. <choices>
  1885. <itemset nodeset="/root/init/P0390list/P0390">
  1886. <label ref="cdnm"/>
  1887. <value ref="cdid"/>
  1888. </itemset>
  1889. </choices>
  1890. </col>
  1891. <col disabled="true" ref="svan_qualcnfmflag" type="combo">
  1892. <choices>
  1893. <itemset nodeset="/root/init/P0073list/P0073">
  1894. <label ref="cdnm"/>
  1895. <value ref="cdid"/>
  1896. </itemset>
  1897. </choices>
  1898. </col>
  1899. <col ref="svan_qualcnfmno"/>
  1900. <col ref="svan_cashamt" format="(-)#,###" style="text-align:right; "/>
  1901. <col disabled="true" ref="svan_indinstflag" type="combo">
  1902. <choices>
  1903. <itemset nodeset="/root/init/P0354list/P0354">
  1904. <label ref="cdnm"/>
  1905. <value ref="cdid"/>
  1906. </itemset>
  1907. </choices>
  1908. </col>
  1909. <col ref="svan_aprvno"/>
  1910. <col ref="svan_aprvdd" format="yyyy-mm-dd"/>
  1911. <col ref="svan_aprvtm" format="hh:nn:ss"/>
  1912. <col ref="svan_fstrgstrid"/>
  1913. <col ref="svan_lastupdtdt" format="yyyy-mm-dd hh:nn:ss"/>
  1914. <script type="javascript" ev:event="onclick">
  1915. <![CDATA[
  1916. var currow = grd_svan.row;
  1917. if( currow < 1){
  1918. return false;
  1919. }
  1920. //2015/11/03 이정택 추가
  1921. if(grd_svan.col==grd_svan.colRef("svan_chk")){
  1922. var cnt=getNodesetCount("/root/main/h_svan/svan[svan_chk='true' and svan_aprvflag='42']");
  1923. if(parseInt(cnt)>0){
  1924. model.makeValue("/root/main/iptflag/svancncl", "Y");
  1925. }else{
  1926. model.makeValue("/root/main/iptflag/svancncl", "");
  1927. btn_clear.dispatch("DOMActivate");
  1928. }
  1929. model.refresh();
  1930. }
  1931. //2015/11/03 이정택 추가
  1932. var onlycash = model.getValue("/root/main/iptflag/cashedit");
  1933. var sVanCncl = model.getValue("/root/main/iptflag/svancncl");
  1934. //승인내역취소!!
  1935. if( sVanCncl == 'Y' ){
  1936. if( model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_aprvflag") == '52' ){
  1937. messageBox("승인취소된 건에 대해서는 [승인내역취소]가 불가능합니다.", "E999", "");
  1938. grd_svan.valueMatrix(grd_svan.row, grd_svan.colRef("svan_chk"))=false;
  1939. grd_svan.refresh();
  1940. return false;
  1941. }
  1942. }
  1943. if( onlycash == 'Y' || sVanCncl == 'Y' ){
  1944. //카드승인내역 초기화
  1945. model.removeNodeset("/root/main/cash2");
  1946. //model.makeValue("/root/main/cash2/cash_svan", 'Y');
  1947. model.makeValue("/root/main/cash2/cash_pid", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_pid"));
  1948. model.makeValue("/root/main/cash2/cash_rcptdd", '');
  1949. model.makeValue("/root/main/cash2/cash_rcptno", '');
  1950. model.makeValue("/root/main/cash2/cash_rcptseqno", '');
  1951. model.makeValue("/root/main/cash2/cash_seqno", '');
  1952. model.makeValue("/root/main/cash2/cash_instcd", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_instcd"));
  1953. model.makeValue("/root/main/cash2/cash_rcptstat", '');
  1954. model.makeValue("/root/main/cash2/cash_ordtype", gOrdtype);
  1955. model.makeValue("/root/main/cash2/cash_keyinptflag", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_keyinptflag"));
  1956. model.makeValue("/root/main/cash2/cash_indinstflag", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_indinstflag"));
  1957. model.makeValue("/root/main/cash2/cash_qualcnfmflag", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_qualcnfmflag"));
  1958. model.makeValue("/root/main/cash2/cash_qualcnfmno", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_qualcnfmno"));
  1959. model.makeValue("/root/main/cash2/cash_aprvflag", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_aprvflag"));
  1960. model.makeValue("/root/main/cash2/cash_aprvno", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_aprvno"));
  1961. model.makeValue("/root/main/cash2/cash_aprvdd", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_aprvdd"));
  1962. model.makeValue("/root/main/cash2/cash_aprvtm", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_aprvtm"));
  1963. model.makeValue("/root/main/cash2/cash_cashamt", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_cashamt"));
  1964. model.makeValue("/root/main/cash2/cash_rcptexecdd", '');
  1965. model.makeValue("/root/main/cash2/cash_rcpttm", '');
  1966. model.makeValue("/root/main/cash2/cash_rcptrid", '');
  1967. model.makeValue("/root/main/cash2/cash_preamtyn", 'N');
  1968. model.makeValue("/root/main/cash2/cash_innrtretyn", 'N');
  1969. model.makeValue("/root/main/cash2/cash_remfact", '');
  1970. model.makeValue("/root/main/cash2/cash_fstrgstrid", '');
  1971. model.makeValue("/root/main/cash2/cash_fstrgstdt", '');
  1972. model.makeValue("/root/main/cash2/cash_lastupdtrid", '');
  1973. model.makeValue("/root/main/cash2/cash_lastupdtdt", '');
  1974. //실제 카드승인금액 세팅
  1975. //model.setValue("/root/main/cash/aprvcashamt", model.getValue("/root/main/h_svan/svan[" + currow + "]/svan_cashamt"));
  1976. model.refresh();
  1977. }
  1978. ]]>
  1979. </script>
  1980. </datagrid>
  1981. <input id="input6" ref="/root/main/iptflag/aprvfromdd" class="input_default" inputtype="date" style="left:73px; top:13px; width:85px; height:19px; "/>
  1982. <input id="input7" ref="/root/main/iptflag/aprvtodd" class="input_default" inputtype="date" style="left:174px; top:13px; width:85px; height:19px; "/>
  1983. <shape id="roundrect1" class="roundrect_example" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:5px; top:8px; width:855px; height:29px; "/>
  1984. <caption id="caption4" class="cell_1" style="left:10px; top:11px; width:60px; height:23px; vertical-align:middle; ">승인일자</caption>
  1985. <select id="checkbox2" ref="/root/main/iptflag/svancncl" overflow="visible" appearance="full" style="left:500px; top:15px; width:90px; height:15px; border-style:none; ">
  1986. <choices>
  1987. <item>
  1988. <label>승인내역취소</label>
  1989. <value>Y</value>
  1990. </item>
  1991. </choices>
  1992. <script type="javascript" ev:event="xforms-value-changed">
  1993. <![CDATA[
  1994. model.setValue("/root/main/iptflag/cashaprv", "");
  1995. model.setValue("/root/main/iptflag/cashedit", "");
  1996. btn_makecashaprv.visible = false;
  1997. btn_cashaprv.visible = true;
  1998. btn_cashcncl.visible = true;
  1999. input4.visible = false;
  2000. model.setValue("/root/main/iptflag/oldaprvno", "");
  2001. if(model.getValue("/root/main/iptflag/svancncl") == 'Y' ){
  2002. btn_cashaprv.disabled = true;
  2003. //btn_cashcncl.disable = true;
  2004. }else{
  2005. btn_cashaprv.disabled = false;
  2006. for(var i =1; i<grd_svan.rows; i++ ){
  2007. grd_svan.valueMatrix(i, grd_svan.colRef("svan_chk" ))=false;
  2008. }
  2009. grd_svan.refresh();
  2010. fInit2();
  2011. }
  2012. model.refresh();
  2013. ]]>
  2014. </script>
  2015. </select>
  2016. <select id="checkbox1" ref="/root/main/iptflag/cashedit" visibility="hidden" overflow="visible" appearance="full" style="left:593px; top:15px; width:90px; height:15px; border-style:none; ">
  2017. <choices>
  2018. <item>
  2019. <label>수납내역생성</label>
  2020. <value>Y</value>
  2021. </item>
  2022. </choices>
  2023. <script type="javascript" ev:event="xforms-value-changed">
  2024. <![CDATA[
  2025. model.setValue("/root/main/iptflag/cashaprv", "");
  2026. model.setValue("/root/main/iptflag/svancncl", "");
  2027. btn_cashaprv.disabled = false;
  2028. if( model.getValue("/root/main/iptflag/cashedit") == 'Y' ){
  2029. btn_makecashaprv.visible = true;
  2030. btn_cashaprv.visible = false;
  2031. btn_cashcncl.visible = false;
  2032. input4.visible = true;
  2033. model.setValue("/root/main/iptflag/oldaprvno", "");
  2034. }else{
  2035. btn_makecashaprv.visible = false;
  2036. btn_cashaprv.visible = true;
  2037. btn_cashcncl.visible = true;
  2038. input4.visible = false;
  2039. model.setValue("/root/main/iptflag/oldaprvno", "");
  2040. }
  2041. model.refresh();
  2042. ]]>
  2043. </script>
  2044. </select>
  2045. <button id="button1" class="btn2_letter6" style="left:408px; top:13px; width:86px; height:19px; ">
  2046. <caption>승인내역조회</caption>
  2047. <script type="javascript" ev:event="DOMActivate">
  2048. <![CDATA[
  2049. //2007-12-26 이동식 추가 : 밴정보 조회
  2050. model.resetInstanceNode("/root/send");
  2051. fSubmitBefore();
  2052. fSubmitAfter();
  2053. model.setValue("/root/send/data1", gPid);
  2054. model.setValue("/root/send/data2", model.getValue("/root/main/iptflag/aprvfromdd"));
  2055. model.setValue("/root/send/data3", model.getValue("/root/main/iptflag/ioflag"));
  2056. model.setValue("/root/send/data4", model.getValue("/root/main/iptflag/aprvsrchflag"));
  2057. model.setValue("/root/send/data5", model.getValue("/root/main/iptflag/aprvtodd"));
  2058. //2015/11/06 이정택 수정
  2059. grd_svan.allstyle( "all", "background-color" ) = "#ffffff";
  2060. //2015/11/06 이정택 수정
  2061. if( submit("TRPAO00551", false) ){
  2062. }
  2063. model.refresh();
  2064. ]]>
  2065. </script>
  2066. </button>
  2067. <select1 id="combo2" ref="/root/main/iptflag/aprvsrchflag" class="combo_default" appearance="minimal" style="left:329px; top:13px; width:74px; height:19px; ">
  2068. <choices>
  2069. <item>
  2070. <label>전체</label>
  2071. <value>-</value>
  2072. </item>
  2073. <item>
  2074. <label>승인내역</label>
  2075. <value>42</value>
  2076. </item>
  2077. <item>
  2078. <label>취소내역</label>
  2079. <value>52</value>
  2080. </item>
  2081. </choices>
  2082. <script type="javascript" ev:event="xforms-select">
  2083. <![CDATA[
  2084. // model.setValue("/root/main/cash2/cash_allotmm2",model.getValue("/root/main/cash2/cash_allotmm"));
  2085. model.refresh();
  2086. ]]>
  2087. </script>
  2088. </select1>
  2089. <caption id="caption14" class="cell_1" style="left:263px; top:11px; width:63px; height:23px; vertical-align:middle; ">승인/취소</caption>
  2090. <select1 id="radio1" ref="/root/main/iptflag/ioflag" visibility="hidden" appearance="full" cols="2" overflow="visible" style="left:705px; top:13px; width:90px; height:20px; border-style:none; ">
  2091. <choices>
  2092. <item>
  2093. <label>외래</label>
  2094. <value>O</value>
  2095. </item>
  2096. <item>
  2097. <label>입원</label>
  2098. <value>I</value>
  2099. </item>
  2100. </choices>
  2101. </select1>
  2102. <caption id="caption10" style="left:160px; top:15px; width:11px; height:20px; ">~</caption>
  2103. </case>
  2104. <case id="case_cashrcpt">
  2105. <datagrid id="grd_cash" nodeset="/root/main/h_cash/cash" class="datagrid2" caption="승인구분^신분확인구분^신분확인번호^결제금액^개인법인^승인번호^승인일자^시간^영수일자^영수&#xA;번호^caption1^caption2^caption3^caption4^caption5^caption6^caption7^caption8^caption9^caption10^caption11^caption12^caption13^caption14^caption15^caption16" colsep="^" colwidth="71, 96, 122, 70, 63, 97, 95, 61, 95, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0" dataheight="25" defaultrows="2" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:5px; top:10px; width:855px; height:385px; ">
  2106. <col disabled="true" ref="cash_aprvflag" type="combo">
  2107. <choices>
  2108. <itemset nodeset="/root/init/P0390list/P0390">
  2109. <label ref="cdnm"/>
  2110. <value ref="cdid"/>
  2111. </itemset>
  2112. </choices>
  2113. </col>
  2114. <col disabled="true" ref="cash_qualcnfmflag" type="combo">
  2115. <choices>
  2116. <itemset nodeset="/root/init/P0073list/P0073">
  2117. <label ref="cdnm"/>
  2118. <value ref="cdid"/>
  2119. </itemset>
  2120. </choices>
  2121. </col>
  2122. <col ref="cash_qualcnfmno"/>
  2123. <col ref="cash_cashamt" format="(-)#,###" style="text-align:right; "/>
  2124. <col disabled="true" ref="cash_indinstflag" type="combo">
  2125. <choices>
  2126. <itemset nodeset="/root/init/P0354list/P0354">
  2127. <label ref="cdnm"/>
  2128. <value ref="cdid"/>
  2129. </itemset>
  2130. </choices>
  2131. </col>
  2132. <col ref="cash_aprvno"/>
  2133. <col ref="cash_aprvdd" format="yyyy-mm-dd"/>
  2134. <col ref="cash_aprvtm" format="hh:nn:ss"/>
  2135. <col ref="cash_rcptdd" format="yyyy-mm-dd"/>
  2136. <col ref="cash_rcptno"/>
  2137. <col ref="cash_pid"/>
  2138. <col ref="cash_rcptseqno"/>
  2139. <col ref="cash_seqno"/>
  2140. <col ref="cash_instcd"/>
  2141. <col ref="cash_rcptstat"/>
  2142. <col ref="cash_ordtype"/>
  2143. <col ref="cash_rcptexecdd"/>
  2144. <col ref="cash_rcpttm"/>
  2145. <col ref="cash_rcptrid"/>
  2146. <col ref="cash_preamtyn"/>
  2147. <col ref="cash_innrtretyn"/>
  2148. <col ref="cash_remfact"/>
  2149. <col ref="cash_fstrgstrid"/>
  2150. <col ref="cash_fstrgstdt"/>
  2151. <col ref="cash_lastupdtrid"/>
  2152. <col ref="cash_lastupdtdt"/>
  2153. <script type="javascript" ev:event="onclick">
  2154. <![CDATA[
  2155. var currow = grd_cash.row;
  2156. if (currow < 1) return;
  2157. model.copyNode("/root/main/cash2","/root/main/h_cash/cash["+ currow +"]");
  2158. model.makeValue("/root/main/cash2/cash_rcptdd","");
  2159. model.makeValue("/root/main/cash2/cash_rcptno","");
  2160. model.makeValue("/root/main/cash2/cash_rcptseqno","");
  2161. model.refresh();
  2162. ]]>
  2163. </script>
  2164. </datagrid>
  2165. </case>
  2166. </switch>
  2167. <group id="group1" style="left:0px; top:0px; width:280px; height:151px; ">
  2168. <caption id="caption5" class="tit_2" style="left:5px; top:11px; width:111px; height:13px; ">입력구분</caption>
  2169. <shape id="ret_keyinptflag" class="roundrect_example" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:5px; top:27px; width:270px; height:124px; "/>
  2170. <select1 id="rdo_keyinptflag" ref="/root/main/cash2/cash_keyinptflag" appearance="full" vcellspacing="7" overflow="visible" style="left:15px; top:55px; width:150px; height:44px; border-style:none; ">
  2171. <choices>
  2172. <item>
  2173. <label>Swipe</label>
  2174. <value>S</value>
  2175. </item>
  2176. <item>
  2177. <label>Key-In</label>
  2178. <value>K</value>
  2179. </item>
  2180. </choices>
  2181. </select1>
  2182. <select id="chk_onlycash" ref="/root/main/iptflag/cashaprv" overflow="visible" appearance="full" style="left:15px; top:119px; width:150px; height:15px; color:#ff0000; border-style:none; ">
  2183. <choices>
  2184. <item>
  2185. <label>강제결제(병원적용)</label>
  2186. <value>Y</value>
  2187. </item>
  2188. </choices>
  2189. <script type="javascript" ev:event="xforms-value-changed">
  2190. <![CDATA[
  2191. var onlycash = model.getValue("/root/main/iptflag/cashaprv");
  2192. if( onlycash == 'Y' ){
  2193. messageBox("강제결제를 선택 하셨습니다. \n승인내역을 정확히 입력하신 후 '현금영수증승인' 또는 '승인취소' 버튼을 누르세요.", "I999", "");
  2194. model.setValue("/root/main/cash2/cash_keyinptflag", "K");
  2195. input4.visible = true;
  2196. model.setValue("/root/main/iptflag/oldaprvno", "");
  2197. }else{
  2198. messageBox("강제결제를 선택해제 하셨습니다. \n실제 '현금영수증 승인' 또는 '승인취소' 합니다.", "I999", "");
  2199. input4.visible = false;
  2200. model.setValue("/root/main/iptflag/oldaprvno", "");
  2201. }
  2202. //model.setValue("/root/main/iptflag/cashaprv", "");
  2203. model.setValue("/root/main/iptflag/svancncl", "");
  2204. btn_cashaprv.disabled = false;
  2205. model.setValue("/root/main/iptflag/cashedit", "");
  2206. btn_makecashaprv.visible = false;
  2207. btn_cashaprv.visible = true;
  2208. btn_cashcncl.visible = true;
  2209. ]]>
  2210. </script>
  2211. </select>
  2212. <select1 id="rdo_valflag" ref="/root/main/iptflag/vanflag" visibility="hidden" appearance="full" cols="1" rows="2" overflow="visible" style="left:180px; top:75px; width:80px; height:55px; border-style:none; ">
  2213. <choices>
  2214. <item>
  2215. <label>KICC</label>
  2216. <value>KICC</value>
  2217. </item>
  2218. <item>
  2219. <label>KOCES</label>
  2220. <value>KOCES</value>
  2221. </item>
  2222. <item>
  2223. <label>KOCES_IC</label>
  2224. <value>KOCES_IC</value>
  2225. </item>
  2226. </choices>
  2227. </select1>
  2228. </group>
  2229. <group id="group2" style="left:285px; top:0px; width:583px; height:151px; ">
  2230. <button id="btn_makecashaprv" class="btn2_letter11" visibility="hidden" style="left:419px; top:6px; width:141px; height:19px; ">
  2231. <caption>현금영수증승인내역생성</caption>
  2232. <script type="javascript" ev:event="DOMActivate">
  2233. <![CDATA[
  2234. //카드내역생성
  2235. fMakeCashAprvSpec();
  2236. ]]>
  2237. </script>
  2238. </button>
  2239. <caption id="caption1" class="tit_2" style="left:10px; top:11px; width:111px; height:13px; ">승인내역</caption>
  2240. <line id="line3" class="line_2" style="x1:5px; y1:53px; x2:583px; y2:53px; "/>
  2241. <line id="line12" class="line_1" style="x1:5px; y1:26px; x2:583px; y2:26px; "/>
  2242. <caption id="caption6" class="cell_1" style="left:5px; top:79px; width:113px; height:23px; vertical-align:middle; ">신분확인번호</caption>
  2243. <line id="line1" class="line_2" style="x1:5px; y1:77px; x2:583px; y2:77px; "/>
  2244. <line id="line2" class="line_3" style="x1:5px; y1:150px; x2:583px; y2:150px; "/>
  2245. <caption id="caption9" class="cell_1" style="left:5px; top:103px; width:113px; height:23px; vertical-align:middle; ">결제금액</caption>
  2246. <line id="line6" class="line_2" style="x1:5px; y1:101px; x2:583px; y2:101px; "/>
  2247. <caption id="caption3" class="cell_1" style="left:5px; top:30px; width:113px; height:23px; vertical-align:middle; ">신분확인구분</caption>
  2248. <line id="line7" class="line_2" style="x1:5px; y1:125px; x2:583px; y2:125px; "/>
  2249. <caption id="caption7" class="cell_1" style="left:5px; top:127px; width:113px; height:23px; vertical-align:middle; ">승인일시/승인번호</caption>
  2250. <caption id="caption2" class="cell_1" style="left:5px; top:55px; width:113px; height:23px; vertical-align:middle; ">소득공제/지출증빙</caption>
  2251. <input id="ipt_qualcnfmno" ref="/root/main/cash2/cash_qualcnfmno" class="input_default" navindex="3" style="left:121px; top:80px; width:251px; height:19px; ">
  2252. <script type="javascript" ev:event="onkeypress">
  2253. <![CDATA[
  2254. if (event.keyCode == "13") {
  2255. fAfterChangeQualcnfmno();
  2256. }
  2257. ]]>
  2258. </script>
  2259. </input>
  2260. <button id="btn_clear" class="btn2_letter2" style="left:374px; top:6px; width:42px; height:19px; ">
  2261. <caption>입력</caption>
  2262. <script type="javascript" ev:event="DOMActivate">
  2263. <![CDATA[
  2264. fInit2();
  2265. //model.resetInstanceNode("/root/main/cash2");
  2266. ]]>
  2267. </script>
  2268. </button>
  2269. <button id="btn_cashaprv" class="btn2_letter7" style="left:419px; top:6px; width:97px; height:19px; ">
  2270. <caption>현금영수증승인</caption>
  2271. <script type="javascript" ev:event="DOMActivate">
  2272. <![CDATA[
  2273. //수납자 마감여부 체크하여 처리
  2274. if(isMagmAprv()){
  2275. return false; //마감결제 완료되어있으므로 더이상 진행하지 않음
  2276. }
  2277. // model.toggle("case_cashrcpt");
  2278. //강제현금영수증승인 - 2008-01-25 이동식
  2279. if( model.getValue("/root/main/iptflag/cashaprv") == 'Y' ){
  2280. if( ! fForceCashAprv("I") ){
  2281. return false;
  2282. }
  2283. model.setValue("/root/main/iptflag/cashaprv", '');
  2284. input4.visible = false;
  2285. model.setValue("/root/main/iptflag/oldaprvno", "");
  2286. model.refresh();
  2287. return true;
  2288. }
  2289. //end..
  2290. if( model.getValue("/root/main/iptflag/svancncl") == 'Y' ){
  2291. messageBox("[승인내역취소]을 선택하고 현금영수증승인을 할 수 없습니다.", "E999", "");
  2292. model.resetInstanceNode("/root/main/cash2");
  2293. model.refresh();
  2294. return false;
  2295. //정상승인
  2296. }else{
  2297. if(! fApproveCash() ){
  2298. return false;
  2299. }
  2300. }
  2301. //2015/11/02 이정택 수정
  2302. swt_cashlist.selectedIndex = 0;
  2303. btn_cashvan.selected = true;
  2304. btn_cashrcpt.selected = false;
  2305. /*
  2306. swt_cashlist.selectedIndex = 1;
  2307. btn_cashvan.selected = false;
  2308. btn_cashrcpt.selected = true;
  2309. */
  2310. //2015/11/02 이정택 수정
  2311. model.setFocus("ipt_qualcnfmno");
  2312. fCashamtCalc();
  2313. fInit2();
  2314. ]]>
  2315. </script>
  2316. </button>
  2317. <button id="btn_cashcncl" class="btn2_letter4" style="left:519px; top:6px; width:64px; height:19px; ">
  2318. <caption>승인취소</caption>
  2319. <script type="javascript" ev:event="DOMActivate">
  2320. <![CDATA[
  2321. var cnclerryn = "N";
  2322. //수납자 마감여부 체크하여 처리
  2323. if(isMagmAprv()){
  2324. return false; //마감결제 완료되어있으므로 더이상 진행하지 않음
  2325. }
  2326. //강제카드결제 - 2008-01-25 이동식
  2327. if( model.getValue("/root/main/iptflag/cashaprv") == 'Y' ){
  2328. if( ! fForceCashAprv("D") ){
  2329. return false;
  2330. }
  2331. model.setValue("/root/main/iptflag/cashaprv", '');
  2332. input4.visible = false;
  2333. model.setValue("/root/main/iptflag/oldaprvno", "");
  2334. model.refresh();
  2335. return true;
  2336. }
  2337. if( model.getValue("/root/main/iptflag/svancncl") == 'Y' ){
  2338. //2015/07/06 이정택 추가
  2339. var cnt=getNodesetCount("/root/main/h_svan/svan[svan_chk='true']");
  2340. if(parseInt(cnt)<1){
  2341. messageBox("선택된 내역이 없습니다.", "E");
  2342. return;
  2343. }
  2344. for(var i =1; i<grd_svan.rows; i++ ){
  2345. if(grd_svan.valueMatrix(i, grd_svan.colRef("svan_chk"))=="true" && grd_svan.valueMatrix(i, grd_svan.colRef("svan_aprvflag"))=="42"){
  2346. grd_svan.row=i;
  2347. grd_svan.dispatch("onclick");
  2348. //강제승인할 van 정보가 선택되었는지 확인!
  2349. if( model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvno")
  2350. != model.getValue("/root/main/cash2/cash_aprvno") ){
  2351. messageBox("van정보를 선택하지 않으셨습니다. 선택 후 다시 시도하세요!", "E999", "");
  2352. model.resetInstanceNode("/root/main/cash2");
  2353. model.refresh();
  2354. return false;
  2355. //카드승인 van 정보가 맞는지 확인한다.
  2356. }else if( model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvflag") != '42' ){ //현금영수증 승인
  2357. messageBox("선택하신 van정보는 승인취소할 수 없습니다. 이미 승인취소된 내역인지 확인하신 후 다시 시도하세요!", "E999", "");
  2358. model.resetInstanceNode("/root/main/cash2");
  2359. model.refresh();
  2360. return false;
  2361. }
  2362. //승인취소로직 호출
  2363. if(! fCancelCash() ){
  2364. cnclerryn="Y";
  2365. grd_svan.rowstyle(i, "data", "background-color") = "#ff0000"; // 실패시 해당 행은 빨간색으로 표시
  2366. }
  2367. }else{
  2368. continue;
  2369. }
  2370. }
  2371. //2015/07/06 이정택 추가
  2372. /* 2015/07/06 이정택 주석처리
  2373. //강제승인할 van 정보가 선택되었는지 확인!
  2374. if( model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvno")
  2375. != model.getValue("/root/main/cash2/cash_aprvno") ){
  2376. messageBox("van정보를 선택하지 않으셨습니다. 선택 후 다시 시도하세요!", "E999", "");
  2377. model.resetInstanceNode("/root/main/cash2");
  2378. model.refresh();
  2379. return false;
  2380. //카드승인 van 정보가 맞는지 확인한다.
  2381. }else if( model.getValue("/root/main/h_svan/svan[" + grd_svan.row + "]/svan_aprvflag") != '42' ){ //현금영수증 승인
  2382. messageBox("선택하신 van정보는 승인취소할 수 없습니다. 이미 승인취소된 내역인지 확인하신 후 다시 시도하세요!", "E999", "");
  2383. model.resetInstanceNode("/root/main/cash2");
  2384. model.refresh();
  2385. return false;
  2386. }
  2387. //승인취소로직 호출
  2388. if(! fCancelCash() ){
  2389. return false;
  2390. }
  2391. */
  2392. //정상승인
  2393. }else{
  2394. //승인취소로직 호출
  2395. if(! fCancelCash() ){
  2396. return false;
  2397. }
  2398. }
  2399. //2015/07/06 이정택 grd_svan.row를 0으로 초기화처리
  2400. grd_svan.row=0;
  2401. //2015/07/06 이정택 grd_svan.row를 0으로 초기화처리
  2402. //2015/11/02 이정택 수정
  2403. swt_cashlist.selectedIndex = 0;
  2404. btn_cashvan.selected = true;
  2405. btn_cashrcpt.selected = false;
  2406. /*
  2407. swt_cashlist.selectedIndex = 1;
  2408. btn_cashvan.selected = false;
  2409. btn_cashrcpt.selected = true;
  2410. */
  2411. //2015/11/02 이정택 수정
  2412. model.setFocus("ipt_qualcnfmno");
  2413. fCashamtCalc();
  2414. if(cnclerryn=="N"){
  2415. fInit2();
  2416. }
  2417. ]]>
  2418. </script>
  2419. </button>
  2420. <select1 id="rdo_qualcnfmflag" ref="/root/main/cash2/cash_qualcnfmflag" navindex="1" appearance="full" cols="4" rows="1" vcellspacing="5" overflow="visible" style="left:122px; top:30px; width:456px; height:20px; border-style:none; ">
  2421. <choices>
  2422. <item>
  2423. <label>1. 주민번호</label>
  2424. <value>1</value>
  2425. </item>
  2426. <item>
  2427. <label>2. 전화번호</label>
  2428. <value>2</value>
  2429. </item>
  2430. <item>
  2431. <label>3. 카드번호</label>
  2432. <value>3</value>
  2433. </item>
  2434. <item>
  2435. <label>4. 사업자번호</label>
  2436. <value>4</value>
  2437. </item>
  2438. </choices>
  2439. <script type="javascript" ev:event="xforms-select">
  2440. <![CDATA[
  2441. //사업자번호일때는 법인, 주민번호,전화번호,카드번호일때는 개인
  2442. if (model.getValue("/root/main/cash2/cash_qualcnfmflag") == "4") {
  2443. model.setValue("/root/main/cash2/cash_indinstflag","01");
  2444. }
  2445. else {
  2446. model.setValue("/root/main/cash2/cash_indinstflag","00");
  2447. }
  2448. ]]>
  2449. </script>
  2450. </select1>
  2451. <select1 id="rdo_indinstflag" ref="/root/main/cash2/cash_indinstflag" navindex="2" appearance="full" cols="2" rows="1" vcellspacing="5" overflow="visible" style="left:122px; top:55px; width:153px; height:20px; border-style:none; ">
  2452. <choices>
  2453. <item>
  2454. <label>소득공제</label>
  2455. <value>00</value>
  2456. </item>
  2457. <item>
  2458. <label>지출증빙</label>
  2459. <value>01</value>
  2460. </item>
  2461. </choices>
  2462. </select1>
  2463. <input id="ipt_cashamt" ref="/root/main/cash2/cash_cashamt" class="input_default" navindex="4" format="(-)#,###" style="left:121px; top:105px; width:126px; height:19px; text-align:right; ">
  2464. <script type="javascript" ev:event="xforms-value-changed">
  2465. <![CDATA[
  2466. var subtotalamt = parseInt(model.getValue("/root/main/cash/totrcptamt"))
  2467. - parseInt(model.getValue("/root/main/cash/totcashamt"))
  2468. - parseInt(model.getValue("/root/main/cash2/cash_cashamt"));
  2469. model.setValue("/root/main/cash/subtotalamt", subtotalamt);
  2470. model.refresh();
  2471. ]]>
  2472. </script>
  2473. <script type="javascript" ev:event="onkeypress">
  2474. <![CDATA[
  2475. if (event.keyCode == "13") {
  2476. model.setFocus("input5");
  2477. model.setFocus("ipt_cashamt");
  2478. }
  2479. ]]>
  2480. </script>
  2481. </input>
  2482. <input id="input1" ref="/root/main/cash2/cash_aprvdd" navindex="5" format="yyyy-mm-dd" style="left:121px; top:128px; width:74px; height:19px; "/>
  2483. <input id="input2" ref="/root/main/cash2/cash_aprvtm" navindex="6" format="hh:nn:ss" style="left:198px; top:128px; width:49px; height:19px; "/>
  2484. <input id="input3" ref="/root/main/cash2/cash_aprvno" navindex="7" imemode="disabled" format="999999999999999" style="left:250px; top:128px; width:123px; height:19px; "/>
  2485. <output id="input5" ref="/root/main/cash/subtotalamt" class="output_fix" format="(-)#,###" appearance="output" maxlength="30" style="left:250px; top:105px; width:123px; height:19px; text-align:right; "/>
  2486. <input id="input4" ref="/root/main/iptflag/oldaprvno" navindex="8" visibility="hidden" imemode="disabled" format="999999999999999" style="left:376px; top:128px; width:96px; height:19px; "/>
  2487. <button id="button3" class="icon_search" navindex="-1" style="left:375px; top:81px; width:16px; height:16px; ">
  2488. <caption/>
  2489. <hint>
  2490. <![CDATA[현금영수증기준정보]]>
  2491. </hint>
  2492. <script type="javascript" ev:event="DOMActivate">
  2493. <![CDATA[
  2494. setParameter("SPPAO01800_PID", gPid );
  2495. modal("SPPAO01800", "1","400", "400", "SPPAO01800", "", "");
  2496. if (getParameter("SPPAO01800_RTN") == "N" || getParameter("SPPAO01800_RTN") == "") return;
  2497. model.setValue("/root/main/cash2/cash_qualcnfmflag", getParameter("SPPAO01800_qualcnfmflag") );
  2498. model.setValue("/root/main/cash2/cash_qualcnfmno", getParameter("SPPAO01800_qualcnfmno") );
  2499. model.refresh();
  2500. fAfterChangeQualcnfmno();
  2501. ]]>
  2502. </script>
  2503. </button>
  2504. <button id="button2" class="btn2_letter7" style="left:270px; top:56px; width:97px; height:19px; ">
  2505. <caption>국세청지정코드</caption>
  2506. <script type="javascript" ev:event="DOMActivate">
  2507. <![CDATA[
  2508. //임시세팅.. 공통코드로 적용 해야함.
  2509. model.setValue("/root/main/cash2/cash_qualcnfmno", "0100001234");
  2510. ipt_qualcnfmno.refresh();
  2511. ]]>
  2512. </script>
  2513. </button>
  2514. <bool id="bl_receiptyn" checkvalue="Y,N" ref="/root/main/iptflag/receiptyn" style="left:296px; top:5px; width:17px; height:17px; "/>
  2515. <caption id="caption16" style="left:312px; top:7px; width:56px; height:14px; ">전표출력</caption>
  2516. </group>
  2517. <caption id="caption12" class="cell_1" style="left:664px; top:596px; width:100px; height:23px; vertical-align:middle; ">현금승인금액</caption>
  2518. <caption id="caption8" class="cell_1" style="left:458px; top:596px; width:100px; height:23px; vertical-align:middle; ">수납대상금액</caption>
  2519. <output id="opt_rcptamt" ref="/root/main/cash/totrcptamt" class="output_fix" format="(-)#,###" style="left:561px; top:597px; width:100px; height:19px; text-align:right; "/>
  2520. <button id="btn_cashvan" class="btn_sw" group="tab" selected="true" style="left:0px; top:164px; width:65px; height:22px; ">
  2521. <caption>VAN정보</caption>
  2522. <toggle case="case_cashvan" ev:event="DOMActivate"/>
  2523. </button>
  2524. <button id="btn_cashrcpt" class="btn_sw" visibility="hidden" group="tab" selected="true" style="left:65px; top:164px; width:60px; height:22px; ">
  2525. <caption>수납내역</caption>
  2526. <toggle case="case_cashrcpt" ev:event="DOMActivate"/>
  2527. </button>
  2528. <output id="opt_cashamt" ref="/root/main/cash/totcashamt" class="output_fix" format="(-)#,###" style="left:767px; top:597px; width:100px; height:19px; text-align:right; "/>
  2529. </group>
  2530. <group id="grp_btn" scroll="auto" style="left:5px; top:620px; width:861px; height:27px; ">
  2531. <button id="btn_cancel" class="btn4_letter2" style="left:805px; top:4px; width:56px; height:22px; ">
  2532. <caption>취소</caption>
  2533. <script type="javascript" ev:event="DOMActivate">
  2534. <![CDATA[
  2535. opener.javascript.setParameter("SPPAO00500_RTN","N");
  2536. //opener.javascript.setParameter("SPPAO00500_TotcashAmt",totcashamt);
  2537. window.close();
  2538. ]]>
  2539. </script>
  2540. </button>
  2541. <button id="btn_confirm" class="btn4_letter2" style="left:747px; top:4px; width:56px; height:22px; ">
  2542. <caption>확인</caption>
  2543. <script type="javascript" ev:event="DOMActivate">
  2544. <![CDATA[
  2545. var totrcptamt = parseInt(model.getValue("/root/main/cash/totrcptamt") );
  2546. var totcashamt = parseInt(model.getValue("/root/main/cash/totcashamt") );
  2547. if (totrcptamt < totcashamt )
  2548. {
  2549. var retValue = messageBox("현금영수증승인 금액이 수납대상금액을 초과합니다! 작업을 완료하고 창을 닫으시겠습니까?","Q999","");
  2550. if( retValue != 6 ){
  2551. return false;
  2552. }
  2553. }else if (ExistCashCount == getNodesetCount("/root/main/h_cash/cash/cash_pid")) {
  2554. //변경사항이 없을 경우!!
  2555. opener.javascript.setParameter("SPPAO00500_RTN","N");
  2556. }
  2557. opener.javascript.setParameter("SPPAO00500_RTN","Y");
  2558. opener.javascript.setParameter("SPPAO00500_TotcashAmt",totcashamt);
  2559. window.close();
  2560. ]]>
  2561. </script>
  2562. </button>
  2563. <line id="line88" class="line_6" style="x1:0px; y1:0px; x2:861px; y2:0px; "/>
  2564. <group id="group4" visibility="hidden" style="left:80px; top:0px; width:655px; height:25px; background-color:#ffff99; ">
  2565. <object id="KocesICAx" clsid="{1b854c3d-3e2c-442b-ad0a-9bc9cb77af9f}" style="left:5px; top:5px; width:15px; height:15px; border-color:#ffffff; border-style:solid; "/>
  2566. <caption id="caption11" style="left:22px; top:4px; width:100px; height:20px; ">KOCES_OCX</caption>
  2567. <input id="input8" ref="/root/hidden/cardaprvresult" style="left:105px; top:3px; width:540px; height:19px; "/>
  2568. </group>
  2569. </group>
  2570. </xhtml:body>
  2571. </xhtml:html>