SMMNV21100_안센터전광판관리.xrw 142 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>진료실전광판관리(안센터)</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <search>
  11. <orddd/>
  12. <centcd/>
  13. <orddeptcd/>
  14. <subdeptcd/>
  15. <orddrid/>
  16. </search>
  17. <ordschelist>
  18. <ordschelistinfo>
  19. <dspflag/>
  20. <ordtm/>
  21. <nursacptdt/>
  22. <pid/>
  23. <hngnm/>
  24. <sa/>
  25. <chk/>
  26. <statenm/>
  27. <lateyn/>
  28. <prcptdayaftrcptyn/>
  29. <lastupdtrnm/>
  30. <ordrsrvtm/>
  31. <instcd/>
  32. <orddd/>
  33. <cretno/>
  34. <centcd/>
  35. <orddeptcd/>
  36. <subdeptcd/>
  37. <orddrid/>
  38. </ordschelistinfo>
  39. <ordscheretelistinfo>
  40. <chk/>
  41. <ordtm/>
  42. <nursacptdt/>
  43. <pid/>
  44. <hngnm/>
  45. <sa/>
  46. <lateyn/>
  47. <prcptdayaftrcptyn/>
  48. <ordstatyn/>
  49. <lastupdtrnm/>
  50. <statenm/>
  51. <instcd/>
  52. <orddd/>
  53. <cretno/>
  54. <centcd/>
  55. <orddeptcd/>
  56. <subdeptcd/>
  57. <orddrid/>
  58. </ordscheretelistinfo>
  59. <ordschereteendlistinfo>
  60. <chk/>
  61. <ordtm/>
  62. <nursacptdt/>
  63. <pid/>
  64. <hngnm/>
  65. <sa/>
  66. <lateyn/>
  67. <prcptdayaftrcptyn/>
  68. <lastupdtrnm/>
  69. <instcd/>
  70. <orddd/>
  71. <cretno/>
  72. <centcd/>
  73. <orddeptcd/>
  74. <subdeptcd/>
  75. <orddrid/>
  76. </ordschereteendlistinfo>
  77. <ordinfoschelistinfo>
  78. <ordtm/>
  79. <nursacptdt/>
  80. <pid/>
  81. <hngnm/>
  82. <sa/>
  83. <statenm/>
  84. <lateyn/>
  85. <prcptdayaftrcptyn/>
  86. <lastupdtrnm/>
  87. <ordrsrvtm/>
  88. <instcd/>
  89. <orddd/>
  90. <cretno/>
  91. <centcd/>
  92. <orddeptcd/>
  93. <subdeptcd/>
  94. <orddrid/>
  95. </ordinfoschelistinfo>
  96. <ordentroomlistinfo>
  97. <ordtm/>
  98. <nursacptdt/>
  99. <pid/>
  100. <hngnm/>
  101. <sa/>
  102. <statenm/>
  103. <lateyn/>
  104. <prcptdayaftrcptyn/>
  105. <ordstatyn/>
  106. <lastupdtrnm/>
  107. <instcd/>
  108. <orddd/>
  109. <cretno/>
  110. <centcd/>
  111. <orddeptcd/>
  112. <subdeptcd/>
  113. <orddrid/>
  114. </ordentroomlistinfo>
  115. <ordroomscheinfo>
  116. <centcd/>
  117. <orddeptcd/>
  118. <subdeptcd/>
  119. <orddd/>
  120. <ordroomnm/>
  121. <ordflag/>
  122. <orddrid/>
  123. <orddrnm/>
  124. <ordnurid/>
  125. <ordnurnm/>
  126. <msg/>
  127. <msgfromtm/>
  128. <msgtotm/>
  129. <delytm/>
  130. <status/>
  131. </ordroomscheinfo>
  132. <msgrgstinfo>
  133. <msgfromtm/>
  134. <msgtotm/>
  135. <delytm/>
  136. <msg/>
  137. <msgflag/>
  138. </msgrgstinfo>
  139. <waitroommsg>
  140. <msg/>
  141. </waitroommsg>
  142. </ordschelist>
  143. <cond>
  144. <chkdata/>
  145. </cond>
  146. <returnsts>
  147. <statusinfo>
  148. <restatus/>
  149. </statusinfo>
  150. </returnsts>
  151. <temp/>
  152. </main>
  153. <send>
  154. <savedata/>
  155. <reqdata/>
  156. <removedata/>
  157. </send>
  158. <init>
  159. <centcd>
  160. <centcdlist>
  161. <cdnm/>
  162. <cdid/>
  163. </centcdlist>
  164. </centcd>
  165. <subdeptcd>
  166. <subdeptcdlist>
  167. <cdid/>
  168. <cdnm/>
  169. </subdeptcdlist>
  170. <orddeptdrcdlist>
  171. <cdid/>
  172. <cdnm/>
  173. </orddeptdrcdlist>
  174. <chrgemplist>
  175. <cdnm/>
  176. <cdid/>
  177. </chrgemplist>
  178. <ordroomlist>
  179. <cdnm/>
  180. <cdid/>
  181. </ordroomlist>
  182. </subdeptcd>
  183. <orddeptcd>
  184. <orddeptcdlist>
  185. <cdid/>
  186. <cdnm/>
  187. </orddeptcdlist>
  188. </orddeptcd>
  189. <ordroomcd>
  190. <cdid/>
  191. <cdnm/>
  192. </ordroomcd>
  193. <msg/>
  194. </init>
  195. <hidden>
  196. <init>
  197. <cntrsuborddeptlist>
  198. <dept>
  199. <cdid/>
  200. <cdnm/>
  201. </dept>
  202. </cntrsuborddeptlist>
  203. <cntrorddeptdoctorlist>
  204. <user>
  205. <cdid/>
  206. <cdnm/>
  207. </user>
  208. </cntrorddeptdoctorlist>
  209. <cntrchrgemplist>
  210. <chrgemp/>
  211. </cntrchrgemplist>
  212. </init>
  213. <con>
  214. <orddd/>
  215. <centcd/>
  216. <orddeptcd/>
  217. <subdeptcd/>
  218. <orddrid/>
  219. <chrgempid>3</chrgempid>
  220. <basedd/>
  221. <ordroomcd/>
  222. <ordflag/>
  223. <orddrnm/>
  224. <status/>
  225. <msgflag/>
  226. <autoactyn/>
  227. <statflag/>
  228. <autoflag/>
  229. <excucnt/>
  230. </con>
  231. <cond>
  232. <condwait/>
  233. </cond>
  234. <msgrgst>
  235. <msgfromtm/>
  236. <msgtotm/>
  237. <delytm/>
  238. <msg/>
  239. <msgflag/>
  240. <status/>
  241. </msgrgst>
  242. <waitroommsg>
  243. <msg/>
  244. </waitroommsg>
  245. <cnts/>
  246. </hidden>
  247. <temp>
  248. <popmenu>
  249. <menu>
  250. <name>보류</name>
  251. <func>fOrdPatWaitRete</func>
  252. </menu>
  253. </popmenu>
  254. <popmenu2>
  255. <menu>
  256. <name>대기</name>
  257. <func>fOrdPatWait</func>
  258. </menu>
  259. <menu>
  260. <name>퇴실</name>
  261. <func>fOrdReteRoomOut</func>
  262. </menu>
  263. </popmenu2>
  264. <popmenu3>
  265. <menu>
  266. <name>진료실입실</name>
  267. <func>fOrdRoomEnter</func>
  268. </menu>
  269. <menu>
  270. <name>보류</name>
  271. <func>fOrdInfoPatWaitRete</func>
  272. </menu>
  273. </popmenu3>
  274. <popmenu4>
  275. <menu>
  276. <name>진료실퇴실</name>
  277. <func>fOrdRoomOut</func>
  278. </menu>
  279. <menu>
  280. <name>보류</name>
  281. <func>fOrdRoomPatWaitRete</func>
  282. </menu>
  283. </popmenu4>
  284. <popmenu5>
  285. <menu>
  286. <name>대기</name>
  287. <func>fOrdPatEndWait</func>
  288. </menu>
  289. </popmenu5>
  290. </temp>
  291. <cond>
  292. <con/>
  293. </cond>
  294. <chkvalue>
  295. <chk/>
  296. </chkvalue>
  297. </root>
  298. </instance>
  299. <script type="javascript" ev:event="xforms-ready">
  300. <![CDATA[
  301. fInit();
  302. ]]>
  303. </script>
  304. <submission id="TRMNV07003" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/ordschelist"/>
  305. <submission id="TRZSD00208" mediatype="application/x-www-form-urlencoded" method="urlencoded-post" replace="instance"/>
  306. <submission id="TRZSU10118" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  307. <submission id="TRZSU10117" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  308. <submission id="TRPMOCOM01" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/hidden/session" replace="instance" resultref="/root/init"/>
  309. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance" resultref="/root/init_com/init"/>
  310. <submission id="TRPMO00305" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/enrcomncode"/>
  311. <submission id="TRPMO00304" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/rcv"/>
  312. <submission id="TRMNV21304" mediatype="application/x-www-form-urlencoded" method="urlencoded-post" ref="/root/send/reqdata" resultref="/root/init/subdeptcd"/>
  313. <submission id="TRMNV07002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init"/>
  314. <submission id="TRMNV21301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" replace="instance" resultref="/root/main/ordschelist"/>
  315. <submission id="TRMNV07004" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/cond"/>
  316. <submission id="TRMNV07006" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/subdeptcd"/>
  317. <submission id="TXMNV21204" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/returnsts"/>
  318. <submission id="TXMNV07002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/returnsts"/>
  319. <submission id="TXMNV21205" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root"/>
  320. <submission id="TXMNV07004" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/returnsts"/>
  321. <submission id="TXMNV07005" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root"/>
  322. <submission id="TXMNV21207" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/returnsts"/>
  323. <submission id="TXMNV07007" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/returnsts"/>
  324. <submission id="TXMNV21203" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send"/>
  325. <submission id="TXMNV07010" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send"/>
  326. <submission id="TXMNV21206" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/returnsts"/>
  327. <submission id="TXMNV07012" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata"/>
  328. <submission id="TXMNV07009" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send"/>
  329. <submission id="TRMNV07010" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/msg"/>
  330. </model>
  331. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  332. <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
  333. <script type="javascript" src="../../../com/userdeptinfoweb/js/ZSU001.js"/>
  334. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  335. <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
  336. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  337. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  338. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  339. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  340. <script type="javascript" src="../../../emr/waitguideweb/js/SMMNV1200.js"/>
  341. <script type="javascript">
  342. <![CDATA[
  343. function fInit()
  344. {
  345. var CurrentDate = getCurrentDate();
  346. model.makeValue("/root/hidden/con/orddd",CurrentDate);
  347. model.makeValue("/root/hidden/cond/condwait","1"); // 진료예정 대기로 디폴트 값 셋팅
  348. grd_ordschereteendlistinfo.visible=false;
  349. model.removeNodeset("/root/main/ordschelist");
  350. fGetUserInfosSampling(); // * @desc : 세션정보 추출하기 PMOCOM.js
  351. model.copyNode("/root/send/reqdata","/root/hidden/con");
  352. submit("TRMNV07002"); //센터, 진료과 정보 가져옴
  353. var userid=getUserInfo("userid");
  354. var usernm=getUserInfo("usernm");
  355. var dutplcecd=getUserInfo("dutplcecd");
  356. model.makeValue("/root/hidden/con/orddeptcd",dutplcecd); //진료과코드 셋팅
  357. model.makeValue("/root/hidden/con/chrgempid",userid); //담당직원코드 셋팅
  358. model.copyNode("/root/send/reqdata","/root/hidden/con");
  359. //TRMNV07001
  360. submit("TRMNV21304"); // 진료과 선택시 담당의, 세부진료과, 담당직원 가져오는 코드 셋팅
  361. model.copyNode("/root/send/reqdata","/root/hidden/con");
  362. submit("TRMNV07004");
  363. //로그인한 사용자, 진료과에 등록된 외래 일정을 dispaly
  364. if(model.getValue("/root/cond/con/orddrid")!='')
  365. {
  366. var ordflag=model.getValue("/root/cond/con/ordflag");
  367. if(ordflag=='1'||ordflag=='3'||ordflag=='5')
  368. {
  369. if(ordflag=='1')
  370. {
  371. model.makeValue("/root/hidden/con/ordflag","1");
  372. }
  373. else if(ordflag=='3')
  374. {
  375. model.makeValue("/root/hidden/con/ordflag","2");
  376. }
  377. else
  378. {
  379. model.makeValue("/root/hidden/con/ordflag","3");
  380. }
  381. } else {
  382. model.makeValue("/root/hidden/con/autoflag","1"); //자동입실 여부에 체크
  383. if(ordflag=='2')
  384. {
  385. model.makeValue("/root/hidden/con/ordflag","1");
  386. }
  387. else if(ordflag=='4')
  388. {
  389. model.makeValue("/root/hidden/con/ordflag","2");
  390. }
  391. else
  392. {
  393. model.makeValue("/root/hidden/con/ordflag","3");
  394. }
  395. }
  396. model.makeValue("/root/hidden/con/ordroomcd",model.getValue("/root/cond/con/ordroomcd"));
  397. model.makeValue("/root/hidden/con/orddrid",model.getValue("/root/cond/con/orddrid"));
  398. }
  399. addComboItem("cmb_chrgempid",usernm,userid,"above");
  400. model.refresh();
  401. }
  402. /**---------------------------------------------------
  403. * @desc : 세션정보 추출하기
  404. * @---------------------------------------------------
  405. */
  406. function fGetUserInfosSampling()
  407. {
  408. var sUserInfosS = getUserInfos();
  409. sUserInfosS = sUserInfosS + "|";
  410. var UserInfosS_Array = sUserInfosS.split("|");
  411. var userid = UserInfosS_Array[0]; //사용자번호
  412. var usernm = UserInfosS_Array[1]; //사용자이름
  413. var posinstcd = UserInfosS_Array[2]; //소속기관코드
  414. var posinstnm = UserInfosS_Array[3]; //소속기관명
  415. var posdeptcd = UserInfosS_Array[4]; //소속부서코드
  416. var posdeptnm = UserInfosS_Array[5]; //소속부서명
  417. var dutplceinstcd = UserInfosS_Array[6]; //근무지기관코드
  418. var dutplceinstnm = UserInfosS_Array[7]; //근무지기관명
  419. var dutplcecd = UserInfosS_Array[8]; //근무지부서코드
  420. var dutplcenm = UserInfosS_Array[9]; //근무지부서명
  421. var jobkindcd = UserInfosS_Array[10]; //직종코드
  422. var jobkindnm = UserInfosS_Array[11]; //직종명
  423. var jobposcd = UserInfosS_Array[12]; //직위코드
  424. var jobposnm = UserInfosS_Array[13]; //직위명
  425. var jobrespcd = UserInfosS_Array[14]; //직책코드
  426. var jobrespnm = UserInfosS_Array[15]; //직책명
  427. var prfshipflagcd = UserInfosS_Array[16]; //교직구분코드
  428. var prfshipflagnm = UserInfosS_Array[17]; //고직구분명
  429. var licnsno = UserInfosS_Array[18]; //자격면허번호
  430. var specordyn = UserInfosS_Array[19]; //선택진료여부
  431. var deptabbr = UserInfosS_Array[20]; //부서약어
  432. var orddeptflag = UserInfosS_Array[21]; //진료과구분
  433. var wardflag = UserInfosS_Array[22]; //병동구분
  434. var systemcd = UserInfosS_Array[23]; //시스템코드
  435. var systemnm = UserInfosS_Array[24]; //시스템명칭
  436. var systeminstcd = UserInfosS_Array[25]; //시스템소속기관코드
  437. var systeminstnm = UserInfosS_Array[26]; //시스템소속기관명
  438. var logindt = UserInfosS_Array[27]; //로그인일시밀리쵸
  439. model.makeNode("/root/hidden/session/sess_" + "userid");
  440. model.makeNode("/root/hidden/session/sess_" + "usernm");
  441. model.makeNode("/root/hidden/session/sess_" + "posinstcd");
  442. model.makeNode("/root/hidden/session/sess_" + "posinstnm");
  443. model.makeNode("/root/hidden/session/sess_" + "posdeptcd");
  444. model.makeNode("/root/hidden/session/sess_" + "posdeptnm");
  445. model.makeNode("/root/hidden/session/sess_" + "dutplceinstcd");
  446. model.makeNode("/root/hidden/session/sess_" + "dutplceinstnm");
  447. model.makeNode("/root/hidden/session/sess_" + "dutplcecd");
  448. model.makeNode("/root/hidden/session/sess_" + "dutplcenm");
  449. model.makeNode("/root/hidden/session/sess_" + "jobkindcd");
  450. model.makeNode("/root/hidden/session/sess_" + "jobkindnm");
  451. model.makeNode("/root/hidden/session/sess_" + "jobposcd");
  452. model.makeNode("/root/hidden/session/sess_" + "jobposnm");
  453. model.makeNode("/root/hidden/session/sess_" + "jobrespcd");
  454. model.makeNode("/root/hidden/session/sess_" + "jobrespnm");
  455. model.makeNode("/root/hidden/session/sess_" + "prfshipflagcd");
  456. model.makeNode("/root/hidden/session/sess_" + "prfshipflagnm");
  457. model.makeNode("/root/hidden/session/sess_" + "licnsno");
  458. model.makeNode("/root/hidden/session/sess_" + "specordyn");
  459. model.makeNode("/root/hidden/session/sess_" + "deptabbr");
  460. model.makeNode("/root/hidden/session/sess_" + "orddeptflag");
  461. model.makeNode("/root/hidden/session/sess_" + "wardflag");
  462. model.makeNode("/root/hidden/session/sess_" + "systemcd");
  463. model.makeNode("/root/hidden/session/sess_" + "systemnm");
  464. model.makeNode("/root/hidden/session/sess_" + "systeminstcd");
  465. model.makeNode("/root/hidden/session/sess_" + "systeminstnm");
  466. model.makeNode("/root/hidden/session/sess_" + "logindt");
  467. if (userid == null || userid == "" || userid == " " || userid == "-") userid = "pam";
  468. if (posinstcd == null || posinstcd == "" || posinstcd == " " || posinstcd == "-") posinstcd = "012";
  469. model.setValue("/root/hidden/session/sess_userid",userid);
  470. model.setValue("/root/hidden/session/sess_usernm",usernm);
  471. model.setValue("/root/hidden/session/sess_posinstcd",posinstcd);
  472. model.setValue("/root/hidden/session/sess_posinstnm",posinstnm);
  473. model.setValue("/root/hidden/session/sess_posdeptcd",posdeptcd);
  474. model.setValue("/root/hidden/session/sess_posdeptnm",posdeptnm);
  475. model.setValue("/root/hidden/session/sess_dutplceinstcd",dutplceinstcd);
  476. model.setValue("/root/hidden/session/sess_dutplceinstnm",dutplceinstnm);
  477. model.setValue("/root/hidden/session/sess_dutplcecd",dutplcecd);
  478. model.setValue("/root/hidden/session/sess_dutplcenm",dutplcenm);
  479. model.setValue("/root/hidden/session/sess_jobkindcd",jobkindcd);
  480. model.setValue("/root/hidden/session/sess_jobkindnm",jobkindnm);
  481. model.setValue("/root/hidden/session/sess_jobposcd",jobposcd);
  482. model.setValue("/root/hidden/session/sess_jobposnm",jobposnm);
  483. model.setValue("/root/hidden/session/sess_jobrespcd",jobrespcd);
  484. model.setValue("/root/hidden/session/sess_jobrespnm",jobrespnm);
  485. model.setValue("/root/hidden/session/sess_prfshipflagcd",prfshipflagcd);
  486. model.setValue("/root/hidden/session/sess_prfshipflagnm",prfshipflagnm);
  487. model.setValue("/root/hidden/session/sess_licnsno",licnsno);
  488. model.setValue("/root/hidden/session/sess_specordyn",specordyn);
  489. model.setValue("/root/hidden/session/sess_deptabbr",deptabbr);
  490. model.setValue("/root/hidden/session/sess_orddeptflag",orddeptflag);
  491. model.setValue("/root/hidden/session/sess_wardflag",wardflag);
  492. model.setValue("/root/hidden/session/sess_systemcd",systemcd);
  493. model.setValue("/root/hidden/session/sess_systemnm",systemnm);
  494. model.setValue("/root/hidden/session/sess_systeminstcd",systeminstcd);
  495. model.setValue("/root/hidden/session/sess_systeminstnm",systeminstnm);
  496. model.setValue("/root/hidden/session/sess_logindt",logindt);
  497. model.refresh();
  498. }
  499. function fOrdScheList() //진료예정자리스트
  500. {
  501. model.removeNodeset("/root/send/reqdata");
  502. model.makeNode("/root/send/reqdata");
  503. model.resetInstanceNode("/root/hidden/msgrgst"); //공지사항 reset
  504. //rdo_ordflag.value=='1';
  505. var orddd = model.getValue("/root/hidden/con/orddd");
  506. var centcd = model.getValue("/root/hidden/con/centcd");
  507. var orddeptcd = model.getValue("/root/hidden/con/orddeptcd");
  508. var subdeptcd = model.getValue("/root/hidden/con/subdeptcd");
  509. var orddrid = model.getValue("/root/hidden/con/orddrid");
  510. var chrgempid = model.getValue("/root/hidden/con/chrgempid");
  511. var ordroomcd = model.getValue("/root/hidden/con/ordroomcd");
  512. var ordflag = model.getValue("/root/hidden/con/ordflag");
  513. var autoflag = model.getValue("/root/hidden/con/autoflag");
  514. var condwait = model.getValue(" /root/hidden/cond/condwait");
  515. if(isNull(orddd)) {
  516. messageBox("진료일자는","I003");
  517. model.setFocus("ipt_orddd");
  518. return;
  519. } else {
  520. model.makeValue("/root/send/reqdata/orddd",orddd);
  521. }
  522. if(isNull(centcd) || centcd=='-') {
  523. model.makeValue("/root/send/reqdata/centcd","-");
  524. } else {
  525. model.makeValue("/root/send/reqdata/centcd",centcd);
  526. }
  527. if(isNull(orddeptcd) || orddeptcd=='-') {
  528. model.makeValue("/root/send/reqdata/orddeptcd","-");
  529. } else {
  530. model.makeValue("/root/send/reqdata/orddeptcd",orddeptcd);
  531. }
  532. if(isNull(centcd) && isNull(orddeptcd)) {
  533. messageBox("센터와 진료과 둘중 하나는","I003");
  534. model.setFocus("cmb_centcd");
  535. return;
  536. }
  537. if(isNull(orddrid)) {
  538. //messageBox("담당의는","I003");
  539. //model.setFocus("cmb_orddrid");
  540. //return;
  541. } else {
  542. model.makeValue("/root/send/reqdata/orddrid",orddrid);
  543. }
  544. if(isNull(chrgempid)) {
  545. model.makeValue("/root/send/reqdata/chrgempid","-");
  546. } else {
  547. model.makeValue("/root/send/reqdata/chrgempid",chrgempid);
  548. }
  549. if(isNull(ordroomcd)) {
  550. } else {
  551. model.makeValue("/root/send/reqdata/ordroomcd",ordroomcd);
  552. }
  553. if(isNull(ordflag)) {
  554. model.makeValue("/root/send/reqdata/ordflag",'');
  555. } else {
  556. if(autoflag=='1') // 자동입실여부에 체크되어있을 때 ( 오전,오후,전체 의 value 값은 2,4,6)
  557. {
  558. if(ordflag=='1') //오전
  559. {
  560. model.makeValue("/root/send/reqdata/ordflag","2");
  561. }
  562. else if(ordflag=='2') //오후
  563. {
  564. model.makeValue("/root/send/reqdata/ordflag","4");
  565. } else { //전체
  566. model.makeValue("/root/send/reqdata/ordflag","6");
  567. }
  568. }
  569. else // 수동입실 체크일 때 (오전,오후,전체의 value값은 1,3,5)
  570. {
  571. if(ordflag=='1') //오전
  572. {
  573. model.makeValue("/root/send/reqdata/ordflag","1");
  574. }
  575. else if(ordflag=='2') //오후
  576. {
  577. model.makeValue("/root/send/reqdata/ordflag","3");
  578. }
  579. else //전체
  580. {
  581. model.makeValue("/root/send/reqdata/ordflag","5");
  582. }
  583. }
  584. }
  585. if(isNull(condwait)) {
  586. model.makeValue("/root/send/reqdata/condwait","1");
  587. } else {
  588. model.makeValue("/root/send/reqdata/condwait",condwait);
  589. }
  590. if(submit("TRMNV21301")) {
  591. model.makeValue("/root/hidden/con/condwait","1"); // 진료예정 대기로 디폴트 값 셋팅
  592. setRowColor("grd_ordschelistinfo", "prcptdayaftrcptyn", "Y", "#ccffcc");
  593. fOrdRoomInfrWaitPat(); // 진료대기예정자 리스트의 상위2명을 진료실 앞 대기 환자로 셋팅해주는 함수
  594. setRowColor("grd_ordschereteendlistinfo", "prcptdayaftrcptyn", "Y", "#ccffcc");
  595. if( grd_ordentroomlistinfo.valueMatrix(1, grd_ordentroomlistinfo.colRef("ordstatyn")) == "Y" ) {
  596. setRowColor("grd_ordentroomlistinfo", "ordstatyn", "Y", "#cc99ff");
  597. } else {
  598. setRowColor("grd_ordentroomlistinfo", "prcptdayaftrcptyn", "Y", "#ccffcc");
  599. }
  600. setRowColor("grd_ordinfoschelistinfo", "prcptdayaftrcptyn", "Y", "#ccffcc");
  601. setRowColor("grd_ordscheretelistinfo", "prcptdayaftrcptyn", "Y", "#ccffcc");
  602. var status=model.getValue("/root/main/ordschelist/ordroomscheinfo/status");
  603. var roomtype = model.getValue("/root/main/ordschelist/ordroomscheinfo/flag");
  604. if(roomtype =='T'){ // 검사실
  605. group4.disabled = false;
  606. cmb_orddrid.disabled = true;
  607. chk_autoflag.selected = true;
  608. chk_autoflag.disabled = true;
  609. }else{ // 진료실
  610. group4.disabled = true;
  611. cmb_orddrid.disabled = false;
  612. chk_autoflag.disabled = false;
  613. chk_autoactyn.value = "";
  614. chk_excucnt.value ="";
  615. }
  616. if(!isNull(status)) // 외래진료실 일정이 존재 할때 필요한 노드에 카피 (상태값 u일때)
  617. {
  618. //model.resetInstanceNode("/root/main/ordschelist/ordroomscheinfo");
  619. model.copyNode("/root/hidden/con","/root/main/ordschelist/ordroomscheinfo");
  620. var ordflag=model.getValue("/root/hidden/con/ordflag");
  621. if(ordflag=='2'||ordflag=='4'||ordflag=='6') // 자동입실일때
  622. {
  623. model.makeValue("/root/hidden/con/autoflag","1");// 자동입실플래그 저장
  624. if(ordflag=='2')
  625. {
  626. model.makeValue("/root/hidden/con/ordflag","1"); //자동입실 오전
  627. }
  628. else if(ordflag=='4')
  629. {
  630. model.makeValue("/root/hidden/con/ordflag","2"); //자동입실 오후
  631. }
  632. else if(ordflag=='6')
  633. {
  634. model.makeValue("/root/hidden/con/ordflag","3"); //자동입실 전체
  635. }
  636. } else {
  637. model.makeValue("/root/hidden/con/autoflag",""); //수동입실 저장
  638. if(ordflag=='1')
  639. {
  640. model.makeValue("/root/hidden/con/ordflag","1"); //수동입실 오전
  641. }
  642. else if(ordflag=='3')
  643. {
  644. model.makeValue("/root/hidden/con/ordflag","2"); //수동입실 오후
  645. }
  646. else if(ordflag=='5')
  647. {
  648. model.makeValue("/root/hidden/con/ordflag","3"); //수동입실 전체
  649. }
  650. }
  651. }
  652. else
  653. { //외래 진료실 일정이 존재하지 않을때 진료구분/담당의/담당직원 clear
  654. model.resetInstanceNode("/root/hidden/con/ordflag");
  655. model.resetInstanceNode("/root/hidden/con/orddrid");
  656. //model.resetInstanceNode("/root/hidden/con/chrgempid");
  657. model.resetInstanceNode("/root/hidden/con/autoflag");
  658. model.resetInstanceNode("/root/hidden/con/autoactyn");
  659. model.resetInstanceNode("/root/hidden/con/excucnt");
  660. if(!isNull(roomtype)){
  661. model.makeValue("/root/hidden/con/flag",roomtype);
  662. if(roomtype =='T'){ // 검사실
  663. model.makeValue("/root/hidden/con/autoactyn",'Y');
  664. }
  665. }
  666. // cmb_chrgempid.select(0);
  667. /*
  668. var userid=getUserInfo("userid");
  669. var usernm=getUserInfo("usernm");
  670. addComboItem("cmb_chrgempid",usernm,userid,"above"); //로그인한 사용자 추가
  671. cmb_chrgempid.select(0);
  672. cmb_chrgempid.refresh();
  673. */
  674. // alert(model.getValue("/root/hidden/con/chrgempid"));
  675. }
  676. var msgstatus=model.getValue("/root/main/ordschelist/msgrgstinfo/msgstatus");
  677. if(!isNull(msgstatus)) // 공지사항이 존재 할때 필요한 노드에 카피 (상태값 u일때)
  678. {
  679. model.copyNode("/root/hidden/msgrgst","/root/main/ordschelist/msgrgstinfo");
  680. }
  681. model.copyNode("/root/hidden/waitroommsg","/root/main/ordschelist/waitroommsg");
  682. }
  683. model.refresh();
  684. }
  685. // 각 리스트의 조건별 색상을 지정하는 함수
  686. function setRowColor(gridID, colRef, data, color) {
  687. gridObj = document.all(gridID);
  688. gridObj.backcoloralternate = "transparent";
  689. gridObj.rebuildStyle(0, 0, gridObj.rows-1, gridObj.cols-1);
  690. for( var i = gridObj.fixedRows; i < gridObj.Rows ; i++ ) {
  691. if( gridObj.valueMatrix(i , gridObj.colRef(colRef)) == data ) {
  692. gridObj.rowstyle( i , "data" , "background-color" ) = color;
  693. }
  694. }
  695. }
  696. function fOrdRoomInfrWaitPat()// 진료대기예정자 리스트의 상위2명을 진료실 앞 대기 환자로 셋팅해주는 함수
  697. {
  698. if(grd_ordschelistinfo.rows-grd_ordschelistinfo.fixedRows>0)
  699. {
  700. model.removeNodeset("/root/main/ordschelist/ordinfoschelistinfo");
  701. var cnt = 1;
  702. for(i=1; i <= getNodesetCount("/root/main/ordschelist/ordschelistinfo"); i++)
  703. {
  704. if(model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/dspflag") == "1") {
  705. var ordtm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/ordtm");
  706. var nursacptdt=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/nursacptdt");
  707. var pid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/pid");
  708. var hngnm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/hngnm");
  709. var sa=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/sa");
  710. var statenm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/statenm");
  711. var lateyn=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/lateyn");
  712. var prcptdayaftrcptyn=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/prcptdayaftrcptyn");
  713. var lastupdtrnm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/lastupdtrnm");
  714. var orddd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/orddd");
  715. var cretno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/cretno");
  716. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/ordrsrvtm");
  717. var orddrid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/orddrid");
  718. var orddeptcd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/orddeptcd");
  719. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/ordrsrvseqno");
  720. var elbulbodstat=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/elbulbodstat"); // otpt전광판상태
  721. var ordroomcd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/ordroomcd");
  722. var dispord=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/dispord");
  723. //상위 2명은 노란색으로 색깔 표시
  724. grd_ordschelistinfo.rowstyle( i , "data" , "background-color" ) = "#ffff99";
  725. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/ordtm",ordtm);
  726. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/nursacptdt",nursacptdt);
  727. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/pid",pid);
  728. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/hngnm",hngnm);
  729. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/sa",sa);
  730. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/statenm",statenm);
  731. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/lateyn",lateyn);
  732. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/prcptdayaftrcptyn",prcptdayaftrcptyn);
  733. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/lastupdtrnm",lastupdtrnm);
  734. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/orddd",orddd);
  735. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/cretno",cretno);
  736. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/ordrsrvtm",ordrsrvtm);
  737. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/orddrid",orddrid);
  738. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/orddeptcd",orddeptcd);
  739. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/ordrsrvseqno",ordrsrvseqno);
  740. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/elbulbodstat",elbulbodstat);
  741. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/ordroomcd",ordroomcd);
  742. model.makeValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+cnt+"]/dispord",dispord);
  743. cnt++;
  744. }
  745. if(cnt > 2 ) break;
  746. }
  747. model.refresh();
  748. }
  749. }
  750. function fOrdRetePatList() // 진료보류 및 완료 리스트의 환자 중 보류 환자만 보류환자 리스트로 셋팅해주는 함수
  751. {
  752. var idxrow=grd_ordschereteendlistinfo.rows;
  753. var fixrow=grd_ordschereteendlistinfo.fixedRows;
  754. var j=1; //보류및 완료 리스트에서 보류환자 갯수만 셀 변수
  755. if(idxrow-fixrow>0)
  756. {
  757. model.removeNodeset("/root/main/ordschelist/ordscheretelistinfo");
  758. for(i=1;i<=idxrow-fixrow;i++)
  759. {
  760. var status=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/status");
  761. if(status=='B') //보류 환자 인것만 노드 만들어 copy한다
  762. {
  763. var pid=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/pid");
  764. var orddd=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/orddd");
  765. var cretno=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/cretno");
  766. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/ordrsrvtm");
  767. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/ordrsrvseqno");
  768. var orddrid=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/orddrid");
  769. var orddeptcd=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/orddeptcd");
  770. var hngnm=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/hngnm");
  771. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/ordrsrvtm");
  772. var sa=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/sa");
  773. var elbulbodstat=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/elbulbodstat"); // otpt전광판상태
  774. var status=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+i+"]/status");
  775. model.makeNode("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/chk");
  776. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/pid",pid);
  777. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/orddd",orddd);
  778. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/cretno",cretno);
  779. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/ordtm",ordtm);
  780. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/ordrsrvtm",ordrsrvtm);
  781. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/ordrsrvseqno",ordrsrvseqno);
  782. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/orddrid",orddrid);
  783. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/orddeptcd",orddeptcd);
  784. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/hngnm",hngnm);
  785. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/sa",sa);
  786. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/elbulbodstat",elbulbodstat);
  787. model.makeValue("/root/main/ordschelist/ordscheretelistinfo"+"["+j+"]/status",status);
  788. j=j+1;
  789. }
  790. }
  791. }
  792. }
  793. function fOrdPatWaitRete() // 진료대기 예정자 리스트에서 보류 버튼 클릭시 보류 상태로 변하는 함수
  794. {
  795. var idxRow=grd_ordschelistinfo.row;
  796. var idxfixRows=grd_ordschelistinfo.fixedRows;
  797. var idxRows=grd_ordschelistinfo.rows;
  798. var chkCount=0;
  799. for(i=1;i<=idxRows-idxfixRows;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  800. {
  801. var chkFlag=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/chk");
  802. if(chkFlag=='1')
  803. {
  804. chkCount=chkCount+1;
  805. }
  806. }
  807. if(idxRow<=0 && chkCount=='0') // 체크가 안되어 있으면서 그리드 밖을 클릭시
  808. {
  809. messageBox("환자를 선택","I008");
  810. return;
  811. }
  812. if(chkCount!='0')
  813. {
  814. fOrdPaitReteToWait(); // 여러개 체크시 보류 멀티 저장함수 태운다.
  815. return;
  816. }
  817. var pid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/pid");
  818. var orddd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddd");
  819. var cretno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/cretno");
  820. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/ordrsrvtm");
  821. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/ordrsrvseqno");
  822. var orddrid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddrid");
  823. var orddeptcd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddeptcd");
  824. var ordroomcd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/ordroomcd");
  825. var dspflag = model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/dspflag");
  826. model.makeValue("/root/send/savedata/pid",pid);
  827. model.makeValue("/root/send/savedata/orddd",orddd);
  828. model.makeValue("/root/send/savedata/cretno",cretno);
  829. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  830. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  831. model.makeValue("/root/send/savedata/patstat",'B'); //보류B로 저장
  832. model.makeValue("/root/send/savedata/orddrid",orddrid);
  833. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  834. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  835. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  836. if(dspflag =='1'){
  837. model.makeValue("/root/send/savedata/status","D");
  838. }else{
  839. model.makeValue("/root/send/savedata/status","-");
  840. }
  841. //alert(model.getValue("/root/send/savedata"));
  842. //alert(model.getValue("/root/send/savedata/orddrid"));
  843. //alert(model.getValue("/root/send/savedata/orddeptcd"));
  844. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 insert
  845. {
  846. //alert(model.getValue("/root/main/returnsts/statusinfo/restatus"));
  847. if(model.getValue("/root/main/returnsts/statusinfo/restatus")=="A")
  848. {
  849. messageBox("이미 입실이 된","I005");
  850. fOrdScheList();
  851. return;
  852. }
  853. //messageBox("처리가","I002");
  854. fOrdScheList();
  855. }
  856. model.refresh();
  857. }
  858. function fOrdPatWait() //보류환자 대기 상태로 셋팅
  859. {
  860. var idxRow=grd_ordscheretelistinfo.row;
  861. var idxfixRows=grd_ordscheretelistinfo.fixedRows;
  862. var idxRows=grd_ordscheretelistinfo.rows;
  863. var chkCount=0;
  864. for(i=1;i<=idxRows-idxfixRows;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  865. {
  866. var chkFlag=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/chk");
  867. if(chkFlag=='1')
  868. {
  869. chkCount=chkCount+1;
  870. }
  871. }
  872. if(idxRow<=0 && chkCount=='0') // 체크가 안되어 있으면서 그리드 밖을 클릭시
  873. {
  874. messageBox("환자를 선택","I008");
  875. return;
  876. }
  877. if(chkCount!='0')
  878. {
  879. fOrdPatWaitToRete(); // 여러개 체크시 여러명 보류 환자 대기로 보내는 저장함수 태운다.
  880. return;
  881. }
  882. var pid=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/pid");
  883. var orddd=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/orddd");
  884. var cretno=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/cretno");
  885. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/ordrsrvtm");
  886. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/ordrsrvseqno");
  887. var orddrid=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/orddrid");
  888. var orddeptcd=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/orddeptcd");
  889. var centcd=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/centcd");
  890. var status=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/status");
  891. var ordroomcd=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/ordroomcd");
  892. //alert(status);
  893. model.makeValue("/root/send/savedata/pid",pid);
  894. model.makeValue("/root/send/savedata/orddd",orddd);
  895. model.makeValue("/root/send/savedata/cretno",cretno);
  896. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  897. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  898. model.makeValue("/root/send/savedata/patstat",'D'); //대기 D로 저장
  899. model.makeValue("/root/send/savedata/orddrid",orddrid);
  900. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  901. model.makeValue("/root/send/savedata/centcd",centcd);
  902. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  903. model.makeValue("/root/send/savedata/status","B");
  904. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  905. //alert(model.getValue("/root/send/savedata/status"));
  906. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 insert
  907. {
  908. //messageBox("처리가","I002");
  909. fOrdScheList();
  910. }
  911. model.refresh();
  912. }
  913. function fOrdPatEndWait() //보류완료환자 대기 상태로 셋팅
  914. {
  915. var idxRow=grd_ordschereteendlistinfo.row;
  916. if(idxRow<0)
  917. {
  918. messageBox("환자를 선택","I008");
  919. return;
  920. }
  921. var pid=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/pid");
  922. var orddd=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/orddd");
  923. var cretno=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/cretno");
  924. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/ordrsrvtm");
  925. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/ordrsrvseqno");
  926. var orddrid=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/orddrid");
  927. var orddeptcd=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/orddeptcd");
  928. var centcd=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/centcd");
  929. var status=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/status"); //상태값
  930. var ordroomcd=model.getValue("/root/main/ordschelist/ordschereteendlistinfo"+"["+idxRow+"]/ordroomcd");
  931. /*
  932. if(status=='1C'||status=='2C'||status=='2-'||status=='2A')
  933. { //진료실 퇴실 후 완료 환자가 대기 상태로 갈경우 가장 끝으로 데이터 보내준다.
  934. var lastordrsrvtm=parseInt(ordrsrvtm)+parseInt(5000);
  935. model.makeValue("/root/send/savedata/ordrsrvtm",lastordrsrvtm);
  936. //model.makeValue("/root/send/savedata/ordrsrvseqno",'0000');
  937. }
  938. else
  939. {*/
  940. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  941. //}
  942. //alert(model.getValue("/root/send/savedata/ordrsrvtm"));
  943. model.makeValue("/root/send/savedata/pid",pid);
  944. model.makeValue("/root/send/savedata/orddd",orddd);
  945. model.makeValue("/root/send/savedata/cretno",cretno);
  946. model.makeValue("/root/send/savedata/patstat",'-'); //대기 -로 저장
  947. model.makeValue("/root/send/savedata/orddrid",orddrid);
  948. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  949. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  950. model.makeValue("/root/send/savedata/centcd",centcd);
  951. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  952. model.makeValue("/root/send/savedata/endflag","Y"); // 완료보류일때 대기
  953. model.makeValue("/root/send/savedata/status",status); // 완료보류일때 대기
  954. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  955. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 insert
  956. {
  957. //messageBox("처리가","I002");
  958. fOrdScheList();
  959. }
  960. model.refresh();
  961. }
  962. function fOrdRoomEnter() // 진료앞 대기 환자 진료실 입실
  963. {
  964. var idxEntRow=grd_ordentroomlistinfo.rows; // 들어오실분 리스트
  965. var idxfixedRow=grd_ordentroomlistinfo.fixedRows;
  966. var i=idxEntRow-idxfixedRow;
  967. var idxRow=grd_ordinfoschelistinfo.row; //선택한 행
  968. if(idxRow<=0) // 환자 선택하지 않았을때
  969. {
  970. messageBox("환자를 선택","I008");
  971. return;
  972. }
  973. if(idxRow=='2') //진료실 앞 대기 환자 리스트 2번째 환자는 입실시키지 못하도록 한다.
  974. {
  975. messageBox("입실할 환자의 우선순위를","I007");
  976. return;
  977. }
  978. if(idxEntRow-idxfixedRow>0) //들어오실 분 내역이 아직 존재할때
  979. {
  980. var status=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+i+"]/status");
  981. if(status=='A')
  982. {
  983. messageBox("진료가 완료될 때까지 기다려 주십시요. 진료실 퇴실도 ","I006");
  984. return;
  985. }
  986. }
  987. var idxRow=grd_ordinfoschelistinfo.row;
  988. var pid=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/pid");
  989. var orddd=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/orddd");
  990. var cretno=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/cretno");
  991. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/ordrsrvtm");
  992. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/ordrsrvseqno");
  993. var orddrid=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/orddrid");
  994. var orddeptcd=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/orddeptcd");
  995. var elbulbodstat=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/elbulbodstat");
  996. var ordroomcd=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/ordroomcd");
  997. //var status=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/status");
  998. model.makeValue("/root/send/savedata/pid",pid);
  999. model.makeValue("/root/send/savedata/orddd",orddd);
  1000. model.makeValue("/root/send/savedata/cretno",cretno);
  1001. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  1002. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  1003. //model.makeValue("/root/send/savedata/status",status);
  1004. model.makeValue("/root/send/savedata/patstat",'A'); //진료실 입실상태 A(입실)로 저장
  1005. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1006. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1007. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1008. model.makeValue("/root/send/savedata/status","D");
  1009. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  1010. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 입실상태로 update
  1011. {
  1012. //messageBox("처리가","I002");
  1013. fOrdScheList();
  1014. }
  1015. model.refresh();
  1016. }
  1017. function fOrdRoomOut() //진료실 퇴실 함수
  1018. {
  1019. var idxRow=grd_ordentroomlistinfo.row;
  1020. if(idxRow<=0) // 환자 선택하지 않았을때
  1021. {
  1022. messageBox("환자를 선택","I008");
  1023. return;
  1024. }
  1025. var pid=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/pid");
  1026. var orddd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddd");
  1027. var cretno=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/cretno");
  1028. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordrsrvtm");
  1029. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordrsrvseqno");
  1030. var orddrid=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddrid");
  1031. var orddeptcd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddeptcd");
  1032. var status=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/status");
  1033. var ordroomcd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordroomcd");
  1034. //alert(status);
  1035. model.makeValue("/root/send/savedata/pid",pid);
  1036. model.makeValue("/root/send/savedata/orddd",orddd);
  1037. model.makeValue("/root/send/savedata/cretno",cretno);
  1038. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  1039. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  1040. model.makeValue("/root/send/savedata/patstat",'C'); //퇴실 C로 저장
  1041. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1042. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1043. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  1044. model.makeValue("/root/send/savedata/status","A");
  1045. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1046. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 퇴실인 환자 update
  1047. {
  1048. //messageBox("처리가","I002");
  1049. fOrdScheList();
  1050. }
  1051. model.refresh();
  1052. }
  1053. function fOrdInfoPatWaitRete() // 진료실앞 대기환자에서 보류 상태 클릭시 발생하는 함수
  1054. {
  1055. var idxRow=grd_ordinfoschelistinfo.row;
  1056. if(idxRow<=0) // 환자 선택하지 않았을때
  1057. {
  1058. messageBox("환자를 선택","I008");
  1059. return;
  1060. }
  1061. var pid=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/pid");
  1062. var orddd=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/orddd");
  1063. var cretno=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/cretno");
  1064. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/ordrsrvtm");
  1065. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/ordrsrvseqno");
  1066. var orddrid=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/orddrid");
  1067. var orddeptcd=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/orddeptcd");
  1068. var ordroomcd=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/ordroomcd");
  1069. if(isNull(pid))
  1070. {
  1071. messageBox("처리할 환자가","I004");
  1072. return;
  1073. }
  1074. model.makeValue("/root/send/savedata/pid",pid);
  1075. model.makeValue("/root/send/savedata/orddd",orddd);
  1076. model.makeValue("/root/send/savedata/cretno",cretno);
  1077. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  1078. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  1079. model.makeValue("/root/send/savedata/patstat",'B'); //보류B로 저장
  1080. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1081. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1082. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1083. model.makeValue("/root/send/savedata/status","D");
  1084. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  1085. if(submit("TXMNV21204")==true) // 대기환자 상태 update
  1086. {
  1087. if(model.getValue("/root/main/returnsts/statusinfo/restatus")=="A")
  1088. {
  1089. messageBox("이미 입실이 된","I005");
  1090. fOrdScheList();
  1091. return;
  1092. }
  1093. //messageBox("처리가","I002");
  1094. fOrdScheList();
  1095. }
  1096. model.refresh();
  1097. }
  1098. function fSetMenuGroupSeq(toSeq, type) // 순서 변경 함수
  1099. {
  1100. var isSeq = grd_ordschelistinfo.row; //클릭한 로우
  1101. var fixRow = grd_ordschelistinfo.fixedRows;
  1102. //alert("isSeq"+isSeq);
  1103. //alert("fix"+fixRow);
  1104. if(isSeq > 0){ // 클릭한 로우가 존재할 때
  1105. var srcSeq = (isSeq > toSeq) ? isSeq+1 : isSeq; //클릭한 행과 이동할 행을 비교하여 클릭한 행이 클 때는
  1106. grd_ordschelistinfo.insertRow(toSeq, type, false); // 이동할 위치에 행을 하나 삽입한다.
  1107. model.copyNode("/root/main/ordschelist/ordschelistinfo["+grd_ordschelistinfo.row+"]", "/root/main/ordschelist/ordschelistinfo["+srcSeq+"]");
  1108. // alert("srcSeq위치에행을삭제한다"+srcSeq);
  1109. grd_ordschelistinfo.deleteRow(srcSeq, false);
  1110. if(isSeq > toSeq){
  1111. startRow = toSeq;
  1112. endRow = isSeq;
  1113. grd_ordschelistinfo.row = startRow; //위로 올릴때 포커스는 시작점
  1114. //alert("start"+startRow);
  1115. if(isSeq==startRow) // 순서 위로 변경시 변경한 순서와 처음 순서가 같을 때
  1116. {
  1117. model.makeValue("/root/chkvalue/chk","Y");
  1118. //alert("위"+model.getValue("/root/chkvalue/chk"));
  1119. }
  1120. }else{
  1121. startRow = isSeq;
  1122. endRow = toSeq;
  1123. grd_ordschelistinfo.row = endRow; //밑으로 내릴 때 포커스는 끝나는점
  1124. //alert("end"+endRow);
  1125. if(isSeq==endRow) // 순서 밑으로 변경시 변경한 순서와 처음 순서가 같을 때
  1126. {
  1127. model.makeValue("/root/chkvalue/chk","Y");
  1128. //alert("아래"+model.getValue("/root/chkvalue/chk"));
  1129. }
  1130. }
  1131. model.refresh();
  1132. }else{
  1133. messageBox("변경할 메뉴그룹을","C002");
  1134. }
  1135. }
  1136. function fOrdPatWaitSeqChng() //대기환자 순서 변경 함수
  1137. {
  1138. //alert(model.getValue("/root/chkvalue/chk"));
  1139. var idxRows=grd_ordschelistinfo.rows;
  1140. var idxFixRows=grd_ordschelistinfo.fixedRows;
  1141. var idxRow=grd_ordschelistinfo.row; //클릭한 행 반환
  1142. var upRow=idxRow-1; //클릭한 행 윗 행
  1143. var downRow=idxRow+1; //클릭한 행 아래 행
  1144. if(rdo_condwait.value=='2') //완료 환자 선택시
  1145. {
  1146. messageBox("순서 변경은 대기 환자만","I006");
  1147. return;
  1148. }
  1149. if(idxRows-idxFixRows=='0') //조회된 행이 없을 때
  1150. {
  1151. messageBox("환자 리스트가","I004");
  1152. return;
  1153. }
  1154. if(idxRow<=0) // 환자 선택하지 않았을때
  1155. {
  1156. messageBox("순서 변경할 환자를 선택","I008");
  1157. return;
  1158. }
  1159. //내릴 수는 있도록
  1160. // if(idxRow<3) //최상위 3명 환자의 순서는 변경할 수 없다.
  1161. // {
  1162. // messageBox("상위 2명 환자의 순서는 변경할수","E001");
  1163. // return;
  1164. // }
  1165. if(model.getValue("/root/chkvalue/chk")=="Y") //순서가 변경되지 않았을 때
  1166. {
  1167. messageBox("순서 변경 유무를","I007");
  1168. return;
  1169. }
  1170. var idxordrsrvtm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/ordrsrvtm");
  1171. var upordrsrvtm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+upRow+"]/ordrsrvtm");
  1172. var downordrsrvtm=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+downRow+"]/ordrsrvtm");
  1173. var idxordrsrvseqno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/ordrsrvseqno");
  1174. var upordrsrvseqno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+upRow+"]/ordrsrvseqno");
  1175. var downordrsrvseqno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+downRow+"]/ordrsrvtm");
  1176. if(isNull(upordrsrvtm)) {
  1177. upordrsrvtm = downordrsrvtm -1;
  1178. }
  1179. if (isNull(upordrsrvseqno) || upordrsrvseqno == "1.#Q") {
  1180. upordrsrvseqno = "000";
  1181. }
  1182. if (isNull(downordrsrvseqno) || downordrsrvseqno == "1.#Q") {
  1183. downordrsrvseqno = "000";
  1184. }
  1185. //alert(upordrsrvseqno+".."+upordrsrvseqno+".."+downordrsrvseqno);
  1186. // ordrsrvtm이 위 아래 같으면 down+up/2, 다르면 up+10000/2
  1187. if(upordrsrvseqno=='000'&& downordrsrvseqno=='000')
  1188. {
  1189. model.makeValue("/root/send/savedata/ordrsrvseqno",'500');
  1190. //alert('5000');
  1191. }
  1192. else if(upordrsrvseqno>downordrsrvseqno) {
  1193. var midseqno=(parseInt(1000)+parseInt(upordrsrvseqno))/2;
  1194. //var subordrsrvseqno=round(midseqno);
  1195. var subordrsrvseqno=Math.round(midseqno);
  1196. //alert(subordrsrvseqno);
  1197. model.makeValue("/root/send/savedata/ordrsrvseqno",subordrsrvseqno);
  1198. //alert("1:"+upordrsrvseqno+".."+parseInt(upordrsrvseqno)+".."+(parseInt(10000)+parseInt(upordrsrvseqno))+".."+(parseInt(10000)+parseInt(upordrsrvseqno))/2);
  1199. }
  1200. else if(upordrsrvseqno<downordrsrvseqno) {
  1201. var midseqno2=(parseInt(upordrsrvseqno)+parseInt(downordrsrvseqno))/2;
  1202. //var subordrsrvseqno=round(midseqno2,0);
  1203. var subordrsrvseqno=Math.round(midseqno2);
  1204. //alert(subordrsrvseqno);
  1205. model.makeValue("/root/send/savedata/ordrsrvseqno",subordrsrvseqno);
  1206. //alert(upordrsrvseqno+downordrsrvseqno);
  1207. //alert("2:"+(parseInt(upordrsrvseqno)+parseInt(downordrsrvseqno))+".."+(parseInt(upordrsrvseqno)+parseInt(downordrsrvseqno))/2);
  1208. } else if (upordrsrvseqno ==downordrsrvseqno) {
  1209. model.makeValue("/root/send/savedata/ordrsrvseqno",'500');
  1210. }
  1211. var pid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/pid");
  1212. var orddd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddd");
  1213. var cretno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/cretno");
  1214. var orddrid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddrid");
  1215. var orddeptcd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddeptcd");
  1216. var patstat=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/patstat");
  1217. var ordroomcd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/ordroomcd");
  1218. // alert(idxRow+"idxrow"+pid+"pid"+orddd+"orddd"+cretno+"cretno"+orddrid+"orddrid"+orddeptcd+"orddeptcd"+patstat+"patstat");
  1219. model.makeValue("/root/send/savedata/ordrsrvtm",upordrsrvtm);
  1220. model.makeValue("/root/send/savedata/pid",pid);
  1221. model.makeValue("/root/send/savedata/orddd",orddd);
  1222. model.makeValue("/root/send/savedata/cretno",cretno);
  1223. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1224. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1225. // model.makeValue("/root/send/savedata/patstat","O"); //환자 대기 상태로 셋팅
  1226. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  1227. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1228. if(submit("TXMNV21205")==true) //TXMNV07003
  1229. {
  1230. //messageBox("순서변경이","I002");
  1231. fOrdScheList();
  1232. model.removeNodeset("/root/chkvalue/chk"); //체크값 리셋
  1233. }
  1234. model.refresh();
  1235. }
  1236. function fOrdRoomScheSave() // 외래 진료실 일정 등록 함수
  1237. {
  1238. model.removeNodeset("/root/send/savedata");
  1239. model.makeNode("/root/send/savedata");
  1240. var orddd=model.getValue("/root/hidden/con/orddd");
  1241. var centcd=model.getValue("/root/hidden/con/centcd");
  1242. var orddeptcd =model.getValue("/root/hidden/con/orddeptcd");
  1243. var subdeptcd=model.getValue("/root/hidden/con/subdeptcd");
  1244. var ordroomcd = model.getValue("/root/hidden/con/ordroomcd");
  1245. var ordflag=model.getValue("/root/hidden/con/ordflag");
  1246. var orddrid=model.getValue("/root/hidden/con/orddrid");
  1247. var chrgempid =model.getValue("/root/hidden/con/chrgempid");
  1248. var autoflag=model.getValue("/root/hidden/con/autoflag");
  1249. var autoactyn=model.getValue("/root/hidden/con/autoactyn");
  1250. var excucnt=model.getValue("/root/hidden/con/excucnt");
  1251. var flag=model.getValue("/root/hidden/con/flag");
  1252. if(isNull(orddd) && flag != 'T')
  1253. {
  1254. messageBox("진료일자는","I003");
  1255. model.setFocus("ipt_orddd");
  1256. return;
  1257. }
  1258. else
  1259. {
  1260. model.makeValue("/root/send/savedata/orddd",orddd);
  1261. }
  1262. if(isNull(centcd))
  1263. {
  1264. if(isNull(orddeptcd))
  1265. {
  1266. messageBox("센터나 진료과 둘 중 하나는","I003");
  1267. model.setFocus("cmb_centcd");
  1268. }
  1269. }
  1270. else //센터 코드가 있을 때 진료과는 반드시 입력 해야 한다.
  1271. {
  1272. if(isNull(orddeptcd))
  1273. {
  1274. messageBox("센터가 선택되었을 때 진료과는","I003");
  1275. model.setFocus("cmb_orddeptcd");
  1276. return;
  1277. }
  1278. }
  1279. if(isNull(ordroomcd))
  1280. {
  1281. messageBox("진료실명은","I003");
  1282. model.setFocus("cmb_ordroomcd");
  1283. return;
  1284. }
  1285. else
  1286. {
  1287. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1288. }
  1289. if(isNull(ordflag))
  1290. {
  1291. messageBox("진료구분은","I003");
  1292. model.setFocus("rdo_ordflag");
  1293. return;
  1294. }
  1295. else if(autoflag=='1') // 자동입실여부에 체크되어있을 때 ( 오전,오후,전체 의 value 값은 2,4,6)
  1296. {
  1297. if(ordflag=='1') //오전
  1298. {
  1299. model.makeValue("/root/send/savedata/ordflag","2");
  1300. }
  1301. else if(ordflag=='2') //오후
  1302. {
  1303. model.makeValue("/root/send/savedata/ordflag","4");
  1304. }
  1305. else //전체
  1306. {
  1307. model.makeValue("/root/send/savedata/ordflag","6");
  1308. }
  1309. }
  1310. else // 수동입실 체크일 때 (오전,오후,전체의 value값은 1,3,5)
  1311. {
  1312. if(ordflag=='1') //오전
  1313. {
  1314. model.makeValue("/root/send/savedata/ordflag","1");
  1315. }
  1316. else if(ordflag=='2') //오후
  1317. {
  1318. model.makeValue("/root/send/savedata/ordflag","3");
  1319. }
  1320. else //전체
  1321. {
  1322. model.makeValue("/root/send/savedata/ordflag","5");
  1323. }
  1324. }
  1325. if(isNull(orddrid) && flag != 'T')
  1326. {
  1327. messageBox("담당의는","I003");
  1328. model.setFocus("cmb_orddrid");
  1329. return;
  1330. }
  1331. else
  1332. {
  1333. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1334. }
  1335. if(isNull(chrgempid))
  1336. {
  1337. messageBox("담당직원은","I003");
  1338. model.setFocus("cmb_chrgempid");
  1339. return;
  1340. }
  1341. else
  1342. {
  1343. model.makeValue("/root/send/savedata/chrgempid",chrgempid);
  1344. }
  1345. model.makeValue("/root/send/savedata/autoactyn",autoactyn);
  1346. model.makeValue("/root/send/savedata/excucnt",excucnt);
  1347. if(isNull(centcd))
  1348. {
  1349. //model.makeValue("/root/hidden/con/centcd","-");
  1350. model.makeValue("/root/send/savedata/centcd","-");
  1351. }
  1352. else
  1353. {
  1354. model.makeValue("/root/send/savedata/centcd",centcd);
  1355. }
  1356. if(isNull(orddeptcd))
  1357. {
  1358. model.makeValue("/root/send/savedata/orddeptcd","-");
  1359. }
  1360. else
  1361. {
  1362. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1363. }
  1364. //if(isNull(subdeptcd))
  1365. //{
  1366. model.makeValue("/root/send/savedata/subdeptcd","-");
  1367. //}
  1368. //else
  1369. //{
  1370. // model.makeValue("/root/send/savedata/subdeptcd",subdeptcd);
  1371. //}
  1372. model.makeValue("/root/send/savedata/msgflag","O"); //외래 진료실 일정 등록 구분 플래그 O , 공지사항 등록 구분 플래그 M
  1373. if(flag == 'T'){ // 검사실 일정 저장 할 때
  1374. submit("TXMNV21206");
  1375. }
  1376. else{
  1377. if(submit("TXMNV07002")==true)
  1378. {
  1379. if(model.getValue("/root/main/returnsts/statusinfo/restatus")=="G")
  1380. {
  1381. messageBox("해당과에 해당 의사로 이미 외래 진료실 일정이 등록되어","I010");
  1382. return;
  1383. }
  1384. //messageBox("외래 진료실 일정 처리가","I002");
  1385. fOrdScheList(); //조회
  1386. }
  1387. }
  1388. model.resetInstanceNode("/root/hidden/con/msgflag");
  1389. }
  1390. function fOrdDridSet() //진료과 선택시 세부진료과, 담당의, 담당직원 조회
  1391. {
  1392. model.resetInstanceNode("/root/hidden/con/subdeptcd");
  1393. model.resetInstanceNode("/root/hidden/con/orddrid");
  1394. model.resetInstanceNode("/root/hidden/con/chrgempid");
  1395. model.resetInstanceNode("/root/hidden/con/autoflag");
  1396. model.resetInstanceNode("/root/hidden/con/ordflag");
  1397. model.resetInstanceNode("/root/hidden/con/ordroomcd");
  1398. //model.makeValue("/root/hidden/con/basedd",model.getValue("/root/hidden/con/orddd")); //기준일자는 진료일자
  1399. model.copyNode("/root/send/reqdata","/root/hidden/con");
  1400. submit("TRMNV21304"); //TRMNV07001
  1401. var userid=getUserInfo("userid");
  1402. var usernm=getUserInfo("usernm");
  1403. //alert(usernm);
  1404. addComboItem("cmb_chrgempid",usernm,userid,"above"); //로그인한 사용자 추가
  1405. cmb_chrgempid.select(0);
  1406. model.refresh();
  1407. }
  1408. function fOrdRoomMsgSave() //공지사항 등록 함수
  1409. {
  1410. var msgfromtm=model.getValue("/root/hidden/msgrgst/msgfromtm");
  1411. var msgtotm=model.getValue("/root/hidden/msgrgst/msgtotm");
  1412. var orddd=model.getValue("/root/hidden/con/orddd");
  1413. var centcd=model.getValue("/root/hidden/con/centcd");
  1414. var orddeptcd=model.getValue("/root/hidden/con/orddeptcd");
  1415. var subdeptcd=model.getValue("/root/hidden/con/subdeptcd");
  1416. var ordroomcd=model.getValue("/root/hidden/con/ordroomcd");
  1417. if(isNull(msgfromtm))
  1418. {
  1419. messageBox("공지사항 표시시간은","I003");
  1420. model.setFocus("ipt_msgfromtm");
  1421. return;
  1422. }
  1423. if(isNull(msgtotm))
  1424. {
  1425. messageBox("공지사항 표시시간은","I003");
  1426. model.setFocus("ipt_msgtotm");
  1427. return;
  1428. }
  1429. if(msgfromtm>msgtotm)
  1430. {
  1431. messageBox("시작시간이 종료시간보다 클 수는","I004");
  1432. model.setFocus("ipt_msgfromtm");
  1433. return;
  1434. }
  1435. if(isNull(centcd)&&isNull(orddeptcd)&&isNull(ordroomcd))
  1436. {
  1437. messageBox("공지사항 등록할 외래 진료 일정이","I004");
  1438. model.setFocus("ipt_msgfromtm");
  1439. return;
  1440. }
  1441. if(isNull(centcd))
  1442. {
  1443. model.makeValue("/root/send/savedata/centcd","-");
  1444. }
  1445. else
  1446. {
  1447. model.makeValue("/root/send/savedata/centcd",model.getValue("/root/hidden/con/centcd"));
  1448. }
  1449. if(isNull(orddeptcd))
  1450. {
  1451. model.makeValue("/root/send/savedata/orddeptcd","-");
  1452. }
  1453. else
  1454. {
  1455. model.makeValue("/root/send/savedata/orddeptcd",model.getValue("/root/hidden/con/orddeptcd"));
  1456. }
  1457. //if(isNull(subdeptcd))
  1458. //{
  1459. model.makeValue("/root/send/savedata/subdeptcd","-");
  1460. //}
  1461. //else
  1462. //{
  1463. // model.makeValue("/root/send/savedata/subdeptcd",model.getValue("/root/hidden/con/subdeptcd"));
  1464. // }
  1465. //model.makeValue("/root/send/savedata/orddeptcd",model.getValue("/root/hidden/con/orddeptcd"));
  1466. //model.makeValue("/root/send/savedata/subdeptcd",model.getValue("/root/hidden/con/subdeptcd"));
  1467. model.makeValue("/root/send/savedata/orddd",model.getValue("/root/hidden/con/orddd"));
  1468. model.makeValue("/root/send/savedata/ordroomcd",model.getValue("/root/hidden/con/ordroomcd"));
  1469. model.makeValue("/root/send/savedata/msg",model.getValue("/root/hidden/msgrgst/msg"));
  1470. model.makeValue("/root/send/savedata/msgfromtm",model.getValue("/root/hidden/msgrgst/msgfromtm"));
  1471. model.makeValue("/root/send/savedata/msgtotm",model.getValue("/root/hidden/msgrgst/msgtotm"));
  1472. model.makeValue("/root/send/savedata/delytm",model.getValue("/root/hidden/msgrgst/delytm"));
  1473. model.makeValue("/root/send/savedata/status",model.getValue("/root/hidden/msgrgst/status"));
  1474. model.makeValue("/root/send/savedata/msgflag","M");
  1475. //model.makeValue("/root/hidden/msgrgst/msgflag","M"); //외래 진료실 일정 등록 구분 플래그 O , 공지사항 등록 구분 플래그 M
  1476. //model.copyNode("/root/send/savedata","/root/hidden/msgrgst");
  1477. if(submit("TXMNV07004")==true)
  1478. {
  1479. if(model.getValue("/root/main/returnsts/statusinfo/restatus")=="K")
  1480. {
  1481. messageBox("삭제할 진료실 일정이","I004");
  1482. return;
  1483. }
  1484. else
  1485. {
  1486. //messageBox("외래 진료실 일정 처리가","I002");
  1487. fOrdScheList(); //조회
  1488. }
  1489. }
  1490. model.resetInstanceNode("/root/hidden/con/msgflag");
  1491. model.resetInstanceNode("/root/hidden/msgrgst/status");
  1492. }
  1493. function fOrdPaitReteToWait()// // 대기환자 여러 명 보류로 보내는 함수
  1494. {
  1495. var idxRow=grd_ordschelistinfo.rows;
  1496. var idxRows=grd_ordschelistinfo.fixedRows;
  1497. var chkCount=0;
  1498. var chkdata = 'chk'
  1499. + '▦pid'
  1500. + '▦orddd'
  1501. + '▦cretno'
  1502. + '▦ordrsrvtm'
  1503. + '▦ordrsrvseqno'
  1504. + '▦orddrid'
  1505. + '▦orddeptcd'
  1506. + '▦patstat'
  1507. + '▦dspflag'
  1508. + '▦status'
  1509. + '▦ordroomcd'
  1510. + '▩' ;
  1511. for(i=1;i<=idxRow-idxRows;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  1512. {
  1513. var chkFlag=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/chk");
  1514. var dspflag = model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/dspflag");
  1515. var status = null;
  1516. if(dspflag =='1'){
  1517. status="D";
  1518. }else{
  1519. status="-";
  1520. }
  1521. if(chkFlag=='1')
  1522. {
  1523. chkdata+= chkFlag
  1524. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/pid")
  1525. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/orddd")
  1526. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/cretno")
  1527. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/ordrsrvtm")
  1528. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/ordrsrvseqno")
  1529. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/orddrid")
  1530. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/orddeptcd")
  1531. + '▦' +'B' //환자 상태 보류 B로 저장
  1532. + '▦' +'O' //외래 플래그 O로 저장
  1533. + '▦' +status //환자 상태 - / D
  1534. + '▦' +model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+i+"]/ordroomcd")
  1535. + '▩' ;
  1536. chkCount=chkCount+1;
  1537. }
  1538. }
  1539. if(chkCount=='0')
  1540. {
  1541. messageBox("보류 시킬 환자를 대기 리스트에서 선택","I008");
  1542. return;
  1543. }
  1544. model.removeNodeset("/root/send/savedata");
  1545. model.makeNode("/root/send/savedata");
  1546. model.makeValue("/root/main/cond/chkdata",chkdata);
  1547. //alert(model.getValue("/root/main/cond/chkdata"));
  1548. model.copyNode("/root/send/savedata","/root/main/cond");
  1549. // var instcd = model.getValue("/root/hidden/session/sess_dutplceinstcd");
  1550. // model.makeValue("/root/send/savedata/instcd", instcd);
  1551. //alert(model.getValue("/root/send/savedata"));
  1552. //alert(model.getValue("/root/send/savedata"));
  1553. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 insert
  1554. {
  1555. //messageBox("처리가","I002");
  1556. fOrdScheList();
  1557. }
  1558. model.refresh();
  1559. }
  1560. function fOrdPatWaitToRete() // 보류 환자 대기 상태로 멀티 저장하는 함수
  1561. {
  1562. alert("보류대기로 멀티선택");
  1563. var idxRow=grd_ordscheretelistinfo.rows;
  1564. var idxRows=grd_ordscheretelistinfo.fixedRows;
  1565. var chkCount=0;
  1566. var chkdata = 'chk'
  1567. + '▦pid'
  1568. + '▦orddd'
  1569. + '▦cretno'
  1570. + '▦ordrsrvtm'
  1571. + '▦ordrsrvseqno'
  1572. + '▦orddrid'
  1573. + '▦orddeptcd'
  1574. + '▦centcd'
  1575. + '▦patstat'
  1576. + '▦dspflag'
  1577. + '▦status'
  1578. + '▦ordroomcd'
  1579. + '▩' ;
  1580. for(i=1;i<=idxRow-idxRows;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  1581. {
  1582. var chkFlag=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/chk");
  1583. if(chkFlag=='1')
  1584. {
  1585. chkdata+= chkFlag
  1586. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/pid")
  1587. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/orddd")
  1588. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/cretno")
  1589. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/ordrsrvtm")
  1590. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/ordrsrvseqno")
  1591. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/orddrid")
  1592. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/orddeptcd")
  1593. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/centcd")
  1594. + '▦' +'-' //환자 상태 대기 - 로 저장
  1595. + '▦' +'O' //외래 플래그 O로 저장
  1596. + '▦' +'B' //환자 상태 보류 B
  1597. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/ordroomcd")
  1598. + '▩' ;
  1599. chkCount=chkCount+1;
  1600. }
  1601. }
  1602. if(chkCount=='0')
  1603. {
  1604. messageBox("대기시킬 환자를 보류 리스트에서 선택","I008");
  1605. return;
  1606. }
  1607. model.removeNodeset("/root/send/savedata");
  1608. model.makeNode("/root/send/savedata");
  1609. model.makeValue("/root/main/cond/chkdata",chkdata); //임시 노드 con/chkdata에 저장
  1610. model.copyNode("/root/send/savedata","/root/main/cond");
  1611. var instcd = model.getValue("/root/hidden/session/sess_dutplceinstcd");
  1612. model.makeValue("/root/send/savedata/instcd", instcd);
  1613. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 insert
  1614. {
  1615. //messageBox("처리가","I002");
  1616. fOrdScheList();
  1617. }
  1618. model.refresh();
  1619. }
  1620. function fOrdPatWaitToReteEnd() // 보류 환자 완료 상태로 멀티 저장하는 함수
  1621. {
  1622. var idxRow=grd_ordscheretelistinfo.rows;
  1623. var idxRows=grd_ordscheretelistinfo.fixedRows;
  1624. var chkCount=0;
  1625. var chkdata = 'chk'
  1626. + '▦pid'
  1627. + '▦orddd'
  1628. + '▦cretno'
  1629. + '▦ordrsrvtm'
  1630. + '▦ordrsrvseqno'
  1631. + '▦orddrid'
  1632. + '▦orddeptcd'
  1633. + '▦centcd'
  1634. + '▦patstat'
  1635. + '▦dspflag'
  1636. + '▦status'
  1637. + '▦ordroomcd'
  1638. + '▩' ;
  1639. for(i=1;i<=idxRow-idxRows;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  1640. {
  1641. var chkFlag=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/chk");
  1642. if(chkFlag=='1')
  1643. {
  1644. chkdata+= chkFlag
  1645. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/pid")
  1646. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/orddd")
  1647. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/cretno")
  1648. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/ordrsrvtm")
  1649. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/ordrsrvseqno")
  1650. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/orddrid")
  1651. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/orddeptcd")
  1652. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/centcd")
  1653. + '▦' +'C' //환자 상태 완료 C로 저장
  1654. + '▦' +'O' //외래 플래그 O로 저장
  1655. + '▦' +'B' //환자 상태 B 보류
  1656. + '▦' +model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/ordroomcd")
  1657. + '▩' ;
  1658. chkCount=chkCount+1;
  1659. }
  1660. }
  1661. if(chkCount=='0')
  1662. {
  1663. messageBox("완료시킬 환자를 보류 리스트에서 선택","I008");
  1664. return;
  1665. }
  1666. model.removeNodeset("/root/send/savedata");
  1667. model.makeNode("/root/send/savedata");
  1668. model.makeValue("/root/main/cond/chkdata",chkdata); //임시 노드 con/chkdata에 저장
  1669. model.copyNode("/root/send/savedata","/root/main/cond");
  1670. var instcd = model.getValue("/root/hidden/session/sess_dutplceinstcd");
  1671. model.makeValue("/root/send/savedata/instcd", instcd);
  1672. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 insert
  1673. {
  1674. //messageBox("처리가","I002");
  1675. fOrdScheList();
  1676. }
  1677. model.refresh();
  1678. }
  1679. function fOrdRoomScheDel() //외래 등록 일정 삭제 함수
  1680. {
  1681. var btn=messageBox("외래 등록 일정을","Q001");
  1682. if(btn=='6')
  1683. {
  1684. model.removeNodeset("/root/send/savedata");
  1685. model.makeNode("/root/send/savedata");
  1686. var centcd=model.getValue("/root/hidden/con/centcd");
  1687. var orddeptcd =model.getValue("/root/hidden/con/orddeptcd");
  1688. var subdeptcd=model.getValue("/root/hidden/con/subdeptcd");
  1689. var orddrid=model.getValue("/root/hidden/con/orddrid");
  1690. var ordnurnm=model.getValue("/root/hidden/con/ordnurnm");
  1691. var chrgempid =model.getValue("/root/hidden/con/chrgempid");
  1692. var ordroomcd=model.getValue("/root/hidden/con/ordroomcd");
  1693. var ordflag=model.getValue("/root/hidden/con/ordflag");
  1694. var orddd=model.getValue("/root/hidden/con/orddd");
  1695. var autoflag=model.getValue("/root/hidden/con/autoflag");
  1696. var flag=model.getValue("/root/hidden/con/flag");
  1697. if(isNull(orddd) &&flag != 'T')
  1698. {
  1699. messageBox("진료일자 정보가","I004");
  1700. model.setFocus("ipt_orddd");
  1701. return;
  1702. }
  1703. else
  1704. {
  1705. model.makeValue("/root/send/savedata/orddd",orddd);
  1706. }
  1707. if(isNull(centcd)&&isNull(orddeptcd))
  1708. {
  1709. messageBox("센터나 진료과 둘 중 하나를","I008");
  1710. model.setFocus("cmb_centcd");
  1711. }
  1712. if(isNull(ordroomcd))
  1713. {
  1714. messageBox("진료실명 정보가","I004");
  1715. model.setFocus("cmb_ordroomcd");
  1716. return;
  1717. }
  1718. else
  1719. {
  1720. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1721. }
  1722. if(isNull(ordflag))
  1723. {
  1724. messageBox("진료구분을 선택","I008");
  1725. model.setFocus("rdo_ordflag");
  1726. return;
  1727. }
  1728. else
  1729. {
  1730. model.makeValue("/root/send/savedata/ordflag",'0'); //진료구분에 삭제 상태 값 0 저장
  1731. }
  1732. if(isNull(orddrid) &&flag != 'T')
  1733. {
  1734. messageBox("담당의 정보가","I004");
  1735. model.setFocus("cmb_orddrid");
  1736. return;
  1737. }
  1738. else
  1739. {
  1740. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1741. }
  1742. if(isNull(chrgempid))
  1743. {
  1744. messageBox("담당직원 정보가","I004");
  1745. model.setFocus("cmb_chrgempid");
  1746. return;
  1747. }
  1748. else
  1749. {
  1750. model.makeValue("/root/send/savedata/chrgempid",chrgempid);
  1751. }
  1752. if(isNull(centcd))
  1753. {
  1754. model.makeValue("/root/send/savedata/centcd","-");
  1755. }
  1756. else
  1757. {
  1758. model.makeValue("/root/send/savedata/centcd",centcd);
  1759. }
  1760. if(isNull(orddeptcd))
  1761. {
  1762. model.makeValue("/root/send/savedata/orddeptcd","-");
  1763. }
  1764. else
  1765. {
  1766. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1767. }
  1768. //if(isNull(subdeptcd))
  1769. //{
  1770. model.makeValue("/root/send/savedata/subdeptcd","-");
  1771. //}
  1772. //else
  1773. //{
  1774. // model.makeValue("/root/send/savedata/subdeptcd",subdeptcd);
  1775. //}
  1776. model.makeValue("/root/send/savedata/msgflag","O"); //외래 진료실 일정 등록 구분 플래그 O , 공지사항 등록 구분 플래그 M
  1777. model.makeValue("/root/send/savedata/statflag","D"); //삭제 플래그 D
  1778. if(flag == 'T'){ // 검사실 일정 삭제 할 때
  1779. submit("TXMNV21206");
  1780. }else{
  1781. if(submit("TXMNV07002")==true) // 진료실 일정 삭제 할 때
  1782. {
  1783. if(model.getValue("/root/main/returnsts/statusinfo/restatus")=="K")
  1784. {
  1785. messageBox("삭제할 진료실 일정이","I004");
  1786. return;
  1787. }
  1788. else
  1789. {
  1790. //messageBox("외래 진료실 일정 삭제가","I002");
  1791. fOrdScheList(); //조회
  1792. }
  1793. }
  1794. }
  1795. model.resetInstanceNode("/root/hidden/con/msgflag");
  1796. model.resetInstanceNode("/root/main/returnsts/statusinfo/restatus");
  1797. }
  1798. model.refresh();
  1799. }
  1800. function fOrdCentReq() //센터 선택시 진료과 및 세부과 가져오는 함수
  1801. {
  1802. var centcd = model.getValue("/root/hidden/con/centcd");
  1803. var subdeptcd=model.getValue("/root/hidden/con/subdeptcd");
  1804. model.resetInstanceNode("/root/hidden/con/subdeptcd");
  1805. model.resetInstanceNode("/root/hidden/con/orddrid");
  1806. model.resetInstanceNode("/root/hidden/con/chrgempid");
  1807. model.resetInstanceNode("/root/hidden/con/autoflag");
  1808. model.resetInstanceNode("/root/hidden/con/ordflag");
  1809. model.resetInstanceNode("/root/hidden/con/ordroomcd");
  1810. model.resetInstanceNode("/root/hidden/con/orddeptcd");
  1811. //alert(centcd);
  1812. //alert(subdeptcd);
  1813. if(centcd=='-'||centcd=='')
  1814. {
  1815. combo3.visible = false;
  1816. cmb_orddeptcd.visible = true;
  1817. submit("TRMNV07002"); //센터, 진료과 정보 가져옴
  1818. }
  1819. else //센터 선택시 센터에 따른 진료과, 진료실 셋팅
  1820. {
  1821. var instcd = model.getValue("/root/hidden/session/sess_dutplceinstcd");
  1822. var deptcd = model.getValue("/root/hidden/con/centcd");
  1823. var base_dd = new Date().getDateFormat("YYYYMMDD");
  1824. var sort_field = "dispseq";//정렬필드(출력순서:'dispseq')
  1825. var sort_method = "asc"; //정렬방법(오름차순:'asc')
  1826. zsufGetCntrSubOrdDepartmentList(instcd, deptcd, 'out', "/root/hidden/init/cntrsuborddeptlist", base_dd);
  1827. // 센터에 따른 진료과 셋팅
  1828. model.resetInstanceNode("cmb_subdeptcd");
  1829. combo3.visible = true;
  1830. cmb_orddeptcd.visible = false;
  1831. model.copyNode("/root/send/reqdata","/root/hidden/con");
  1832. submit("TRMNV07006"); //진료실 가져오는 서브미션
  1833. }
  1834. // model.makeNode("/root/hidden/con/chrgempid");
  1835. var userid=getUserInfo("userid");
  1836. var usernm=getUserInfo("usernm");
  1837. //alert(usernm);
  1838. addComboItem("cmb_chrgempid",usernm,userid,"above"); //로그인한 사용자 추가
  1839. cmb_chrgempid.select(0);
  1840. model.refresh();
  1841. }
  1842. function fAutoRoomEnter() //자동퇴실 조회 및 자동입실 함수
  1843. {
  1844. var bizdd=model.getValue("/root/hidden/con/orddd");
  1845. var centcd=model.getValue("/root/hidden/con/centcd");
  1846. var orddeptcd=model.getValue("/root/hidden/con/orddeptcd");
  1847. var orddrid=model.getValue("/root/hidden/con/orddrid");
  1848. var ordroomcd=model.getValue("/root/hidden/con/ordroomcd");
  1849. var orddd=model.getValue("/root/hidden/con/orddd");
  1850. if(isNull(centcd)||centcd=='')
  1851. {
  1852. model.makeValue("/root/send/savedata/centcd",'-');
  1853. }
  1854. else
  1855. {
  1856. model.makeValue("/root/send/savedata/centcd",centcd);
  1857. }
  1858. if(isNull(orddeptcd)||orddeptcd=='')
  1859. {
  1860. model.makeValue("/root/send/savedata/orddeptcd",'-');
  1861. }
  1862. else
  1863. {
  1864. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1865. }
  1866. if(isNull(ordroomcd)||ordroomcd=='')
  1867. {
  1868. model.makeValue("/root/send/savedata/ordroomcd",'-');
  1869. }
  1870. else
  1871. {
  1872. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1873. }
  1874. model.makeValue("/root/send/savedata/bizdd",bizdd);
  1875. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1876. model.makeValue("/root/send/savedata/status","D");
  1877. model.makeValue("/root/send/savedata/patstat","A");
  1878. model.makeValue("/root/send/savedata/orddd",orddd);
  1879. if(submit("TXMNV21207")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 입실상태로 update
  1880. {
  1881. var restatus=model.getValue("/root/main/returnsts/statusinfo/restatus");
  1882. if(restatus=='D') // 조회된 환자 리스트가 없다는 플래그 D반환
  1883. {
  1884. messageBox("조회된 환자 리스트가","I004");
  1885. return;
  1886. }
  1887. else if(restatus=='F') // 입실한 환자 존재한다는 플래그 F반환
  1888. {
  1889. messageBox("입실해있는 환자가 퇴실한 후 입실이","I006");
  1890. return;
  1891. }
  1892. else
  1893. {
  1894. //messageBox("처리가","I002");
  1895. fOrdScheList();
  1896. }
  1897. model.resetInstanceNode("/root/main/returnsts/statusinfo/restatus");
  1898. }
  1899. model.refresh();
  1900. }
  1901. function fOrdAutoRoomOut() //자동 퇴실 함수
  1902. {
  1903. var idxRows=grd_ordentroomlistinfo.rows;
  1904. var fixedRow=grd_ordentroomlistinfo.fixedRows;
  1905. var idxRow=idxRows-fixedRow;
  1906. if(idxRow<=0) // 환자 선택하지 않았을때
  1907. {
  1908. messageBox("입실한 환자가","I004");
  1909. return;
  1910. }
  1911. var pid=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/pid");
  1912. var orddd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddd");
  1913. var cretno=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/cretno");
  1914. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordrsrvtm");
  1915. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordrsrvseqno");
  1916. var orddrid=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddrid");
  1917. var orddeptcd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddeptcd");
  1918. var status=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/status");
  1919. var ordroomcd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordroomcd");
  1920. //alert(status);
  1921. model.makeValue("/root/send/savedata/pid",pid);
  1922. model.makeValue("/root/send/savedata/orddd",orddd);
  1923. model.makeValue("/root/send/savedata/cretno",cretno);
  1924. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  1925. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  1926. model.makeValue("/root/send/savedata/patstat",'C'); //퇴실 C 로 저장
  1927. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1928. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1929. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  1930. model.makeValue("/root/send/savedata/status",status);
  1931. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1932. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 퇴실인 환자 update
  1933. {
  1934. //messageBox("처리가","I002");
  1935. fOrdScheList();
  1936. }
  1937. model.refresh();
  1938. }
  1939. // 보류 환자를 완료 환자로 바꾸는 함수
  1940. function fOrdReteRoomOut()
  1941. {
  1942. var idxRow=grd_ordscheretelistinfo.row;
  1943. var idxfixRows=grd_ordscheretelistinfo.fixedRows;
  1944. var idxRows=grd_ordscheretelistinfo.rows;
  1945. var chkCount=0;
  1946. for(i=1;i<=idxRows-idxfixRows;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  1947. {
  1948. var chkFlag=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+i+"]/chk");
  1949. if(chkFlag=='1')
  1950. {
  1951. chkCount=chkCount+1;
  1952. }
  1953. }
  1954. if(idxRow<=0 && chkCount=='0') // 체크가 안되어 있으면서 그리드 밖을 클릭시
  1955. {
  1956. messageBox("환자를 선택","I008");
  1957. return;
  1958. }
  1959. if(chkCount!='0')
  1960. {
  1961. fOrdPatWaitToReteEnd(); // 여러개 체크시 여러명 보류 환자 대기로 보내는 저장함수 태운다.
  1962. return;
  1963. }
  1964. var pid=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/pid");
  1965. var orddd=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/orddd");
  1966. var cretno=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/cretno");
  1967. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/ordrsrvtm");
  1968. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/ordrsrvseqno");
  1969. var orddrid=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/orddrid");
  1970. var orddeptcd=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/orddeptcd");
  1971. var status=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/status");
  1972. var ordroomcd=model.getValue("/root/main/ordschelist/ordscheretelistinfo"+"["+idxRow+"]/ordroomcd");
  1973. //alert(status);
  1974. model.makeValue("/root/send/savedata/pid",pid);
  1975. model.makeValue("/root/send/savedata/orddd",orddd);
  1976. model.makeValue("/root/send/savedata/cretno",cretno);
  1977. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  1978. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  1979. model.makeValue("/root/send/savedata/patstat",'C'); //퇴실 C 로 저장
  1980. model.makeValue("/root/send/savedata/orddrid",orddrid);
  1981. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  1982. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  1983. model.makeValue("/root/send/savedata/status","B");
  1984. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  1985. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 퇴실인 환자 update
  1986. {
  1987. //messageBox("처리가","I002");
  1988. fOrdScheList();
  1989. }
  1990. model.refresh();
  1991. }
  1992. function fChangedDspflag()
  1993. {
  1994. if( grd_ordschelistinfo.col == 1 && isDataCell()) {
  1995. var sPath = "/root/main/ordschelist/ordschelistinfo";
  1996. model.removenode("/root/send");
  1997. model.makeValue("/root/send/pid", model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/pid"));
  1998. model.makeValue("/root/send/orddd", model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/orddd"));
  1999. model.makeValue("/root/send/cretno", model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/cretno"));
  2000. if (model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/dspflag") == "1") {
  2001. model.makeValue("/root/send/status", "D");
  2002. } else {
  2003. model.makeValue("/root/send/status", "-");
  2004. }
  2005. model.makeValue("/root/send/orddeptcd", model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/orddeptcd"));
  2006. model.makeValue("/root/send/orddrid", model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/orddrid"));
  2007. model.makeValue("/root/send/ordroomcd", model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/ordroomcd"));
  2008. model.makeValue("/root/send/dispord", model.getValue(sPath + "[" + grd_ordschelistinfo.row +"]/dispord"));
  2009. if (submit("TXMNV21203", false)) {
  2010. fOrdScheList();
  2011. }
  2012. }
  2013. }
  2014. function fSetWaitRoomMsg(flag)
  2015. {
  2016. model.removenode("/root/send");
  2017. var centcd;
  2018. if (model.getValue("/root/hidden/con/centcd") == "") {
  2019. centcd = "-";
  2020. } else {
  2021. centcd = model.getValue("/root/hidden/con/centcd");
  2022. }
  2023. model.makeValue("/root/send/centcd", centcd);
  2024. model.makeValue("/root/send/orddeptcd", model.getValue("/root/hidden/con/orddeptcd"));
  2025. if ("D" == flag) {
  2026. model.makeValue("/root/send/msg", "");
  2027. } else {
  2028. model.makeValue("/root/send/msg", model.getValue("/root/hidden/waitroommsg/msg"));
  2029. }
  2030. if (submit("TXMNV07010") == false) {
  2031. messageBox("공지사항이 등록되지 않았습니다.", "E");
  2032. } else {
  2033. fOrdScheList();
  2034. }
  2035. }
  2036. /**
  2037. * @group :
  2038. * @ver : 2009.04.22
  2039. * @by : 김영학
  2040. * @---------------------------------------------------
  2041. * @type : function
  2042. * @access : public
  2043. * @desc : 입실한 환자를 보류로 설정한다.
  2044. * @param :
  2045. * @param :
  2046. * @return :
  2047. * @---------------------------------------------------
  2048. */
  2049. function fOrdRoomPatWaitRete()
  2050. {
  2051. var idxRow=grd_ordentroomlistinfo.row;
  2052. if(idxRow<=0) // 환자 선택하지 않았을때
  2053. {
  2054. messageBox("환자를 선택","I008");
  2055. return;
  2056. }
  2057. var pid=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/pid");
  2058. var orddd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddd");
  2059. var cretno=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/cretno");
  2060. var ordrsrvtm=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordrsrvtm");
  2061. var ordrsrvseqno=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordrsrvseqno");
  2062. var orddrid=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddrid");
  2063. var orddeptcd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/orddeptcd");
  2064. var ordroomcd=model.getValue("/root/main/ordschelist/ordentroomlistinfo"+"["+idxRow+"]/ordroomcd");
  2065. if(isNull(pid))
  2066. {
  2067. messageBox("처리할 환자가","I004");
  2068. return;
  2069. }
  2070. model.makeValue("/root/send/savedata/pid",pid);
  2071. model.makeValue("/root/send/savedata/orddd",orddd);
  2072. model.makeValue("/root/send/savedata/cretno",cretno);
  2073. model.makeValue("/root/send/savedata/ordrsrvtm",ordrsrvtm);
  2074. model.makeValue("/root/send/savedata/ordrsrvseqno",ordrsrvseqno);
  2075. model.makeValue("/root/send/savedata/patstat",'B'); //보류B로 저장
  2076. model.makeValue("/root/send/savedata/orddrid",orddrid);
  2077. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  2078. model.makeValue("/root/send/savedata/ordroomcd",ordroomcd);
  2079. model.makeValue("/root/send/savedata/status","A");
  2080. // model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  2081. if(submit("TXMNV21204")==true) // 외래대기환자상태관리 table에 진료예정자리스트 대기인 환자 insert
  2082. {
  2083. if(model.getValue("/root/main/returnsts/statusinfo/restatus")=="A")
  2084. {
  2085. messageBox("이미 입실이 된","I005");
  2086. fOrdScheList();
  2087. return;
  2088. }
  2089. //messageBox("처리가","I002");
  2090. fOrdScheList();
  2091. }
  2092. model.refresh();
  2093. }
  2094. function fGetPatMsgCd(){
  2095. // 환자개인메시지 정보 셋팅
  2096. model.removenode("root/send/reqdata");
  2097. model.makeNode("/root/init/msg");
  2098. model.makeValue("/root/send/reqdata/orddeptcd", model.getValue("/root/hidden/con/orddeptcd"));
  2099. submit("TRMNV07010");
  2100. addComboItem("cmb_patmsg", " ", "-", "above");
  2101. model.refresh();
  2102. }
  2103. function fChangePatMsg(){//kskim
  2104. // if( isDataCell() ){
  2105. // alert("patmsg");
  2106. // return;
  2107. // }
  2108. if( grd_ordschelistinfo.col == grd_ordschelistinfo.colRef("patmsg")) {
  2109. var ordschelistinfo = "pid▦orddd▦cretno▦dspflag▦patmsg";
  2110. var pid = model.getValue(grd_ordschelistinfo.nodeset + "[" + grd_ordschelistinfo.row + "]/pid");
  2111. var orddd = model.getValue(grd_ordschelistinfo.nodeset + "[" + grd_ordschelistinfo.row + "]/orddd");
  2112. var cretno = model.getValue(grd_ordschelistinfo.nodeset + "[" + grd_ordschelistinfo.row + "]/cretno");
  2113. var tempdspflag = model.getValue(grd_ordschelistinfo.nodeset + "[" + grd_ordschelistinfo.row + "]/dspflag");
  2114. var patmsg = model.getValue(grd_ordschelistinfo.nodeset + "[" + grd_ordschelistinfo.row + "]/patmsg");
  2115. var dspflag;
  2116. if(tempdspflag == "1"){
  2117. dspflag = "O";
  2118. }
  2119. else{
  2120. dspflag = "D";
  2121. }
  2122. var ordschelistinfo = ordschelistinfo + "▩" +
  2123. pid + "▦" +
  2124. orddd + "▦" +
  2125. cretno + "▦" +
  2126. dspflag + "▦" +
  2127. patmsg;
  2128. model.makeValue("/root/send/savedata/ordschelistinfo", ordschelistinfo);
  2129. if (submit("TXMNV07012", false) ){
  2130. fOrdScheList();
  2131. }
  2132. }
  2133. }
  2134. ]]>
  2135. </script>
  2136. </xhtml:head>
  2137. <xhtml:body guideline="2,731;1,1388;1,1191;1,1191;1,1194;1,1193;1,1194;1,1194;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  2138. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; "/>
  2139. <group id="group3" scroll="auto" style="left:0px; top:10px; width:1195px; height:720px; ">
  2140. <datagrid id="grd_ordschereteendlistinfo" nodeset="/root/main/ordschelist/ordschereteendlistinfo" scroll="auto" caption="선택^예약^도착^등록번호^환자명^S/A^지각^오늘^가야할곳(이름)^수정자" colsep="^" colwidth="30, 36, 36, 60, 60, 36,36, 30,90, 64" dataheight="25" extendlastcol="scroll" frozencols="3" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:0px; top:124px; width:495px; height:590px; ">
  2141. <col ref="chk" type="checkbox" visibility="hidden"/>
  2142. <col disabled="true" ref="ordtm" style="text-align:center; "/>
  2143. <col ref="nursacptdt"/>
  2144. <col ref="pid" style="text-align:center; "/>
  2145. <col ref="hngnm" style="text-align:center; "/>
  2146. <col ref="sa" style="left:250px; top:23px; width:89px; height:23px; text-align:center; "/>
  2147. <col ref="lateyn" style="text-align:center; "/>
  2148. <col ref="prcptdayaftrcptyn" style="text-align:center; "/>
  2149. <col ref="titl"/>
  2150. <col ref="lastupdtrnm" style="text-align:center; "/>
  2151. <script type="javascript" ev:event="onmousedown">
  2152. <![CDATA[
  2153. if(grd_ordschereteendlistinfo.isCell(event.target) && grd_ordschereteendlistinfo.mouseRow >= grd_ordschereteendlistinfo.fixedrows) // 01클릭하는 위치가 그리드 안에 있을 때만 함수 실행
  2154. {
  2155. window.setPopupMenu(true,"/root/temp/popmenu5/menu","name","func",false);
  2156. }
  2157. else
  2158. {
  2159. window.setPopupMenu(false);
  2160. }
  2161. ]]>
  2162. </script>
  2163. <script type="javascript" ev:event="DOMFocusOut">
  2164. <![CDATA[
  2165. window.setPopupMenu(false);
  2166. ]]>
  2167. </script>
  2168. </datagrid>
  2169. <datagrid id="grd_ordschelistinfo" nodeset="/root/main/ordschelist/ordschelistinfo" scroll="auto" caption="표시^예약^도착^등록번호^환자명^S/A^가야할곳(이름)^지각^오늘^개인별안내문구^보류^상태^현재위치^수정자^순서^roomcd^dispord" colsep="^" colwidth="30, 34, 34, 60, 60, 36,90, 36, 31, 90, 30, 38, 90, 50, 44, 0,0" dataheight="25" extendlastcol="scroll" frozencols="6" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:0px; top:124px; width:495px; height:590px; ">
  2170. <col checkvalue="1,0" ref="dspflag" type="checkbox"/>
  2171. <col disabled="true" ref="ordtm" style="text-align:center; "/>
  2172. <col ref="nursacptdt"/>
  2173. <col ref="pid" style="text-align:center; "/>
  2174. <col ref="hngnm" style="left:178px; top:23px; width:66px; height:23px; text-align:center; "/>
  2175. <col ref="sa" style="text-align:center; "/>
  2176. <col ref="titl"/>
  2177. <col ref="lateyn" style="left:349px; top:23px; width:58px; height:23px; text-align:center; "/>
  2178. <col ref="prcptdayaftrcptyn" style="text-align:center; "/>
  2179. <col id="cmb_patmsg" ref="patmsg" type="combo" style="text-align:left; ">
  2180. <choices>
  2181. <itemset nodeset="/root/init/msg/patmsg">
  2182. <label ref="cdnm"/>
  2183. <value ref="cdid"/>
  2184. </itemset>
  2185. </choices>
  2186. </col>
  2187. <col checkvalue="1,0" ref="chk" type="checkbox" visibility="hidden"/>
  2188. <col ref="statenm" style="text-align:center; "/>
  2189. <col ref="roomnm"/>
  2190. <col ref="lastupdtrnm" style="text-align:center; "/>
  2191. <col ref="ordrsrvtm" style="text-align:center; "/>
  2192. <col ref="ordroomcd" visibility="hidden"/>
  2193. <col ref="dispord" visibility="hidden"/>
  2194. <script type="javascript" ev:event="onmousedown">
  2195. <![CDATA[
  2196. if(grd_ordschelistinfo.isCell(event.target) && grd_ordschelistinfo.mouseRow >= grd_ordschelistinfo.fixedrows) // 01클릭하는 위치가 그리드 안에 있을 때만 함수 실행
  2197. {
  2198. window.setPopupMenu(true,"/root/temp/popmenu/menu","name","func",false);
  2199. }
  2200. else
  2201. {
  2202. window.setPopupMenu(false);
  2203. }
  2204. ]]>
  2205. </script>
  2206. <script type="javascript" ev:event="DOMFocusOut">
  2207. <![CDATA[
  2208. window.setPopupMenu(false);
  2209. ]]>
  2210. </script>
  2211. <script type="javascript" ev:event="xforms-value-changed">
  2212. <![CDATA[
  2213. fChangedDspflag();
  2214. fChangePatMsg();
  2215. ]]>
  2216. </script>
  2217. </datagrid>
  2218. <caption id="caption12" class="tit_2" style="left:504px; top:105px; width:174px; height:13px; ">진료|검사 중/들어오실 분</caption>
  2219. <line id="line5" class="line_1" style="x1:505px; y1:121px; x2:911px; y2:121px; "/>
  2220. <caption id="caption2" class="tit_2" style="left:505px; top:483px; width:320px; height:13px; ">소대기 공지사항 (26자, 표시기간동안 표시)</caption>
  2221. <caption id="caption13" class="tit_2" style="left:509px; top:236px; width:174px; height:13px; ">진료|검사실 앞 대기환자</caption>
  2222. <textarea id="tx_msg" ref="/root/hidden/msgrgst/msg" navindex="13" scroll="autovscroll" maxlength="26" style="left:501px; top:503px; width:413px; height:52px; "/>
  2223. <caption id="caption16" class="tit_2" style="left:2px; top:105px; width:147px; height:14px; ">대기자리스트</caption>
  2224. <datagrid id="grd_ordscheretelistinfo" nodeset="/root/main/ordschelist/ordscheretelistinfo" caption="선택^예약^도착^등록번호^환자명^S/A^지각^오늘^진료^수정자^roomcd^dispord" colsep="^" colwidth="30, 34, 34, 60, 55, 36, 36, 30, 30, 62,0,0" dataheight="25" extendlastcol="scroll" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:920px; top:124px; width:271px; height:236px; ">
  2225. <col checkvalue="1,0" ref="chk" type="checkbox" visibility="hidden"/>
  2226. <col ref="ordtm" style="text-align:center; "/>
  2227. <col ref="nursacptdt"/>
  2228. <col ref="pid" style="left:20px; top:23px; width:98px; height:18px; text-align:center; "/>
  2229. <col ref="hngnm" style="text-align:center; "/>
  2230. <col ref="sa" style="text-align:center; "/>
  2231. <col ref="lateyn" style="text-align:center; "/>
  2232. <col ref="prcptdayaftrcptyn" style="text-align:center; "/>
  2233. <col ref="ordstatyn" style="text-align:center; "/>
  2234. <col ref="lastupdtrnm" style="text-align:center; "/>
  2235. <col ref="ordroomcd" visibility="hidden"/>
  2236. <col ref="dispord" visibility="hidden"/>
  2237. <script type="javascript" ev:event="onmousedown">
  2238. <![CDATA[
  2239. if(grd_ordscheretelistinfo.isCell(event.target) && grd_ordscheretelistinfo.mouseRow >= grd_ordscheretelistinfo.fixedrows) // 01클릭하는 위치가 그리드 안에 있을 때만 함수 실행
  2240. {
  2241. window.setPopupMenu(true,"/root/temp/popmenu2/menu","name","func",false);
  2242. //fOrdPatWait
  2243. }
  2244. else
  2245. {
  2246. window.setPopupMenu(false);
  2247. }
  2248. ]]>
  2249. </script>
  2250. <script type="javascript" ev:event="DOMFocusOut">
  2251. <![CDATA[
  2252. window.setPopupMenu(false);
  2253. ]]>
  2254. </script>
  2255. </datagrid>
  2256. <caption id="caption20" class="tit_2" style="left:925px; top:105px; width:74px; height:13px; ">보류 환자</caption>
  2257. <line id="line14" class="line_1" style="x1:0px; y1:121px; x2:495px; y2:121px; "/>
  2258. <line id="line1" class="line_1" style="x1:501px; y1:499px; x2:914px; y2:499px; "/>
  2259. <line id="line7" class="line_1" style="x1:505px; y1:251px; x2:911px; y2:251px; "/>
  2260. <datagrid id="grd_ordentroomlistinfo" nodeset="/root/main/ordschelist/ordentroomlistinfo" caption="예약^도착^등록번호^환자명^S/A^상태^지각^오늘^재입실^roomcd^dispord" colsep="^" colwidth="36, 36, 59, 60, 35, 30, 40, 30, 40, 0, 0" dataheight="25" extendlastcol="scroll" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:505px; top:124px; width:406px; height:64px; ">
  2261. <col disabled="true" ref="ordtm" style="text-align:center; "/>
  2262. <col ref="nursacptdt" style="text-align:center; "/>
  2263. <col disabled="true" ref="pid" style="text-align:center; "/>
  2264. <col ref="hngnm" style="text-align:center; "/>
  2265. <col ref="sa" style="text-align:center; "/>
  2266. <col ref="statenm" style="text-align:center; "/>
  2267. <col ref="lateyn" style="text-align:center; "/>
  2268. <col ref="prcptdayaftrcptyn" style="text-align:center; "/>
  2269. <col ref="ordstatyn" style="text-align:center; "/>
  2270. <col ref="ordroomcd" visibility="hidden"/>
  2271. <col ref="dispord" visibility="hidden"/>
  2272. <script type="javascript" ev:event="onmousedown">
  2273. <![CDATA[
  2274. if(grd_ordentroomlistinfo.isCell(event.target) && grd_ordentroomlistinfo.mouseRow >= grd_ordentroomlistinfo.fixedrows) // 01클릭하는 위치가 그리드 안에 있을 때만 함수 실행
  2275. {
  2276. window.setPopupMenu(true,"/root/temp/popmenu4/menu","name","func",false);
  2277. }
  2278. else
  2279. {
  2280. window.setPopupMenu(false);
  2281. }
  2282. ]]>
  2283. </script>
  2284. <script type="javascript" ev:event="DOMFocusOut">
  2285. <![CDATA[
  2286. window.setPopupMenu(false);
  2287. ]]>
  2288. </script>
  2289. </datagrid>
  2290. <datagrid id="grd_ordinfoschelistinfo" nodeset="/root/main/ordschelist/ordinfoschelistinfo" scroll="auto" caption="예약^도착^등록번호^환자명^S/A^상태^지각^오늘^수정자^roomcd^dispord" colsep="^" colwidth="36, 36, 59, 60, 35, 30, 40, 30, 40, 0, 0" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:505px; top:255px; width:406px; height:71px; ">
  2291. <col disabled="true" ref="ordtm" style="text-align:center; "/>
  2292. <col ref="nursacptdt" style="text-align:center; "/>
  2293. <col ref="pid" style="text-align:center; "/>
  2294. <col ref="hngnm" style="text-align:center; "/>
  2295. <col ref="sa" style="text-align:center; "/>
  2296. <col ref="statenm" style="text-align:center; "/>
  2297. <col ref="lateyn" style="text-align:center; "/>
  2298. <col ref="prcptdayaftrcptyn" style="text-align:center; "/>
  2299. <col ref="lastupdtrnm" style="text-align:center; "/>
  2300. <col ref="ordroomcd" visibility="hidden"/>
  2301. <col ref="dispord" visibility="hidden"/>
  2302. <script type="javascript" ev:event="onmousedown">
  2303. <![CDATA[
  2304. if(grd_ordinfoschelistinfo.isCell(event.target) && grd_ordinfoschelistinfo.mouseRow >= grd_ordinfoschelistinfo.fixedrows) // 01클릭하는 위치가 그리드 안에 있을 때만 함수 실행
  2305. {
  2306. window.setPopupMenu(true,"/root/temp/popmenu3/menu","name","func",false);
  2307. //alert("sss");
  2308. //window.setPopupMenu(true,"/root/temp/popmenu4/menu","name","func",false);
  2309. }
  2310. else
  2311. {
  2312. window.setPopupMenu(false);
  2313. }
  2314. ]]>
  2315. </script>
  2316. <script type="javascript" ev:event="DOMFocusOut">
  2317. <![CDATA[
  2318. window.setPopupMenu(false);
  2319. ]]>
  2320. </script>
  2321. </datagrid>
  2322. <button id="button2" class="icon_right" style="left:885px; top:195px; width:26px; height:19px; ">
  2323. <caption/>
  2324. <script type="javascript" ev:event="onclick">
  2325. <![CDATA[
  2326. //model.copyNode("/root/main/temp","/root/main/ordschelist");
  2327. //var sPath="/root/main/temp/ordschelistinfo";
  2328. //fSaveExcuRoomPatList(sPath);
  2329. fOrdPaitReteToWait()// 대기환자 여러 명 보류로 보내는 함수
  2330. ]]>
  2331. </script>
  2332. </button>
  2333. <button id="button4" class="icon_left" style="left:885px; top:227px; width:26px; height:19px; ">
  2334. <caption/>
  2335. <script type="javascript" ev:event="onclick">
  2336. <![CDATA[
  2337. fOrdPatWaitToRete(); //보류 환자 대기로 보내는 함수
  2338. ]]>
  2339. </script>
  2340. </button>
  2341. <select1 id="rdo_condwait" ref="/root/hidden/cond/condwait" appearance="full" cols="5" overflow="visible" style="left:102px; top:103px; width:95px; height:20px; font-weight:bold; border-style:none; ">
  2342. <choices>
  2343. <item>
  2344. <label>대기</label>
  2345. <value>1</value>
  2346. </item>
  2347. <item>
  2348. <label>완료</label>
  2349. <value>2</value>
  2350. </item>
  2351. </choices>
  2352. <script type="javascript" ev:event="xforms-value-changed">
  2353. <![CDATA[
  2354. var condwait=model.getValue("/root/hidden/cond/condwait");
  2355. //alert(rdo_condwait.value);
  2356. if(condwait=='1') // 대기일때
  2357. {
  2358. grd_ordschelistinfo.visible=true;
  2359. grd_ordschereteendlistinfo.visible=false;
  2360. }
  2361. else // 보류일때
  2362. {
  2363. //submit("TRMNV07004"); //진료예정자 보류 리스트 조회
  2364. grd_ordschelistinfo.visible=false;
  2365. grd_ordschereteendlistinfo.visible=true;
  2366. }
  2367. model.refresh();
  2368. ]]>
  2369. </script>
  2370. </select1>
  2371. <input id="ipt_msgfromtm" ref="/root/hidden/msgrgst/msgfromtm" navindex="14" format="nn:ss" style="left:778px; top:562px; width:57px; height:19px; "/>
  2372. <caption id="caption10" style="left:837px; top:566px; width:14px; height:11px; font-weight:bold; ">~</caption>
  2373. <input id="ipt_msgtotm" ref="/root/hidden/msgrgst/msgtotm" navindex="15" format="nn:ss" style="left:850px; top:562px; width:57px; height:19px; "/>
  2374. <shape id="roundrect2" class="roundrect_example" appearance="roundrect" style="left:501px; top:557px; width:413px; height:56px; "/>
  2375. <input id="ipt_delytm" ref="/root/hidden/msgrgst/delytm" navindex="16" format="999" style="left:778px; top:588px; width:57px; height:19px; "/>
  2376. <caption id="caption18" style="left:842px; top:590px; width:24px; height:13px; font-weight:bold; ">분</caption>
  2377. <caption id="cpt_voluntrflag" class="cell_1" style="left:504px; top:562px; width:269px; height:20px; font-size:10pt; font-weight:bold; vertical-align:middle; ">* 공지사항/예약지연시간 표시기간(시분)</caption>
  2378. <caption id="caption9" class="cell_1" style="left:504px; top:587px; width:269px; height:20px; font-size:10pt; font-weight:bold; vertical-align:middle; ">* 예약지연시간 (대대기에 표시됨)</caption>
  2379. <button id="button7" class="icon_top" style="left:311px; top:100px; width:26px; height:19px; ">
  2380. <caption/>
  2381. <script type="javascript" ev:event="DOMActivate">
  2382. <![CDATA[
  2383. if(rdo_condwait.value=='2') //보류 환자 선택시
  2384. {
  2385. messageBox("순서 변경은 대기 환자만","I006");
  2386. return;
  2387. }
  2388. if(grd_ordschelistinfo.row<=0)
  2389. {
  2390. messageBox("환자를 선택","I008");
  2391. return;
  2392. }
  2393. // 상위 두명도 순서를 변경할 수 있도록 해달라는 요청으로 기존 로직 삭제 : 2009. 04. 22 김영학 추가
  2394. if ( grd_ordschelistinfo.row == "1") {
  2395. messageBox("최상위환자입니다.", "I");
  2396. return;
  2397. } else {
  2398. fSetMenuGroupSeq("1", "above");
  2399. }
  2400. // 여기까지 : 2009. 04. 21
  2401. // if(grd_ordschelistinfo.row > 3)
  2402. // {
  2403. // fSetMenuGroupSeq("3", "above");
  2404. // }
  2405. // else
  2406. // {
  2407. // messageBox("상위 2명 환자의 순서는 변경할수","E001");
  2408. // }
  2409. ]]>
  2410. </script>
  2411. <hint>
  2412. <![CDATA[맨위로]]>
  2413. </hint>
  2414. </button>
  2415. <button id="button8" class="icon_bottom" style="left:401px; top:100px; width:26px; height:19px; ">
  2416. <caption/>
  2417. <script type="javascript" ev:event="DOMActivate">
  2418. <![CDATA[
  2419. if(rdo_condwait.value=='2') //보류 환자 선택시
  2420. {
  2421. messageBox("순서 변경은 대기 환자만","I006");
  2422. return;
  2423. }
  2424. if(grd_ordschelistinfo.row<=0)
  2425. {
  2426. messageBox("환자를 선택","I008");
  2427. return;
  2428. }
  2429. // if(grd_ordschelistinfo.row < 3)
  2430. // {
  2431. // messageBox("상위 2명 환자의 순서는 변경할수","E001");
  2432. // return;
  2433. // }
  2434. // else
  2435. // {
  2436. if( grd_ordschelistinfo.rows-grd_ordschelistinfo.fixedRows > grd_ordschelistinfo.row )
  2437. {
  2438. fSetMenuGroupSeq(grd_ordschelistinfo.rows-grd_ordschelistinfo.fixedRows, "below");
  2439. }
  2440. else
  2441. {
  2442. messageBox("최하위 메뉴그룹이","E005");
  2443. }
  2444. // }
  2445. ]]>
  2446. </script>
  2447. <hint>
  2448. <![CDATA[맨아래로]]>
  2449. </hint>
  2450. </button>
  2451. <button id="btn_to_down" class="icon_bottom_direction" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:371px; top:100px; width:26px; height:19px; ">
  2452. <caption/>
  2453. <script type="javascript" ev:event="DOMActivate">
  2454. <![CDATA[
  2455. if(rdo_condwait.value=='2') //보류 환자 선택시
  2456. {
  2457. messageBox("순서 변경은 대기 환자만","I006");
  2458. return;
  2459. }
  2460. if(grd_ordschelistinfo.row<=0)
  2461. {
  2462. messageBox("환자를 선택","I008");
  2463. return;
  2464. }
  2465. // if(grd_ordschelistinfo.row < 3)
  2466. // {
  2467. // messageBox("상위 2명 환자의 순서는 변경할수","E001");
  2468. // return;
  2469. // }
  2470. // else
  2471. // {
  2472. if( grd_ordschelistinfo.rows-grd_ordschelistinfo.fixedRows > grd_ordschelistinfo.row )
  2473. {
  2474. fSetMenuGroupSeq(grd_ordschelistinfo.row+1, "below");
  2475. }
  2476. else
  2477. {
  2478. messageBox("최하위 메뉴그룹이","E005");
  2479. }
  2480. // }
  2481. // fChgIdxSetPrcpRefInfo("down");
  2482. ]]>
  2483. </script>
  2484. <hint>
  2485. <![CDATA[아래로]]>
  2486. </hint>
  2487. </button>
  2488. <button id="button9" class="icon_top_direction" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:341px; top:100px; width:26px; height:19px; ">
  2489. <caption/>
  2490. <script type="javascript" ev:event="DOMActivate">
  2491. <![CDATA[
  2492. if(rdo_condwait.value=='2') //보류 환자 선택시
  2493. {
  2494. messageBox("순서 변경은 대기 환자만","I006");
  2495. return;
  2496. }
  2497. if(grd_ordschelistinfo.row<=0)
  2498. {
  2499. messageBox("환자를 선택","I008");
  2500. return;
  2501. }
  2502. //상위 두명도 순서를 변경할 수 있도록 해달라는 요청으로 기존 로직 삭제 : 2009. 04. 22 김영학 추가
  2503. if (grd_ordschelistinfo.row <= 1 ) {
  2504. messageBox("최상위입니다.","I");
  2505. } else {
  2506. fSetMenuGroupSeq(grd_ordschelistinfo.row-1, "above");
  2507. }
  2508. // end //
  2509. // if(grd_ordschelistinfo.row > 3)
  2510. // {
  2511. // fSetMenuGroupSeq(grd_ordschelistinfo.row-1, "above");
  2512. // }
  2513. // else
  2514. // {
  2515. // messageBox("상위 2명 환자의 순서는 변경할수","E001");
  2516. // }
  2517. ]]>
  2518. </script>
  2519. <hint>
  2520. <![CDATA[위로]]>
  2521. </hint>
  2522. </button>
  2523. <button id="button12" class="btn2_letter4" style="left:431px; top:100px; width:64px; height:19px; font-weight:bold; ">
  2524. <caption>순서저장</caption>
  2525. <script type="javascript" ev:event="DOMActivate">
  2526. <![CDATA[
  2527. fOrdPatWaitSeqChng();
  2528. ]]>
  2529. </script>
  2530. </button>
  2531. <button id="button6" class="btn4_letter2" navindex="18" style="left:858px; top:476px; width:56px; height:22px; ">
  2532. <caption>삭제</caption>
  2533. <script type="javascript" ev:event="DOMActivate">
  2534. <![CDATA[
  2535. model.makeValue("/root/hidden/msgrgst/status","D");
  2536. fOrdRoomMsgSave();
  2537. ]]>
  2538. </script>
  2539. </button>
  2540. <group id="grp_sea" style="left:0px; top:0px; width:1194px; height:58px; vertical-align:top; ">
  2541. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:20px; width:1194px; height:35px; "/>
  2542. <button id="button1" class="btn1_letter2" navindex="5" style="left:1061px; top:27px; width:56px; height:22px; ">
  2543. <caption>조회</caption>
  2544. <script type="javascript" ev:event="DOMActivate">
  2545. <![CDATA[
  2546. fOrdScheList();
  2547. ]]>
  2548. </script>
  2549. </button>
  2550. <caption id="caption1" class="search_name" style="left:18px; top:29px; width:90px; height:17px; ">진료일자 :</caption>
  2551. <line id="line3" class="line_4" style="x1:1048px; y1:23px; x2:1048px; y2:51px; "/>
  2552. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:250px; height:13px; ">안센터 전광판 관리</caption>
  2553. <caption id="caption11" class="search_name" style="left:226px; top:29px; width:94px; height:17px; ">센 터 :</caption>
  2554. <caption id="caption4" class="search_name" style="left:468px; top:29px; width:94px; height:17px; ">진 료 과 :</caption>
  2555. <input id="ipt_orddd" ref="/root/hidden/con/orddd" class="input_search" navindex="1" inputtype="date" style="left:110px; top:29px; width:85px; height:19px; "/>
  2556. <select1 id="cmb_centcd" ref="/root/hidden/con/centcd" disabled="true" navindex="2" appearance="minimal" style="left:307px; top:29px; width:148px; height:19px; ">
  2557. <choices>
  2558. <itemset nodeset="/root/init/centcd/centcdlist">
  2559. <label ref="nm"/>
  2560. <value ref="cd"/>
  2561. </itemset>
  2562. </choices>
  2563. <script type="javascript" ev:event="xforms-value-changed">
  2564. <![CDATA[
  2565. fOrdCentReq(); //센터 선택시 진료과 및 세부과 가져오는 함수
  2566. ]]>
  2567. </script>
  2568. </select1>
  2569. <select1 id="cmb_subdeptcd" ref="/root/hidden/con/subdeptcd" visibility="hidden" appearance="minimal" style="left:665px; top:29px; width:165px; height:19px; color:#ffff99; ">
  2570. <choices>
  2571. <itemset nodeset="/root/init/subdeptcd/subdeptcdlist">
  2572. <label ref="subdeptnm"/>
  2573. <value ref="subdeptcd"/>
  2574. </itemset>
  2575. </choices>
  2576. </select1>
  2577. <select1 id="cmb_orddeptcd" ref="/root/hidden/con/orddeptcd" navindex="3" appearance="minimal" style="left:565px; top:29px; width:130px; height:19px; ">
  2578. <choices>
  2579. <itemset nodeset="/root/init/orddeptcd">
  2580. <label ref="nm"/>
  2581. <value ref="cd"/>
  2582. </itemset>
  2583. </choices>
  2584. <script type="javascript" ev:event="xforms-value-changed">
  2585. <![CDATA[
  2586. fOrdDridSet(); //진료과 선택시 담당의 조회하는 함수
  2587. fGetPatMsgCd(); //환자별 개인 메시지 정보 조회
  2588. iviewer1.window.javaScript.fGetPatMsgList();
  2589. ]]>
  2590. </script>
  2591. </select1>
  2592. <select1 id="combo3" ref="/root/hidden/con/orddeptcd" navindex="3" visibility="hidden" appearance="minimal" style="left:564px; top:29px; width:130px; height:19px; ">
  2593. <choices>
  2594. <itemset nodeset="/root/hidden/init/cntrsuborddeptlist/dept">
  2595. <label ref="depthngnm"/>
  2596. <value ref="deptcd"/>
  2597. </itemset>
  2598. </choices>
  2599. <script type="javascript" ev:event="xforms-value-changed">
  2600. <![CDATA[
  2601. fOrdDridSet(); //진료과 선택시 담당의 조회하는 함수
  2602. ]]>
  2603. </script>
  2604. </select1>
  2605. <caption id="caption5" class="search_name" style="left:768px; top:28px; width:132px; height:17px; ">진료실/검사실 :</caption>
  2606. <select1 id="cmb_ordroomcd" ref="/root/hidden/con/ordroomcd" navindex="4" appearance="minimal" style="left:900px; top:28px; width:130px; height:19px; ">
  2607. <choices>
  2608. <itemset nodeset="/root/init/subdeptcd/ordroomlist">
  2609. <label ref="ordroomnm"/>
  2610. <value ref="ordroomcd"/>
  2611. </itemset>
  2612. </choices>
  2613. <script type="javascript" ev:event="xforms-value-changed">
  2614. <![CDATA[
  2615. fOrdScheList();
  2616. ]]>
  2617. </script>
  2618. </select1>
  2619. </group>
  2620. <group id="group2" style="left:0px; top:55px; width:1194px; height:40px; vertical-align:top; ">
  2621. <shape id="roundrect3" class="roundrect_example" appearance="roundrect" style="left:0px; top:5px; width:1194px; height:33px; "/>
  2622. <button id="button3" class="btn4_letter2" navindex="11" style="left:1069px; top:10px; width:56px; height:22px; ">
  2623. <caption>저장</caption>
  2624. <script type="javascript" ev:event="DOMActivate">
  2625. <![CDATA[
  2626. fOrdRoomScheSave(); //진료일정 처리 함수
  2627. ]]>
  2628. </script>
  2629. </button>
  2630. <caption id="caption3" class="cell_1" style="left:10px; top:11px; width:90px; height:20px; font-weight:bold; color:#0000ff; ">진료 구분 :</caption>
  2631. <caption id="caption7" class="cell_1" style="left:619px; top:11px; width:100px; height:20px; font-weight:bold; color:#0000ff; ">자동입실여부 :</caption>
  2632. <select1 id="rdo_ordflag" ref="/root/hidden/con/ordflag" navindex="7" appearance="full" cols="3" overflow="visible" style="left:107px; top:12px; width:130px; height:20px; border-style:none; ">
  2633. <choices>
  2634. <item>
  2635. <label>오전</label>
  2636. <value>1</value>
  2637. </item>
  2638. <item>
  2639. <label>오후</label>
  2640. <value>2</value>
  2641. </item>
  2642. <item>
  2643. <label>전체</label>
  2644. <value>3</value>
  2645. </item>
  2646. </choices>
  2647. </select1>
  2648. <select id="chk_autoflag" ref="/root/hidden/con/autoflag" navindex="10" overflow="visible" appearance="full" style="left:722px; top:13px; width:27px; height:20px; border-style:none; ">
  2649. <choices>
  2650. <item>
  2651. <label/>
  2652. <value>1</value>
  2653. </item>
  2654. </choices>
  2655. </select>
  2656. <caption id="caption8" class="cell_1" style="left:245px; top:11px; width:65px; height:20px; font-weight:bold; color:#0000ff; ">담당의 :</caption>
  2657. <caption id="caption14" class="cell_1" style="left:425px; top:11px; width:75px; height:19px; font-weight:bold; color:#0000ff; ">담당직원 :</caption>
  2658. <select1 id="cmb_orddrid" ref="/root/hidden/con/orddrid" navindex="8" appearance="minimal" style="left:316px; top:11px; width:100px; height:19px; ">
  2659. <choices>
  2660. <itemset nodeset="/root/init/subdeptcd/orddeptdrcdlist">
  2661. <label ref="orddeptdrnm"/>
  2662. <value ref="orddeptdrid"/>
  2663. </itemset>
  2664. </choices>
  2665. </select1>
  2666. <select1 id="cmb_chrgempid" ref="/root/hidden/con/chrgempid" class="combo_search" navindex="9" appearance="minimal" style="left:506px; top:11px; width:100px; height:19px; ">
  2667. <choices>
  2668. <itemset nodeset="/root/init/subdeptcd/chrgemplist">
  2669. <label ref="chrgempnm"/>
  2670. <value ref="chrgempid"/>
  2671. </itemset>
  2672. </choices>
  2673. </select1>
  2674. <button id="button5" class="btn4_letter2" navindex="12" style="left:1130px; top:10px; width:56px; height:22px; ">
  2675. <caption>삭제</caption>
  2676. <script type="javascript" ev:event="DOMActivate">
  2677. <![CDATA[
  2678. fOrdRoomScheDel(); //진료일정 처리 함수
  2679. ]]>
  2680. </script>
  2681. </button>
  2682. </group>
  2683. <button id="button13" class="btn4_letter2" style="left:737px; top:97px; width:56px; height:22px; ">
  2684. <caption>입실</caption>
  2685. <script type="javascript" ev:event="DOMActivate">
  2686. <![CDATA[
  2687. fAutoRoomEnter(); //지동입실 함수
  2688. ]]>
  2689. </script>
  2690. </button>
  2691. <button id="button14" class="btn4_letter2" style="left:796px; top:97px; width:56px; height:22px; ">
  2692. <caption>퇴실</caption>
  2693. <script type="javascript" ev:event="DOMActivate">
  2694. <![CDATA[
  2695. fOrdAutoRoomOut(); //자동 퇴실 함수
  2696. ]]>
  2697. </script>
  2698. </button>
  2699. <button id="button15" class="btn4_letter2" navindex="17" style="left:796px; top:476px; width:56px; height:22px; ">
  2700. <caption>저장</caption>
  2701. <script type="javascript" ev:event="DOMActivate">
  2702. <![CDATA[
  2703. model.resetInstanceNode("/root/hidden/msgrgst/status");
  2704. model.refresh();
  2705. fOrdRoomMsgSave();
  2706. ]]>
  2707. </script>
  2708. </button>
  2709. <caption id="caption19" style="left:505px; top:330px; width:406px; height:135px; background-color:#ffff99; border-style:solid; ">
  2710. <![CDATA[ 1. 대기리스트의 "표시"가 체크되어 "상태" 항목값이 "표시"인 환자만
  2711. 환자 전광판(대대기, 소대기)에 표시됩니다.
  2712. 2. "자동입실여부"를 체크한 후 저장한 시점부터 "표시"가 자동으로 체크
  2713. 됩니다. 진료개시전이나 진료를 일시 중지할 경우 "자동입실여부"의
  2714. 체크를 해지하십시오
  2715. 3. "도착" 항목은 환자의 도착시간, "지각" 항목은 환자의 지각한 시간
  2716. "오늘" 항목은 오늘 결과 환자, "진료"는 진료를 본 여부를 표시합니다.
  2717. 4. "재입실"은 한번이상 진료를 본 환자로 "퇴실" 버튼을 이용하여
  2718. 강제퇴실시키셔야 합니다.]]>
  2719. </caption>
  2720. <shape id="roundrect6" class="roundrect_example" appearance="roundrect" style="left:506px; top:190px; width:352px; height:24px; background-color:#fffbf2; border-color:#7cbbdd; "/>
  2721. <caption id="caption21" style="left:514px; top:195px; width:35px; height:15px; ">범례 :</caption>
  2722. <caption id="caption22" style="left:779px; top:194px; width:20px; height:15px; background-color:#cc99ff; border-style:solid; "/>
  2723. <caption id="caption23" style="left:807px; top:195px; width:45px; height:15px; ">재입실</caption>
  2724. <caption id="caption26" style="left:672px; top:194px; width:20px; height:15px; background-color:#ccffcc; border-style:solid; "/>
  2725. <caption id="caption27" style="left:698px; top:195px; width:70px; height:15px; ">오늘 결과</caption>
  2726. <line id="line2" class="line_1" style="x1:920px; y1:121px; x2:1190px; y2:121px; "/>
  2727. <button id="button16" class="btn3_letter7" style="left:1077px; top:97px; width:116px; height:22px; ">
  2728. <caption>진료실일정관리</caption>
  2729. <script type="javascript" ev:event="DOMActivate">
  2730. <![CDATA[
  2731. modal("SPMNV07000","1","1","1","SPMNV07000","","","","false");
  2732. ]]>
  2733. </script>
  2734. </button>
  2735. <caption id="caption24" style="left:553px; top:194px; width:20px; height:15px; background-color:#ffff99; border-style:solid; "/>
  2736. <caption id="caption25" style="left:579px; top:195px; width:100px; height:15px; ">진료실 앞 환자</caption>
  2737. <button id="btn_wroom_save" class="btn4_letter2" navindex="21" style="left:796px; top:635px; width:56px; height:22px; ">
  2738. <caption>저장</caption>
  2739. <script type="javascript" ev:event="DOMActivate">
  2740. <![CDATA[
  2741. // fSetWaitRoomMsg("S");
  2742. var size = tar_wroommsg.value.length;
  2743. if (size > "50") {
  2744. messageBox("현재" + size + "자 입력되었습니다. \n최대 50자까지만 입력가능합니다.", "I");
  2745. return;
  2746. } else {
  2747. fSetWaitRoomMsg("S");
  2748. }
  2749. ]]>
  2750. </script>
  2751. </button>
  2752. <button id="btn_wroom_del" class="btn4_letter2" navindex="21" style="left:858px; top:635px; width:56px; height:22px; ">
  2753. <caption>삭제</caption>
  2754. <script type="javascript" ev:event="DOMActivate">
  2755. <![CDATA[
  2756. fSetWaitRoomMsg("D");
  2757. ]]>
  2758. </script>
  2759. </button>
  2760. <textarea id="tar_wroommsg" ref="/root/hidden/waitroommsg/msg" navindex="19" scroll="autovscroll" style="left:501px; top:662px; width:413px; height:52px; "/>
  2761. <caption id="caption28" class="tit_2" style="left:505px; top:642px; width:290px; height:13px; ">대대기 공지사항 (50자, 삭제할때까지 표시)</caption>
  2762. <line id="line6" class="line_1" style="x1:501px; y1:658px; x2:914px; y2:658px; "/>
  2763. <button id="button17" class="btn4_letter2" style="left:855px; top:97px; width:56px; height:22px; ">
  2764. <caption>보류</caption>
  2765. <script type="javascript" ev:event="DOMActivate">
  2766. <![CDATA[
  2767. fOrdRoomPatWaitRete(); //자동 퇴실 함수
  2768. ]]>
  2769. </script>
  2770. </button>
  2771. <output id="opt_cnts" ref="/root/hidden/cnts" style="left:513px; top:620px; width:60px; height:19px; "/>
  2772. <group id="group4" style="left:755px; top:64px; width:305px; height:25px; ">
  2773. <caption id="caption30" class="cell_1" style="left:160px; top:4px; width:80px; height:20px; font-weight:bold; color:#0000ff; ">검사인원 :</caption>
  2774. <select id="chk_autoactyn" ref="/root/hidden/con/autoactyn" navindex="10" overflow="visible" appearance="full" style="left:120px; top:5px; width:27px; height:20px; border-style:none; ">
  2775. <choices>
  2776. <item>
  2777. <label/>
  2778. <value>Y</value>
  2779. </item>
  2780. </choices>
  2781. </select>
  2782. <select1 id="chk_excucnt" ref="/root/hidden/con/excucnt" class="combo_search" navindex="9" appearance="minimal" style="left:244px; top:4px; width:52px; height:19px; ">
  2783. <choices>
  2784. <item>
  2785. <label>1</label>
  2786. <value>1</value>
  2787. </item>
  2788. <item>
  2789. <label>2</label>
  2790. <value>2</value>
  2791. </item>
  2792. <item>
  2793. <label>3</label>
  2794. <value>3</value>
  2795. </item>
  2796. <item>
  2797. <label>4</label>
  2798. <value>4</value>
  2799. </item>
  2800. <item>
  2801. <label>5</label>
  2802. <value>5</value>
  2803. </item>
  2804. <item>
  2805. <label>6</label>
  2806. <value>6</value>
  2807. </item>
  2808. <item>
  2809. <label>7</label>
  2810. <value>7</value>
  2811. </item>
  2812. <item>
  2813. <label>8</label>
  2814. <value>8</value>
  2815. </item>
  2816. <item>
  2817. <label>9</label>
  2818. <value>9</value>
  2819. </item>
  2820. <item>
  2821. <label>10</label>
  2822. <value>10</value>
  2823. </item>
  2824. </choices>
  2825. </select1>
  2826. <caption id="caption29" class="cell_1" style="left:7px; top:3px; width:108px; height:20px; font-weight:bold; color:#0000ff; ">자동들어오실분 :</caption>
  2827. </group>
  2828. <iviewer id="iviewer1" src="SPMNV07001_환자별메시지관리.xrw" style="left:920px; top:475px; width:271px; height:239px; "/>
  2829. <caption id="caption31" style="left:920px; top:366px; width:271px; height:104px; line-spacing:0; background-color:#ffff99; border-style:solid; ">
  2830. <![CDATA[1. 대기자리스트에서 “개인별안내문구”로 저장한 내용 그대로 환자 전광판에 안내됩니다. 공란 저장 전까지 계속 표시됩니다.
  2831. 2. “개인별안내문구”는 “개인별 안내문구 상용구 등록”에 등록된 내용만 선택 가능합니다. 필요한 내용이 없으신 경우 추가등록 하셔야합니다.
  2832. 3. 환자별 개인문구는 10자까지 저장가능합니다.
  2833. ]]>
  2834. </caption>
  2835. </group>
  2836. <line id="line4" class="line_3" style="x1:3px; y1:728px; x2:1194px; y2:728px; "/>
  2837. <shape id="roundrect5" class="roundrect_example" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:1px; top:734px; width:1191px; height:40px; "/>
  2838. <group id="group5" scroll="auto" ref="/root/hidden/con/msg" style="left:4px; top:735px; width:1161px; height:34px; ">
  2839. <caption id="caption15" style="left:115px; top:4px; width:1037px; height:28px; font-weight:bold; ">
  2840. <![CDATA[1. 전광판 조회는 (오전 : ~ 12:30 까지) , (오후 : 12:31 ~ ), (전체 : 구분없음) 까지 조회됨 2. 진료실 일정 등록 후에만 대기로 체크된 환자가 조회됨.
  2841. 3. 이미 진료실이 등록되어 있는 의사를 같은 과의 다른 진료로 증복 등록 불가 4. 오전 일정이 등록되어 있을 때 오후 일정은 오전 일정이 끝난 이후 등록해야함.]]>
  2842. </caption>
  2843. <caption id="caption17" class="cell_1" style="left:5px; top:7px; width:105px; height:20px; font-weight:bold; ">진료실 등록안내</caption>
  2844. </group>
  2845. </xhtml:body>
  2846. </xhtml:html>