123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
- <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">
- <xhtml:head>
- <xhtml:title>M-GPS</xhtml:title>
- <model id="model1">
- <instance id="instance1">
- <root xmlns="">
- <main>
- <masterinfo>
- <info>
- <cpgnm/>
- <cpgorddeptcd/>
- <cpaprvno/>
- <swimlineno/>
- <fcstinhospdayno/>
- <appdd/>
- <todd/>
- <lastupdtdt/>
- <cpgmemo/>
- <cpgno/>
- <cpghistseq/>
- <cpgflagcd/>
- <reqrid/>
- <rgstrid/>
- <cpglasthistyn/>
- <fstrgstrid/>
- <fstrgstdt/>
- <lastupdtrid/>
- <instcd/>
- <cpgflagcd/>
- <cpkind/>
- <reqrnm/>
- <rgstrnm/>
- <cretdd/>
- <reqrlist/>
- <cpdiaginfo/>
- <opinfo/>
- <ccinfo/>
- </info>
- </masterinfo>
- <formsrchcond>
- <fromdd/>
- <todd/>
- </formsrchcond>
- <formlist/>
- <attfileinfo/>
- <indexinfo/>
- <steplist/>
- <decisionlist/>
- <stepinfo>
- <info>
- <stepno/>
- <times/>
- <stepmemo/>
- <stepnm/>
- <stepflagcd/>
- <setno/>
- <daynm/>
- </info>
- </stepinfo>
- <sortedsteplist/>
- <steppath/>
- <prcpsrch/>
- <invalprcplist/>
- <delprcpinfo/>
- <srcprcp>
- <prcplist/>
- </srcprcp>
- <destprcp>
- <prcplist/>
- </destprcp>
- <saveinval/>
- <mntrinfo/>
- <mntrdetlinfo/>
- <inqrinfo/>
- <limtminfo/>
- <appscoplist/>
- <appscopmode/>
- </main>
- <temp1>
- <lastrowcnt/>
- <getdata/>
- <trmqp_rslt>
- </trmqp_rslt>
- <mstatus/>
- <copynodeset>
- <masterinfo>
- <info/>
- </masterinfo>
- </copynodeset>
- <userpopupinfo>
- <param/>
- <flag/>
- <searchitem/>
- </userpopupinfo>
- <daylist>
- <day>
- <id/>
- <nm/>
- </day>
- </daylist>
- <addprcp/>
- <closeyn>N</closeyn>
- <refresh_obj>
- <change_outline/>
- <change_ocs/>
- <change_gps/>
- <refreshyn>N</refreshyn>
- </refresh_obj>
- <exe>
- <bizabbr>com</bizabbr>
- <modulenm>prcpmngtmgr</modulenm>
- <prgmid>PrcpMngtBatch</prgmid>
- <prgmnm>CP프로토콜배치_입원</prgmnm>
- <useyn>Y</useyn>
- <fstrgstrid>COM</fstrgstrid>
- <fstrgstdt>20070712154645164</fstrgstdt>
- <lastupdtrid>EMR</lastupdtrid>
- <lastupdtdt/>
- <paramcnts/>
- </exe>
- <dummy/>
- <authyn>Y</authyn>
- <tmpprcplist/>
- <oplist/>
- </temp1>
- <cp>Y</cp>
- <cpsaveflag/>
- </root>
- </instance>
- <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post"/>
- <submission id="TRZSD00109" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
- <submission id="TRMMP02202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/prcpsrch"/>
- <submission id="TRMQP00602" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp1/getdata" resultref="/root/temp1/trmqp_rslt"/>
- <submission id="TRMQP00605" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp1/attachfile"/>
- <submission id="TRMQP04001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/inqrinfo"/>
- <submission id="TRMMP00801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/formlist"/>
- <!-- 사용안함(s) -->
- <submission id="TRMMP00802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp1/getdata" resultref="/root/main/sortedsteplist"/>
- <!-- 사용안함(e) -->
- <submission id="TRMMP00803" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp1/getdata" resultref="/root/main/steppath"/>
- <submission id="TRMMP00804" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/invalprcplist"/>
- <submission id="TRMMP00805" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/result"/>
- <submission id="TRMMP00806" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/result"/>
- <submission id="TRMMP00807" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/temp1/rsltgetdata"/>
- <submission id="TRMMP00809" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/result/prcplist" resultref="/root/result"/>
- <submission id="TRMMP00810" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/mntrdetlinfo"/>
- <!-- <submission id="TRMMP00810" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/batch"/> -->
- <submission id="TXMMP00801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata"/>
- <submission id="TXMMP00802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/steppath"/>
- <submission id="TXMMP00803" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/invalprcplist"/>
- <submission id="TXMMP00804" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/invalprcplist"/>
- <submission id="TXMMP00805" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata"/>
- <submission id="TXMMP00806" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/delprcplist"/>
- <submission id="TXMMP00807" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp1/exe" resultref="/root/temp1/dummy"/>
- <submission id="TXMMP00808" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/empty"/>
- <submission id="TXMMP00809" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp1/getdata" resultref="/root/main/steppath"/>
- <submission id="TXMMP00810" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata"/>
- <submission id="TXMMP00811" mediatype="application/x-www-form-urlencoded" method="post"/>
- <submission id="TXMMP00812" mediatype="application/x-www-form-urlencoded" method="post"/>
- <submission id="TRMMP02801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/pamdata" resultref="/root/temp1/oplist"/>
- <submission id="TRMMO00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/result"/>
- <submission id="TRMMO00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/result"/>
- <submission id="TRMMO00105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/diaginfo"/>
- <submission id="TRMMO04108" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/infecpatlist"/>
- <submission id="TRMMO00122" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/savertninfo"/>
- <!-- CPG 평가 정보(상단 평가명) 조회, CPG종료 시 필요 -->
- <submission id="TRMMP03501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/valudata" resultref="/root/main/valuinfo"/>
- <script type="javascript" ev:event="xforms-model-construct-done">
- <![CDATA[
- //초기화시 makeValue 해주는 노드는 지워준다
- model.removenode("/root/temp1/getdata/getformyn");
- model.removenode("/root/temp1/getdata/appyn");
- model.setValue("/root/init/fstopenflag", "Y"); //20080905 임시!!
-
- //진료대상자리스트에 값을 setting한다
- var prcpWindow = getOpenWindow("SMMMO04100");
- if( prcpWindow != null ){
- prcpWindow.model.setValue("/root/cpflag", "Y");
- }
-
- ]]>
- </script>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
- <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
- <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
- <script type="javascript" src="../../../com/signweb/js/ZES001.js"/>
- <script type="javascript" src="../../../emr/cpgweb/js/MMPCommon.js"/>
- <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
- <script type="javascript" src="../../../emr/prcpmngtweb/js/SMMMO00100.js"/>
- <script type="javascript" src="../../../emr/prcpmngtweb/js/SMMMO00110.js"/>
- <script type="javascript" src="../../../emr/prcpmngtweb/js/SMMMO04100.js"/>
- <script type="javascript" src="../../../emr/commonweb/js/EMRCommon.js"/>
- <script type="javascript" src="../../../emr/formmngtweb/js/MRF03800.js"/>
- <script type="javascript">
- <![CDATA[
- //var appNo = ""; js에 있음
- var loadFormTab = ""; //D:환자계획표,O:outline
- var appendIndxBool = new Boolean(false);
- var saveIndxlist = "";
- var saveIndxHeader = "";
- var preSelectedTab = "btn_outline_tab";
- var OpenerKind = "GPS"; //outline, 환자계획표를 생성기와 같이 쓰므로, iviewer에서 구분하기위한 변수
- var rgstno = "";
- var rgstno2 = "";
- var cpgFlagNm = "";
- var appStat = "";
- var cpgflagcd = ""; //프로토콜구분(01:CP,02:CPG)
- var settypecd = ""; //프로토콜구분(W:CP,G:CPG)
- var cpgno = "";
- var cpghistseq = "";
- var swimlineno = "";
- var changedYN = "N";
- var fcstinhospdayno = ""; //재원일수 ( CPG에서 적용 분기 시 필요)
- var fcstinhospdayYN = "Y"; //재원일수 (존재) 여부
- var closeYN = "N";
- var changeStatusYN = "N";
- var pamExistYN = "";
- var dschAppYN ="N"; // 2008.08.02 pymi 퇴원예고 메시지 적용여부
- var invalPrcpYN = "N";
- var resetAppScopYN = "N";
-
- var iPid = "";
- var iCretno = "";
- var iHngnm = "";
- var iSex = "";
- var iAge = "";
- var iInsukind = "";
- var iSuppkind = "";
- var iIoflag = "";
- var iPrcpgenrflag = "";
- var iOrddd = "";
- var iOrddeptcd = "";
- var appstepstatflag = "";
- var iAuthflag = "";
- var iOrddeptnm = "";
- var iRoomcd = "";
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자대상자리스트에서 다른 환자를 선택할 때, 화면을 reset한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReconstruct(){
- //MGPS 띄워진 상태에서, 진료대상자에서 환자 선택 시, OCR 초기화 (2008.09.05 JJE)
- if( model.getValue("/root/temp1/refresh_obj/refreshyn") == "Y" ){
- model.setValue("/root/init/bfprcpload" , "N"); //전처방을 초기화한다.
- fInitializeConDone();
-
- fInitializeReady();
-
- model.setValue("/root/init/fstopenflag", "N");
- if (ivw_prcp3.src == "SMMMO02100_전회처방.xrw") {
- ivw_prcp3.window.javascript.fInitialize(); //전처방 재조회
- }
- }
-
- model.setValue("/root/temp1/refresh_obj/refreshyn", "N"); //최초조회가 아닌경우, refresh 여부 "Y"
-
- //초기화시 makeValue 해주는 노드는 지워준다
- model.removenode("/root/temp1/getdata/getformyn");
- model.removenode("/root/temp1/getdata/appyn");
-
- prtlFlag_SMMMO00110 = "-"; //일반 or 임상시험 일 때에는 "", cp에서 저장하는 처방 저장을 위해 "-"로 다시 셋팅
- appNo_SMMMO00110 = ""; //적용번호
- appstepstatflag = ""; //서식호출여부 변수 초기화
- clearParameter("SPMMP00200_popupYN"); //적용시 미완성처방 있을때 오류팝업 띄울지 여부 (Y이면 팝업 호출)
-
- if( instance1.selectSingleNode("/root/paminfo/list/pid") == null ){ //환자정보가 없다면, 바로 return (닫음) (2008.10.06)
- return;
- }
-
- //권한에 따른, 버튼 설정 (처방창에서는 111, CP검색창에서는 110, 대상자리스트에서는 110 각기 다르므로 권한설정에 어려움이 있어 직종으로 판단함)
- var jobKindCd = getUserInfo("jobkindcd"); //직종코드(0330:의사, 0332:치과의사)
- var userid = getUserInfo("userid");
-
- setSpclScrnAuth("X", false);
-
- //하드코드 테이블에 의사직종코를 참조하여 접속자의 직종코드와 비교를 통해 권한 체크 (2010.07.16 JJE)
- var trgtcd = model.getValue ( "/root/initsrch/drjobkindcd[trgtcd='" + jobKindCd + "']/trgtcd" );
-
- //테스터를 위한 권한 쓰기권한 강제설정 (2009.02.27)
- if( userid.substr(0,3) == "DEV" || userid.substr(0,3) == "EMR" ) trgtcd = userid;
-
- //if( !(checkAuth("X") && (jobKindCd == "0330" || jobKindCd == "0332")) ){
- if( !(checkAuth("X") && !isNull(trgtcd)) ){
- setSpclScrnAuth("R", false);
- model.makeValue("/root/temp1/getdata/authflag", "S"); //사용하지는 않음...
- model.makeValue("/root/temp/getdata/authflag", "S");
- model.setValue("/root/temp1/authyn", "N");
- btn_drop.visible = false;
- btn_allInfoSave.visible = false;
- btn_tempsave.disabled = true;
- }else{
- setSpclScrnAuth("X", false);
- model.makeValue("/root/temp1/getdata/authflag", "U"); //M-GPS의 Write 권한은 User(진료의)
- model.makeValue("/root/temp/getdata/authflag", "U");
- model.setValue("/root/temp1/authyn", "Y");
- btn_drop.visible = true;
- btn_allInfoSave.visible = true;
- btn_drop.disabled = false;
- btn_allInfoSave.disabled = false;
- btn_tempsave.disabled = false;
- }
-
- //나머지 부분은 xforms-ready 이벤트로 옮김...
- if( !isNull(getGlobalVariable("paminfo")) ){
- pamExistYN = "Y";
- }else{
- pamExistYN = "N";
- }
-
- if( pamExistYN == "Y" ){
- model.makeNode("/root/init/P0322list/P0322/cdnm");
- model.makeNode("/root/init/P0322list/P0322/cdid");
- model.makeNode("/root/init/orddeptlist/dept/depthngnm");
- model.makeNode("/root/init/orddeptlist/dept/deptcd");
- model.makeNode("/root/init/M0505");
- model.makeNode("/root/init/M0506");
- model.makeNode("/root/init/M0507");
- model.makeNode("/root/init/M0508");
- model.makeNode("/root/init/M0509");
- model.makeNode("/root/init/M0510");
- model.makeNode("/root/init/M0511");
- model.makeNode("/root/init/M0512");
- model.makeNode("/root/init/M0513");
- model.makeNode("/root/init/M0514");
- model.makeNode("/root/init/M0515");
- model.makeNode("/root/init/M0516");
- model.makeNode("/root/init/M0518");
- model.makeNode("/root/init/P0313");
- zbcfGetCodeList(new Array("M0505", "M0506", "M0507", "M0508", "M0509", "M0510", "M0511", "M0512", "M0513", "M0514", "M0515", "M0516", "M0518", "P0313")
- , new Array("/root/init/M0505", "/root/init/M0506", "/root/init/M0507", "/root/init/M0508", "/root/init/M0509", "/root/init/M0510", "/root/init/M0511", "/root/init/M0512", "/root/init/M0513", "/root/init/M0514", "/root/init/M0515", "/root/init/M0516", "/root/init/M0518", "/root/init/P0313"));
-
-
- //debugger;
- fSizeControl(); //창 위치 및 사이즈 조정(위치이동)
- fCpSetting();
-
- //cp 마스터 정보 및 스텝 정보를 셋팅 (steppath 조회 후 수행되어야 함) -> ivw_outline의 초기화
- fInitialize();
-
- //스텝경로와 미완성처방 리스트를 조회
- fGetStepPathList();
-
- //cp명 및 재원일수를 출력한다
- var titleTxt = document.title + " " + iHngnm + " (" + iPid + ")" + " ["+ cpgFlagNm +"명 : " + model.getValue("/root/main/masterinfo/info/cpgnm");
- if( cpgflagcd == "01" ) titleTxt = titleTxt + " 재원일수 : " + model.getValue("/root/main/masterinfo/info/fcstinhospdayno") + "일";
- titleTxt = titleTxt + "]";
- document.title = titleTxt;
-
- fGetFormList("F"); //서식목록을 조회한다.(first)
-
- //상단 서식/첨부파일, 미완성처방 영역 분기 처리 (2008.12.02)
- fSetupSupScrn();
-
- //SMMMO00100 초기화 때, skip 후, 지금 처리 (2008.07.07)
- fDrugPrcpDc(); // 간호반납 처방
- fConfirmTellPrcp(); // 미확인 간호 구두 처방
- fTempPrcp();
- fSaveRsrvPrcpCvrt();
-
- //처방창 닫음
- fClosePrcpWindow();
-
- //인증저장 버튼 보이지 않도록 처리
- btn_prcpsave.visible = false;
- btn_tempsave.attribute("left") = "1140px";
- btn_undo.attribute("left") = "1073px";
-
- // 가셔야할 곳 + 인증저장 숨김 외래예약 + 인증저장 숨김
- line5.attribute("y1") = "143px";
- line5.attribute("y2") = "143px";
- btn_prcpsave2.visible = false;
- bool_patgolistprtyn.visible = false;
- cap_patgolistprtyn.visible = false;
- btn_prtpattogo.visible = false;
-
- //처방이동 버튼 위치 이동
- button24.attribute("left") = 937 + 79;
- button26.attribute("left") = 965 + 79;
-
- //2008.09.04 순서 변경
- //start: 화면 호출 시, 의사별 개인설정에 의한 기본탭 달리 지정되도록 함 (2010.07.01 JJE)
- var defaultTab = "";
- var qestcd = "";
- if( cpgflagcd == "01" ) {
- qestcd = "027";
- } else if( cpgflagcd == "02" ) {
- qestcd = "028";
- }
-
- var defaultTabNode = instance1.selectSingleNode("/root/initsrch/envinfo[qestcd='"+qestcd+"']/answcnt"); //001:환자계획표, 002:OCS, 003:Outline
- if( defaultTabNode != null ){
- defaultTab = defaultTabNode.text;
- }else{
- if( cpgflagcd == "01" ) defaultTab = "001";
- else if( cpgflagcd == "02" ) defaultTab = "003";
- }
-
- //(1-1) 기존에 창이 열려 있는 경우는, 환경설정과 무관하게 지정된 탭 그대로 둠.
- if( btn_detail_tab.selected == true ){
- defaultTab = "001";
- } else if ( btn_outline_tab.selected == true ){
- defaultTab = "003";
- } else if ( btn_action_tab.selected == true ){
- defaultTab = "002";
- } else { //(1-2) 창이 처음 열리는 경우에는, 환경설정의 답에 의해 기본 탭 지정해줌, 창별 visibility 속성 설정
- if( defaultTab == "001" ){ //환자계획표
- ivw_prcp2.visible = false;
- ivw_prcp3.visible = false;
- imp_prcp.visible = false;
- btn_detail_tab.selected = true;
- ivw_detail.visible = true;
- ivw_outline.visible = false;
- }else if( defaultTab == "003" ){ //outline
- ivw_prcp2.visible = false;
- ivw_prcp3.visible = false;
- imp_prcp.visible = false;
- btn_outline_tab.selected = true;
- ivw_outline.visible = true;
- ivw_detail.visible = false;
- }else{ //002:OCS
- btn_action_tab.selected = true;
- ivw_outline.visible = false;
- ivw_detail.visible = false;
- imp_prcp.visible = true;
- }
- }
- model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
- //(2-1) 환경설정 정보에 의해 초기 탭 달리 지정/조회
- if( defaultTabNode != null ){
- if( defaultTab == "001" || (defaultTab == "002" && cpgflagcd == "01") ){
- loadFormTab = "D";
- if( ivw_detail.src != "../../../emr/cpgweb/xrw/SPMMP02200_DetailView.xrw" ){
- ivw_detail.src = "../../../emr/cpgweb/xrw/SPMMP02200_DetailView.xrw";
- }else{
- ivw_detail.window.javascript.fInitialize(); //@맨 마지막에 기록지 로딩
- }
- if( ivw_outline.src == "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw" ) {
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
- }
- } else if ( defaultTab == "003" || (defaultTab == "002" && cpgflagcd == "02") ){
- loadFormTab = "O";
- if( ivw_outline.src != "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw" ){
- ivw_outline.src = "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw";
- }else{
- fInitializeOutline(); //@맨 마지막에 기록지 로딩
- }
- }
- }else{ //(2-2) 환경설정 정보가 없으면, CP-환자계획표, CPG-outline으로 지정/조회
- if( cpgflagcd == "01" ){ //(1) CP이면, 환자계획표(default)
- loadFormTab = "D";
- if( ivw_detail.src != "../../../emr/cpgweb/xrw/SPMMP02200_DetailView.xrw" ){
- ivw_detail.src = "../../../emr/cpgweb/xrw/SPMMP02200_DetailView.xrw";
- }else{
- ivw_detail.window.javascript.fInitialize(); //@맨 마지막에 기록지 로딩
- }
- if( ivw_outline.src == "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw" ) {
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
- }
- ivw_prcp2.visible = false;
- ivw_prcp3.visible = false;
- imp_prcp.visible = false;
- btn_detail_tab.selected = true;
- ivw_detail.visible = true;
- ivw_outline.visible = false;
- }else{ //(2) CPG이면, outline(default)
- loadFormTab = "O";
- if( ivw_outline.src != "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw" ){
- ivw_outline.src = "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw";
- }else{
- fInitializeOutline(); //@맨 마지막에 기록지 로딩
- }
- ivw_prcp2.visible = false;
- ivw_prcp3.visible = false;
- imp_prcp.visible = false;
- btn_outline_tab.selected = true;
- ivw_outline.visible = true;
- ivw_detail.visible = false;
- }
- }
-
- //미완성처방이 존재하면 미완성처방 탭이 선택되어 조회 후 영역 넒어져야 함 (미완성 iviewer 초기화) (2008.11.08 JJE)
- if( invalPrcpYN == "Y" ){
- model.toggle("incompletion_tab");
- btn_saveincomplprcp.selected = true;
- fGetErrPrcpList();
- fCase2ViewMode();
-
- }else{
- if( btn_formatt.selected != true ){
- model.toggle("att_tab");
- ivw_invalprcp.src= "";
- btn_formatt.selected = true;
- btn_savecomplprcp.visible = false;
- fNomalViewMode();
- }
- model.removeNodeset( "/root/send/reqdata" );
- }
-
- //감염관리 환자 여부를 확인
- //var rgstno = model.getValue("/root/paminfo/list/brthdd");
- //var rgstno2 = getPatientInfo("regstno");
- //fReqInFecPatList(rgstno, rgstno2)
- }
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자대상자리스트에서 다른 환자를 선택할 때, 화면을 reset한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCloseGPS(){
- window.close();
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 처방창 및 본 창을 닫는다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCpSetting(){
- //처방 초기화 시 환자 session 정보 받으므로 중복 작업임, pid==nill일때만 처리하도록 수정 (2008.09.29)
- var pamInfoCvs = getGlobalVariable("paminfo");
- if( !isNull(pamInfoCvs) && instance1.selectSingleNode("/root/paminfo/list/pid") == null ){ //cvs가 null이 아닌 경우에만 처리함.
- model.removeNodeSet ( "/root/paminfo/list" ); //상단화면 정보 초기화
- setCSVToNode ( "/root/paminfo", pamInfoCvs );
- var patFlagCvs = getGlobalVariable("patflag");
- if(patFlagCvs.length != 0 ){ //cvs가 null이 아닌 경우에만 처리함.
- model.removeNodeSet ( "/root/patflag/list" ); //상단화면 정보 초기화
- setCSVToNode ( "/root/patflag", patFlagCvs );
- }else{
- return false;
- }
- }
-
- // 전역 변수로 사용
- iAuthflag = model.getValue("/root/temp/getdata/authflag");
- iPid = model.getValue("/root/paminfo/list/pid");
- iCretno = model.getValue("/root/paminfo/list/cretno");
- iHngnm = model.getValue("/root/paminfo/list/hngnm");
- iSex = model.getValue("/root/paminfo/list/sex");
- iAge = model.getValue("/root/paminfo/list/age");
- iInsukind = model.getValue("/root/paminfo/list/insukind");
- iSuppkind = model.getValue("/root/paminfo/list/suppkind");
- iIoflag = model.getValue("/root/paminfo/list/ioflag"); //입원/외래구분
- iOrddeptcd = model.getValue("/root/paminfo/list/orddeptcd");
- iPrcpgenrflag = model.getValue("/root/patflag/list/prcpgenrflag");
- if(iPrcpgenrflag == "O"){
- iOrddd = model.getValue("/root/paminfo/list/orddd");
- }else{
- iOrddd = model.getValue("/root/paminfo/list/indd");
- }
- iOrddeptnm = model.getValue("/root/paminfo/list/orddeptnm");
- iRoomcd = model.getValue("/root/paminfo/list/roomcd");
-
- var appstepstat = instance1.selectSingleNode("/root/temp1/getdata/appstepstatflag");
- if( appstepstat != null && appstepstat.text == "i"){
- model.makeValue("/root/temp1/getdata/appdd", getCurrentDate());
- return true; //선택(신규)
-
- }else{ //기존 진행중인 CP
- //cp가 drop되지 않고, 진행중이거나 정상종료 상태이면서, 퇴원 이전 상태이면 유효한 CP.
- //퇴원한 상태이거나 drop한 경우 무효 CP
- model.removeNodeSet ( "/root/send/reqdata" );
- model.makeNode( "/root/send/reqdata" );
- model.makeNode( "/root/temp1/rsltgetdata" );
- model.makeValue("/root/send/reqdata/pid", iPid);
- model.makeValue("/root/send/reqdata/cretno",iCretno);
- model.makeValue("/root/send/reqdata/orddd", iOrddd);
- model.makeValue("/root/send/reqdata/prcpgenrflag",iIoflag);
-
- if( submit("TRMMP00807", false) ){ //CP가 유효한지를 조회한다 (최초 선택 시(appstat=0), 조회된 데이터 없음!)
- //CP검색창을 통해서 Open 되지 않았을 경우(적용 후 곧바로 Open이 아닐 때), appstepstatflag 노드가 존재하지 않기 때문에, road 초기에 빈노드를 생성해준다
- if( instance1.selectSingleNode("/root/temp1/rsltgetdata/getdata/cpgappno") != null ){
- model.copyNode("/root/temp1/getdata", "/root/temp1/rsltgetdata/getdata"); //동일화
- model.makeValue("/root/temp1/rsltgetdata/getdata/appstepstatflag", "");
- model.makeValue("/root/temp1/getdata/appstepstatflag", "");
- model.removeNodeSet ( "/root/temp1/rsltgetdata/getdata" );
- return true;
- }else{
- //CP 아닌 환자
- return false;
- }
- }else{
- return false;
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 처방창 및 본 창을 닫는다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fClosePrcpWindow(){
- //위치 바꿔야 한다... appNo_SMMMO00110 값받기 전에 수행되므로 실핼안함
- appNo_SMMMO00110 = model.getValue("/root/temp1/getdata/cpgappno");
-
- if( !isNull(appNo_SMMMO00110) ){
- fsetCpInfo(); //상단 CP여부 변경
- /*
- if( appStat != "00" ){
- //상단에 cp여부를 Y로 셋팅(외래일때에는 셋팅이 되지 않아서, 다시 셋팅)
- setPatientInfo("cp", model.getValue("/root/paminfo/list/pid") + "|" + "Y"); //상단 cp Y로 셋팅
- //진료대상자리스트에 값을 setting한다
- var prcpWindow = getOpenWindow("SMMMO04100");
- if( prcpWindow != null ){
- prcpWindow.model.setValue("/root/cpflag", "Y");
- }
- }
- */
- //처방창 닫기
- var prcpWindow = getOpenWindow("SMMMO00100");
- if( prcpWindow != null ){
- prcpWindow.javascript.fClose_SMMMO00100();
- }
- //CP검색창 닫기
- var srchWindow = getOpenWindow("SPMMP01200");
- if( srchWindow != null ){
- srchWindow.javascript.fCpSrchWndClose();
- }
- //CPG대상자알림창 닫기
- var srchWindow = getOpenWindow("SPMMP03200");
- if( srchWindow != null ){
- srchWindow.javascript.fCpSrchWndClose();
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 처방창 및 본 창을 닫는다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenPrcpWindow(){
- var mainObj = getMainViewer();
- appStat = model.getValue("/root/temp1/getdata/appstat");
-
- // 2008.07.18 pymi (51 상태값 추가)
- if( appStat == "50" || appStat == "41" || appStat == "51"){
- setPatientInfo("cp", model.getValue("/root/paminfo/list/pid") + "|" + "N"); //main view cp여부 불 끄기
-
- //진료대상자리스트에 값을 setting한다
- var prcpWindow = mainObj.javascript.getOpenWindow("SMMMO04100");
- if( prcpWindow != null ){
- prcpWindow.model.setValue("/root/cpflag", "N");
- }
- if( cpgflagcd == "02" ){ //CPG 종료 시, 평가명이 없으면 상단 평가 아이콘 설정 변경 (2010.06.03)
- var valunmNode = instance1.selectSingleNode("/root/main/valuinfo/valulist/valunm");
- if(valunmNode == null){
- setPatientInfo("valuation", model.getValue("/root/paminfo/list/pid") + "|" + "N"); //main view 평가여부 불 끄기
- }
- }
-
- fPrcpCallPatList(); //진료대상자리스트 재조회
-
- //mainObj.window.javascript.open("SMMMO00100"); //처방창 open
- if( prcpWindow != null ){
- prcpWindow.window.javascript.fOpenPrcpMainWnd();
- }
-
- window.close(); //cp창 닫기
- }
- }
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : drop, 평가 메세지 출력
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMssg(){
- if( !checkAuth("X") ){
- return true; //조회모드일 경우, Drop 유도, CP진행여부 Msg 필요 없음
- }
-
- var prcpgenrflag = model.getValue ( "/root/patflag/list/prcpgenrflag" );
- var indd = model.getValue( "/root/paminfo/list/indd" );
- var D0stepNode = instance1.selectSingleNode("/root/main/steppath/info" + "[times = '0' and stepstat='10']/stepno");
- var prcpddNode = instance1.selectSingleNode("/root/main/steppath/info" + "[times = '0']/prcpdd");
- var ioflag = model.getValue("/root/main/masterinfo/info/ioflagcd"); //pymi 2008.08.07
-
- /*
- //진료대상자리스트에서 체크하도록 변경(2008.08.07 JJE) => 삭제할 것
- if(prcpgenrflag != "O" && D0stepNode != null ){
- if( indd == prcpddNode.text ){
- btn_allInfoSave.disabled = true;
- btn_drop.disabled = false;
- fDropApp("D0처방일과 D1처방일이 동일합니다. \n현재 CP를 Drop하고 새로운 D1 CP를 적용하십시오. \nDrop을");
- return true;
- }
- }
- */
-
- /*
- //선택 상태이면서 당일 CP 임시처방 존재 시, 임시처방 저장 여부 물어봄. 2008.10.23(JJE)
- if( appStat == "00" && model.getValue ( "/root/initsrchprcp/prcpetccnts/temprsrvprcpyn" ) != "N" ){
- if( instance1.selectSingleNode("/root/main/prcp/prcplist[prcphistcd='T' and etclnkspec='0|" + appNo_SMMMO00110 + "']") != null ){
- if( messageBox ( "선택하신 "+cpgFlagNm+"의 당일 처방이 임시처방으로 존재합니다.\n임시처방을 "+cpgFlagNm+" 처방으로 대치하여 저장하시려먼 '예',\n다른 "+cpgFlagNm+"를 선택하시려면 '아니오'\n\n임시처방을 당일 "+cpgFlagNm+" 처방으로 대치하여", "Q002" ) == 6 ){
- cpTmpPrcpSaveYN_SMMMO00110 = "Y";
- btn_allInfoSave.dispatch("DOMActivate");
-
- }else{
- //cpTmpPrcpSaveYN_SMMMO00110 = "N";
- fCnclApp();
- }
- return;
- }
- }
- */
-
- if( cpgflagcd == "01" ){
- //CP check =>
- //D0 CP일 경우, D0처방을 OCS에 미리 setting한다. (2008.11.28)
- if( appStat == "00" ){
- if( prcpgenrflag != "O" ){
- model.setValue ("/root/init/prcpkindcd", "20");
- model.setValue("/root/init/prcpdd", getCurrentDate()); //2009.03.14
- }
-
- if( ioflag != "O" && D0stepNode != null ){
- var setcond = instance1.selectSingleNode("/root/main/steppath/info" + "[times = '0']/setno");
- var etcLnkSpec = "0" + "|" + appNo_SMMMO00110;
- model.makeValue ( "/root/send/reqdata/cpgno", model.getValue("/root/main/masterinfo/info/cpgno") );
- model.makeValue ( "/root/send/reqdata/cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq") );
- model.makeValue ( "/root/send/reqdata/cpgappno", appNo_SMMMO00110 );
- model.makeValue ("/root/send/reqdata/dayno", "0");
- model.makeValue ("/root/send/reqdata/setcond", setcond.text);
- model.makeValue ("/root/send/reqdata/cpgflagcd", settypecd);
- model.makeValue ("/root/send/reqdata/etclnkspec", etcLnkSpec); //submit 수행 시 조회된 etcLnkSpec가 addPrcpSetValue() 수행으로 다시 reset되므로 etcLnkSpec는 보내고/받을 필요가 없음.
- model.makeValue ("/root/send/reqdata/prcpgenrflag", model.getValue("/root/patflag/list/prcpgenrflag"));
- model.makeValue ("/root/send/reqdata/prcpddcond", getCurrentDate()); //2009.03.10 추가
-
- if( submit("TRMMP02202", false ) ){
- cpTmpPrcpSaveYN_SMMMO00110 = "Y";
-
- copyNodesetType("/root/main/prcp", "/root/main/prcpsrch", "replace", model, model);
- model.removeNodeset ( "/root/main/prcpsrch/prcplist" );
-
- var prcpNodeList = instance1.selectNodes("/root/main/prcp/prcplist");
- var prcpNodeListCnt = prcpNodeList.length;
- var srchRow = 0;
-
- for(var i=0; i<prcpNodeListCnt; i++){
- srchRow++;
- addPrcpSetValue( "main", "/root/main/prcp/prcplist" , srchRow, cpgflagcd);
- model.setValue("/root/main/prcp/prcplist[" + srchRow + "]/etclnkspec", etcLnkSpec);
- }
-
- appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" ); //검색라인추가
-
- grd_prcplist.refresh();
- model.recalculate();
- }
-
- model.removeNodeset ( "/root/send/reqdata" );
- }
- }
- else if( appStat == "12" && prcpgenrflag != "O" && ioflag != "O"){ // ioflag != "O" 조건 추가 pymi 2008.08.07 (외래 -dsc cp 일 경우는 발생하지 않도록)
- var appstat = model.getValue("/root/init/rsltgetdata/getdata/appstat");
- var cpgnm = model.getValue("/root/main/masterinfo/info/cpgnm");
- var hngnm = model.getValue("/root/paminfo/list/hngnm");
-
- //외래(D0) 진행 후, 입원전환 즉시일 경우, 바로 CP Main Open
- //var rtnval = messageBox("[" + hngnm + "]환자의 [" + cpgnm + "] CP를", "Q003");
- var rtnval = messageBox("[" + hngnm + "]환자의 [" + cpgnm + "] CP를 \n\n계속 진행", "S004");
- // 2008.07.18 pymi 취소(51) 일때 appstat update
- if(rtnval == 2){ //취소
- model.removeNodeset("/root/send/savedata");
- model.makeValue("/root/send/savedata/cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- model.makeValue("/root/send/savedata/appstat", "51");
- model.makeValue("/root/send/savedata/prcpgenrflag", "O");
-
- if(submit("TXMMP00808")) {
- model.setValue("/root/temp1/getdata/appstat", "51");
- fOpenPrcpWindow();
- }
- return true;
- }
- else if(rtnval == 6){
- //상태 update? Y" N"
- model.setValue("/root/temp1/getdata/appstat", "10");
- appStat = model.getValue("/root/temp1/getdata/appstat");
-
- //바로 적용 처리한다 (2008.09.29 JJE)
- btn_allInfoSave.dispatch("DOMActivate");
- return;
-
- }else{
- //dop 창 띄움
- //btn_drop.dispatch("DOMActivate"); //질문 없이 Drop창 띄우도록 수정(2008.07.31 JJE)
- fDropApp("");
- return true;
- }
-
- }
- }
- else{
- //CPG check =>
- //CPG는 무조건 당일/추가처방으로 세팅..
- model.setValue ("/root/init/prcpkindcd", "20");
- model.setValue("/root/init/prcpdd", getCurrentDate());
-
- var mntrList = instance1.selectNodes("/root/main/mntrinfo/mntrlist");
- var limtList = instance1.selectNodes("/root/main/limtminfo/limheaderinfo[alertstatcd='I' or alertstatcd='T']"); //E는 완전히 끝난상태, W는 알람횟수가 더 남았을때 팝업 확인, I/T는 알람횟수가 더 남았을때 미확인(I:잔여 알람횟수 존재, T:마지막 알람)
-
- var mntrNode = null;
- var limNode = null;
-
- var mntrData = "";
- var mAlertstatcd = null;
- var mCpgmntrflag = null;
- var mSlipnm = null;
- var mGuidedocucnts = null;
- var mAlertoffyn = null;
- var mSlipno = null;
- var mAlertGrde = null;
-
- var limtData = "";
- var lAlertstatcd = "";
- var lLimno = null;
- var lLimhistno = null;
- var lAlertoffyn = null;
- var lAlertGrde = null;
- var lTitle = null;
- var lStepno = null;
- var lStepnm = null;
-
- //모니터링 알람 (팝업)
- if( mntrList.length > 0 ){
- for( var i=0; i<mntrList.length; i++ ){
- mntrNode = mntrList.item(i);
- mAlertstatcd = mntrNode.selectSingleNode("alertstatcd");
- mCpgmntrflag = mntrNode.selectSingleNode("cpgmntrflag");
- mSlipnm = mntrNode.selectSingleNode("slipnm");
- mGuidedocucnts = mntrNode.selectSingleNode("guidedocucnts");
- mAlertoffyn = mntrNode.selectSingleNode("alertoffyn");
- mSlipno = mntrNode.selectSingleNode("slipno");
- mAlertGrde = mntrNode.selectSingleNode("alertgrde");
-
- if(mAlertstatcd == null || mAlertGrde == null ) continue;
-
- // pid ▦ cretno ▦ orddd ▦ ordtype ▦ slipno ▦ cpgappno ▦ alertstatcd ▦ cpgmntrflag ▦ slipnm ▦ guidedocucnts ▦ alertoffyn
- if( (mAlertstatcd.text == "W") && mAlertGrde.text != "C01" ){
- mntrData = iPid + "▦" + iCretno + "▦" + iPrcpgenrflag + "▦" + iOrddd + "▦" + mSlipno.text + "▦" + appNo_SMMMO00110 + "▦" + mAlertstatcd.text + "▦" + mCpgmntrflag.text + "▦" + mSlipnm.text + "▦" + mGuidedocucnts.text + "▦" + mAlertoffyn.text;
- setParameter( "alertdata_SMMMP00800", mntrData );
- modal("SPMMP03200", "", "", "", "SPMMP03200");
- if( !isNull(getParameter("alertstatcd_TRMMP03200")) ){
- model.setValue(mAlertstatcd, getParameter("alertstatcd_TRMMP03200"));
- }
- if( !isNull(getParameter("alertoffyn_TRMMP03200")) ){
- model.setValue(mAlertoffyn, getParameter("alertoffyn_TRMMP03200"));
- }
- clearParameter("alertdata_SMMMP00800");
- clearParameter("alertstatcd_TRMMP03200");
- clearParameter("alertoffyn_TRMMP03200");
- }
- }
- grd_monitoringlist.refresh();
- }
- //제한시간 알람 (팝업)
- if( limtList.length > 0 ){
- for( var i=0; i<limtList.length; i++ ){
- limNode = limtList.item(i);
- lAlertstatcd = limNode.selectSingleNode("alertstatcd");
- lLimno = limNode.selectSingleNode("limno");
- lLimhistno = limNode.selectSingleNode("limhistno");
- lAlertoffyn = limNode.selectSingleNode("alertoffyn");
- lAlertGrde = limNode.selectSingleNode("alertgrde");
- lTitle = limNode.selectSingleNode("title");
- lStepno = limNode.selectSingleNode("stepno");
- lStepnm = limNode.selectSingleNode("stepnm");
- if(lAlertstatcd == null || lAlertGrde == null ) continue;
-
- // pid ▦ cretno ▦ orddd ▦ ordtype ▦ limno ▦ limhistno ▦ cpgappno ▦ alertstatcd ▦ title ▦ alertoffyn ▦ stepno ▦ stepnm
- if( lAlertstatcd.text == "T" || lAlertstatcd.text == "I" ){
- limtData = limtData + iPid + "▦" + iCretno + "▦" + iPrcpgenrflag + "▦" + iOrddd + "▦" + lLimno.text + "▦" + lLimhistno.text + "▦" + appNo_SMMMO00110 + "▦" + lAlertstatcd.text + "▦" + lTitle.text + "▦" + lAlertoffyn.text + "▦" + lStepno.text + "▦" + lStepnm.text + "▩";
- }
- }
- if( !isNull(limtData) ){
- setParameter( "alertdata_SMMMP00800", limtData );
- modal("SPMMP03300", "", "", "", "SPMMP03300");
- }
- clearParameter("alertdata_SMMMP00800");
- }
-
- //결정하지 않은 Decision Step 존재 시, 알람 (2009.04.08)
- var deciStepNodes = instance1.selectNodes("/root/main/steppath/info" + "[stepflagcd = 'D' and answstepno='0']");
- var deciStepNoNode = null;
- var deciStepNmNode = null;
- var preStepsStatNode = null;
- if( deciStepNodes.length > 0 ){
- for( var i=0; i<deciStepNodes.length; i++ ){
- var node = deciStepNodes.item(i);
- deciStepNoNode = node.selectSingleNode("stepno");
- deciStepNmNode = node.selectSingleNode("stepnm");
- preStepsStatNode = instance1.selectSingleNode("/root/main/steppath/info" + "[lnkstepno = '" + deciStepNoNode.text + "' and stepflagcd = 'A' and stepstat='30']");
- if( preStepsStatNode != null ){
- //message 출력
- if( deciStepNmNode == null ) var deciStepNm = "";
- else deciStepNm = deciStepNmNode.text;
- messageBox( "Decision Step [" + deciStepNm + "] 이 미결정 상태입니다.\n\nDecision Step을 우클릭하여 결정 메뉴를 선택한 후 연결된 Step들 중 하나를 선택", "I008"); //선택하십시오!
- //이전 스텝의 검사결과 보여달라는 요청 있었지만 요청서가 없어 보류 상태임..
- }
- }
- }
- }
-
- //공통 message
- if( appStat == "50" ){
- messageBox ( "이미 Drop된 "+cpgFlagNm, "E008" );
- btn_allInfoSave.disabled = true;
- btn_drop.disabled = true;
- //btn_val.disabled = true;
- return true;
- }else if( appStat == "41" ){
- messageBox ( "이미 취소된 "+cpgFlagNm, "E008" );
- btn_allInfoSave.disabled = true;
- btn_drop.disabled = true;
- //btn_val.disabled = true;
- return;
- }
-
- /*
- else if( appStat == "40" ){
- messageBox ( "이미 평가 완료된 "+cpgFlagNm, "E008" );
- //fOpenMsgBox( "이미 평가 완료된 " + cpgFlagNm + "입니다." , "E" );
- btn_allInfoSave.disabled = true;
- btn_drop.disabled = true;
- //btn_val.disabled = true;
- return true;
- }else if( appStat == "30" ){
- //마지막 스텝까지 실처방 저장이 끝났으면, 평가 팝업을 띄운다.
- btn_val.dispatch("DOMActivate");
- btn_val.disabled = false;
- }*/
-
- // 퇴원예고 2008.06.27 pymi(s)
- if(dschAppYN != "Y") {
- if( (model.getValue("/root/temp1/getdata/appstat") != "00" && instance1.selectSingleNode("/root/main/steppath/info[stepstat >= '20']") != null )
- || (model.getValue("/root/main/masterinfo/info/ioflagcd") == "O" && instance1.selectSingleNode("/root/main/steppath/info[decirflag == 'C']") != null) ){ // 외래- DSC cp 2008.08.08
- var curDate = getCurrentDate();
- var nxtDate = new Date().getAddDate(1, "D").getDateFormat();
- var stepLth = instance1.selectNodes("/root/main/steppath/info").length;
- var cstepPt = "";
- var dshPrcpdd = "";
- var dschRet = "";
-
- for( var i = 1; i <= stepLth; i++) {
- if( curDate == model.getValue("/root/main/steppath/info[" + i + "]/prcpdd") ) {
- cstepPt = i;
- break;
- }
- }
-
- if( !isNull(cstepPt) ) {
- for(var i = cstepPt ; i <= stepLth ; i++) {
- if( model.getValue("/root/main/steppath/info["+ i +"]/decirflag") == "D"
- || (model.getValue("/root/main/steppath/info["+ i +"]/decirflag") == "C" && model.getValue("/root/main/steppath/info["+ i +"]/stepstat") == "30") ) { // 외래- DSC cp 2008.08.08
- dshPrcpdd = model.getValue("/root/main/steppath/info["+ i +"]/prcpdd");
- }
-
- if( (curDate == dshPrcpdd) || (nxtDate == dshPrcpdd) ) {
- if( model.getValue("/root/paminfo/list/dschdclrtyn") == "N" ) {
- //dschRet = messageBox( dshPrcpdd.substr(0, 4) + "년 " + dshPrcpdd.substr(4, 2) + "월 " + dshPrcpdd.substr(6, 2) + "일 " + "퇴원예정환자입니다. 퇴원예고를", "Q009");
- if( curDate == dshPrcpdd ) {
- if( iPrcpgenrflag != "E" ){
- dschRet = messageBox( "당일 퇴원예정환자입니다. \n\n입퇴원요약기록 작성 후 퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }else{
- dschRet = messageBox( "당일 퇴원예정환자입니다. \n\n퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }
- } else if( nxtDate == dshPrcpdd ) {
- if( iPrcpgenrflag != "E" ){
- dschRet = messageBox( "내일 퇴원예정환자입니다. \n\n입퇴원요약기록 작성 후 퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }else{
- dschRet = messageBox( "내일 퇴원예정환자입니다. \n\n퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }
- }
- break;
- }
- }
- }
- if( dschRet == "6") {
- //첫번째 처방일 + 재원일
- var fstdd = model.getValue("/root/main/steppath/info[1]/prcpdd");
- fstdd = new Date(eval(fstdd.substr(0, 4)), eval(fstdd.substr(4, 2)) -1, eval(fstdd.substr(6, 2)));
- var hddd = parseInt(model.getValue("/root/main/masterinfo/info/fcstinhospdayno"));
- var hd = fstdd.getAddDate(hddd-1);
-
- //퇴원예고 window open
- setParameter("SMMMP00800_dclrdd", dshPrcpdd);
- modal("SPMMO00400");
-
- if( getParameter("SPMMO00400_rtn_useyn") == "Y") {
- // 상단정보를 그대로 받아오므로 강제 설정해야 함 2008.08.01
- fSetupDschInfo(); //상단정보 재설정
- model.setValue("/root/paminfo/list/dschdclrtyn", "Y");
- model.setValue("/root/paminfo/list/dschdclrdt", getParameter("SPMMO00400_dclrdd"));
- // (퇴원예고일 != 퇴원예정일(dshPrcpdd)) cp drop
- if( getParameter("SPMMO00400_dclrdd") != dshPrcpdd ) { //if( getParameter("SPMMO00400_dclrdd") != hd.getDateFormat()) {
- setParameter("cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- setParameter("cpgno", model.getValue("/root/main/masterinfo/info/cpgno"));
- setParameter("cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq"));
- modal("SPMMP02300");
- fOpenPrcpWindow();
- }
- //퇴원예고일이 익일이고 18:00 이후이면 실처방 발행하도록
- if( getParameter("SPMMO00400_dclrdd") == nxtDate ){ // && (getCurrentTime() > "180000")
- btn_cpbatch.dispatch("DOMActivate");
-
- // (퇴원예고일 == 재원일) cp 평가
- if( getParameter("SPMMO00400_dclrdd") == dshPrcpdd ) { //if( getParameter("SPMMO00400_dclrdd") == hd.getDateFormat()) {
- setParameter("cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- modal("SPMMP02500");
- }
- //}
- }
-
- //퇴원예고일이 당일이면 실처방
- if( getParameter("SPMMO00400_dclrdd") == curDate) {
- btn_cpbatch.dispatch("DOMActivate");
-
- // (퇴원예고일 == 재원일) cp 평가
- if( cpgflagcd == "01" && getParameter("SPMMO00400_dclrdd") == dshPrcpdd) {
- if( ioflag == "I" ) {
- setParameter("cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- modal("SPMMP02500");
- } else if( ioflag == "O" ) { // 외래- dsc cp 2008.08.08 pymi
- if( instance1.selectNodes("/root/main/steppath/info[prcpdd = '"+ getParameter("SPMMO00400_dclrdd") +"' and startendflag = 'E']").length > 0 ) {
- setParameter("cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- modal("SPMMP02500");
- }
- }
- }
- //}
- }
-
- clearParameter("SPMMO00400_rtn_useyn");
- return true;
-
- } else if( getParameter("SPMMO00400_rtn_useyn") == "N") { //실패
- clearParameter("SPMMO00400_rtn_useyn");
-
- } else{ //퇴원예고 창을 그냥 close 했을때
- // 계속 진행
- clearParameter("SPMMO00400_rtn_useyn");
- dschAppYN = "Y";
- }
-
- return true;
-
- }
- else if( dschRet == "7") {
- //퇴원예고 지연 2008.08.01 '60', '70' 제외하고 처방발행
- dschAppYN = "Y";
- }
- else if( dschRet == "2" ) {
- //Drop
- setParameter("cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- setParameter("cpgno", model.getValue("/root/main/masterinfo/info/cpgno"));
- setParameter("cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq"));
- modal("SPMMP02300");
- fOpenPrcpWindow();
- return true;
- }
- }
- }
- }
- return true;
- // 2008.06.27 pymi(e)
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : Outline View 화면의 사이즈를 조정한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSizeControl(){
- var mon = getCurrentMonitorNumber();
-
- //뷰어 영역
- ivw_outline.attribute("width") = "1208px";
- ivw_outline.attribute("height") = "766px";
- group2.attribute("width") = 1206;
- //import한 처방 영역
- grd_diaglist.attribute("width") = 523 -2;
- ivw_prcp.visible = false;
- roundrect1.attribute("width") = 1207-2;
- btn_undo.attribute("left") = 1006 -1;
- btn_tempsave.attribute("left") = 1074 -1;
- btn_prcpsave.attribute("left") = 1141 -1;
- //처방이동 버튼 위치 이동
- button24.attribute("left") = 937 + 79-1;
- button26.attribute("left") = 965 + 79-1;
- line4.attribute("x2") = 1198 -2;
- line5.attribute("x2") = 1207 -2;
- ivw_prcp.attribute("height") = 0;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 623;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 623;
- grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 617;
- grd_prcplist.attribute("width") = 822;
- }
-
- /**
- * @group :
- * @ver : 2008.12.01
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CP/CPG별 상위화면 설정 변경
- * @param :
- * @return : true, false
- * @---------------------------------------------------
- */
- function fSetupSupScrn(){
- if( cpgflagcd == "01" ){
- btn_formatt.attribute("text") = "서식/첨부파일";
- cap_attfile.attribute("text") = "첨부파일";
- cap_attfile.attribute("height") = "75px";
- brn_download.visible = true;
- grd_inqr.visible = false;
- grd_attfile.rowHidden(0) = true;
- grd_attfile.visible = true;
- btn_monitoring.visible = false;
- btn_initcpgprcp.visible = false;
- cap_appscop.visible = false;
- cap_appscoplist.visible = false;
- btn_essprcpinfo.visible = false;
- btn_upviewmode.attribute("left") = "198px";
- btn_downviewmode.attribute("left") = "227px";
- grd_formlist.colHidden(grd_formlist.colRef("times")) = false;
- grd_formlist.colHidden(grd_formlist.colRef("stepnm")) = true;
-
- }else{
- btn_formatt.attribute("text") = "서식/문진팝업";
- cap_attfile.attribute("text") = "문진목록";
- cap_attfile.attribute("height") = "75px";
- brn_download.visible = false;
- grd_inqr.visible = true;
- grd_attfile.visible = false;
- btn_monitoring.visible = true;
- btn_initcpgprcp.visible = true;
- cap_appscop.visible = true;
- cap_appscoplist.visible = true;
- btn_essprcpinfo.visible = true;
- btn_upviewmode.attribute("left") = "273px";
- btn_downviewmode.attribute("left") = "302px";
- grd_formlist.colHidden(grd_formlist.colRef("times")) = true;
- grd_formlist.colHidden(grd_formlist.colRef("stepnm")) = false;
- }
- }
-
- /**
- * @group :
- * @ver : 2007.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자가 CP적용환자면, 초기값을 설정하고, 그렇지 않으면 stop
- * @param :
- * @return : true, false
- * @---------------------------------------------------
- */
- function fGePatValidity(){
- if( fInitializePamInfo() == true ){
- var patFlagCvs = getGlobalVariable("patflag");
-
- if(patFlagCvs.length != 0 ){ //cvs가 null이 아닌 경우에만 처리함.
- //model.removeNodeSet ( "/root/patflag/list" ); //상단화면 정보 초기화
- //setCSVToNode ( "/root/patflag", patFlagCvs );
- var prcpgenrflag = model.getValue ( "/root/patflag/list/prcpgenrflag" );
- }
-
- var operationFlagCvs = getGlobalVariable("operation");
-
- if(operationFlagCvs.length != 0 ){ //cvs가 null이 아닌 경우에만 처리함.
- model.removeNodeSet ( "/root/operation/list" ); //상단화면 정보 초기화
- setCSVToNode ( "/root/operation", operationFlagCvs );
- }
-
- if ( prcpgenrflag == "O" ){ //외래일때
- model.setValue ( "/root/init/hosinprcpresncd", model.getValue ( "/root/paminfo/list/hosoutexptresncd" ));
- model.setValue ( "/root/init/prcpkindcd", "20" ); //처방종류(추가)
- model.setValue ( "/root/init/prcpdd", model.getValue ( "/root/paminfo/list/orddd" ));
-
- } else { //입원, 응급일때
- model.makeValue ( "/root/init/hosinprcpresncd", "00");
- model.makeValue ( "/root/init/prcpdd", getCurrentDate());
-
- //##
- if ( model.getValue( "/root/paminfo/list/indd" ) == getCurrentDate()) {
- model.setValue ( "/root/init/prcpkindcd", "00" );
- } else if ( eval (getCurrentTime().substr (0,2)) <= 4 ) { //처방종류: 4시전이면 정규
- model.setValue ( "/root/init/prcpkindcd", "10" );
- } else if ( eval (getCurrentTime().substr (0,2)) >= 21 ) { //9시 이후면 정규, 날짜는 다음날짜
- model.setValue ( "/root/init/prcpkindcd", "10" );
- var nextDay = getCurrentDate().toDate().getAddDate(1,"D").getDateFormat(); //다음날을 찾는다.
- model.setValue ( "/root/init/prcpdd", nextDay );
- } else { //추가처방
- model.makeValue ( "/root/init/prcpkindcd", "20" );
- }
-
- //if ( prcpgenrflag == "E" ) {}
- rgstno = model.getValue("/root/paminfo/list/rrgstno1");
- rgstno2 = getPatientInfo("regstno");
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서코드 셋팅
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetCodeList() {
-
- var instcd = getUserInfo("dutplceinstcd");
- var standard_yn = "orduseyn";
- var ord_deptflag = 'D';
- var rslt_ref = "/root/init/orddeptlist";
- zbcfGetDeptCodeList(instcd, standard_yn, ord_deptflag, rslt_ref, "depthngnm", "asc");
-
- //mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept" , "D"); //부서코드 콤보
- }
-
- /**
- * @group :
- * @ver : 2007.07
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize() {
- //검색창에 의해 화면이 로딩되었다면, CPG 정보를 조회한다.
- var saveflag = model.getValue("/root/temp1/getdata/saveasflag");
- var node = instance1.selectSingleNode("/root/temp1/getdata");
- var nodeList = node.childNodes;
-
- if(nodeList.length > 0){
- var initCpgAppNo = model.getValue("/root/temp1/getdata/cpgappno");
- model.makeValue("/root/temp1/getdata/getformyn", "Y");
- model.makeValue("/root/temp1/getdata/appyn", "Y");
- if( isNull(initCpgAppNo) || initCpgAppNo == "0" ){
- model.makeValue("/root/temp1/getdata/histjoinyn", "N");
- }else{
- model.makeValue("/root/temp1/getdata/histjoinyn", "Y");
- }
-
- if( submit("TRMQP00602", false) == true ){ //master 조회
- //master copy
- model.copyNode("/root/main/masterinfo/info", "/root/temp1/trmqp_rslt/masterinfo");
-
- //step 정보를 셋팅한다.
- nodeList = instance1.selectNodes("/root/temp1/trmqp_rslt/steplist");
- if(nodeList.length > 0){
- model.removeNodeset("/root/main/steplist/info");
- model.removeNodeset("/root/main/decisionlist/info");
-
- //action step
- var stepCSV = getNodeListCSV(nodeList);
- setCSVToNode("/root/main/steplist", stepCSV, "info");
-
- //decision step
- nodeList = instance1.selectNodes("/root/temp1/trmqp_rslt/decisionlist");
- if(nodeList.length > 0){
- var dcsCSV = getNodeListCSV(nodeList);
- setCSVToNode("/root/main/decisionlist", dcsCSV, "info");
- }
- //ivw_outline 초기화 -> 분리
- }
-
- //전역변s수 셋팅..
- cpgno = model.getValue("/root/main/masterinfo/info/cpgno");
- cpghistseq = model.getValue("/root/main/masterinfo/info/cpghistseq");
- cpgflagcd = model.getValue("/root/main/masterinfo/info/cpgflagcd");
- swimlineno = model.getValue("/root/main/masterinfo/info/swimlineno");
- if(cpgflagcd == "01"){
- cpgFlagNm = "CP";
- settypecd = "W";
- //속성 copy
- copyNodeListType("/root/main/attfileinfo", "/root/temp1/trmqp_rslt/attach", "replace", model, model);
-
- }else if(cpgflagcd == "02"){
- cpgFlagNm = "CPG";
- settypecd = "G";
- //속성 copy
- var mntrNodes = instance1.selectNodes("/root/temp1/trmqp_rslt/mntrlist[cpgmntrflag = 'M']");
- var slipNo = "";
- var alertCnts = "";
- model.removeNodeset("/root/main/mntrinfo/mntrlist");
- model.removeNodeset("/root/main/mntrdetlinfo/mntrdetllist");
- model.removeNodeset("/root/main/inqrinfo/inqrheader");
- model.removeNodeset("/root/main/limtminfo/limheaderinfo");
- if( mntrNodes.length > 0 ){
- for(var m=0; m<mntrNodes.length; m++){
- var node = mntrNodes.item(m);
-
- if( node.selectSingleNode("slipno").text != slipNo ){
- var mSlipNo = node.selectSingleNode("slipno");
- var mAlertCnts = node.selectSingleNode("alertcnts");
- copyNodeListType("/root/main/mntrinfo" , "/root/temp1/trmqp_rslt/mntrlist[slipno='"+mSlipNo.text+"' and alertcnts='"+mAlertCnts.text+"']", "after", model, model);
- }else{
- model.setValue(mAlertCnts, mAlertCnts.text + "\n" + node.selectSingleNode("alertcnts").text);
- }
-
- slipNo = mSlipNo.text;
- alertCnts = mAlertCnts.text;
- }
- }
- copyNodeListType("/root/main/inqrinfo" , "/root/temp1/trmqp_rslt/inqrheader", "replace", model, model);
- copyNodeListType("/root/main/limtminfo" , "/root/temp1/trmqp_rslt/limheaderinfo", "replace", model, model);
-
- grd_monitoringlist.refresh(); //적용 모니터링 정보를 저장하기 위해, 인스턴스에 반영한다.
- grd_monitoringinfo.refresh();
- grd_inqr.refresh();
- }
- fcstinhospdayno = model.getValue("/root/main/masterinfo/info/fcstinhospdayno");
- if( isNull(fcstinhospdayno) ) fcstinhospdayYN = "N";
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2008.12
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 로딩 시 기록지 자동 로딩
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitLoadingForm_opener(){
- //-------------------------------서식(main) 호출(2008.12.10)---------------------------//
- //if( OpenerKind == "GPS" && cpgflag == "02" ){ //CPG의 경우 outline이 default로 열리므로 로딩 끝날때 기록지 호출해야 함 (2008.12.10)
- //전처방 로딩이 완료되면 진료대상자에서 진료기록을 호출하는 로직
- var mainObj = getMainViewer();
- var srcOrdPatListwnd = mainObj.javascript.getOpenWindow("SMMMO04100");
-
- //마취기록지에서 처방창을 열경우 마취기록지를 initialize 시키지 않는 로직
- var srcAnstRecwnd = mainObj.javascript.getOpenWindow("SMMMR03700");
- var anstrereload = mainObj.javascript.getParameter("SMMMR03700_refresh");
- if (srcAnstRecwnd != null) {
- var anstrereload = srcAnstRecwnd.javascript.getParameter("SMMMR03700_refresh");
- }
-
- //최초 적용 시, 처방창에서 이미 기록지 호출이 되었으므로, 재호출 안함 -> opener.window.javascript.appstepstatflag != "i" 조건 추가 (2008.09.29)
- if ( anstrereload != "false" && srcOrdPatListwnd != null && appstepstatflag != "i" ) {
- var fstopenflag = model.getValue("/root/temp1/refresh_obj/refreshyn"); //처방화면이 최초 생성 여부
- //alert( "Refresy_YN = " + fstopenflag );
- if( fstopenflag == "N") {
- model.setValue("/root/init/fstopenflag", "Y"); //잠시, 값 치환
- srcOrdPatListwnd.javascript.fChngMainEMRScrn();
- var scrnwnd = getOpenWindow("SPMMB08400");
- if(scrnwnd != null){
- scrnwnd.javascript.fCloseOpenEmrWnd();
- }
- }
- }
- model.setValue("/root/temp1/refresh_obj/refreshyn", "Y"); //최초조회가 아닌경우, refresh 여부 "Y"
- model.setValue("/root/init/fstopenflag", "N"); //처방최초 open여부를 재설정, 진료기록을 열기위해
- //}
- }
-
- /**
- * @group :
- * @ver : 2007.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : outline 정보 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitializeOutline(){
- fCreateOutLineView();
-
- ivw_outline.model.makeNode("/root/main/steplist");
- copyNodesetType("/root/main/steplist", "/root/main/steplist", "after", ivw_outline.model, model);
- copyNodesetType("/root/main/decisionlist", "/root/main/decisionlist", "after", ivw_outline.model, model);
- ivw_outline. model.removenode("/root/main/steplist[1]"); //빈 노드를 삭제한다.
- ivw_outline. model.removenode("/root/main/decisionlist[1]"); //빈 노드를 삭제한다.
-
- var stepCnt = instance1.selectNodes("/root/main/steplist/info").length;
- var agr1 = stepCnt; //그려야 할 컨트롤 갯수
- var agr2 = (parseInt(model.getValue("/root/main/masterinfo/info/swimlineno")) * 3) + 1; //아웃라인을 구성하는 라인 컨트롤 갯수
- ivw_outline.window.javascript.initGlobalVariant(agr1, agr2);
-
- ivw_outline.window.javascript.fAdjustLine("allEx", "392", "16");
-
- //ivw_outline.window.javascript.fCreateControl( "Y" ); //afterFormLoad = "Y"
-
- //fInitLoadingForm(); //CPG의 서식 로딩하는 지점..
-
- }
-
- /**
- * @group :
- * @ver : 2007.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자의 세션 정보를 setting
- * @param :
- * @return : true, false
- * @---------------------------------------------------
- */
- function fInitializePamInfo(){
- var pamInfoCvs = getGlobalVariable("paminfo");
-
- if(isNull(pamInfoCvs)){ //cvs가 null이 아닌 경우에만 처리함.
- messageBox("환자를", "C002");
- window.close();
- }else{
- if( getPatientInfo("cp") != "Y" ){
- messageBox("CP/CPG 적용 환자가 아니므로 조회", "E001");
- window.close();
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2007.07
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 스텝경로 정보를 조회한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetStepPathList(){
- //if( !isNull(model.getValue("/root/temp1/getdata/cpgappno")) ){
- //if( submit("TRMMP00802") == true ){ //정렬을 다시 해서 가지고 온다.
- //steppath 저장 or 조회
- if( instance1.selectSingleNode("/root/temp1/getdata/appstepstatflag") != null ){
- if( model.getValue("/root/temp1/getdata/appstepstatflag") == "i" ){
- appstepstatflag = "i"; //서식 로딩을 막기 위한 처리( 최초 적용의 경우 처방창에서 먼저 호출해주었으므로 재호출 막음)
- fSaveAppStepStus(); //cp적용(최초)일 경우, 적용cp스텝상태관리 테이블에 저장이 필요.
- //fPrcpCallPatList(); //진료대상자리스트의 cp여부를 Y로 한다.
- model.setValue("/root/temp1/getdata/appstepstatflag", ""); //다른 cp환자를 선택할 경우를 위해 값 초기화
- }
- else{ //if( model.getValue("/root/temp1/getdata/appstepstatflag") == "" ){
- //적용 시 or 적용 후... 스텝별 처방일자가 잘못 셋팅되는 경우가 있어 appstepstatflag "u"->"" 로 변경 (2010.03.09 JJE)
- model.setValue("/root/temp1/getdata/appstepstatflag", ""); //처음, 로딩시, 수진정보 및 처방기준일이 달라졌는지 체크 후, update할 수 있도록, flag를 보낸다.
- model.makeValue("/root/temp1/getdata/orddd" , iOrddd);
- model.makeValue("/root/temp1/getdata/prcpgenrflag", iPrcpgenrflag);
- model.makeValue("/root/temp1/getdata/cretno" , iCretno);
- model.makeValue("/root/temp1/getdata/checkyn", "Y"); //step path만 조회하고, MMPHSSTT(prcpdd,수진정보) update 로직 Skip하는 flag
- //미완성처방 존재 유무 조회를 위해, 환자내원정보 추가 (2008.11.08)
- model.makeValue("/root/temp1/getdata/pid" , iPid);
- model.makeValue("/root/temp1/getdata/srchcond", "1"); //조회조건 1:로딩 및 재조회, 2:적용 후 재조회, 3:퇴원예고시 문진조회 (20090.5.19 JJE)
-
- submit("TRMMP00803", false); //steppath 조회
-
- //초기 적용 시, appstat=0 이므로, 이전에 수행한 TRMMP00807 에서는 cpgappno(appstat) 0건 조회, 여기(TRMMP00803)에서 상태값을 받아옴.
- if( instance1.selectSingleNode("/root/main/steppath/appinfo/appstat") != null ){
- model.makeValue( "/root/temp1/getdata/appstat", model.getValue("/root/main/steppath/appinfo/appstat") );
- invalPrcpYN = model.getValue("/root/main/steppath/appinfo/invalprcpyn"); //2008.11.08
- model.removeNodeset("/root/main/steppath/appinfo");
- }
-
- fResetStepFlag(); //cpg는 s/e 지점을 진행상태에 따라 재정의한다. (2009.02.17)
- model.copyNode("/root/main/sortedsteplist", "/root/main/steppath");
-
- /*
- //'저장할 처방이 존재하지 않습니다" 후 재조회 시, reqVO인 getdata중 값이 null로 넘겨지므로,
- model.removenode("/root/temp1/getdata/orddd");
- model.removenode("/root/temp1/getdata/prcpgenrflag");
- model.removenode("/root/temp1/getdata/cretno");
- */
- }
- }
-
- //CP 적용상태는 10(진행중) 이지만, step1의 적용상태가 10(초기) 상태이면, 아직 최초 처방발행이 안된 CP 이므로, appStat 의 값을 00(적용초기) 상태로 바꿔준다
- //외래에서 입원 전환시, D0 CP 발행 안한 상태에서
- appStat = model.getValue("/root/temp1/getdata/appstat");
- appNo_SMMMO00110 = model.getValue("/root/temp1/getdata/cpgappno");
-
- var node = instance1.selectSingleNode("/root/main/steppath/info");
- if( node != null ){
- /*
- //중간타기 CP 개발로 인해 삭제
- if( cpgflagcd == "01" && model.getValue("/root/temp1/getdata/appstat") == "10" && model.getValue("/root/main/steppath/info[1]/stepstat") == "10" ){
- model.setValue("/root/temp1/getdata/appstat", "00");
- appStat = model.getValue("/root/temp1/getdata/appstat");
- }
- */
- //퇴원예정일 파라메터로 설정해줌 (퇴원예고 버튼 클릭 시, 파라메터 값 참조함)
- var dshPrcpNode = instance1.selectSingleNode("/root/main/steppath/info[decirflag = 'D']/prcpdd");
- if( dshPrcpNode != null && !isNull(model.getValue(dshPrcpNode)) ) {
- setParameter("SMMMP00800_dclrdd", dshPrcpNode.text);
- }
- }
-
- //취소/Drop버튼
- //appStat = model.getValue("/root/temp1/getdata/appstat");
- if( cpgflagcd == "02" ){
- btn_drop.attribute("class") = "btn4_letter2";
- btn_drop.attribute("left") = "1034px";
- btn_drop.attribute("text") = "종료";
- btn_drop.refresh();
- }
- else if( cpgflagcd == "01" && appStat != "00" ){
- btn_drop.attribute("class") = "btn4_letter3";
- btn_drop.attribute("left") = "1022px";
- btn_drop.attribute("text") = "Drop";
- btn_drop.refresh();
- }
- //}
- //}
- }
-
- /**
- * @group :
- * @ver : 2007.07
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 스텝정보를 저장한다.
- * @param : stepCSV, deciCSV
- * @return :
- * @---------------------------------------------------
- */
- function fSaveAppStepStus(){
- //스텝 영역의 정보들을 구성한다.
- model.removeNodeset("/root/send/savedata");
- model.makeNode("/root/send/savedata");
- model.copyNode("/root/send/savedata", "/root/temp1/getdata");
- //model.makeValue("/root/send/savedata/prtlflagcd", model.getValue("/root/main/masterinfo/info/cpgflagcd"));
- model.makeValue("/root/send/savedata/decistepyn", "");
- model.makeValue("/root/send/savedata/m", "i");
- model.makeValue("/root/send/savedata/cpgflagcd", model.getValue("/root/send/savedata/prtlflagcd"));
- model.makeValue("/root/send/savedata/orddeptcd", model.getValue("/root/paminfo/list/orddeptcd")); //iOrddeptcd
- var initCpgAppNo = model.getValue("/root/temp1/getdata/cpgappno");
- if( isNull(initCpgAppNo) || initCpgAppNo == "0" ){
- model.makeValue("/root/temp1/getdata/histjoinyn", "N");
- }else{
- model.makeValue("/root/temp1/getdata/histjoinyn", "Y");
- }
- //prcpdd 컬럼이 추가, 함께 저장한다.
- /*
- var appdd = model.getValue("/root/temp1/getdata/appdd");
- var nodeList = instance1.selectNodes("/root/main/sortedsteplist/info" + "[times != '']");
- var prcpdd = "";
- var dd = "";
- var iPrcpdd = new Date();
- var iDD = new Date();
- var D0CpYN = "N";
-
- //prcpdd 를 setting 해서 mmphsstt 에 저장한다 => 컴퓨터 시스템 시간이 사용될 수 있으므로, 서버시간을 사용하도록 수정할 것
-
- for(var i= 0; i<nodeList.length; i++){
- var node = nodeList.item(i);
- var times = node.selectSingleNode("times");
- var timesTxt = "";
- if(times.text == "0"){
- //timesTxt = "1";
- D0CpYN = "Y";
- }
- timesTxt = times.text;
-
- prcpdd = node.selectSingleNode("prcpdd");
- iPrcpdd = appdd.toDate();
- if(D0CpYN == "Y"){
- iDD = iPrcpdd.getAddDate((parseInt(timesTxt)), "D");
- }else{
- iDD = iPrcpdd.getAddDate((parseInt(timesTxt)-1), "D");
- }
- dd = iDD.getDateFormat();
- model.setValue( prcpdd, dd );
- }
- var nodeList = instance1.selectNodes("/root/main/sortedsteplist/info");
- var stepCSV = getNodeListCSV(nodeList);
- model.makeValue("/root/send/savedata/steplist", stepCSV); // : MMPDSINF (stepno▦stepflagcd▦stepmemo▦lnkstepno▦times▦startendflag▦swimlineno▦refseq▦decirflag▦setno▦settypecd▦prcpdd▩m▩)
- */
-
- //CPG인 경우, 모니터링 데이터 함께 가져간다 => 2010.05.11 삭제, app에서 조회해서 insert하도록 변경
- /*if( cpgflagcd == "02" ){
- model.makeValue("/root/send/savedata/mntrlist", grd_monitoringlist.getUpdateDataAll("i"));
- }*/
-
- if( submit("TXMMP00802", false) ){
- if( instance1.selectSingleNode("/root/main/steppath/appinfo/cpgappno") != null ){
- model.makeValue( "/root/temp1/getdata/cpgappno", model.getValue("/root/main/steppath/appinfo/cpgappno") );
- model.makeValue( "/root/temp1/getdata/appstat", model.getValue("/root/main/steppath/appinfo/appstat") );
- model.removeNodeset("/root/main/steppath/appinfo");
- }
- fGetAppScopList();
- }
- model.copyNode("/root/main/sortedsteplist", "/root/main/steppath");
- model.removeNodeset("/root/send/savedata");
- }
-
- /**
- * @group :
- * @ver : 2007.11
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진료대상자리스트를 다시 조회한다
- * @param : stepCSV, deciCSV
- * @return :
- * @---------------------------------------------------
- */
- function fPrcpCallPatList(){
- //진료대상자리스트의 cp여부를 Y로 한다.
- var mainObj = getMainViewer();
- var ordPatObj = mainObj.javascript.getOpenWindow("SMMMO04100"); //현재 활성화된 진료대상자 화면 객체
- if(ordPatObj != null){
- ordPatObj.javascript.fPrcpCallPatList();
- }
- var ordMiniPatObj = mainObj.javascript.getOpenWindow("SPMMO04200");
- if(ordMiniPatObj != null){ //두 객체값이 다른 경우 새로운 진료대상자 화면을 open함
- ordMiniPatObj.javascript.fChkGetData();
- }
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드의 ROW 데이터 삭제
- * @param : grdName, grdPath
- * @return :
- * @---------------------------------------------------
- */
- function fRowDelete( grdName, grdPath ){
- if( grdPath == null ) {
- grdPath == "";
- }
- if(grdName.row < 1){
- return;
- }
- var status = grdName.rowStatus(grdName.row);
- if(status == 1){
- grdName.deleteRow(grdName.row, true);
- }else{
- grdName.rowStatus(grdName.row)= 4;
- }
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : FPT 서버에 저장한 파일을 다운로드 한다.
- * @param : idx
- * @return :
- * @---------------------------------------------------
- */
- function fDownLoadFile( idx ){
- model.makeNode("/root/temp1/attachfile/filedata");
- var filepath = model.getValue("/root/main/attfileinfo/attach["+idx+"]/file");
- var filenm = model.getValue("/root/main/attfileinfo/attach["+idx+"]/attfilenm");
- var localfile = window.fileDialog("save","|",false,filenm,"","All Files(*.*)|*.*");
- if (localfile != "") {
- model.download(getActionURL("TRMQP00605")+"&filepath="+filepath,localfile);
- var rtn = messageBox("파일을", "Q004");
- if( rtn == 6 ) {
- window.exec(localfile);
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 아웃라인뷰어에 스윔라인 구조를 생성한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCreateOutLineView(){
- var lineNo = model.getValue("/root/main/masterinfo/info/swimlineno");
- //아웃라인을 셋팅한다.
- if(ivw_outline.model.getValue("/root/main/outlineinfo/info/swimlineno") != "" || ivw_outline.model.getValue("/root/main/outlineinfo/info/swimlineno") != 0){
- ivw_outline.window.javascript.fOutlineCntlInit();
- }
- ivw_outline.model.setValue("/root/main/outlineinfo/info/swimlineno", lineNo);
- ivw_outline.model.setValue("/root/main/outlineinfo/info/cpgflagcd", model.getValue("/root/main/masterinfo/info/cpgflagcd"));
- ivw_outline.model.setValue("/root/main/outlineinfo/info/cpgorddeptcd", model.getValue("/root/main/masterinfo/info/cpgorddeptcd"));
-
- ivw_outline.model.setValue("/root/main/outlineinfo/info/cpgno", model.getValue("/root/main/masterinfo/info/cpgno"));
- ivw_outline.model.setValue("/root/main/outlineinfo/info/cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq"));
-
- ivw_outline.window.javascript.fInitialize();
- }
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 예상재원일수를 범위로 하는 콤보 리스트를 구성한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingDayComboList(){
- var dayno = model.getValue("/root/main/masterinfo/info/fcstinhospdayno");
- model.removeNodeset("/root/temp1/daylist");
- model.makeNode("/root/temp1/daylist");
-
- model.makeValue("/root/temp1/daylist/day[1]/id", "");
- model.makeValue("/root/temp1/daylist/day[1]/nm", "");
- for(var i=0; i<= parseInt(dayno); i++){
- model.makeValue("/root/temp1/daylist/day[" + (i+2) + "]/id", i);
- model.makeValue("/root/temp1/daylist/day[" + (i+2) + "]/nm", i);
- }
- ipt_times.refresh();
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 서식코드를 조회한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetFormList(flag, no){
-
- var prcpgenrflag = model.getValue("/root/patflag/list/prcpgenrflag");
- var req_pid = model.getValue ( "/root/paminfo/list/pid" );
-
- model.removeNodeset("/root/send/reqdata");
- model.makeNode("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/cpgno", model.getValue("/root/main/masterinfo/info/cpgno"));
- model.makeValue("/root/send/reqdata/cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq"));
- model.makeValue("/root/send/reqdata/flag", flag);
- model.makeValue("/root/send/reqdata/no", no);
- model.makeValue("/root/send/reqdata/cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- model.makeValue("/root/send/reqdata/pid", iPid);
- model.makeValue("/root/send/reqdata/cretno", iCretno);
- model.makeValue("/root/send/reqdata/ordtype", iPrcpgenrflag);
- model.makeValue("/root/send/reqdata/orddd", iOrddd);
- //서식 조회 시작-종료일
- var stepCnt = instance1.selectNodes("/root/main/steppath/info").length;
- var frddNode = instance1.selectSingleNode("/root/main/steppath/info[startendflag='S']/prcpdd");
- var toddNode = instance1.selectSingleNode("/root/main/steppath/info[startendflag='E']/prcpdd");
- if( cpgflagcd=="01" && frddNode != null && toddNode != null ){
- var frdd = frddNode.text;
- var todd = toddNode.text;
- }else{
- if (cpgflagcd=="01" ){
- var frdd = model.getValue("/root/main/steppath/info["+ 1 +"]/prcpdd");
- var todd = model.getValue("/root/main/steppath/info["+ stepCnt +"]/prcpdd");
- }else{
- var frdd = model.getValue("/root/temp1/getdata/appdd"); //서식 목록 조회 기간을 CPG 선택일자부터로 수정 2010.05.04 KHJ
- var todd = getCurrentDate();
- }
- }
- model.makeValue("/root/main/formsrchcond/fromdd", frdd);
- model.makeValue("/root/main/formsrchcond/todd" , todd);
- model.makeValue("/root/send/reqdata/fromdd", frdd);
- model.makeValue("/root/send/reqdata/todd" , todd);
-
- //CP서식 리스트 및 서식 자동호출 우선순위 조회
- var formcd = "";
- var formrecseq = "";
- var formrecdd = "";
-
- if( submit("TRMMP00801") ){
- var prityinfoNode = instance1.selectSingleNode("/root/main/formlist/prityinfo");
- if( flag != "R" && prityinfoNode != null ){ //F:초기화시setting, O:진료기록open, R:서식목록재조회(저장상태refresh)
- //CP 서식 우선순위에 따른, 1순위 서식
- formcd = model.getValue("/root/main/formlist/prityinfo[1]/formcd");
- formrecseq = model.getValue("/root/main/formlist/prityinfo[1]/formrecseq");
-
- formrecdd = model.getValue("/root/main/formlist/prityinfo[1]/prcpdd");
-
- setGlobalVariable("linked_cpformcd", formcd, "emr");
- setGlobalVariable("linked_cpformrecseq", formrecseq, "emr");
- if (cpgflagcd=="01" ) setGlobalVariable("linked_cpformrecdd", formrecdd, "emr");
- else setGlobalVariable("linked_cpformrecdd", getCurrentDate(), "emr");
- }
- //서식로더에서 필료한 파라메터 설정 (2010.05.26 JJE)
- //alert("setParam..disppatinfo");
- //if( flag != "O" ) setParameter("disppatinfo", iPid + "▦" + iHngnm + "▦" + iSex+"/"+iAge + "▦" + iOrddeptnm + "▦" + iRoomcd );
- }
-
- if( flag == "O" ){
- //기록main이 열려있지 않을 경우, 기록main open
- //if( formcd=="" && formrecseq=="" )
- //messageBox("진료기록 메인 화면을 여는 중입니다. \n조회할 서식을 다시 한번", "C002");
- fOpenRecMainWnd();
- }
- }
-
- /**
- * @group :
- * @ver : 2007.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 서식코드를 조회한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fsetFormGlobalVariable(){
- //공통서식 우선순위
- //1. 미작성 기본서식 < 작성된 CP 프로토콜 서식
- //2. 작성된 기본서식 > 미작성 CP 프로토콜 서식
- //동일일, CP 프로토콜 서식 다수 존재시 : 초진/재진/경과/응급 - 수술 - 입퇴원
- var curDD = getCurrentDate();
-
- var formNodeList = instance1.selectNodes("/root/main/formlist/info[prcpdd='"+curDD+"' and formprogflag='PROG']");
- if( formNodeList.length > 0 ){
- for(var i=0; i<formNodeList.length; i++){
- var node = formNodeList.item(i);
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2007.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 결정스텝을 선택하면 cpg적용환자 테이블 및 이력테이블에 insert 한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInsCPGAppPatInfo(flag, setpno, lnkstepno, swimlineno){
- var start = instance1.selectSingleNode("/root/main/steppath/info[startendflag='S']/stepno");
- var end = instance1.selectSingleNode("/root/main/steppath/info[startendflag='E']/stepno");
- var startNo = "";
- var endNo = "";
- if(start!=null) startNo = start.text;
- if(end!=null ) endNo = end.text;
-
- //스텝 영역의 정보들을 구성한다.
- model.removeNodeset("/root/send/savedata");
- model.makeNode("/root/send/savedata");
- model.makeValue("/root/send/savedata/appstepstatflag", "u"); //i: 최초 신규 insert, u10:decision스텝결정 시 update, u20:프로토콜 처방 혹은 실처방 저장 이후(사용안함-,java(basemgr)삭제할것)...
- model.makeValue("/root/send/savedata/cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
-
- var header = "stepno▦stepflagcd▦stepmemo▦lnkstepno▦times▦startendflag▦swimlineno▦refseq▦setno▦settypecd▦m▩";
- var data = "";
- if( flag == "D" ){
- model.makeValue("/root/send/savedata/master/changestartend", "D"); //Decision
- data = setpno + "▦D▦▦" + lnkstepno + "▦▦▦" + swimlineno + "▦▦▦▦▩"; //현재 decision스탭의 대답 스텝 설정.
-
- }else if( flag == "A" ){
- model.makeValue("/root/send/savedata/master/changestartend", "A"); //Auto Decision
- data = setpno + "▦A▦▦▦▦▦" + swimlineno + "▦▦▦▦▩"; //역으로 ckecking해서 자동결정하기 위함.
-
- }else{ //"S" or "E"
- model.makeValue("/root/send/savedata/master/changestartend", "S"); //start/end setup
-
- if( !isNull(setpno) ){ //설정취소해야 하는 스텝
- data = setpno + "▦A▦▦▦▦▦▦▦▦▦▩";
- }
- if( !isNull(lnkstepno) ){ //설정해야하는 스텝
- data += lnkstepno + "▦A▦▦▦▦" + flag + "▦" + swimlineno + "▦▦▦▦▩";
- }
- }
-
- model.makeValue("/root/send/savedata/steplist", header + data);
-
- if( submit("TXMMP00802", false) ){ //Decision 스텝 결정 시에는 MMPHAPPT에도 insert
- if( flag == "S"){
- return true;
- }
-
- //if( instance1.selectSingleNode("/root/main/steppath/info[stepno='"+startNo+"']") != null ){
- if (instance1.selectSingleNode("/root/main/steppath/info[startendflag='S']/startendflag") != null)
- model.setValue("/root/main/steppath/info[startendflag='S']/startendflag" , "");
- if (ivw_outline.instance1.selectSingleNode("/root/main/steplist/info[startendflag='S']/startendflag") != null)
- ivw_outline.model.setValue("/root/main/steplist/info[startendflag='S']/startendflag" , "");
- if (instance1.selectSingleNode("/root/main/steppath/info[stepno='"+startNo+"']/startendflag") != null) { //S/E 설정 시에만 S/E setvalue
- model.setValue("/root/main/steppath/info[stepno='"+startNo+"']/startendflag" , "S");
- ivw_outline.model.setValue("/root/main/steplist/info[stepno='"+startNo+"']/startendflag" , "S");
- }else if(flag == "D"){ //기존 start 스텝이 없을 때 outline view에서 Decision 한 경우 S를 Decision으로 잡음 (2010.05.14 JJE)
- model.setValue("/root/main/steppath/info[stepno='"+setpno+"']/startendflag", "S");
- ivw_outline.model.setValue("/root/main/steplist/info[stepno='"+setpno+"']/startendflag" , "S");
- }
- //}
-
- //if( instance1.selectSingleNode("/root/main/steppath/info[stepno='"+endNo+"']") != null ){
- if (instance1.selectSingleNode("/root/main/steppath/info[startendflag='E']/startendflag") != null)
- model.setValue("/root/main/steppath/info[startendflag='E']/startendflag" , "");
- if (ivw_outline.instance1.selectSingleNode("/root/main/steplist/info[startendflag='E']/startendflag") != null)
- ivw_outline.model.setValue("/root/main/steplist/info[startendflag='E']/startendflag" , "");
- if (flag != "D" && instance1.selectSingleNode("/root/main/steppath/info[stepno='"+endNo+"']/startendflag") != null) { //S/E 설정 시에만 S/E setvalue
- model.setValue("/root/main/steppath/info[stepno='"+endNo+"']/startendflag" , "E");
- ivw_outline.model.setValue("/root/main/steplist/info[stepno='"+endNo+"']/startendflag" , "E");
- }
- //}
-
- //steppath 노드셋이 정렬 됐다면, issendstep 을 정해서 적용스텝 테이블을 update한다.
- model.removeNodeset("/root/send/savedata");
- model.makeNode("/root/send/savedata");
- model.makeValue("/root/send/savedata/cpgno", model.getValue("/root/main/masterinfo/info/cpgno"));
- model.makeValue("/root/send/savedata/cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq"));
-
- model.makeValue("/root/send/savedata/prtlflagcd", settypecd);
- model.makeValue("/root/send/savedata/pid", model.getValue("/root/temp1/getdata/pid"));
- model.makeValue("/root/send/savedata/cretno", model.getValue("/root/temp1/getdata/cretno"));
- model.makeValue("/root/send/savedata/orddd", model.getValue("/root/temp1/getdata/orddd"));
- model.makeValue("/root/send/savedata/ordtype", model.getValue("/root/temp1/getdata/ordtype"));
- model.makeValue("/root/send/savedata/cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- model.makeValue("/root/send/savedata/decistepyn", "Y");
- model.makeValue("/root/send/savedata/answstepno", lnkstepno);
-
- //다음 decision 스텝이 어디까지인지 확인해서, 그 전 스텝까지 지정해야 함...
- var node = instance1.selectNodes("/root/main/steppath/info" + "[stepstat = '10']");
- if( node.length > 0 ){
- var first = node.item(0);
- var firstNo = first.selectSingleNode("stepno");
- var firstTm = first.selectSingleNode("times");
-
- model.makeValue("/root/send/savedata/issstartstepno", firstNo.text);
- model.makeValue("/root/send/savedata/issstarttimes", firstTm.text);
- }
- var node = instance1.selectSingleNode("/root/main/steppath");
- var last = node.lastChild;
- var lastNo = last.selectSingleNode("stepno");
- var lastTm = last.selectSingleNode("times");
- model.makeValue("/root/send/savedata/issendstepno", lastNo.text);
- model.makeValue("/root/send/savedata/issendtimes", lastTm.text);
-
- model.makeValue("/root/send/savedata/m", "u");
- if( submit("TXMMP00801", false) ){
- //model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
- if( lnkstepno != "0" )
- messageBox ( "스텝이 결정됐습니다.\n\n스텝을 적용하시려면 적용버튼을 클릭", "I008" );
- return true;
- }
- }
-
- //성공시 위에서 바로 true 리턴함, 실패시 여기에서 false 리턴
- return false;
- }
-
- /**
- * @group :
- * @ver : 2007.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 미완성 처방 리스트를 조회한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetErrPrcpList(){
- var nodelist = instance1.selectNodes("/root/main/steppath/info[stepstat>='20']");
- var cpgappno = model.getValue("/root/temp1/getdata/cpgappno");
- var orddrid = model.getValue ( "/root/paminfo/list/orddrid" );
- var stepno = "";
- var prcpdd = "";
- var stepnoList = "";
- if(nodelist.length > 0){
- for(var i=0; i<nodelist.length; i++){
- var node = nodelist.item(i);
- var stepflag = node.selectSingleNode("stepflagcd");
- if(stepflag.text != "D"){
- var stepnoNode = node.selectSingleNode("stepno");
- var prcpddNode = node.selectSingleNode("prcpdd");
- var setnoNode = node.selectSingleNode("setno");
- stepnoList = stepnoList + stepnoNode.text + ",";
- }
- }
- stepnoList = stepnoList.substr(0, stepnoList.length-1);
-
- model.makeValue("/root/send/reqdata/cpgappno", cpgappno);
- model.makeValue("/root/send/reqdata/pid", iPid);
- model.makeValue("/root/send/reqdata/cretno", iCretno);
- model.makeValue("/root/send/reqdata/prcpgenrflag", iPrcpgenrflag);
- model.makeValue("/root/send/reqdata/orddrid", orddrid);
- model.makeValue("/root/send/reqdata/stepnocond", stepnoList);
- }
- if( ivw_invalprcp.src != "../../../emr/cpgweb/xrw/SPMMP00200_미완성처방관리.xrw" ){
- ivw_invalprcp.src = "../../../emr/cpgweb/xrw/SPMMP00200_미완성처방관리.xrw";
- }else{
- ivw_invalprcp.window.javascript.fGetInalPrcpList();
- }
-
- if( checkAuth("X") ){
- btn_savecomplprcp.visible = true;
- }
- }
-
- /**
- * @group :
- * @ver : 2007.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록지 화면과 연동한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenRec(){
- var prcpObj = getOpenWindow("SMMMO00100");
- if(prcpObj != null){
- var status = prcpObj.javascript.getScreenDisabled();
- if(status == true){
- return;
- }
- }
-
- fOpenOrdRecMainWnd();
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록지 화면에서 값 받아온다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSnedValToCpWnd(formCode, formrecseq, flag){
- var seq = flag.split("|")[1];
- var seqNode = model.instances(0).selectSingleNode( "/root/main/formlist/info" + "[formcd = '" + formCode + "' and formseq = '" + seq + "']");
- if( seqNode != null && !isNull(formrecseq) ){
- fGetFormList("R");
- }
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 서식/첨부파일/미완성처방, 환자계획표/OCS/Outline 영역 사이즈 변경
- * @param : btn_kind(선택한 위, 아래 버튼 종류)
- * @return :
- * @---------------------------------------------------
- */
- function changeViewMode( btn_kind ){
- var ivw_top = parseInt(ivw_outline.attribute("top"));
-
- switch( ivw_top ){
- case 142 :
- if(btn_kind == "U"){
- btn_upviewmode.disabled = true;
- btn_downviewmode.disabled = false;
- fCase1ViewMode();
- }else{
- btn_downviewmode.disabled = true;
- btn_upviewmode.disabled = false;
- fCase2ViewMode();
- }
- break;
-
- case 27 :
- if(btn_kind == "D"){
- btn_upviewmode.disabled = false;
- btn_downviewmode.disabled = false;
- fNomalViewMode();
- }
- break;
- case 446 :
- if(btn_kind == "U"){
- btn_upviewmode.disabled = false;
- btn_downviewmode.disabled = false;
- fNomalViewMode();
- }
- break;
- }
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : ivw_prcp2(iviewer)의 현재 sise에 따라 그안의 컨트롤 사이즈를 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fResizeControls(){
-
- if ( btn_init.visible == true || btn_reinit.visible == true ){
- return;
- }
-
- var grp_prcp_top = parseInt(grp_prcp.attribute("top"));
-
- if( grp_prcp_top == 27 ){
- if(btn_ivpatord.selected == true ){
- ivw_prcp2.grd_prcpdd.attribute("height") = 666; //-42 (org+99)
- ivw_prcp2.grd_bfprcplist.attribute("height") = 666;
- ivw_prcp2.grd_patchosinfo.attribute("height") = 666;
- }else if( btn_ivbfprcp.selected == true || ivw_prcp3.visible == true){
- ivw_prcp3.grd_bfprcplist.attribute("height") = 666; //71,567px
- ivw_prcp3.grd_bfprcplist.refresh();
- }else if( btn_prmsprcp.selected == true ){
- ivw_prcp2.trv_promprcpset.attribute("height") = 628; //121,529px
- ivw_prcp2.grd_promprcplist.attribute("height") = 652; //97,553px
- }else if( btn_prcpsrch.selected == true ){
- ivw_prcp2.trv_prcpclscdlist.attribute("height") = 678; //58,579px
- }else if( btn_prmsop.selected == true ){
- ivw_prcp2.trv_deptindxcdlist.attribute("height") = 401; //89,302px
- ivw_prcp2.trv_promprcpset.attribute("height") = 401; //89,302px
- ivw_prcp2.grd_prmsoplist.attribute("height") = 425; //65,326px
- ivw_prcp2.grd_promprcpset.attribute("height") = 425;
- ivw_prcp2.grd_prcpsrchlist.attribute("top") = 516;
- ivw_prcp2.grd_opprcp.attribute("top") = 516;
- }
- grp_prcp.attribute("overflow") = "hidden";
- imp_prcp.attribute("overflow") = "hidden";
- grp_biz.attribute("overflow") = "hidden";
-
- return;
- }
- else if( grp_prcp_top == 142 ){ //default (org-15)
- if(btn_ivpatord.selected == true ){
- ivw_prcp2.grd_prcpdd.attribute("height") = 552; //71,567px
- ivw_prcp2.grd_bfprcplist.attribute("height") = 552; //71,567px
- ivw_prcp2.grd_patchosinfo.attribute("height") = 552; //71,567px
- }else if( btn_ivbfprcp.selected == true || ivw_prcp3.visible == true){
- ivw_prcp3.grd_bfprcplist.attribute("height") = 552; //71,567px
- ivw_prcp3.grd_bfprcplist.refresh();
- }else if( btn_prmsprcp.selected == true ){
- ivw_prcp2.trv_promprcpset.attribute("height") = 514; //121,529px
- ivw_prcp2.grd_promprcplist.attribute("height") = 538; //97,553px
- }else if( btn_prcpsrch.selected == true ){
- ivw_prcp2.trv_prcpclscdlist.attribute("height") = 564; //58,579px => err
- }else if( btn_prmsop.selected == true ){
- ivw_prcp2.trv_deptindxcdlist.attribute("height") = 302; //89,302px
- ivw_prcp2.trv_promprcpset.attribute("height") = 302; //89,302px
- ivw_prcp2.grd_prmsoplist.attribute("height") = 326; //65,326px
- ivw_prcp2.grd_promprcpset.attribute("height") = 326;
- ivw_prcp2.grd_prcpsrchlist.attribute("top") = 417;
- ivw_prcp2.grd_opprcp.attribute("top") = 417;
- }
- grp_prcp.attribute("overflow") = "hidden";
- imp_prcp.attribute("overflow") = "hidden";
- grp_biz.attribute("overflow") = "scroll";
-
- return;
-
- }
-
- else if( grp_prcp_top == 446 ){ //142 (org-317-2)
- if(btn_ivpatord.selected == true ){
- ivw_prcp2.grd_prcpdd.attribute("height") = 248; //71,567px
- ivw_prcp2.grd_bfprcplist.attribute("height") = 248; //71,567px
- ivw_prcp2.grd_patchosinfo.attribute("height") = 248; //71,567px
- }else if( btn_ivbfprcp.selected == true || ivw_prcp3.visible == true){
- ivw_prcp3.grd_bfprcplist.attribute("height") = 248; //71,567px
- ivw_prcp3.grd_bfprcplist.refresh();
- }else if( btn_prmsprcp.selected == true ){
- ivw_prcp2.trv_promprcpset.attribute("height") = 210; //121,529px
- ivw_prcp2.grd_promprcplist.attribute("height") = 234; //97,553px
- }else if( btn_prcpsrch.selected == true ){
- ivw_prcp2.trv_prcpclscdlist.attribute("height") = 262; //58,579px
- }else if( btn_prmsop.selected == true ){
- ivw_prcp2.trv_deptindxcdlist.attribute("height") = 140;
- ivw_prcp2.trv_promprcpset.attribute("height") = 140; //89,302px
- ivw_prcp2.grd_prmsoplist.attribute("height") = 164; //65,326px
- ivw_prcp2.grd_promprcpset.attribute("height") = 164;
- ivw_prcp2.grd_prcpsrchlist.attribute("top") = 255;
- ivw_prcp2.grd_opprcp.attribute("top") = 255;
- ivw_prcp2.grd_prcpsrchlist.attribute("height") = 65;
- ivw_prcp2.grd_opprcp.attribute("height") = 65;
- }
- grp_prcp.attribute("overflow") = "hidden";
- imp_prcp.attribute("overflow") = "hidden";
- grp_biz.attribute("overflow") = "hidden";
-
- return;
- }
-
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 보이는 설정1
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fNomalViewMode(){
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 766;
-
- if ( btn_init.visible == false && btn_reinit.visible == false ){
- grp_prcp.attribute("top") = 142;
- grp_prcp.attribute("height") = 766;
- //grp_prcp.attribute("height") = 760;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 623;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 623;
- grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 617;
- group2.attribute("height") = 784-5;
- }
-
- fResizeControls();
-
- ivw_outline.attribute("top") = 142;
- ivw_outline.attribute("height") = 766;
- if( ivw_outline.src!= "" ){
- ivw_outline.grp_swimline.attribute("height") = 764;
- }
- ivw_detail.attribute("top") = 142;
- ivw_detail.attribute("height") = 766;
-
- line8.attribute("y1") = 137;
- line8.attribute("y2") = 137;
- btn_calcqnt.attribute("top") = 117;
-
- btn_outline_tab.attribute("top") = 115;
- btn_detail_tab.attribute("top") = 115;
- btn_action_tab.attribute("top") = 115;
- btn_detail_popup.attribute("top") = 117;
- btn_refresh.attribute("top") = 117;
- btn_initcpgprcp.attribute("top") = 117;
- cap_appscop.attribute("top") = 117;
- cap_appscoplist.attribute("top") = 117;
- btn_essprcpinfo.attribute("top") = 117;
- btn_detail_popup.attribute("left") = 254;
- btn_refresh.attribute("left") = 198;
- btn_initcpgprcp.attribute("left") = 388;
- cap_appscop.attribute("left") = 501;
- cap_appscoplist.attribute("left") = 576;
- btn_essprcpinfo.attribute("left") = 321;
-
- swt_formatt.attribute("height") = 80;
- att_tab.attribute("height") = 79;
- incompletion_tab.attribute("height") = 79;
- cap_formlist.attribute("height") = 75;
- grd_formlist.attribute("height") = 77;
- grd_attfile.attribute("height") = 77;
- grd_inqr.attribute("height") = 77;
- if( cpgflagcd == "01" ){
- cap_attfile.attribute("height") = 56;
- brn_download.attribute("top") = 58;
- }else{
- cap_attfile.attribute("height") = 75;
- grd_monitoringlist.attribute("height") = 75;
- grd_monitoringinfo.attribute("height") = 75;
- }
- //grd_errprcplist.attribute("height") = 77;
- ivw_invalprcp.attribute("height") = 77;
- if(ivw_invalprcp.src != "" ){
- ivw_invalprcp.grd_prcplist.attribute("height") = 75;
- }
-
- if( btn_detail_tab.selected == true && parseInt(ivw_detail.rct_border.attribute("height")) != 737 ){
- ivw_detail.window.javascript.fReSize("S"); //small
- }
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 보이는 설정2 (import창 사이즈 최대)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCase1ViewMode(){
- btn_calcqnt.attribute("top") = 4;
-
- grp_prcp.attribute("top") = 27;
- grp_prcp.attribute("height") = 907; //910
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 907;
-
- if ( btn_init.visible == false && btn_reinit.visible == false ){
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 741;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 741;
- grd_prcplist.attribute("height") = 732;
- group2.attribute("height") = 883; //★883
- }
-
- fResizeControls();
-
- ivw_outline.attribute("top") = 27;
- ivw_outline.attribute("height") = 880; //883-3
- if( ivw_outline.src!= "" ){
- ivw_outline.grp_swimline.attribute("height") = 881;
- }
- ivw_detail.attribute("top") = 27;
- ivw_detail.attribute("height") = 880; //883-3
-
- btn_outline_tab.attribute("top") = 4;
- btn_detail_tab.attribute("top") = 4;
- btn_action_tab.attribute("top") = 4;
- btn_detail_popup.attribute("top") = 5;
- btn_refresh.attribute("top") = 5;
- btn_initcpgprcp.attribute("top") = 5;
- cap_appscop.attribute("top") = 5;
- cap_appscoplist.attribute("top") = 5;
- btn_essprcpinfo.attribute("top") = 5;
- if( cpgflagcd == "01" ){
- btn_detail_popup.attribute("left") = 313;
- btn_refresh.attribute("left") = 257;
- }else{
- btn_detail_popup.attribute("left") = 388;
- btn_refresh.attribute("left") = 332;
- }
- btn_initcpgprcp.attribute("left") = 523;
- cap_appscop.attribute("left") = 637;
- cap_appscoplist.attribute("left") = 705;
- btn_essprcpinfo.attribute("left") = 455;
-
- if(ivw_invalprcp.src != "" ){
- ivw_invalprcp.attribute("height") = 0;
- ivw_invalprcp.grd_prcplist.attribute("height") = 0;
- }
-
- line8.attribute("y1") = 26;
- line8.attribute("y2") = 26;
-
- if( btn_detail_tab.selected == true && parseInt(ivw_detail.rct_border.attribute("height")) == 737 ){ //737
- ivw_detail.window.javascript.fReSize("L"); //large
- }
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 보이는 설정3 (상단 그리드 영역 사이즈 최대)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCase2ViewMode(){
- //grp_prcp.attribute("height") = 479;
- grp_prcp.attribute("top") = 446;
- grp_prcp.attribute("height") = 480;
-
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 480; //766 2008.09.23
-
- if ( btn_init.visible == false && btn_reinit.visible == false ){
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 320;
- ivw_prcp3.attribute("top") = 142;
-
- ivw_prcp3.attribute("height") = 320;
- if( btn_ivbfprcp.selected == true ){
- ivw_prcp3.grd_bfprcplist.attribute("height") = 265;
- }
- grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 315;
- group2.attribute("height") = 784-5;
- }
-
- fResizeControls();
-
- ivw_outline.attribute("top") = 446;
- ivw_outline.attribute("height") = 461; //합926.. -19
- if( ivw_outline.src!= "" ){
- ivw_outline.grp_swimline.attribute("height") = 764; //★487
- }
- ivw_detail.attribute("top") = 446;
- ivw_detail.attribute("height") = 461;
-
- line8.attribute("y1") = 441;
- line8.attribute("y2") = 441;
- btn_calcqnt.attribute("top") = 420;
-
- btn_outline_tab.attribute("top") = 419;
- btn_detail_tab.attribute("top") = 419;
- btn_action_tab.attribute("top") = 419;
- btn_detail_popup.attribute("top") = 420;
- btn_refresh.attribute("top") = 420;
- btn_initcpgprcp.attribute("top") = 420;
- cap_appscop.attribute("top") = 420;
- cap_appscoplist.attribute("top") = 420;
- btn_essprcpinfo.attribute("top") = 420;
-
- swt_formatt.attribute("height") = 380;
- att_tab.attribute("height") = 379;
- incompletion_tab.attribute("height") = 379;
- cap_formlist.attribute("height") = 376;
- grd_formlist.attribute("height") = 377;
- grd_attfile.attribute("height") = 377;
- grd_inqr.attribute("height") = 377;
- if( cpgflagcd == "01" ){
- cap_attfile.attribute("height") = 357;
- brn_download.attribute("top") = 358;
- }else{
- cap_attfile.attribute("height") = 376;
- grd_monitoringlist.attribute("height") =376;
- grd_monitoringinfo.attribute("height") = 376;
- }
-
-
- //grd_errprcplist.attribute("height") = 377;
- ivw_invalprcp.attribute("height") = 377;
- if(ivw_invalprcp.src != "" ){
- ivw_invalprcp.grd_prcplist.attribute("height") = 375;
- }
- }
-
- /**
- * @group :
- * @ver : 2007.10
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자계획표 전체 조회를 위해 필요한 값을 iviewer로 보낸다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSendDetailValue(){
- var stepno = "";
- var timesArray = "";
- var setArray = "";
- var prcpddArray = "";
- var tms = "";
- var prcpdd = "";
- var aSettypecd = "";
- var D0TmsYN = "N";
- var ref = "/root/main/steppath/info"; //"/root/main/sortedsteplist/info";
- var nodeList = instance1.selectNodes(ref);
- var pNode = null;
- var tNode = null;
- //var t2Node = null;
- var sNode = null;
- var appCPYN = "N";
- var ioflag = model.getValue("/root/main/masterinfo/info/ioflagcd");
- var iAppStat = parseInt(model.getValue("/root/temp1/getdata/appstat"));
- if( ioflag != "O" && cpgflagcd == "01" && (iAppStat == 10 || iAppStat >= 30) ){
- var notActStepNodes = instance1.selectNodes("/root/main/steppath/info" + "[swimlineno = '1' and stepstat='10']"); //이미 적용 시 발행X 스텝
- if( notActStepNodes.length > 0 ) appCPYN = "Y";
- }
-
- for(var i=1; i<=nodeList.length; i++){
- stepno = model.getValue(ref + "[" + i + "]/stepno");
- aSettypecd = model.getValue(ref + "[" + i + "]/settypecd");
- pNode = instance1.selectSingleNode(ref + "[" + i + "]/prcpdd");
- if( !isNull(pNode.text) && prcpdd != pNode.text && cpgflagcd == "01" ){ // D0=D1 처리 시-> && D0TmsYN == "N" (2009.04.09 test, baseapp에 블록킹 막음, getAppSetDetailInfo에 sstt.prcpdd as rpcpdd)
- if( appCPYN == "N" || model.getValue(ref + "[" + i + "]/stepstat") != "10" ){
- prcpddArray = prcpddArray + pNode.text + ",";
- }else continue;
- }
-
- tNode = instance1.selectSingleNode(ref + "[" + i + "]/times");
- /*t2Node = instance1.selectSingleNode(ref + "[" + i + "]/orgtimes");
- if( !isNull(t2Node.text) && tms != t2Node.text && !isNull(pNode.text) ){ //중간타기 CP 기능 추가하면서 처방 나가지 않은 건너뛴 회차는 skip(2009.02.19)
- timesArray = timesArray + t2Node.text + ",";
- } else*/if( !isNull(tNode.text) && tms != tNode.text && !isNull(pNode.text) ){ //중간타기 CP 기능 추가하면서 처방 나가지 않은 건너뛴 회차는 skip(2009.02.19)
- timesArray = timesArray + tNode.text + ",";
- }
-
- sNode = instance1.selectSingleNode(ref + "[" + i + "]/setno");
- if( !isNull(sNode.text) && !isNull(pNode.text) ){ //중간타기 CP 기능 추가하면서 처방 나가지 않은 건너뛴 회차는 skip(2009.02.19)
- setArray = setArray + sNode.text + ",";
- }
-
- if( !isNull(pNode.text) ) prcpdd = pNode.text;
- /*if( !isNull(t2Node.text) && !isNull(pNode.text) ) tms = t2Node.text;
- else*/if( !isNull(tNode.text) && !isNull(pNode.text) ) tms = tNode.text;
- }
-
- if( cpgflagcd == "02" ){
- var today = getCurrentDate();
- var aPrcpDD = model.getValue("/root/temp1/getdata/appdd");
- var aPrcpddArray = prcpddArray.split(",");
- //var fstPrcpdd = "";
- //if( aPrcpddArray.length > 0 ) fstPrcpdd = aPrcpddArray[0];
- var appendYN = "Y";
- while( aPrcpDD <= today ){
- appendYN = "Y";
- for(var i=0; i<aPrcpddArray.length; i++){
- if(aPrcpddArray[i] == aPrcpDD){
- appendYN = "N";
- }
- }
-
- if( appendYN == "N" ) continue;
- /*if( !isNull(fstPrcpdd) && fstPrcpdd > aPrcpDD ){
- prcpddArray = aPrcpDD + "," + prcpddArray;
- }
- else*/prcpddArray = prcpddArray + aPrcpDD + ",";
-
- aPrcpDD = aPrcpDD.toDate().getAddDate(1,"D").getDateFormat();
- }
- }
-
- //timesArray = timesArray.getTrimRight();
- timesArray = timesArray.substr(0, timesArray.length-1);
- setArray = setArray.substr(0, setArray.length-1);
- prcpddArray = prcpddArray.substr(0, prcpddArray.length-1);
- cpgno = model.getValue("/root/main/masterinfo/info/cpgno");
- cpghistseq = model.getValue("/root/main/masterinfo/info/cpghistseq");
- var cpgappno = model.getValue("/root/temp1/getdata/cpgappno");
- //child에서 호출하기때문에, opener의 전역변수를 사용 못함??
- var prcpgenrflag = model.getValue("/root/temp1/getdata/cpgappno");
- var pid = model.getValue("/root/paminfo/list/pid");
- var cretno = model.getValue("/root/paminfo/list/cretno");
- if( prcpgenrflag == "O" ){
- var orddd = model.getValue("/root/paminfo/list/orddd");
- }else{
- var orddd = model.getValue("/root/paminfo/list/indd");
- }
-
- var pamInfo = pid + "," + orddd + "," + cretno + "," + prcpgenrflag;
- var returnText = cpgno + "|" + cpghistseq + "|" + settypecd + "|" + timesArray + "|" + "GPS" + "|" + cpgappno + "|" + setArray + "|" + prcpddArray + "|" + pamInfo;
- setParameter("stepinfo", returnText);
- }
-
- /**
- * @group :
- * @ver : 2008.01
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록지 navigate
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenRecMainWnd(){
- var mainObj = getMainViewer();
- //var scrnID = mainObj.javascript.getScreenID();
- mainObj.javascript.navigate("SMMMR00100");
- }
-
- /**
- * @group :
- * @ver : 2008.01
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 탭 선택시, 해당 화면 재조회 여부를 결정한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function tab_refresh( flag ){
- if( flag != "src" ){
- flag = "ctl";
- }
-
- if(imp_prcp.visible == true){
- model.setValue("/root/temp1/refresh_obj/change_ocs", "N");
- if( btn_ivbfprcp.selected == true ){
- btn_ivbfprcp.dispatch("onclick"); //전처방 조회
- //ivw_prcp2.btn_bfprcpsrch.dispatch("DOMActivate");
- }else if( btn_ivpatord.selected == true ){
- btn_ivpatord.dispatch("DOMActivate"); //진료내역 조회
- }
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
- model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
-
- }else if(ivw_detail.visible == true){
- model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
- btn_detail_tab.dispatch("DOMActivate"); //환자계획표 다시 조회
- model.setValue("/root/temp1/refresh_obj/change_ocs", "Y");
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
-
- }else{
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
- btn_outline_tab.dispatch("DOMActivate"); //바로 아웃라인을 재조회하는 func 호출!
- model.setValue("/root/temp1/refresh_obj/change_ocs", "Y");
- model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
- }
-
- if( flag == "src" ){
- model.setValue("/root/temp1/refresh_obj/change_ocs", "Y");
- }
- }
-
- /**
- * @group :
- * @ver : 2007.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자의 세션 정보를 setting
- * @param : viwFlag (저장주체화면 1:main, 2:미완성처방 iviewer)
- * @return : true, false
- * @---------------------------------------------------
- */
- function fRemoveSaveNodeList( viwFlag ){
-
- if( viwFlag == 1 ){
- model.removeNodeset("/root/result");
- model.makeNode("/root/result");
- model.removeNodeset("/root/send/errprcplist");
- model.removeNodeset("/root/send/saveinvaliprcplist");
- model.removeNodeset( "/root/send/reqdata" );
- model.removeNodeset("/root/result_copy");
- model.makeNode("/root/result_copy");
- //clearParameter("SMMMP00800_popupYN");
- model.removeNodeset("/root/result/prcperrlist");
-
- model.removeNodeset("/root/send/cond2");
- model.makeNode("/root/send/cond2");
-
- model.removeNodeset("/root/send/dessprcplist"); //선택필수저장 정보 reset
- model.removeNodeset("/root/send/pessprcplist"); //스텝필수저장 정보 reset
-
- //저장 후, 인스턴스 셋팅... 전처방 조회 시 send 값임....
- var today = getCurrentDate();
- var orddrid = model.getValue ( "/root/paminfo/list/orddrid" );
- model.makeValue ( "/root/send/cond1", iPid); //환자ID
- model.makeValue ( "/root/send/cond2", iOrddd ); //외래:진료일, 입원:입원일
- model.makeValue ( "/root/send/cond3", "0" ); //처방권한 구분
- model.makeValue ( "/root/send/cond4", today ); //처방일자
- model.makeValue ( "/root/send/cond5", "" ); //전처방 where 조건 구분자
- model.makeValue ( "/root/send/cond6", "" ); //최초구분
- model.makeValue ( "/root/send/cond7", orddrid); //의사ID,외래에서만 필요하다.
- model.makeValue ( "/root/send/cond8", today); //todd
- model.makeValue ( "/root/send/cond9", iPrcpgenrflag ); //외래입원구분
- model.makeValue ( "/root/send/cond10", iOrddeptcd ); //부서코드
- model.makeValue ( "/root/send/cond11", iCretno ); //생성번호
- model.makeValue( "/root/send/cond14", getCurrentDate() );
- curSavePrcpFlag_SMMMO00110 = "";
- cpTmpPrcpSaveYN_SMMMO00110 = "";
- if( ivw_outline.src!= "" ){
- ivw_outline.model.setValue("/root/temp/startstepno", ""); //적용 전 시작.종료 설정했던 정보 reset 2008.12.15
- ivw_outline.model.setValue("/root/temp/endstepno", ""); //적용 전 시작.종료 설정했던 정보 reset 2008.12.15
- }
-
- }else{
- ivw_invalprcp.model.removeNodeset("/root/result");
- ivw_invalprcp.model.makeNode("/root/result");
- ivw_invalprcp.model.removeNodeset("/root/send/errprcplist");
- ivw_invalprcp.model.removeNodeset("/root/send/saveinvaliprcplist");
- ivw_invalprcp.model.removeNodeset( "/root/send/reqdata" );
- ivw_invalprcp.model.removeNodeset("/root/result_copy");
- ivw_invalprcp.model.makeNode("/root/result_copy");
- //clearParameter("SMMMP00800_popupYN");
- ivw_invalprcp.model.removeNodeset("/root/result/prcperrlist");
-
- ivw_invalprcp.model.removeNodeset("/root/send/cond2");
- ivw_invalprcp.model.makeNode("/root/send/cond2");
-
- ivw_invalprcp.model.removeNodeset("/root/send/dessprcplist"); //선택필수저장 정보 reset
- ivw_invalprcp.model.removeNodeset("/root/send/pessprcplist"); //스텝필수저장 정보 reset
-
- /*
- //저장 후, 인스턴스 셋팅... 전처방 조회 시 send 값임....
- var today = getCurrentDate();
- var orddrid = model.getValue ( "/root/paminfo/list/orddrid" );
- ivw_invalprcp.model.makeValue ( "/root/send/cond1", iPid); //환자ID
- ivw_invalprcp.model.makeValue ( "/root/send/cond2", iOrddd ); //외래:진료일, 입원:입원일
- ivw_invalprcp.model.makeValue ( "/root/send/cond3", "0" ); //처방권한 구분
- ivw_invalprcp.model.makeValue ( "/root/send/cond4", today ); //처방일자
- ivw_invalprcp.model.makeValue ( "/root/send/cond5", "" ); //전처방 where 조건 구분자
- ivw_invalprcp.model.makeValue ( "/root/send/cond6", "" ); //최초구분
- ivw_invalprcp.model.makeValue ( "/root/send/cond7", orddrid); //의사ID,외래에서만 필요하다.
- ivw_invalprcp.model.makeValue ( "/root/send/cond8", today); //todd
- ivw_invalprcp.model.makeValue ( "/root/send/cond9", iPrcpgenrflag ); //외래입원구분
- ivw_invalprcp.model.makeValue ( "/root/send/cond10", iOrddeptcd ); //부서코드
- ivw_invalprcp.model.makeValue ( "/root/send/cond11", iCretno ); //생성번호
- ivw_invalprcp.model.makeValue( "/root/send/cond14", getCurrentDate() );
- //curSavePrcpFlag_SMMMO00110 = "";
- //cpTmpPrcpSaveYN_SMMMO00110 = "";
- */
- }
-
- if( cpgflagcd == "02" ){
- clearParameter("SPMMP00200_popupYN");
- }
- }
-
- /**
- * @group :
- * @ver : 2007.11
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 미완성 처방을 처리하여 저장한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fTretInvalPrcp(){
- if( grd_errprcplist.mouseCol==1 && grd_errprcplist.mouseRow>0 && grd_errprcplist.mouseRow<=grd_errprcplist.rows ){
- //appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" );
- appendChildPrcp ( "/root/main/prcp/prcplist", "/root/temp1/tmpprcplist", "main" );
- grd_prcplist.nodeset = "/root/temp1/tmpprcplist/prcplist"; //처방 func 활용으로 인해 그리드 인스턴스가 사용되기 때문에
- model.refresh(); //처방그리드에 데이터가 조회됐다 사라지는 현상 방지를 위한 작업..
-
- var prcpName = model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/prcpnm");
- var drugmastspec = model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/drugmastspec"); //약품정보
- grd_prcplist.select(1, 1) = true; //첫번째 열 선택
- var org_prcp = instance1.selectSingleNode("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]").xml; //처리 전 선택했던 처방 xml
-
- var iErrFlag = model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/errtretflag");
-
- if( iErrFlag == "1" && model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/valyn") == "미완"){
- //용량분할,저함량 (1)
- model.makeNode("/root/result/prcplist");
- model.removeNodeset("/root/main/prcp/prcplist");
- copyNodeListType("/root/result", "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "replace", model, model);
- copyNodeListType("/root/main/prcp", "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "replace", model, model);
- var descNode = instance1.selectSingleNode("/root/result/saveinvaliprcplist");
- descNode.nodeName = "prcplist";
- var prcpNode = instance1.selectSingleNode("/root/main/prcp/saveinvaliprcplist");
- prcpNode.nodeName = "prcplist";
-
- model.setValue("/root/result/prcplist/tempcol11", "N");
-
- submit("TRMMP00809"); //용량분할하여 결과를 가져온다
- // /root/main/prcp/prcplist
- if ( !isNull(model.getValue ( "/root/result/prcplist/prcpcd"))){
- xpt = window.screenleft + 100;
- ypt = window.screenTop + 50;
- coord = getRelativeCoordinate ( xpt, ypt );
- mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
-
- modal ( "SPADB62400", mon, xpt, ypt, "SPADB62400", "/root/result", "/root/main/prcp", "", false ); //오류팝업
- model.refresh();
- model.recalculate();
- fClearSaveInstance();
-
- if( instance1.selectSingleNode( "/root/main/prcp/prcplist[tempcol11 != '']" ) != null ) {
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", "U");
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/valyn", "완성");
- grd_errprcplist.rowStatus(grd_errprcplist.row) = 2;
-
- model.removenode("/root/temp1/tmpprcplist/saveinvaliprcplist");
- for (var i=grd_errprcplist.rows-1; i>grd_errprcplist.row; i--){
- copyNodeListType( "/root/temp1/tmpprcplist", "/root/main/invalprcplist/saveinvaliprcplist["+ i +"]", "after", model, model ); //(1)
- model.removenode("/root/main/invalprcplist/saveinvaliprcplist["+ i +"]");
- }
-
- model.removenode("/root/main/prcp/prcplist[1]");
-
- //var divNode = instance1.selectNodes("/root/main/prcp/prcplist[tempcol ! ='']");
- var divNodeList = instance1.selectNodes("/root/main/prcp/prcplist");
- for (var i=0; i<divNodeList.length; i++){
- var divNode = divNodeList.item(i);
- divNode.nodeName = "saveinvaliprcplist";
- model.setValue( "/root/main/prcp/saveinvaliprcplist["+(i+1)+"]/status", "I");
- model.setValue( "/root/main/prcp/saveinvaliprcplist["+(i+1)+"]/valyn", "완성");
- }
-
- copyNodeListType( "/root/main/invalprcplist", "/root/main/prcp/saveinvaliprcplist", "after", model, model ); //(1)
- for(var i=grd_errprcplist.row+1; i<grd_errprcplist.rows; i++){
- grd_errprcplist.rowStatus(i) = 1;
- }
-
- if( instance1.selectSingleNode("/root/temp1/tmpprcplist/saveinvaliprcplist/prcpcd") != null ){
- copyNodeListType( "/root/main/invalprcplist", "/root/temp1/tmpprcplist/saveinvaliprcplist", "after", model, model ); //(1)
- }
- grd_errprcplist.refresh();
-
- changeStatusYN = "Y";
- }
- }
-
- }
- else if( iErrFlag == "8" && model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/prcpclscd") == "H2" ){
- //수술예약리스트 팝업 (8)
- modal("SPMMP02800", 1, 0, 0, "SPMMP02800", "/root/paminfo/list", "/root/send/pamdata" );
-
- if( model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status") == "U" ){
- changeStatusYN = "Y";
- }
- }
- else if( iErrFlag == "9" && model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/prcpkindcd") == "70" ){
- //미래일자에 퇴원후외래처방 - 외래예약 처리 (9)
-
- }
-
- /*
- else if( model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/errtretflag") == "2" && model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/valyn") == "미완"){
- //병리의뢰지 팝업
- var reqNodeList = instance1.selectNodes("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]");
- var reqCSV = getNodeListCSV(reqNodeList);
- //setCSVToNode("/root/main/prcp", reqCSV, "prcplist");
- srcNode = "/root/main/invalprcplist/saveinvaliprcplist["+grd_errprcplist.row+"]";
- var curRow = grd_errprcplist.row;
-
- fReqfrm ( curRow, "copy", srcNode );
-
- var testreqlnkno = model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + curRow + "]/testreqlnkno");
- //alert( testreqlnkno );
-
- if( parseInt(testreqlnkno) > 0 ){
- grd_errprcplist.rowStatus(grd_errprcplist.row) = 2;
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", "U");
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/valyn", "완성");
- grd_errprcplist.refresh();
-
- changeStatusYN = "Y";
- }
- }
- else if( model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/errtretflag") == "3" && model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/valyn") == "미완"
- && getArrayData ( drugmastspec + "^", 0, 16, "^", "|" ) == "Y" ){
- //제한항생제 승인신청서 팝업
- //fAppendSaveNode( "/root/result/savedrprcplist", "/root/result/savedrprcplist["+(i+1)+"]" );
- model.removeNodeset("/root/send/cond1");
- model.removeNodeset("/root/send/cond2");
- model.removeNodeset("/root/send/cond3");
- model.removeNodeset("/root/result/savedrprcplist");
- model.makeNode("/root/send/cond1");
- model.makeNode("/root/send/cond2");
- model.makeNode("/root/send/cond3");
-
- var prcpGenrFlag = model.getValue("/root/patflag/list/prcpgenrflag");
- var prcpdd = model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/prcpdd")
- model.setValue("/root/send/cond1", "saveflag▦prcpdd▩" + prcpGenrFlag + "▦"+ prcpdd + "▩");
-
- var pid = model.getValue("/root/paminfo/list/pid");
- if(prcpGenrFlag == "O"){
- var orddd = model.getValue("/root/paminfo/list/orddd");
- model.setValue("/root/send/cond2", "pid▦orddd▩" + pid + "▦"+ orddd + "▩");
- }else{
- var indd = model.getValue("/root/paminfo/list/indd");
- model.setValue("/root/send/cond2", "pid▦indd▩" + pid + "▦"+ indd + "▩");
- }
-
- //var antiNodeList = instance1.selectNodes(orgprcpnm);
- var prcpNode = "/root/main/invalprcplist/saveinvaliprcplist"; //신청서 미작성시, 바로 삭제하므로, 미완성처방 인스턴스로 설정
- var antiNodeList = instance1.selectNodes("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]");
- var antiCSV = getNodeListCSV(antiNodeList);
- setCSVToNode("/root/send/cond3", antiCSV, "prcplist");
- setCSVToNode("/root/result", antiCSV, "savedrprcplist");
- var prcpCSV = getNodeListCSV(antiNodeList);
- model.setValue("/root/result/savedrprcplist/prcpno", model.getValue("/root/result/savedrprcplist/prtlprcpno")); //프로콜처방번호를 prcpno로 임시저장 (배치로 실처방 전환 시, prcpno Update)
- model.removenode("/root/send/cond3/prcplist/valyn");
- model.setValue("/root/send/cond3/prcplist/status", "I");
- model.makeValue("/root/send/cond3/prcplist/tempcol5", "1");
- model.makeValue("/root/send/cond3/prcplist/orgprcpnm", model.getValue("/root/send/cond3/prcplist/prcpnm"));
- model.makeNode("/root/send/cond3/prcplist["+2+"]/status");
-
- var cp_comp = "Y";
- model.makeValue("/root/cpcmp", "Y");
-
- copyNodeListType("/root/main/prcp", "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "replace", model, model);
- var prcpNode = instance1.selectSingleNode("/root/main/prcp/saveinvaliprcplist");
- prcpNode.nodeName = "prcplist";
-
- if ( fAntiBioticsChk() ) {
- //model.removeNodeset("/root/send/cond3/prcplist");
- //model.makeNode("/root/send/cond3");
- //copyNodeListType("/root/send/cond3", "/root/result/savedrprcplist", "replace", model, model);
-
-
- //다시 미완성처방 인스턴스로 옮긴다.
- //model.setValue("/root/main/prcp/prcplist[" + 1 + "]/status", "U"); //인증저장은 처음 insert 이므로(But, 프로토콜처방은 update)
- //model.setValue("/root/main/prcp/prcplist[" + 1 + "]/prcpnm", prcpName); // ★ 왜 처방명이 사라지는지 모르겠다...!!
- model.copyNode( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "/root/result/savedrprcplist[" + 1 + "]" );
-
- if( instance1.selectSingleNode("/root/main/prcp/prcplist[1]") == null ){
- grd_errprcplist.rowStatus(grd_errprcplist.row) = 4;
- model.setValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", "D" );
-
- }else{
- grd_errprcplist.rowStatus(grd_errprcplist.row) = 2;
- if( !isNull(model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/tempcol6")) || !isNull(model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/tempcol7")) ) {
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", "D");
- //model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/testreqlnkno", "완성");
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/valyn", "완성");
- grd_errprcplist.refresh();
-
- changeStatusYN = "Y";
- }
- }
- }
- model.removenode("/root/cpcmp");
- model.removeNodeset("/root/send/cond1");
- model.removeNodeset("/root/send/cond2");
- model.removeNodeset("/root/send/cond3");
- model.makeNode("/root/send/cond1");
- model.makeNode("/root/send/cond2");
- model.makeNode("/root/send/cond3");
- model.removeNodeset("/root/result/savedrprcplist");
- }
-
- else if(model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/errtretflag") == "4" && model.getValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/valyn") == "미완"){
- //보험제한 처방
- copyNodeListType("/root/main/prcpsrch", "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "replace", model, model);
- var prcpNode = instance1.selectSingleNode("/root/main/prcpsrch/saveinvaliprcplist");
- prcpNode.nodeName = "prcplist";
-
- //model.makeNode("/root/result/limprcplist");
- //copyNodeListType("/root/result", "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "replace", model, model);
- copyNodeListType("/root/main/prcp", "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "replace", model, model);
- //var descNode = instance1.selectSingleNode("/root/result/saveinvaliprcplist");
- //descNode.nodeName = "limprcplist";
- var prcpNode = instance1.selectSingleNode("/root/main/prcp/saveinvaliprcplist");
- prcpNode.nodeName = "prcplist";
- model.setValue("/root/main/prcpsrch/prcplist/status", "I");
-
- //grd_prcplist.select(1, 1) = true; //첫번째 열 선택
-
- //fPrcpDCSave_CP( "6" , 1 ); //보험제한처방 결과를 받아와야 함...
- fBatSaveCpPrtlPrcp( "M", "6", cpgflagcd, 1);
- var limprcplist = model.instance1.selectNodes( "/root/result/limprcplist" ); // 보험제한처방
- if ( limprcplist.length > 0 ) {
- if ( !isNull(model.getValue ( "/root/result/limprcplist/calcscorcd"))){
- xpt = window.screenleft + 100;
- ypt = window.screenTop + 50;
- coord = getRelativeCoordinate ( xpt, ypt );
- mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
- var rowid = 0;
-
- for ( var k=1; k <= limprcplist.length; k++ ){
- rowid = eval(model.getValue ( "/root/result/limprcplist[" + k + "]/rowid" ));
- var displayprcpnm = rowid + ". " + model.getValue ( "/root/result/limprcplist[" + k + "]/calcscorcd" ) + "\n" + "[" + model.getValue ( "/root/result/limprcplist[" + k + "]/prcpnm") + "]";
- model.setValue ( "/root/result/limprcplist[" + k + "]/displayprcpnm", displayprcpnm );
- }
-
- prcpNode = instance1.selectSingleNode("/root/main/prcp/saveinvaliprcplist");
- modal ( "SPMMO00900", mon, xpt, ypt, "prcpdetl", "/root/result", "/root/result", "", false );
- model.removeNodeset("/root/result/limprcplist");
-
- if ( getParameter ( "SPMMO00900_rtnyn" ) == "Y" ) {
- clearParameter ( "SPMMO00900_rtnyn" );
- if( instance1.selectSingleNode("/root/main/prcp/prcplist[1]") == null ){
- model.setValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", "D" );
- }else{
- model.setValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", model.getValue("/root/main/prcp/prcplist[" + 1 + "]/status") );
- model.setValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/tempcol4", model.getValue("/root/main/prcp/prcplist[" + 1 + "]/tempcol4") );
- model.setValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/tempcol5", model.getValue("/root/main/prcp/prcplist[" + 1 + "]/tempcol5") );
- model.setValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/tempcol6", model.getValue("/root/main/prcp/prcplist[" + 1 + "]/tempco6") );
- model.setValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/payflagcd", model.getValue("/root/main/prcp/prcplist[" + 1 + "]/payflagcd") );
- }
- //grd_errprcplist.rowStatus(grd_errprcplist.row) = 2;
- changeStatusYN = "Y";
-
- } else if ( getParameter ( "SPMMO00900_rtnyn" ) == "C" ) {
- return false;
- } else {
- return false;
- }
- }
- } // 보험제한처방끝
- }
- */
-
- if( changeStatusYN == "Y" ){
- //그리드 refresh로 인해 rowstatus 초기화. 미완성처방 리스트의 데이터가 변경된 경우, status 값에 따라, rowStatus를 다시 설정해준다
- var grd_errprcpCtrl = document.controls( "grd_errprcplist" );
- fReSetRowStatus(grd_errprcpCtrl, "/root/main/invalprcplist/saveinvaliprcplist");
- changeStatusYN = "N";
-
- return true;
- }else{
- return false;
- }
- /*
- model.removeNodeset("/root/main/prcp/prcplist");
- model.removeNodeset("/root/temp1/tmpprcplist/prcplist");
- appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" ); //검색라인추가
- grd_prcplist.nodeset = "/root/main/prcp/prcplist"; // /root/temp1/tmpprcplist/prcplist
- model.recalculate();
- */
- }
-
- }
-
- /**
- * @group :
- * @ver : 2007.11
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : prcppkspec 에서 prtlprcpno 를 return 한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReSetRowStatus(gridCtrl, src){
- for( var i=1; i<gridCtrl.rows; i++ ){
- if( model.getValue( src + "[" + i + "]/status") == "I" ){
- gridCtrl.rowstatus(i) = 1;
- }if( model.getValue( src + "[" + i + "]/status") == "U" ){
- gridCtrl.rowstatus(i) = 2;
- }if( model.getValue( src + "[" + i + "]/status") == "D" ){
- gridCtrl.rowstatus(i) = 4;
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2008.07
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CP를 취소한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCnclApp(){
- model.removeNodeset("/root/send/savedata");
- model.makeValue("/root/send/savedata/cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- model.makeValue("/root/send/savedata/cpgno", model.getValue("/root/main/masterinfo/info/cpgno"));
- model.makeValue("/root/send/savedata/cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq"));
- model.makeValue("/root/send/savedata/appstat", "41");
- model.makeValue("/root/send/savedata/m", "u");
-
- if( submit("TXMMP00801", false) ){ //himed.his.emr.prcpbaseapp.cpmngt.CpMngt reqExeCPGAppPatInfo
- model.setValue("/root/temp1/getdata/appstat", "41");
-
- //CPG인 경우 창 닫기 전에, 상단에 평가 아이콘 설정을 위해 CPG 평가명 말고, 다른 평가명이 있는지 조회
- if(cpgflagcd == "02" ){
- model.makeNode("/root/send/valudata"); //req
- model.makeNode("/root/main/valuinfo"); //get, valulist
- model.makeValue("/root/main/valuinfo/pid", iPid);
- model.makeValue("/root/main/valuinfo/orddd", iOrddd);
- model.makeValue("/root/main/valuinfo/cretno", iCretno);
- submit("TRMMP03501", false);
- model.removeNodeset("/root/send/valudata");
- }
- fOpenPrcpWindow();
- return true;
- }
- }
-
- /**
- * @group :
- * @ver : 2008.07
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CP를 Drop한다
- * @param : msg
- * @return :
- * @---------------------------------------------------
- */
- function fDropApp( msg ){
- //btn_drop.dispatch("DOMActivate")
- if( isNull(msg) ){
- rtnVal = 6;
- }else{
- var rtnVal = messageBox ( msg, "S001" );
- }
-
- if( rtnVal == 6 ){
- //setParameter("cpgappno", appNo_SMMMO00110);
- setParameter("cpgappno", model.getValue("/root/temp1/getdata/cpgappno")); // 2008.08.31 pymi appNo_SMMMO00110에 값을 받지 못하는 문제때문에 임시 처리함
- setParameter("cpgno", model.getValue("/root/main/masterinfo/info/cpgno")); //2008.07.01 LWS
- setParameter("cpghistseq", model.getValue("/root/main/masterinfo/info/cpghistseq")); //2008.07.01 LWS
- var mainObj = getMainViewer();
- //mainObj.window.javascript.modal("SPMMP02300");
- //CP는 Drop창, CPG는 문진창
- if(cpgflagcd == "01" ){
- modal("SPMMP02300"); //himed.his.emr.prcpmngtapp.cpprcpmngt.CPPrcpMngt reqExeValuDropExclu
- fOpenPrcpWindow();
- }
- else{
- setParameter("SMMMO034_pntmflag", "2"); //M0515 1:퇴원예고, 2:CPG종료, 3:특정스텝종료
- btn_inqr.dispatch("DOMActivate"); //CPG면 문진팝업 호출 (2010.04.16 JJE)
-
- fCnclApp();
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2008.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 메세지 박스를 모달로 연다
- * @param : msg, msgkind
- * @return : rtn
- * @---------------------------------------------------
- */
- function fOpenMsgBox( msg, msgkind ){
- var mon = getCurrentMonitorNumber();
- var monSize = getMonitorSize(mon);
- var xpt = parseInt(monSize[0])/2 - 155;
- var ypt = monSize[1]/2 - 50;
- setParameter("SMMMP00800_msg", msg);
- setParameter("SMMMP00800_msgkind", msgkind);
- modal("SPMMP00700", mon, xpt, ypt);
-
- var rtn = getParameter("SPMMP00700_msgkind");
- clearParameter( "SPMMP00700_msgkind" );
- return rtn;
- }
-
- /**
- * @group :
- * @ver : 2008.08
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 미완성처방 팝업에서 처방 저장 후, 처리
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fAfterInvalPrcpSave(){
- clickBtnNm_SMMMO00110 = "";
-
- model.makeValue("/root/temp1/getdata/srchcond", "2"); //조회조건 1:로딩 및 재조회, 2:적용 후 재조회, 3:퇴원예고시 문진조회 (20090.5.19 JJE)
- submit("TRMMP00803", false); //steppath 조회
-
- if( instance1.selectSingleNode("/root/main/steppath/appinfo/appstat") != null ){
- model.makeValue( "/root/temp1/getdata/appstat", model.getValue("/root/main/steppath/appinfo/appstat") );
- appStat = model.getValue("/root/main/steppath/appinfo/appstat");
- model.removeNodeset("/root/main/steppath/appinfo");
- model.removeNodeset("/root/send/srchcond");
- model.removeNodeset("/root/send/steplist");
- model.removeNodeset("/root/send/delprcplist");
- fRemoveSaveNodeList( 1 );
- }
-
- tab_refresh();
- }
-
- /**
- * @group :
- * @ver : 2008.089
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진료대상자리스트의 CP여부, 상단 CP 여부 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fsetCpInfo( flag ){
- appStat = model.getValue("/root/temp1/getdata/appstat");
-
- if( cpgflagcd == "01" && appStat != "00" ){
- //진료대상자리스트에 값을 setting한다
- var prcpWindow = getOpenWindow("SMMMO04100");
- if( prcpWindow != null ){
- prcpWindow.model.setValue("/root/cpflag", "Y");
- }
-
- //상단에 cp여부를 Y로 셋팅(외래일때에는 셋팅이 되지 않아서, 다시 셋팅)
- if( getPatientInfo("cp") == "N" ){
- setPatientInfo("cp", model.getValue("/root/paminfo/list/pid") + "|" + "Y"); //상단 cp Y로 셋팅
- }
- }
-
- if( flag == "save" ){
- //진료대상자 재조회
- fPrcpCallPatList();
- }
- }
-
- /**
- * @group :
- * @ver : 2008.089
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진료대상자리스트의 CP여부, 상단 CP 여부 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fResetAppStat(){
- if( instance1.selectSingleNode("/root/main/steppath/appinfo/appstat") != null ){
- model.makeValue( "/root/temp1/getdata/appstat", model.getValue("/root/main/steppath/appinfo/appstat") );
- appStat = model.getValue("/root/main/steppath/appinfo/appstat");
- model.removeNodeset("/root/main/steppath/appinfo");
- model.removeNodeset("/root/send/srchcond");
- model.removeNodeset("/root/send/steplist");
- model.removeNodeset("/root/send/delprcplist");
-
- if( cpgflagcd == "01" && appStat != "00" && btn_drop.attribute("class") == "btn4_letter2" ){
- btn_drop.attribute("class") = "btn4_letter3";
- btn_drop.attribute("left") = "1022px";
- btn_drop.attribute("text") = "Drop";
- btn_drop.refresh();
- }
-
- //fsetCpInfo("save"); //상단CP여부 변경
- }
- }
-
-
- /**
- * @group :
- * @ver : 2008.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 퇴원예고를 하지 않아서 미완성 처방인 건이 있을 경우, 미완성리스트에서 처리하라고 알림 (2008.09.19 JJE)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMssgInvalPrcp( msgFlag ){
- //var msgFlag = "1";
- var today = getCurrentDate();
- var nxtDate = new Date().getAddDate(1, "D").getDateFormat();
- var curInvalNodeList = null;
- var dschdclrtyn = getPatientInfoDetail("dschdclrtyn");
-
- if( msgFlag == "1" ){
- //curInvalNodeList = instance1.selectNodes("/root/main/invalprcplist/prcplist");
- //if( curInvalNodeList.length <= 0 ){
- if( ivw_detail.src != "../../../emr/prcpmngtweb/xrw/SPMMP02200_DetailView.xrw" ){
- curInvalNodeList = ivw_detail.instance1.selectNodes("/root/main/prcp/prcplist[prtlstat='12' and (prcpkindcd='60' or prcpkindcd = '70') and (prcpdd = '"+today+"' or prcpdd = '"+nxtDate+"')]");
- }
- //}
-
- if( curInvalNodeList.length > 0 ){
- if( curInvalNodeList.length <= 0 ){
- messageBox ( "미완성 처방 중 발행되지 않은 퇴원처방이 존재합니다. \n\n미완성처방을 저장", "I008" );
- btn_saveincomplprcp.dispatch("DOMActivate"); //미완성처방 영역 활성화
- fCase2ViewMode();
- }
- }
- }
-
-
- else if( msgFlag == "2" ){
- /*
- //환자계획표가 재조회 이전 시점(환자계획표 버튼을 클릭해야 재조회됨), 대신 스텝정보를 기준으로 체크함
- if( ivw_detail.src != "../../../emr/prcpmngtweb/xrw/SPMMP02200_DetailView.xrw" ){
- inval1NodeList = instance1.selectNodes("/root/main/prcp/prcplist[prtlstat='10' and (prcpkindcd='60' or prcpkindcd = '70') and (prcpdd = '"today"' or prcpdd = '"nxtDate"')]");
- }
- */
- curInvalNodeList = instance1.selectNodes("/root/main/steppath/info[(stepstat = '20' or stepstat='30') and decirflag = 'D' and (prcpdd = '"+today+"')]");
- tmrInvalNodeList = instance1.selectNodes("/root/main/steppath/info[(stepstat = '20' or stepstat='30') and decirflag = 'D' and (prcpdd = '"+nxtDate+"')]");
- if( curInvalNodeList.length > 0 && dschdclrtyn == "N" ){
- messageBox ( "미완성 처방 중 발행되지 않은 퇴원처방이 존재합니다. \n\n퇴원예고 후 미완성처방을 저장", "I008" );
- btn_saveincomplprcp.dispatch("DOMActivate"); //미완성처방 영역 활성화
- fCase2ViewMode();
- }
- if( tmrInvalNodeList.length > 0 && dschdclrtyn == "N" ){
- messageBox ( "실처방으로 발행되지 않은 퇴원처방이 존재합니다. \n이 처방들은 퇴원예고를 하시면 자동 발행됩니다. \n\n퇴원예고를 진행", "I008" );
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2008.09
- * @by : 박유미
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 퇴원예고 유도
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGuidDschDclrt(){
- if(dschAppYN != "Y") {
- if( getParameter("SPMMO00400_rtn_useyn") != "Y") { //퇴원예고 popup을 두번 뜨는 것을 막기위함
- var curDate = getCurrentDate();
- var nxtDate = new Date().getAddDate(1, "D").getDateFormat();
- var stepLth = instance1.selectNodes("/root/main/steppath/info").length;
- var cstepPt = "";
- var dshPrcpdd = "";
- var dschRet = "";
-
- for( var i = 1; i <= stepLth; i++) {
- if( curDate == model.getValue("/root/main/steppath/info[" + i + "]/prcpdd") ) {
- cstepPt = i;
- break;
- }
- }
- if( !isNull(cstepPt) ) {
- for(var i = cstepPt ; i <= stepLth ; i++) {
- if( (model.getValue("/root/main/steppath/info["+ i +"]/decirflag") == "D" )
- || (model.getValue("/root/main/masterinfo/info/ioflagcd") == "O" && model.getValue("/root/main/steppath/info["+ i +"]/decirflag") == "C") ){ // 외래- DSC cp 2008.08.06
- dshPrcpdd = model.getValue("/root/main/steppath/info["+ i +"]/prcpdd");
- }
- if( (curDate == dshPrcpdd) || (nxtDate == dshPrcpdd) ) {
- var dschdclrtyn = getPatientInfoDetail("dschdclrtyn");
- if( dschdclrtyn == "N" ) {
- //dschRet = messageBox( dshPrcpdd.substr(0, 4) + "년 " + dshPrcpdd.substr(4, 2) + "월 " + dshPrcpdd.substr(6, 2) + "일 " + "퇴원예정환자입니다. 퇴원예고를", "Q009");
- if(curDate == dshPrcpdd) {
- if( iPrcpgenrflag != "E" ){
- //dschRet = messageBox( "당일 퇴원예정환자입니다. \n\n입퇴원요약기록 작성 후 퇴원예고를", "S004");
- dschRet = messageBox( "당일 퇴원예정환자입니다. \n\n입퇴원요약기록 작성 후 퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }else{
- dschRet = messageBox( "당일 퇴원예정환자입니다. \n\n퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }
- } else if(nxtDate == dshPrcpdd) {
- if( iPrcpgenrflag != "E" ){
- //dschRet = messageBox( "내일 퇴원예정환자입니다. \n\n입퇴원요약기록 작성 후 퇴원예고를", "S004");
- dschRet = messageBox( "내일 퇴원예정환자입니다. \n\n입퇴원요약기록 작성 후 퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }else{
- dschRet = messageBox( "내일 퇴원예정환자입니다. \n\n퇴원예고를", "S006", "퇴원예고 없이 진행|CP를 취소");
- }
- }
- break;
- }
- }
- }
-
- if( dschRet == "6") {
- //첫번째 처방일 + 재원일
- var fstdd = model.getValue("/root/main/steppath/info[1]/prcpdd");
- fstdd = new Date(eval(fstdd.substr(0, 4)), eval(fstdd.substr(4, 2)) -1, eval(fstdd.substr(6, 2)));
- var hddd = parseInt(model.getValue("/root/main/masterinfo/info/fcstinhospdayno"));
- var hd = fstdd.getAddDate(hddd-1);
-
- //퇴원예고 window open
- setParameter("SMMMP00800_dclrdd", dshPrcpdd);
- modal("SPMMO00400");
- //alert(getParameter("SPMMO00400_rtn_useyn"));
- if( getParameter("SPMMO00400_rtn_useyn") == "Y") {
- fSetupDschInfo(); //상단정보 재설정
- model.setValue("/root/paminfo/list/dschdclrtyn", "Y");
- model.setValue("/root/paminfo/list/dschdclrdt", getParameter("SPMMO00400_dclrdd"));
-
- //(퇴원예고일 != 재원일) cp 취소
- if( getParameter("SPMMO00400_dclrdd") != dshPrcpdd ) {
- if( messageBox ( "퇴원예고일이 재원일과 일치하지 않습니다.", "Q007" ) == "6" ){
- fCnclApp();
- } else {
- messageBox("퇴원예고일이 재원일과 일치하지 않습니다. \n현재 CP를 취소하고 새로운 CP를 ", "C002");
- }
- clearParameter("SPMMO00400_rtn_useyn");
- return;
- }
- dschAppYN = "Y";
- } else if(getParameter("SPMMO00400_rtn_useyn") == "N") { //실패
- clearParameter("SPMMO00400_rtn_useyn");
- return;
-
- } else{ //퇴원예고 창을 그냥 close 했을때
- // 계속 진행
- dschAppYN = "Y";
- }
-
- }else if( dschRet == "7") {
- //퇴원예고 지연 --> '60', '70' 제외하고 처방발행
- clearParameter("SPMMO00400_rtn_useyn");
- dsch = "Y";
- }
- else if ( dschRet == "2") {
- if(model.getValue("/root/temp1/getdata/appstat") == "00" && instance1.selectSingleNode("/root/main/steppath/info[stepstat >= '20']") == null ){
- if( messageBox ( "", "Q007" ) == "6" ){
- fCnclApp();
- }
- clearParameter("SPMMO00400_rtn_useyn");
- return;
- }
- }
- }
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2008.09
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 퇴원예고를 하지 않아서 미완성 처방인 건이 있을 경우, 미완성리스트에서 처리하라고 알림 (2008.09.19 JJE)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetupDschInfo( msgFlag ){
- //상단올리기
- if( getParameter("SPMMO00400_rtn_useyn") == "Y" ){
- fDschNotiInit();
- var pamInfoCvs = getGlobalVariable("paminfo");
- if(pamInfoCvs != null){ //cvs가 null이 아닌 경우에만 처리함.
- model.removeNodeSet ( "/root/paminfo/list" ); //상단화면 정보 초기화
- setCSVToNode ( "/root/paminfo", pamInfoCvs );
- model.setValue ( "/root/init/pid", model.getValue ( "/root/paminfo/list/pid" ));
- var vopt_patinfo = model.getValue ( "/root/paminfo/list/hngnm" ) + " " + model.getValue ( "/root/paminfo/list/sex" ) + "/" + model.getValue ( "/root/paminfo/list/age" );
- if ( model.getValue ( "/root/paminfo/list/roomcd" ) != "" ){
- vopt_patinfo = vopt_patinfo + " " + model.getValue ( "/root/paminfo/list/roomcd" ) + "호";
- }
- model.setValue ( "/root/init/patinfo", vopt_patinfo );
- }
-
- var patFlagCvs = getGlobalVariable("patflag");
- if(patFlagCvs.length != 0 ){ //cvs가 null이 아닌 경우에만 처리함.
- model.removeNodeSet ( "/root/patflag/list" ); //상단화면 정보 초기화
- setCSVToNode ( "/root/patflag", patFlagCvs );
- prcpgenrflag = model.getValue ( "/root/patflag/list/prcpgenrflag" );
- }
- }
- clearParameter("SPMMO00400_rtn_useyn");
- }
-
- /**
- * @group :
- * @ver : 2008.12
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CPG의 경우 시작/종료스텝 설정에 따른 처방일자 변경 처리
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetupPrcpDD(){
- var stepPathRef = "/root/main/steppath/info";
- var stepPathLen = instance1.selectNodes(stepPathRef).length;
-
- var StartStepDD = "";
- var StartStep = "";
- var EndStep = "";
- if(stepPathLen == 1) {
- StartStepDD = instance1.selectSingleNode(stepPathRef + "/prcpdd");
- StartStep = instance1.selectSingleNode(stepPathRef + "/stepno");
- EndStep = instance1.selectSingleNode(stepPathRef + "/stepno");
- } else {
- StartStepDD = instance1.selectSingleNode(stepPathRef + "[startendflag = 'S']/prcpdd");
- StartStep = instance1.selectSingleNode(stepPathRef + "[startendflag = 'S']/stepno");
- EndStep = instance1.selectSingleNode(stepPathRef + "[startendflag = 'E']/stepno");
- }
- var today = getCurrentDate();
-
- var StartPrcpDD = "";
- var StartStepNo = "";
- var EndStepNo = "";
-
- var interval = 0;
- var startyn = "N";
- var endyn = "N";
- var iStepNo = "";
- var iPrcpDD = "";
- var iTimes = 0;
- var jTimes = 0;
- var kTimes = 0;
- var iStepStat = 0;
- var iLnkStepno = 0;
- var reAppQstYN = "N"; //적용 스텝 재적용 질문 여부 //appStepYN
- var reAppYN = "N"; //적용 스텝 재발행 여부 //appStepFlag
- var dschStepFlag = "";
- var iAnswstepno = "0";
- var iStepflagcd = "";
- var iSettypecd = "";
-
- if( StartStep == null && EndStep == null ){
- messageBox ( "설정된 시작/종료 스텝이", "I004" );
- return;
- }
- if(StartStep != null){
- StartPrcpDD = StartStepDD.text;
- StartStepNo = StartStep.text;
- }
- if(EndStep != null){
- EndStepNo = EndStep.text;
- }
-
- if( cpgflagcd == "02" ){ //CPG
-
- if( StartStep != null && EndStep == null ){
- EndStep = instance1.selectSingleNode(stepPathRef + "["+ stepPathLen +"]/stepno");
- EndStepNo = EndStep.text;
- }
-
- interval = 0;
- for( var i=1; i<=stepPathLen; i++ ){
- iStepNo = model.getValue(stepPathRef + "["+ i +"]/stepno");
- iStepStat = parseInt(model.getValue(stepPathRef + "["+ i +"]/stepstat"));
- iStepflagcd = model.getValue(stepPathRef + "["+ i +"]/stepflagcd");
- iAnswstepno = model.getValue(stepPathRef + "["+ i +"]/answstepno");
- iSettypecd = model.getValue(stepPathRef + "["+ i +"]/settypecd");
-
- if( model.getValue("/root/main/appscopmode") != "W" && iSettypecd == "W" ) break; //CPG+CP에서 CPG스텝 적용할 때에는 CP는 범위에서 제외
-
- if( startyn == "N" && (iStepNo == StartStepNo || iStepNo == EndStepNo) ) startyn = "Y"; //1step짜리 CP도 처방발행 되도록 오류 수정 (2009.12.22 JJE)
- if( startyn == "N" && iStepStat <= 10 ){
- if( iStepflagcd == "D" ){ //&& iAnswstepno == StartStepNo
- //startyn = "Y"; // 결정 후, action 스텝을 시작스텝으로 재설정 한 경우, start를 Decision으로 잡아줌 (2010.05.18 JJE)
- model.setValue(stepPathRef + "["+ i +"]/prcpdd", today);
- model.setValue(stepPathRef + "["+ i +"]/savestatus", "I");
- model.setValue(stepPathRef + "["+ i +"]/stepstat", "10");
- }else{
- model.setValue(stepPathRef + "["+ i +"]/prcpdd", "");
- model.setValue(stepPathRef + "["+ i +"]/savestatus", "D");
- }
- }else if( startyn == "Y" ){
- if(endyn == "N"){
-
- //Decision 스텝인 경우, 미결정 시 I로 하지 않음!
- if( iStepflagcd == "A" || (iStepflagcd == "D" && iAnswstepno != "0") ){
- model.setValue(stepPathRef + "["+ i +"]/prcpdd", today);
- model.setValue(stepPathRef + "["+ i +"]/savestatus", "I");
-
- if( iStepStat>10 ){
- /*if( reAppQstYN == "N" ){
- reAppQstYN = "Y";
- //if( messageBox("적용 스텝 중 이미 발행된 스텝이 존재합니다.\n재발행", "S001") == 6 ){
- model.setValue(stepPathRef + "["+ i +"]/stepstat", "10");
- reAppYN = "Y";
- //}
- }else{
- if( reAppYN == "Y" )*/
- model.setValue(stepPathRef + "["+ i +"]/stepstat", "10");
- //}
- }
- } //A이거나 결정된 D인 경우만 적용대상에 포함
-
- }else if( endyn == "Y" && iStepStat<=10 ){
- model.setValue(stepPathRef + "["+ i +"]/prcpdd", "");
- }
- }
-
- if( endyn == "N" && iStepNo == EndStepNo ) endyn = "Y";
- }
- } else{ //CP
- interval = 0;
- kTimes = 1;
-
- var D0StepNodes = instance1.selectNodes("/root/main/steppath/info" + "[times = '0' and stepstat='10' and prcpdd='"+today+"']");
- var bfD0StepNodes = instance1.selectNodes("/root/main/steppath/info" + "[times = '0' and stepstat='30']");
- var chkD0StepNodes = instance1.selectNodes("/root/main/steppath/info" + "[times = '0']");
- //## 중간타기 적용 여부 변수 (첫번째 스텝의 처방일과 시작지정된 스텝의 처방일이 다르면 중간타기로 인식
- var midAppYN = "N";
- var OrgStartPrcpDD = model.getValue("/root/main/steppath/info[swimlineno = '1']/prcpdd");
- if( OrgStartPrcpDD != StartPrcpDD ) midAppYN = "Y";
-
- //D0 CP 외래 진료일(적용 당일)은 해당 일자만 발행 flag로 설정하고 return (2010.05.25 JJE)
- var ioflag = model.getValue("/root/main/masterinfo/info/ioflagcd");
- var iAppStat = parseInt(model.getValue("/root/temp1/getdata/appstat"));
- if(ioflag != "O" && appStat == "00" && D0StepNodes.length > 0){
- for(var i=0; i<D0StepNodes.length; i++){
- var node = D0StepNodes.item(i);
- var savestatus = node.selectSingleNode("savestatus");
- var times = node.selectSingleNode("times");
- if( times.text == "0" ) model.setValue(savestatus, "I");
- }
- return;
- }
-
- //이미 적용된 CP도 더이상 저장할 프로토콜이 없음, 중간타기 CP인 경우 미발행된게 추가처방 내면서 같이 나가는 것을 방지 (2010.06.04 JJE)
- if( ioflag != "O" && (iAppStat == 10 || iAppStat >= 30) && bfD0StepNodes.length <= 0 ){ //과거 D0가 있을땐 모두 적용, 그렇지 않은 경우는 건너뛴 중간부터 적용인지 체크
- var notActStepNodes = instance1.selectNodes("/root/main/steppath/info" + "[swimlineno = '1' and stepstat='10']"); //이미 적용 시 발행X 스텝
- if( notActStepNodes.length > 0 ) return;
- }
-
- //중간타기 CP가 어떤 문제로 인해 당일 step만 발행된 경우, 미래 step 적용을 위해.. start step을 지정해줌 (2010.07.15)
- var fstStepStat = model.getValue(stepPathRef + "["+1+"]/stepstat");
- var midAppStepNoNode = instance1.selectSingleNode(stepPathRef + "[stepstat='30']/stepno");
- if( ioflag != "O" && chkD0StepNodes.length <= 0 && fstStepStat <= 10 && midAppStepNoNode != null ){
- StartStepNo = midAppStepNoNode.text;
- }
-
- //steppath에 처방일자 조정
- var iDay = "";
- var iOrgPrcpDD = "";
- var changeDate = "";
- var changeStat = "";
- for( var i=1; i<=stepPathLen; i++ ){
- iStepNo = model.getValue(stepPathRef + "["+ i +"]/stepno");
- iPrcpDD = model.getValue(stepPathRef + "["+ i +"]/prcpdd");
- iOrgPrcpDD = model.getValue(stepPathRef + "["+ i +"]/orgprcpdd");
- iTimes = parseInt(model.getValue(stepPathRef + "["+ i +"]/times"));
- iStepStat = parseInt(model.getValue(stepPathRef + "["+ i +"]/stepstat"));
- dschStepFlag = model.getValue(stepPathRef + "["+ i +"]/decirflag");
- iLnkStepno = model.getValue(stepPathRef + "["+ i +"]/lnkstepno");
- changeDate = "";
- changeStat = "";
-
- if( startyn == "N" && (iStepNo == StartStepNo || StartStepNo == "") ) { //1step짜리 CP도 처방발행 되도록 오류 수정 (2009.12.22 JJE), D0CP 입원처방 발행 시 날짜가 +1 되는 오루 수정 (2010.04.22)
- if( iTimes == "0" ){
- StartStepNo = iLnkStepno;
- }else{
- startyn = "Y";
- jTimes = iTimes;
- //model.setValue(stepPathRef + "["+ i +"]/times", kTimes);
- }
- }
-
- if( startyn == "N" && iStepStat<=10 ){
- model.setValue(stepPathRef + "["+ i +"]/prcpdd", "");
- model.setValue(stepPathRef + "["+ i +"]/savestatus", "D");
-
- }else if( startyn == "Y" ){
- if(endyn == "N" && iStepStat<=10 ){
- interval = iTimes - jTimes;
- iDay = today.toDate("YYYYMMDD");
- changeDate = iDay.getAddDate(interval, "D").getDateFormat("YYYYMMDD");
- changeStat = "I";
- //어떤 문제로 인해 당일스텝(1day step)만 발행된 경우, 미래 step 적용을 위해 기준 처방일자를 오늘에서 발행된 스텝의 처방일로 지정해줌 (2010.07.15)
- //## 중간타기 적용 시 처방일자가 원래 미래일자 그대로 발행되는 문제 수정 (2010.12.21 JJE)
- if( !isNull(iOrgPrcpDD) && changeDate != iOrgPrcpDD && midAppYN == "N" ){ //## midAppYN == "N" 조건 추가
- if(today > iOrgPrcpDD){
- changeDate = "";
- changeStat = "D";
- }else{
- changeDate = iOrgPrcpDD; //## 이 부분때문에 중간타기 적용의 경우까지 원래 처방일자로 한번 더 바꿨음 (원래 취지는 시스템의 문제로 적용시 미래처방이 발행 안된경우, 과거 일자가 된 2회차 이후의 스텝을 원래 일자로 설정해주는 부분임)
- }
- }
-
- model.setValue(stepPathRef + "["+ i +"]/prcpdd", changeDate);
- model.setValue(stepPathRef + "["+ i +"]/savestatus", changeStat);
-
- }else if( endyn == "Y" && iStepStat <= 10 ){
- model.setValue(stepPathRef + "["+ i +"]/prcpdd", "");
- }
- }
- if( endyn == "N" && iStepNo == EndStepNo ) endyn = "Y";
-
- //퇴원일이 미뤄지므로, 퇴원예정일 변경 - 퇴원예고 시 바뀐 퇴원일로 셋팅되도록 (2009.02.26)
- if( dschStepFlag == "D" ) setParameter("SMMMP00800_dclrdd", changeDate);
-
- }
- //}
- }
- }
-
- /**
- * @group :
- * @ver : 2009.02.
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CPG 속성관리창을 오픈하기 위한 함수
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenStepDetlInfo(){
- //ivw_outline.window.javascript.fViewDetailInfo();
- var no = model.getValue("/root/main/stepinfo/info/stepno");
- var stepflag = model.getValue("/root/main/stepinfo/info/stepflagcd");
-
- if( isNull(no) ){
- no = model.getValue("/root/main/sortedsteplist/info[1]/stepno");
- stepflag = model.getValue("/root/main/sortedsteplist/info[1]/stepflagcd");
- model.setValue("/root/main/stepinfo/info/stepno", model.getValue("/root/main/sortedsteplist/info[1]/stepno"));
- model.setValue("/root/main/stepinfo/info/setno", model.getValue("/root/main/sortedsteplist/info[1]/setno"));
- model.setValue("/root/main/stepinfo/info/stepmemo", model.getValue("/root/main/sortedsteplist/info[1]/stepmemo"));
- model.setValue("/root/main/stepinfo/info/times", model.getValue("/root/main/sortedsteplist/info[1]/times"));
- model.setValue("/root/main/stepinfo/info/stepnm", model.getValue("/root/main/sortedsteplist/info[1]/stepnm"));
- model.setValue("/root/main/stepinfo/info/stepflagcd", model.getValue("/root/main/sortedsteplist/info[1]/stepflagcd"));
- }
-
- //if( !isNull(no) ){
- if(stepflag == "A" || stepflag == "B"){
- var iSettypecd = model.getValue("/root/main/steppath/info[stepno='"+no+"']/settypecd");
- if( isNull(iSettypecd) ) iSettypecd = settypecd;
- var returnText = no + "|" +
- model.getValue("/root/main/masterinfo/info/cpgno") + "|" +
- model.getValue("/root/main/masterinfo/info/cpghistseq") + "|" +
- iSettypecd + "|" + //CPG+CP에서 CP스텝이어도 G로 보내야 하므로, settypecd -> cpgflagcd (2010.07.02)
- model.getValue("/root/main/stepinfo/info/setno") + "|" +
- model.getValue("/root/main/stepinfo/info/stepmemo") + "|" +
- model.getValue("/root/main/stepinfo/info/times") + "|" +
- "generater"+ "|" +
- model.getValue("/root/main/stepinfo/info/stepnm");
-
- //var sortedStepNode = instance1.selectNodes("/root/main/sortedsteplist/info");
- var sortedStepNode = instance1.selectNodes("/root/main/steppath/info");
- var returnTextList = "";
- var num = 0;
- for(var i=0; i<sortedStepNode.length; i++){
- num++;
- returnTextList = returnTextList + model.getValue("/root/main/steppath/info["+num+"]/stepno") + "|" +
- model.getValue("/root/main/masterinfo/info/cpgno") + "|" +
- model.getValue("/root/main/masterinfo/info/cpghistseq") + "|" +
- model.getValue("/root/main/steppath/info["+num+"]/settypecd") + "|" +
- model.getValue("/root/main/steppath/info["+num+"]/setno") + "|" +
- model.getValue("/root/main/steppath/info["+num+"]/stepmemo") + "|" +
- model.getValue("/root/main/steppath/info["+num+"]/times") + "|" +
- "generater"+ "|" +
- model.getValue("/root/main/steppath/info["+num+"]/stepnm") + "▦";
- }
-
-
- setParameter("stepinfo", returnText);
- setParameter("steplist", returnTextList);
-
- var popObj = getOpenWindow("SPMMP01100");
- if( popObj == null ){
- open("SPMMP01100");
- }else{
- popObj.window.javascript.fInitialize();
- }
-
-
- } else if(stepflag == "D"){
- var returnText = model.getValue("/root/main/stepinfo/info/stepnm") + "|" +
- model.getValue("/root/main/stepinfo/info/stepmemo") + "|" +
- model.getValue("/root/main/stepinfo/info/times");
-
- setParameter("stepinfo", returnText);
-
- var popObj = getOpenWindow("SPMMP02100");
- if( popObj == null ){
- open("SPMMP02100");
- }else{
- popObj.window.javascript.fInitialize();
- }
- }
- /*
- }
- else {
- var msg = messageBox("스텝을 ", "C002");
- return;
- }
- */
- }
-
-
- /**
- * @group :
- * @ver : 2009.02.
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CPG 속성관리창을 오픈하기 위한 함수
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenAttAdm(){
- var CPGadminObj = getOpenWindow("SPMQP00300");
- if (CPGadminObj != null) {
- CPGadminObj.window.javascript.model.dispatch("xforms-ready");
- } else {
- open("SPMQP00300");
- }
- }
-
- /**
- * @group :
- * @ver : 2009.02.
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : cpg는 s/e 지점을 진행상태에 따라 재정의한다. (2009.02.17)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fResetStepFlag(){
- if( cpgflagcd == "02" ){
- var appStatNode = instance1.selectSingleNode("/root/temp1/getdata/appstat");
- if( appStatNode != null ) { //cpgflagcd == "02"
- var appStatNo = parseInt(appStatNode.text);
- var allSteps = instance1.selectNodes("/root/main/steppath/info[stepstat='30']");
- var orgStartStep = instance1.selectSingleNode("/root/main/steppath/info[startendflag='S']/startendflag");
- var orgEndStep = instance1.selectSingleNode("/root/main/steppath/info[startendflag='E']/startendflag");
- //## 아웃라인에서 StartEndFlag 해제 인스턴스 2010.05.04 KHJ
- var StartStepNode = instance1.selectSingleNode("/root/main/steplist/info[startendflag='S']/startendflag");
- var EndNodeList = instance1.selectNodes("/root/main/steplist/info[startendflag='E']");
- /*
- var chgStartStep = null;
- var startSteono = null;
- var endSteono = null;
- var maxSwimlineno = "0";
- if( appStatNo >= 10 && appStatNo < 30 ){
- //진행중 : startStepno 재설정
- for(var i=0; i<allSteps.length; i++){
- var node = allSteps.item(i);
- var swimlineno = node.selectSingleNode("swimlineno");
- if( maxSwimlineno < swimlineno.text ){
- maxSwimlineno =swimlineno.text;
- startSteono = node.selectSingleNode("lnkstepno");
- }
- }
- if( startSteono != null ){
- if( instance1.selectSingleNode("/root/main/steppath/info[stepno='" + startSteono.text + "']") != null ){
- chgStartStep = instance1.selectSingleNode("/root/main/steppath/info[stepno='"+ startSteono.text +"']/startendflag");
- model.setValue(orgStartStep, "");
- model.setValue(chgStartStep, "S");
- }else{
- model.setValue(orgStartStep, "");
- model.setValue(orgEndStep, "");
- }
- }
- }else if(appStatNo >= 30 && appStatNo <= 50){
- //마지막 스텝 처방까지 발행한 상태 : startStepno, endStepno 둘다 존재하지 않음
- if( orgStartStep != null ) model.setValue(orgStartStep, "");
- if( orgEndStep != null ) model.setValue(orgEndStep, "");
- }
- */
-
- //자동으로 Start/End를 지정해주게 되면, OCS에서 추가처방 발행 및 DC 처방 저장 시 함께 저장되므로 무조건 범위를 해제해줌 (2010.04.13)
- if( allSteps.length > 0 || resetAppScopYN == "Y" ){ //시작 안한 경우는 초기 s는 그대로 설정 (2010.05.12 JJE)
- if( orgStartStep != null ) model.setValue(orgStartStep, "");
- if( StartStepNode != null ) model.setValue(StartStepNode, "");
- }
-
- if( orgEndStep != null ) model.setValue(orgEndStep, "");
- for (var i=0;i<EndNodeList.length;i++) {
- // 아웃라인에서 StartEndFlag 해제 2010.05.04 KHJ
- var EndNode = EndNodeList.item(i);
- var EndFlagNode = EndNode.selectSingleNode("startendflag");
- if (EndFlagNode != null) model.setValue(EndFlagNode, "");
- }
-
- fGetAppScopList();
- }
-
- } //end cpg case
- }
-
- /**
- * @group :
- * @ver : 2009.02.
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : cpg는 s/e 지점을 진행상태에 따라 재정의한다. (2009.02.17)
- * @param : inqrPopFlag (SEL: 문진리스트 클릭, APP: 스텝 프로토콜 적용, END:CPG 종료)
- * @return :
- * @---------------------------------------------------
- */
- function fLoadInqrPopup( inqrPopFlag ){
- if( isNull(inqrPopFlag) ) inqrPopFlag = "end";
-
- setParameter("SMMMO034_pid", iPid);
- setParameter("SMMMO034_cretno", iCretno);
- setParameter("SMMMO034_orddd", iOrddd);
- setParameter("SMMMO034_ordtype", iIoflag);
-
- if( inqrPopFlag == "SEL" ) {
- var iRow = grd_inqr.row;
- var inqr_path = "/root/main/inqrinfo/inqrheader";
- setParameter("SMMMO034_lastcallyn", "N"); //문진팝업 최종 호출 여부:N
- setParameter("SMMMO034_cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- setParameter("SMMMO034_cpgno", cpgno);
- setParameter("SMMMO034_cpghistseq", cpghistseq);
- setParameter("SMMMO034_inqrno", model.getValue(inqr_path + "[" + iRow + "]/inqrno") );
- setParameter("SMMMO034_inqrhistno", model.getValue(inqr_path + "[" + iRow + "]/inqrhistno") );
- setParameter("SMMMO034_inqrnm", model.getValue(inqr_path + "[" + iRow + "]/inqrnm") );
- setParameter("SMMMO034_inqrflag", model.getValue(inqr_path + "[" + iRow + "]/inqrflag") );
- setParameter("SMMMO034_pntmflag", "3");
- }
- else if( inqrPopFlag == "APP" ){
- setParameter("SMMMO034_lastcallyn", "N"); //문진팝업 최종 호출 여부:N
- setParameter("SMMMO034_cpgappno", appNo_SMMMO00110);
- setParameter("SMMMO034_cpgno", cpgno);
- setParameter("SMMMO034_cpghistseq", cpghistseq);
- setParameter("SMMMO034_appyn", "Y");
- setParameter("SMMMO034_steplistno", stepArray_SMMMO00110); //적용구간 내 스텝 리스트
- setParameter("SMMMO034_pntmflag", "3");
- }
- else if( inqrPopFlag == "END" ){
- setParameter("SMMMO034_lastcallyn", "Y"); //문진팝업 최종 호출 여부:Y(퇴원예고시점에 필수처방사유 문진까지 함께 조회하기 위해)
- setParameter("SMMMO034_cpgappno", appNo_SMMMO00110);
- setParameter("SMMMO034_cpgno", cpgno);
- setParameter("SMMMO034_cpghistseq", cpghistseq);
- setParameter("SMMMO034_appyn", "Y");
- }
-
- modal("SPMMP03400"); //문진팝업
-
- clearParameter("SMMMO034_lastcallyn");
- clearParameter("SMMMO034_cpgappno");
- clearParameter("SMMMO034_cpgno");
- clearParameter("SMMMO034_cpghistseq");
- clearParameter("SMMMO034_pid");
- clearParameter("SMMMO034_cretno");
- clearParameter("SMMMO034_orddd");
- clearParameter("SMMMO034_ordtype");
- clearParameter("SMMMO034_inqrno");
- clearParameter("SMMMO034_inqrhistno");
- clearParameter("SMMMO034_inqrnm");
- clearParameter("SMMMO034_inqrflag");
- clearParameter("SMMMO034_appyn");
- clearParameter("SMMMO034_steplistno");
- clearParameter("SMMMO034_pntmflag");
- }
-
- /**
- * @group :
- * @ver : 2009.05.
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 문진정보만을 재조회한다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetInqrList(){
- var iRow = grd_inqr.row;
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/cpgno", model.getValue("/root/temp1/getdata/cpgno"));
- model.makeValue("/root/send/reqdata/cpghistseq", model.getValue("/root/temp1/getdata/cpghistseq"));
- model.makeValue("/root/send/reqdata/cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- model.makeValue("/root/send/reqdata/inqrno", model.getValue("/root/main/inqrinfo/inqrheader[" + iRow + "'/inqrno"));
- model.makeValue("/root/send/reqdata/inqrhistno", model.getValue("/root/main/inqrinfo/inqrheader[" + iRow + "'/inqrhistno"));
- model.makeValue("/root/send/reqdata/getheaderyn", "Y");
- model.makeValue("/root/send/reqdata/appyn", "Y");
- model.makeValue("/root/send/reqdata/histjoinyn", "Y");
-
- submit("TRMQP04001", true);
-
- model.removeNodeset("/root/send/reqdata");
- }
-
- /**
- * @group :
- * @ver : 2010.05.18
- * @by : 전지은
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : CPG인 경우 적용범위 나열
- * @param : flag (CP만 적용하려고 할 경우 W 를 받음)
- * @return :
- * @---------------------------------------------------
- */
- function fGetAppScopList( flag ){
- if( isNull(flag) ) flag = "G";
- model.setValue("/root/main/appscopmode", flag);
-
- if( cpgflagcd == "02" ){
- var pathScopList = null;
- if ( flag != "W" ) pathScopList = instance1.selectNodes("/root/main/steppath/info[settypecd!='W']");
- else pathScopList = instance1.selectNodes("/root/main/steppath/info[settypecd!='G']");
-
- var prtnYN ="N"; //출력여부
- var prtnCnts = ""; //출력내용
- for (var i=0;i<pathScopList.length;i++) {
- var node = pathScopList.item(i);
- var startendflagNode = node.selectSingleNode("startendflag");
- var stepnmNode = node.selectSingleNode("stepnm");
- var settypecdNode = node.selectSingleNode("settypecd");
- if ( flag != "W" && settypecdNode.text == "W" ){ //CP영역은 자동 범위 지정에서 제외 (2010.06.26 JJE)
- break;
- }else if ( flag == "W" && settypecdNode.text == "G" ){
- break;
- }
-
- if ( startendflagNode.text == "S" ) prtnYN = "Y";
- if( prtnYN == "Y" ){
- if ( !isNull(prtnCnts) ) prtnCnts = prtnCnts + " -> ";
- prtnCnts = prtnCnts + stepnmNode.text;
- }
- if ( startendflagNode.text == "E" ){
- if( prtnYN != "Y" ) prtnCnts = prtnCnts + stepnmNode.text;
- break;
- }
- }
- //if( isNull(prtnCnts) ) prtnCnts = "적용범위 없음 (CPG 프로토콜 발행을 하시려면 Outline View에서 범위를 지정하십시오.)";
- model.setValue("/root/main/appscoplist", prtnCnts);
- cap_appscoplist.refresh();
- }
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body pagewidth="1228" pageheight="942" guideline="1,1187;2,932;" idprefix="import" style="font-size:12pt; margin-left:8; margin-top:0; margin-right:0; margin-bottom:0; ">
- <group id="grp_biz" scroll="auto" style="left:0px; top:0px; width:1208px; height:911px; ">
- <caption id="caption9" class="cell_1" visibility="hidden" style="left:711px; top:108px; width:20px; height:23px; ">메모</caption>
- <line id="line7" class="line_2" style="x1:0px; y1:30px; x2:590px; y2:30px; "/>
- <line id="line11" class="line_3" style="x1:0px; y1:99px; x2:1194px; y2:99px; "/>
- <input id="ipt_cpgno" ref="/root/main/masterinfo/info/cpgno" class="input_default" visibility="hidden" style="left:696px; top:111px; width:25px; height:19px; "/>
- <input id="ipt_cpghistseq" ref="/root/main/masterinfo/info/cpghistseq" class="input_default" visibility="hidden" style="left:721px; top:111px; width:25px; height:19px; "/>
- <select1 id="cmb_cpglasthistyn" ref="/root/main/masterinfo/info/cpglasthistyn" class="combo_default" visibility="hidden" appearance="minimal" style="left:716px; top:111px; width:25px; height:19px; ">
- <choices>
- <item>
- <label>Y</label>
- <value>Y</value>
- </item>
- <item>
- <label>N</label>
- <value>N</value>
- </item>
- </choices>
- </select1>
- <textarea id="textarea1" ref="/root/main/masterinfo/info/cpgmemo" navindex="17" visibility="hidden" style="left:696px; top:113px; width:40px; height:20px; "/>
- <line id="line13" class="line_3" style="x1:0px; y1:908px; x2:1208px; y2:908px; "/>
- <caption id="cap_cpgorddeptcd" class="cell_1" visibility="hidden" style="left:706px; top:111px; width:15px; height:21px; ">CP 진료과</caption>
- <input id="ipt_cpgnm" ref="/root/main/masterinfo/info/cpgnm" class="input_essential" navindex="1" visibility="hidden" style="left:780px; top:110px; width:23px; height:19px; "/>
- <select1 id="cmb_cpgorddeptcd" ref="/root/main/masterinfo/info/cpgorddeptcd" class="combo_default" navindex="8" visibility="hidden" appearance="minimal" style="left:691px; top:114px; width:28px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/orddeptlist/dept">
- <label ref="depthngnm"/>
- <value ref="deptcd"/>
- </itemset>
- </choices>
- </select1>
- <input id="ipt_swimlineno" ref="/root/main/masterinfo/info/swimlineno" class="input_default" disabled="true" navindex="10" visibility="hidden" format="999" style="left:723px; top:113px; width:11px; height:19px; "/>
- <caption id="cap_swimlineno" class="cell_1" visibility="hidden" style="left:733px; top:111px; width:19px; height:21px; ">스윔라인 수</caption>
- <caption id="cap_fcstinhospdayno" class="cell_1" visibility="hidden" style="left:795px; top:110px; width:20px; height:23px; ">예상재원일수</caption>
- <input id="ipt_fcstinhospdayno" ref="/root/main/masterinfo/info/fcstinhospdayno" class="input_default" navindex="9" visibility="hidden" format="999" style="left:815px; top:110px; width:15px; height:19px; "/>
- <caption id="cap_cpgnm" class="cell_1" visibility="hidden" style="left:760px; top:110px; width:20px; height:23px; ">CP/CPG명</caption>
- <caption id="cap_cpgflagcd" class="cell_1" visibility="hidden" style="left:696px; top:109px; width:15px; height:21px; ">CP/CPG 구분</caption>
- <select1 id="rdo_cpgflagcd" ref="/root/main/masterinfo/info/cpgflagcd" navindex="2" visibility="hidden" appearance="full" cellspacing="5" cols="2" overflow="visible" style="left:711px; top:111px; width:50px; height:18px; border-style:none; ">
- <choices>
- <item>
- <label>CP</label>
- <value>01</value>
- </item>
- <item>
- <label>CPG</label>
- <value>02</value>
- </item>
- </choices>
- </select1>
- <button id="btn_index" class="btn_sw" visibility="hidden" group="tab1" style="left:691px; top:111px; width:69px; height:22px; ">
- <caption>색인</caption>
- </button>
- <button id="btn_pack" class="btn_sw" visibility="hidden" group="tab2" style="left:691px; top:111px; width:69px; height:22px; ">
- <caption>묶음CP</caption>
- </button>
- <datagrid id="grd_getindxlist" nodeset="/root/main/indexinfo/item" visibility="hidden" caption="indxNO^indxSeq^indxNM^supIndxNO^indxRefSeq^cpgNo^cpgHistSeq^depth^status" colsep="^" colwidth="45, 51, 50, 66, 73, 49, 72, 41, 39" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:940px; top:0px; width:165px; height:25px; ">
- <col ref="indxno"/>
- <col ref="indxseq"/>
- <col ref="indxnm"/>
- <col ref="supindxno"/>
- <col ref="indxrefseq"/>
- <col ref="cpgno"/>
- <col ref="cpghistseq"/>
- <col ref="depth"/>
- <col ref="status"/>
- </datagrid>
- <input id="ipt_times_old" ref="/root/main/stepinfo/info/times" class="input_default" navindex="22" visibility="hidden" style="left:1149px; top:34px; width:45px; height:19px; "/>
- <select1 id="ipt_times" ref="/root/main/stepinfo/info/times" navindex="22" visibility="hidden" appearance="minimal" style="left:696px; top:111px; width:20px; height:19px; ">
- <choices>
- <itemset nodeset="/root/temp1/daylist/day">
- <label ref="nm"/>
- <value ref="id"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- //var currStepno = parseInt(model.getValue("/root/main/steplist/info/stepno"));
- var stepno = parseInt(model.getValue("/root/main/stepinfo/info/stepno"));
- var times = model.getValue("/root/main/stepinfo/info/times");
- var memo = model.getValue("/root/main/stepinfo/info/stepmemo");
- //ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/stepmemo", memo);
- ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/times", times);
- ivw_outline.grp_swimline.refresh();
- if( ivw_outline.model.getValue("/root/main/steplist/info[" + stepno + "]/m") == "" ){
- ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/m", "u" );
- }
- //day 이미지를 생성한다.
- ivw_outline.window.javascript.fSetDayImage(stepno, times);
- ]]>
- </script>
- </select1>
- <input id="ipt_stepnm" ref="/root/main/stepinfo/info/stepnm" class="input_default" navindex="22" visibility="hidden" style="left:716px; top:111px; width:18px; height:19px; ">
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- var stepno = parseInt(model.getValue("/root/main/stepinfo/info/stepno"));
- var times = model.getValue("/root/main/stepinfo/info/times");
- var memo = model.getValue("/root/main/stepinfo/info/stepmemo");
- var stepnm = model.getValue("/root/main/stepinfo/info/stepnm");
- //ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/stepmemo", memo);
- //ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/times", times);
- ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/stepnm", stepnm);
- ivw_outline.grp_swimline.refresh();
- if( ivw_outline.model.getValue("/root/main/steplist/info[" + stepno + "]/m") == "" ){
- ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/m", "u" );
- }
- ]]>
- </script>
- </input>
- <textarea id="tar_stepmemo" ref="/root/main/stepinfo/info/stepmemo" navindex="24" visibility="hidden" style="left:695px; top:111px; width:23px; height:17px; ">
- <script type="javascript" ev:event="DOMFocusIn">
- <![CDATA[
- tar_stepmemo.attribute("height") = "50px";
- tar_stepmemo.refresh();
- ]]>
- </script>
- <script type="javascript" ev:event="DOMFocusOut">
- <![CDATA[
- tar_stepmemo.attribute("height") = "19px";
- tar_stepmemo.refresh();
- ]]>
- </script>
- </textarea>
- <caption id="cap_outlineinfo" class="tit_2" visibility="hidden" style="left:716px; top:119px; width:15px; height:13px; ">Outline 정보</caption>
- <button id="btn_detail_popup" class="btn5_letter4" style="left:254px; top:117px; width:64px; height:19px; ">
- <caption>상세보기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fOpenStepDetlInfo();
- ]]>
- </script>
- <hint>
- <![CDATA[CP 원처방 정보를 팝업으로 보여줍니다.]]>
- </hint>
- </button>
- <switch id="swt_formatt" style="left:0px; top:25px; width:1206px; height:80px; background-color:#993366; border-style:solid; ">
- <case id="att_tab" selected="true">
- <datagrid id="grd_attfile" nodeset="/root/main/attfileinfo/attach" caption="파일명^경로^caption1" colsep="^" colwidth="472, 100, 30" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:687px; top:0px; width:515px; height:77px; ">
- <col ref="attfilenm" style="left:20px; top:23px; width:4zz31px; height:23px; "/>
- <col ref="file" visibility="hidden"/>
- <col ref="check" type="checkbox" visibility="hidden"/>
- </datagrid>
- <datagrid id="grd_formlist" nodeset="/root/main/formlist/info" caption="^Day^STEP^작성일^서식명^상태^서식코드^구분(동의서여부)^caption1" colsep="^" colwidth="20, 33, 70, 70, 286, 57, 83, 100, 100" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:87px; top:0px; width:510px; height:77px; ">
- <col ref="formseq" type="output" visibility="hidden"/>
- <col ref="times" type="output"/>
- <col ref="stepnm" type="output"/>
- <col ref="prcpdd" type="output" format="yyyy-mm-dd"/>
- <col ref="formnm" type="output"/>
- <col disabled="true" ref="status" type="combo">
- <choices>
- <item>
- <label>출력</label>
- <value>P</value>
- </item>
- <item>
- <label>반납</label>
- <value>R</value>
- </item>
- <item>
- <label>반납확인</label>
- <value>C</value>
- </item>
- <item>
- <label>삭제</label>
- <value>D</value>
- </item>
- <item>
- <label>출력취소</label>
- <value>CP</value>
- </item>
- <item>
- <label>반납취소</label>
- <value>CR</value>
- </item>
- <item>
- <label>반납확인취소</label>
- <value>CC</value>
- </item>
- <item>
- <label>삭제취소</label>
- <value>CD</value>
- </item>
- <item>
- <label>임시저장</label>
- <value>0T</value>
- </item>
- <item>
- <label>인증저장</label>
- <value>0S</value>
- </item>
- <item>
- <label>미작성</label>
- <value>0N</value>
- </item>
- <item>
- <label>미발행</label>
- <value>10</value>
- </item>
- <item>
- <label>발행</label>
- <value>20</value>
- </item>
- <item>
- <label>재발행</label>
- <value>30</value>
- </item>
- <item>
- <label>재출력</label>
- <value>40</value>
- </item>
- <item>
- <label>취소</label>
- <value>C04</value>
- </item>
- <item>
- <label>취소</label>
- <value>C05</value>
- </item>
- <item>
- <label>의뢰임시</label>
- <value>C11</value>
- </item>
- <item>
- <label>의뢰</label>
- <value>C12</value>
- </item>
- <item>
- <label>의뢰확정</label>
- <value>C20</value>
- </item>
- <item>
- <label>회신임시</label>
- <value>C21</value>
- </item>
- <item>
- <label>회신</label>
- <value>C22</value>
- </item>
- <item>
- <label>회신확정</label>
- <value>C30</value>
- </item>
- <item>
- <label>추가임시</label>
- <value>C31</value>
- </item>
- <item>
- <label>추가회신</label>
- <value>C32</value>
- </item>
- <item>
- <label>추가확정</label>
- <value>C40</value>
- </item>
- </choices>
- </col>
- <col ref="formcd" visibility="hidden"/>
- <col ref="formprogflag" visibility="hidden"/>
- <col ref="formrecseq" visibility="hidden"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- //if(grd_formlist.isCell(event.target) && grd_formlist.mouseCol >= 1 && grd_formlist.row>0 && grd_formlist.row<=grd_formlist.rows ){
- // var sRow = grd_formlist.mouseRow;
- //}else{
- var sRow = grd_formlist.row; //환자계획표에서 서식을 띄울수도 있으므로
- //}
-
- if( sRow >= grd_formlist.fixedRows ) {
- var formProgFlag = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formprogflag");
- var cnstYNflag = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/recvdeptcd");
- var mon = getCurrentMonitorNumber();
-
- if( formProgFlag == "OCR" ){
- //OCD(동의서)
- //mainObj.window.javascript.open("SMMRF02300");
- var prcpgenrflag = model.getValue ("/root/patflag/list/prcpgenrflag");
- var formcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formcd");
- if ( prcpgenrflag == "O" ) {
- var orddd = model.getValue ( "/root/paminfo/list/orddd" );
- } else {
- var orddd = model.getValue ( "/root/paminfo/list/indd" );
- }
- var cretno = model.getValue("/root/paminfo/list/cretno");
- var ordtype = model.getValue ("/root/paminfo/list/ioflag");
- var formtypecls = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formtypecls");
- var ocrtagprntyn = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/ocrtagprntyn");
-
- //ivw_ocr.window.javascript.fGetOCRInfo(formcd, iPid, iOrddd, iCretno, iIoflag, formtypecls, ocrtagprntyn);
- //ivw_ocr.visible = true;model.setValue("/root/temp/cpform/formcd", formcd);
- //ivw_ocr.window.javascript.fPrint();
- modal( "SMMRF02300" );
- //model.setValue("/root/temp/cpform/formcd", formcd);
- fGetFormList("R"); //서식목록을 조회한다(재조회)
- //fsetFormGlobalVariable(); //서식 우선순위 설정
-
- }else if( formProgFlag == "PROF" ){
- //제증명
- var mainObj = getMainViewer();
-
- var formcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formcd");
- var formrecseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formrecseq");
- var sortseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formseq");
-
- model.makeValue("/root/temp/popup/pid" , iPid);
- model.makeValue("/root/temp/popup/orddd" , iOrddd);
- model.makeValue("/root/temp/popup/cretno" , iCretno);
- model.makeValue("/root/temp/popup/ordtype" , iIoflag);
- model.makeValue("/root/temp/popup/disflag" , "popup");
- model.makeValue("/root/temp/popup/profcertseq/formrecseq", formrecseq);
- /*
- model.makeValue("/root/temp/popup/formcd", formcd);
- model.makeValue("/root/temp/popup/formrecseq", formrecseq);
- model.makeValue("/root/temp/popup/sortseq", sortseq);
- */
- mainObj.window.javascript.open("SMMMR02900", mon, 0, 0, "SMMMR02900", "/root/temp/popup", "/root/temp/popup" );
- modal("SMMMR02900", mon, 0, 0, "SMMMR02900", "/root/temp/popup", "/root/temp/popup" );
- fGetFormList("R"); //서식목록을 조회한다(재조회)
-
- }else{
- if (cnstYNflag =="-" ) { // 수신과가 없는 경우는 일반 서식임.
- //서식 fOpenRec();
- var formcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formcd");
- var formrecseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formrecseq");
-
- if (formrecseq == "" && model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formrecseq1") != "") { //20130524 정창혁
- formrecseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formrecseq1");
- }
- var seq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formseq");
- var prcpdd = ""; //조회일자
- if (cpgflagcd=="02" && isNull(formrecseq)) prcpdd = getCurrentDate(); //CPG는 현재일자로 열어줌 (2010.06.03 JJE)
- else prcpdd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/prcpdd");
- var calledflag = "cpgmain|" + seq; // 서식프로그램에서 알 수 있도록 CP구분자 + 서식 seq (필요하면 값을 더 추가)
-
- var mainObj = getMainViewer();
- var OpenFormYN = mainObj.instance1.selectSingleNode( "/root/hidden/choinewform" );
- if( OpenFormYN == null ){
- //messageBox("진료기록 메인 화면을 여는 중입니다. \n조회할 서식을 다시 한번", "C002");
- fGetFormList("O"); //서식목록을 조회한다(재조회)
- return;
- }
- else{
- //서식로더에서 필료한 파라메터 설정 (2010.05.26 JJE)
- mainObj.window.javaScript.setParameter("disppatinfo", iPid + "▦" + iHngnm + "▦" + iSex+"/"+iAge + "▦" + iOrddeptnm + "▦" + iRoomcd );
-
- //수술기록지/DSC기록지 선택 시, 환자의 예약수술이 1건인 경우, 수술예약번호를 던진다 (상단 수술예약번호 정보)
- var srcformcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/srcformcd");
- if( srcformcd == "0000000676" || srcformcd == "0000003325" ){
- model.makeValue( "/root/send/pamdata/pid" , model.getValue("/root/paminfo/list/pid") );
- model.makeValue( "/root/send/pamdata/orddd" , iOrddd );
-
- var rsrvOpCnt = 0;
- //if( instance1.selectSingleNode("/root/temp1/oplist/info") == null ){
- submit("TRMMP02801", false);
- //}
- rsrvOpCnt = instance1.selectNodes("/root/temp1/oplist/info").length;
- if( rsrvOpCnt > 1 ){
- setParameter ( "SMMMO00800_returnFlag", "OCR" );
- modal("SPMMP02800", 1, 0, 0, "SPMMP02800", "/root/paminfo/list", "/root/send/pamdata" );
- if( getParameter("SMMMO00800_returnFlag") == "OCR" ){
- //리스트 팝업에서 선택하지 않고, 그냥 닫은 경우
- rsrvOpCnt = 0;
- }else{
- //리스트에서 1건 선택하거나, 그외의 경우, 수술예약리스트에서 1건을 택했을 수 있으므로, 다시 카운트한다
- rsrvOpCnt = instance1.selectNodes("/root/temp1/oplist/info").length;
- }
- clearParameter( "SMMMO00800_returnFlag" );
- }
- if( rsrvOpCnt == 1 ){
- var opstatcd = model.getValue("/root/temp1/oplist/info/opstatcd");
- //확정된 수술이 1건 존재 시,
- if(opstatcd != "00" && opstatcd != "10"){
- //수술기록예정일 = 수술확정일
- //if(model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/prcpdd") == model.getValue("/root/temp1/oplist/info/opcnfmdd"))
-
- var ioflag = "T" // 수술일 경우 ioflag:T
- var pid = iPid
- var opcnfmdd = model.getValue("/root/temp1/oplist/info/opcnfmdd");
- var cretno = "";
- var instcd = model.getValue ( "/root/paminfo/list/instcd" );
- var perfdeptcd = model.getValue("/root/temp1/oplist/info/perfdeptcd"); //v
- var perfdrid = model.getValue("/root/temp1/oplist/info/perfdrid"); //v
- var patflag = iPrcpgenrflag
- var procflag = "F"; // 최초조회:F , 재조회:R
- var oprsrvno = model.getValue("/root/temp1/oplist/info/oprsrvno");
- var ophistno = model.getValue("/root/temp1/oplist/info/ophistno"); //v
- var srchdd = ""; //조회일자
- if (cpgflagcd=="02" && isNull(formrecseq)) srchdd = getCurrentDate(); //CPG는 현재일자로 열어줌 (2010.06.03 JJE)
- else srchdd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/prcpdd"); //조회일자
- var param = ioflag + "▦" +
- pid + "▦" +
- opcnfmdd + "▦" +
- cretno + "▦" +
- instcd + "▦" +
- perfdeptcd + "▦" +
- perfdrid + "▦" +
- patflag + "▦" +
- procflag + "▦" +
- oprsrvno + "▦" +
- ophistno + "▦" +
- srchdd;
- setParameter("condparam", param);
- modal("SPMMO08900", 1, 0, 0, "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
-
- }
- } //end if( rsrvOpCnt == 1 )
- model.removeNodeset("/root/send/pamdata");
- }
- }
- mainObj.window.javascript.fOpenFormByOther(formcd, formrecseq, calledflag, prcpdd);
-
- } else { // 컨설트를 오픈할 경우
- var formcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formcd");
- var cnstflag = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/cnstflag");
- var recvdeptcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/recvdeptcd");
- var recvuserid = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/recvuserid");
- var cnstclsnm = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/cnstclsnm");
- var cnstcnts = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/cnstcnts");
- var formrecseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formrecseq");
- if (isNull(formrecseq)) {
- setParameter("openmode", "newcnstform"); //오픈모드
- setParameter("formcd", formcd); //서식코드
- setParameter("SMMMR04900_cnstflag", cnstflag); //의뢰구분(1:진료의뢰, 3:타과의뢰)
- setParameter("SMMMR04900_cnstdeptcd", recvdeptcd); //수신과코드
- setParameter("SMMMR04900_drid", recvuserid); //수신사용자
- setParameter("SMMMR04900_formnm", cnstclsnm); //서식명
- setParameter("reqcnts", cnstcnts); //자동입력내용
- setParameter("reqoverwrite", "false"); //기록 덮어쓰기여부
- modal("SSMMR01100", 1, 0, 0, "", "", "");
-
- clearParameter("openmode");
- clearParameter("formcd");
- clearParameter("SMMMR04900_cnstflag");
- clearParameter("SMMMR04900_cnstdeptcd");
- clearParameter("SMMMR04900_drid");
- clearParameter("SMMMR04900_formnm");
- clearParameter("reqcnts");
- clearParameter("reqoverwrite");
- } else {
- setParameter("openmode", "recform"); //오픈모드는 “recform”
- setParameter("formrecseq", formrecseq);
- modal("SSMMR01100", 1, 0, 0 ,"", "", "");
- clearParameter("openmode");
- clearParameter("formrecseq");
- }
- }
- }
- }
- // fSnedValToCpWnd (formCode, formrecseq, flag)
- ]]>
- </script>
- </datagrid>
- <caption id="cap_formlist" class="cell_1" style="left:0px; top:1px; width:85px; height:75px; ">서식목록</caption>
- <caption id="cap_attfile" class="cell_1" style="left:601px; top:1px; width:85px; height:56px; ">첨부파일</caption>
- <button id="brn_download" class="btn2_letter6" style="left:601px; top:58px; width:86px; height:19px; ">
- <caption>다운로드</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- //저장한 파일을 다운로드한다.
- var attLength = instance1.selectNodes("/root/main/attfileinfo/attach").length;
- var iRow = 0;
-
- if( attLength <= 0 ){
- iRow = 0;
- var msg = messageBox("다운로드 할 파일이", "E014");
- return;
-
- }else{
- if( grd_attfile.row > 0 ){
- iRow = grd_attfile.row;
-
- }else{
- if( attLength == 1 ) iRow = 1;
- }
- }
-
- if( iRow == 0 ) {
- var msg = messageBox("다운로드 할 파일을", "C002");
- return;
- } else {
- fDownLoadFile( iRow );
- }
- ]]>
- </script>
- </button>
- <datagrid id="grd_inqr" nodeset="/root/main/inqrinfo/inqrheader" visibility="hidden" caption="STEP^작성일^문진팝업명^상태" colsep="^" colwidth="112, 74, 225, 60" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:687px; top:0px; width:513px; height:77px; ">
- <col ref="stepnm" type="output" style="left:20px; top:23px; width:4zz31px; height:23px; "/>
- <col ref="inqranswdd" type="output" format="yyyy-mm-dd"/>
- <col ref="title" type="output"/>
- <col disabled="true" ref="inqrstatcd" type="combo">
- <choices>
- <item>
- <label>작성</label>
- <value>E</value>
- </item>
- <item>
- <label>확인</label>
- <value>C</value>
- </item>
- <item>
- <label>미작성</label>
- <value>-</value>
- </item>
- <item>
- <label>미작성</label>
- <value>N</value>
- </item>
- </choices>
- </col>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- fLoadInqrPopup("SEL"); //문진팝업호출
-
- ]]>
- </script>
- </datagrid>
- </case>
- <case id="incompletion_tab" style="left:0px; top:0px; width:1204px; height:78px; ">
- <datagrid id="grd_errprcplist" nodeset="/root/main/invalprcplist/saveinvaliprcplist" visibility="hidden" caption="완성^종류^처방일자^처방명^오류 메세지^총용량^총용량^수량^수량^횟수^일수^급비^용법/검체^MIX^전달^원내외^처치부서^희망일자^선택진료^등록일시^등록자^처방코드" colsep="^" colwidth="50, 60, 75, 115, 315, 45, 27, 37, 27, 40, 37, 56, 150, 38, 40, 50, 100, 80, 57, 80, 80, 0" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:0px; width:1203px; height:77px; ">
- <col ref="valyn" type="inputbutton"/>
- <col class="gridcombo" ref="prcpkindcd" type="combo" style="text-align:center; focus-rect:visible; ">
- <choices>
- <itemset nodeset="/root/init/prcpkindcd/M0003">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- </col>
- <col ref="prcpdd" format="yyyy-mm-dd" style="left:20px; top:23px; width:4zz31px; height:23px; "/>
- <col ref="prcpnm"/>
- <col ref="incpltnresn"/>
- <col ref="prcpvol" type="input" format="#.#" maxlength="5.3" style="text-align:center; focus-rect:visible; "/>
- <col ref="prcpvolunitnm" type="output" style="text-align:center; focus-rect:visible; "/>
- <col ref="prcpqty" type="input" format="#.#" maxlength="5.3" style="text-align:center; focus-rect:visible; "/>
- <col ref="prcpqtyunitnm" style="text-align:center; focus-rect:visible; "/>
- <col ref="prcptims" type="input" format="#" style="text-align:center; focus-rect:visible; "/>
- <col ref="prcpdayno" type="input" format="#" style="text-align:center; focus-rect:visible; "/>
- <col ref="payflagcd" type="combo">
- <choices>
- <itemset nodeset="/root/init/payflagcd/M0029">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- </col>
- <col ref="drugmthdspccdnm" type="output" style="focus-rect:visible; "/>
- <col ref="prcpmixno" type="input" style="focus-rect:visible; "/>
- <col ref="prcpdelivefact" style="focus-rect:visible; "/>
- <col disabled="true" ref="hosinhosoutflag" type="combo" style="text-align:center; focus-rect:visible; ">
- <choices>
- <item>
- <label>원내</label>
- <value>I</value>
- </item>
- <item>
- <label>원외</label>
- <value>O</value>
- </item>
- <item>
- <label/>
- <value/>
- </item>
- </choices>
- </col>
- <col class="gridcombo" ref="prcpexecdeptcd" type="combo" style="focus-rect:visible; ">
- <choices>
- <itemset nodeset="/root/init/orddept/dept">
- <![CDATA[s]]>
- <label ref="depthngnm"/>
- <value ref="deptcd"/>
- </itemset>
- </choices>
- </col>
- <col ref="prcphopedd" type="inputdate" format="yyyy-mm-dd" style="text-align:center; focus-rect:visible; "/>
- <col checkvalue="Y,N" ref="choiordflag" type="checkbox" style="focus-rect:visible; "/>
- <col ref="rgsttm" visibility="hidden" format="yyyy-mm-dd"/>
- <col ref="rgstridnm" visibility="hidden"/>
- <col ref="prcpcd"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if( model.getValue("/root/temp1/authyn") == "N" ){
- return;
- }
- invalYN_SMMMO00110 = "Y";
- if( grd_errprcplist.isCell(event.target) && grd_errprcplist.mouseCol >= 2 && grd_errprcplist.row>0 && grd_errprcplist.row<=grd_errprcplist.rows ){
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", "-");
- var prcpclscd = model.getValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/prcpclscd");
- var status = model.getValue( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status");
-
- // "/root/main/prcp" 일괄저장시 사용하는 경로이므로, 값을 받기 위해서 잠깐 사용하고, 이벤트가 끝나면 "/root/main/prcp" 를 비워준다
- model.removeNodeset("/root/main/prcp/prcplist");
-
- var errTgrPrcpNode = instance1.selectNodes("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]"); //X
- var trgErrPrcpList = getNodeListCSV(errTgrPrcpNode); //X
- var errPrcpNode = instance1.selectNodes("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]"); //O
- var errPrcpList = getNodeListCSV(errPrcpNode); //O
- setCSVToNode("/root/main/prcp", errPrcpList, "prcplist");
- var beforePrcpNode = instance1.selectNodes("/root/main/prcp/prcplist[" + 1 + "]"); //O
- var beforeErrPrcpList = getNodeListCSV(beforePrcpNode); //O
-
- var prcpName = model.getValue("/root/main/prcp/prcplist/prcpnm");
-
- //처방 상세팝업에서 grd_prcplist 의 노드를 사용하기 때문에 수동으로 설정해준다
- prcpNode = "/root/main/prcp/prcplist";
- srcNode = "/root/main/invalprcplist/saveinvaliprcplist";
- //var curRow = grd_errprcplist.row;
- // grd_prcplist.select(1, 2) = true;
-
- //처방 종류에 따라 다른 팝업을 띄운다
- if ( grd_errprcplist.col == grd_errprcplist.colref("drugmthdspccdnm") && status != "S" ) {
- if ( prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6") {
- fPrcpModal ("SPMMO01900", 500, 200); //복용방법 팝업
-
- } else if ( prcpclscd == "B2" || prcpclscd == "B4" || prcpclscd == "B6" ) {
- fGetSpc(1); //진단검사 검체 호출
- }
-
- } else if ( grd_errprcplist.col == "15" && status != "S" ) {
- fPrcpdelivefact( "M" ); //전달사항 일괄입력
-
- } else if ( status != "S" ) {
- fPrcpDetl(1); //처방상세팝업
- }
-
- //팝업이 닫힌 후, 선택한 로우의 값이 변경되었다면, row의 status를 update 로 바꾼다
- var afterPrcpList = instance1.selectNodes("/root/main/prcp/prcplist[" + 1 + "]");
- var afterErrPrcpList = getNodeListCSV(afterPrcpList);
-
- if( beforeErrPrcpList != afterErrPrcpList ){ //변경이 이루어졌을 경우,
- grd_errprcplist.rowStatus(grd_errprcplist.row) = 2;
- model.setValue("/root/main/prcp/prcplist[" + 1 + "]/status", "U"); //인증저장은 처음 insert 이므로(But, 프로토콜처방은 update)
- model.setValue("/root/main/prcp/prcplist[" + 1 + "]/prcpnm", prcpName); // ★ 왜 처방명이 사라지는지 모르겠다...!!
- model.copyNode( "/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]", "/root/main/prcp/prcplist[" + 1 + "]" );
- grd_errprcplist.refresh();
- }
- }else{
- invalYN_SMMMO00110 = "N";
- return;
- }
-
- invalYN_SMMMO00110 = "N";
- model.removeNodeset("/root/main/prcp/prcplist");
- appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" ); //검색라인추가
- //grp_biz.attribute("overflow") = "hidden";
- ]]>
- </script>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- model.setValue("/root/main/invalprcplist/saveinvaliprcplist[" + grd_errprcplist.row + "]/status", "U"); //인증저장은 처음 insert 이므로(But, 프로토콜처방은 update)
- // alert( imp_prcp.attribute("width") + " x " + imp_prcp.attribute("height"));
- // alert( ivw_outline.attribute("width") + " x " + ivw_outline.attribute("height"));
- ]]>
- </script>
- <script type="javascript" ev:event="onbuttonclick">
- <![CDATA[
- invalYN_SMMMO00110 = "Y";
-
- if( fTretInvalPrcp() ){ //해당 미완성 처방 완성
- return;
- //grd_errprcplist.refresh();
- btn_savecomplprcp.dispatch("DOMActivate"); //미완성처방 일괄 저장
- }
-
- invalYN_SMMMO00110 = "N";
-
- model.removeNodeset("/root/main/prcp/prcplist");
- model.removeNodeset("/root/temp1/tmpprcplist/prcplist");
- appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" ); //검색라인추가
- grd_prcplist.nodeset = "/root/main/prcp/prcplist"; // /root/temp1/tmpprcplist/prcplist
- model.recalculate();
- ]]>
- </script>
- </datagrid>
- <iviewer id="ivw_invalprcp" style="left:0px; top:0px; width:1203px; height:77px; margin-left:0; margin-top:0; margin-right:0; margin-bottom:0; "/>
- </case>
- <case id="monitoring_tab">
- <datagrid id="grd_monitoringlist" nodeset="/root/main/mntrinfo/mntrlist" caption="모니터링 제목^모니터링 조건 (IF)^충족건수^방법^진행상태^OFF^cpgappno^alertprecondyn^slipno^sliphistno^cpgno^cpghistseq^cpgmntrflag^guidedocucnts^stepno^stepnm^alertcondflag^orddrid" colsep="^" colwidth="170, 220, 70, 106, 55, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0" ellipsis="true" mergecells="never" mergecellsfixedrows="never" rowheader="seq" rowsep="|" style="left:0px; top:0px; width:695px; height:77px; ">
- <col ref="slipnm" type="output"/>
- <col ref="alertcnts" type="output"/>
- <col ref="alertcondcnt" type="output"/>
- <col disabled="true" ref="alertgrde" type="combo">
- <choices>
- <itemset nodeset="/root/init/M0507/M0507">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- </col>
- <col disabled="true" ref="alertstatcd" type="combo">
- <choices>
- <itemset nodeset="/root/init/M0508/M0508">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- </col>
- <col checkvalue="Y,N" ref="alertoffyn" type="checkbox"/>
- <col ref="cpgappno"/>
- <col ref="alertprecondyn"/>
- <col ref="slipno" type="output"/>
- <col ref="sliphistno" type="output"/>
- <col ref="cpgno" type="output"/>
- <col ref="cpghistseq" type="output"/>
- <col ref="cpgmntrflag" type="output"/>
- <col ref="guidedocucnts" type="output"/>
- <col ref="stepno" type="output"/>
- <col ref="stepnm" type="output"/>
- <col ref="alertcondflag" type="output"/>
- <col ref="orddrid" type="output"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- var sRow = grd_monitoringlist.row;
- if ( sRow >= grd_monitoringlist.fixedRows && sRow <grd_monitoringlist.rows ) {
- var slipno = model.getValue("/root/main/mntrinfo/mntrlist[" + sRow + "]/slipno");
- var sliphistno = model.getValue("/root/main/mntrinfo/mntrlist[" + sRow + "]/sliphistno");
-
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/cpgappno", appNo_SMMMO00110);
- model.makeValue("/root/send/reqdata/slipno" , slipno);
- model.makeValue("/root/send/reqdata/sliphistno" , sliphistno);
- model.makeValue("/root/send/reqdata/appyn" , "Y");
- model.makeValue("/root/send/reqdata/histjoinyn" , "Y");
- submit("TRMMP00810", true);
- model.removeNodeset("/root/send/reqdata");
- //grd_monitoringinfo.refresh();
- }
-
- ]]>
- </script>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- var sRow = grd_monitoringlist.row;
- var sCol = grd_monitoringlist.col;
- var slipno = model.getValue("/root/main/mntrinfo/mntrlist[" + sRow + "]/slipno");
- var sliphistno = model.getValue("/root/main/mntrinfo/mntrlist[" + sRow + "]/sliphistno");
-
- if ( sRow >= grd_monitoringlist.fixedRows && sRow <= grd_monitoringlist.rows ) {
- if( sCol == grd_monitoringlist.colRef("alertoffyn") ){
- if( messageBox( "모니터링 알람 ON/OFF 여부를", "Q012" ) == 7 ){
- return;
- }
-
- model.removeNodeset("/root/send/reqdata");
- model.makeNode("/root/send/reqdata");
- //model.copyNode("/root/send/reqdata", "/root/main/mntrinfo/mntrlist[slipno='"+slipno+"' and sliphistno='"+sliphistno+"']");
- model.copyNode("/root/send/reqdata", "/root/main/mntrinfo/mntrlist[" + sRow + "]");
- model.makeValue("/root/send/reqdata/cpgappno", appNo_SMMMO00110);
- model.makeValue("/root/send/reqdata/attrflagcd", "1"); //모니터링
- model.makeValue("/root/send/reqdata/status", "U");
- submit( "TXMMP00810", false );
-
- }
- }
- ]]>
- </script>
- </datagrid>
- <datagrid id="grd_monitoringinfo" nodeset="/root/main/mntrdetlinfo/mntrdetllist" caption="구분^선행^코드^코드명^하한치^하한치^상한치^상한치^내용^단위" colsep="^" colwidth="30, 30, 70, 140, 45, 32, 45, 32, 33, 25" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:698px; top:0px; width:505px; height:75px; ">
- <col checkvalue="Y,N" disabled="true" ref="checkyn" type="checkbox"/>
- <col ref="alertprecondyn"/>
- <col ref="testcd" type="output" format="yyyy-mm-dd"/>
- <col ref="testnm" type="output"/>
- <col ref="reflval" type="output"/>
- <col disabled="true" ref="lvalappflag" type="combo">
- <choices>
- <item>
- <label>이상</label>
- <value>U</value>
- </item>
- <item>
- <label>이하</label>
- <value>D</value>
- </item>
- <item>
- <label>-</label>
- <value>-</value>
- </item>
- </choices>
- </col>
- <col ref="refhval" type="output"/>
- <col disabled="true" ref="hvalappflag" type="combo">
- <choices>
- <item>
- <label>이상</label>
- <value>U</value>
- </item>
- <item>
- <label>이하</label>
- <value>D</value>
- </item>
- <item>
- <label>-</label>
- <value>-</value>
- </item>
- </choices>
- </col>
- <col ref="refcnts" type="output"/>
- <col ref="unitnm" type="output"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- //if(grd_formlist.isCell(event.target) && grd_formlist.mouseCol >= 1 && grd_formlist.row>0 && grd_formlist.row<=grd_formlist.rows ){
- // var sRow = grd_formlist.mouseRow;
- //}else{
- var sRow = grd_formlist.row; //환자계획표에서 서식을 띄울수도 있으므로
- //}
-
- if( sRow >= grd_formlist.fixedRows ) {
- var formProgFlag = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formprogflag");
- var mon = getCurrentMonitorNumber();
-
- if( formProgFlag == "OCR" ){
- //OCD(동의서)
- //mainObj.window.javascript.open("SMMRF02300");
- var prcpgenrflag = model.getValue ("/root/patflag/list/prcpgenrflag");
- var formcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formcd");
- if ( prcpgenrflag == "O" ) {
- var orddd = model.getValue ( "/root/paminfo/list/orddd" );
- } else {
- var orddd = model.getValue ( "/root/paminfo/list/indd" );
- }
- var cretno = model.getValue("/root/paminfo/list/cretno");
- var ordtype = model.getValue ("/root/paminfo/list/ioflag");
- var formtypecls = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formtypecls");
- var ocrtagprntyn = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/ocrtagprntyn");
-
- //ivw_ocr.window.javascript.fGetOCRInfo(formcd, iPid, iOrddd, iCretno, iIoflag, formtypecls, ocrtagprntyn);
- //ivw_ocr.visible = true;model.setValue("/root/temp/cpform/formcd", formcd);
- //ivw_ocr.window.javascript.fPrint();
- modal( "SMMRF02300" );
- //model.setValue("/root/temp/cpform/formcd", formcd);
- fGetFormList("R"); //서식목록을 조회한다(재조회)
- //fsetFormGlobalVariable(); //서식 우선순위 설정
-
- }else if( formProgFlag == "PROF" ){
- //제증명
- var mainObj = getMainViewer();
-
- var formcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formcd");
- var formrecseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formrecseq");
- var sortseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formseq");
-
- model.makeValue("/root/temp/popup/pid" , iPid);
- model.makeValue("/root/temp/popup/orddd" , iOrddd);
- model.makeValue("/root/temp/popup/cretno" , iCretno);
- model.makeValue("/root/temp/popup/ordtype" , iIoflag);
- model.makeValue("/root/temp/popup/disflag" , "popup");
- model.makeValue("/root/temp/popup/profcertseq/formrecseq", formrecseq);
- /*
- model.makeValue("/root/temp/popup/formcd", formcd);
- model.makeValue("/root/temp/popup/formrecseq", formrecseq);
- model.makeValue("/root/temp/popup/sortseq", sortseq);
- */
- mainObj.window.javascript.open("SMMMR02900", mon, 0, 0, "SMMMR02900", "/root/temp/popup", "/root/temp/popup" );
- modal("SMMMR02900", mon, 0, 0, "SMMMR02900", "/root/temp/popup", "/root/temp/popup" );
- fGetFormList("R"); //서식목록을 조회한다(재조회)
-
- }else{
- //서식 fOpenRec();
- var mainObj = getMainViewer();
- var OpenFormYN = mainObj.instance1.selectSingleNode( "/root/hidden/choinewform" );
- if( OpenFormYN == null ){
- //messageBox("진료기록 메인 화면을 여는 중입니다. \n조회할 서식을 다시 한번", "C002");
- fGetFormList("O"); //서식목록을 조회한다(재조회)
- return;
- }
- else{
- //수술기록지/DSC기록지 선택 시, 환자의 예약수술이 1건인 경우, 수술예약번호를 던진다 (상단 수술예약번호 정보)
- var srcformcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/srcformcd");
- if( srcformcd == "0000000676" || srcformcd == "0000003325" ){
- model.makeValue( "/root/send/pamdata/pid" , model.getValue("/root/paminfo/list/pid") );
- model.makeValue( "/root/send/pamdata/orddd" , iOrddd );
-
- var rsrvOpCnt = 0;
- //if( instance1.selectSingleNode("/root/temp1/oplist/info") == null ){
- submit("TRMMP02801", false);
- //}
- rsrvOpCnt = instance1.selectNodes("/root/temp1/oplist/info").length;
- if( rsrvOpCnt > 1 ){
- setParameter ( "SMMMO00800_returnFlag", "OCR" );
- modal("SPMMP02800", 1, 0, 0, "SPMMP02800", "/root/paminfo/list", "/root/send/pamdata" );
- if( getParameter("SMMMO00800_returnFlag") == "OCR" ){
- //리스트 팝업에서 선택하지 않고, 그냥 닫은 경우
- rsrvOpCnt = 0;
- }else{
- //리스트에서 1건 선택하거나, 그외의 경우, 수술예약리스트에서 1건을 택했을 수 있으므로, 다시 카운트한다
- rsrvOpCnt = instance1.selectNodes("/root/temp1/oplist/info").length;
- }
- clearParameter( "SMMMO00800_returnFlag" );
- }
- if( rsrvOpCnt == 1 ){
- var opstatcd = model.getValue("/root/temp1/oplist/info/opstatcd");
- //확정된 수술이 1건 존재 시,
- if(opstatcd != "00" && opstatcd != "10"){
- //수술기록예정일 = 수술확정일
- //if(model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/prcpdd") == model.getValue("/root/temp1/oplist/info/opcnfmdd"))
-
- var ioflag = "T" // 수술일 경우 ioflag:T
- var pid = iPid
- var opcnfmdd = model.getValue("/root/temp1/oplist/info/opcnfmdd");
- var cretno = "";
- var instcd = model.getValue ( "/root/paminfo/list/instcd" );
- var perfdeptcd = model.getValue("/root/temp1/oplist/info/perfdeptcd"); //v
- var perfdrid = model.getValue("/root/temp1/oplist/info/perfdrid"); //v
- var patflag = iPrcpgenrflag
- var procflag = "F"; // 최초조회:F , 재조회:R
- var oprsrvno = model.getValue("/root/temp1/oplist/info/oprsrvno");
- var ophistno = model.getValue("/root/temp1/oplist/info/ophistno"); //v
- var srchdd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/prcpdd"); //조회일자
- var param = ioflag + "▦" +
- pid + "▦" +
- opcnfmdd + "▦" +
- cretno + "▦" +
- instcd + "▦" +
- perfdeptcd + "▦" +
- perfdrid + "▦" +
- patflag + "▦" +
- procflag + "▦" +
- oprsrvno + "▦" +
- ophistno + "▦" +
- srchdd;
- setParameter("condparam", param);
- modal("SPMMO08900", 1, 0, 0, "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
-
- }
- } //end if( rsrvOpCnt == 1 )
- model.removeNodeset("/root/send/pamdata");
- }
- }
- var formcd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formcd");
- var formrecseq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formrecseq");
- var seq = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/formseq");
- var prcpdd = model.getValue("/root/main/formlist/info["+ grd_formlist.row +"]/prcpdd"); //조회일자
- var calledflag = "cpgmain|" + seq; // 서식프로그램에서 알 수 있도록 CP구분자 + 서식 seq (필요하면 값을 더 추가)
-
- mainObj.window.javascript.fOpenFormByOther(formcd, formrecseq, calledflag, prcpdd);
-
- }
- }
- // fSnedValToCpWnd (formCode, formrecseq, flag)
- ]]>
- </script>
- </datagrid>
- </case>
- </switch>
- <button id="btn_formatt" class="btn_sw" group="tab2" selected="true" style="left:0px; top:4px; width:110px; height:22px; ">
- <caption>서식 / 첨부파일</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.toggle("att_tab");
- btn_savecomplprcp.visible = false;
- ]]>
- </script>
- </button>
- <button id="btn_savecomplprcp" class="btn2_letter2" visibility="hidden" style="left:1164px; top:4px; width:42px; height:19px; ">
- <caption>저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- btn_allInfoSave.selected = false;
- setParameter("saveInvaPrcplYN", "Y");
- if( ivw_invalprcp.window.javascript.fSaveInvalPrcp( cpgflagcd ) == true ){
- //return;
- //if( stopSavePrcpYN_SMMMO00110 != "Y" ){
- //저장성공, 정상종료 => 처방 노드셋 및 그리드 초기화
- clickBtnNm_SMMMO00110 = "";
-
- fGetErrPrcpList(); //미완성처방을 다시 조회한다
- model.makeValue("/root/temp1/getdata/srchcond", "2"); //조회조건 1:로딩 및 재조회, 2:적용 후 재조회, 3:퇴원예고시 문진조회 (20090.5.19 JJE)
- submit("TRMMP00803", false); //steppath 조회
-
- if( instance1.selectSingleNode("/root/main/steppath/appinfo/appstat") != null ){
- model.makeValue( "/root/temp1/getdata/appstat", model.getValue("/root/main/steppath/appinfo/appstat") );
- appStat = model.getValue("/root/main/steppath/appinfo/appstat");
-
- model.removeNodeset("/root/main/steppath/appinfo");
- model.removeNodeset("/root/send/srchcond");
- model.removeNodeset("/root/send/steplist");
- model.removeNodeset("/root/send/delprcplist");
-
- fRemoveSaveNodeList( 2 );
-
- ivw_invalprcp.grd_prcplist.refresh();
- tab_refresh();
-
- fResetStepFlag(); //CPG의 경우 Step의 S/E flag 재설정
- }
- }
- /*
- else{
- alert("return false");
- }
- */
- clearParameter ( "saveInvaPrcplYN" );
- model.removeNodeset("/root/temp1/tmpprcplist/prcplist");
- ]]>
- </script>
- <hint>
- <![CDATA[완성된 미완성 처방을 저장합니다.]]>
- </hint>
- </button>
- <button id="btn_saveincomplprcp" class="btn_sw" group="tab2" style="left:110px; top:4px; width:84px; height:22px; ">
- <caption>미완성처방</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.toggle("incompletion_tab");
- //무조건 재조회 (2008.10.15 JJE)
- //if( btn_savecomplprcp.visible == false ){
- fGetErrPrcpList();
- //}
- ]]>
- </script>
- </button>
- <button id="btn_detail_tab" class="btn_sw" group="tab3" style="left:0px; top:115px; width:82px; height:22px; ">
- <caption>환자계획표</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var tCase = 0;
-
- if( ivw_detail.src != "../../../emr/cpgweb/xrw/SPMMP02200_DetailView.xrw" ){
- ivw_detail.src = "../../../emr/cpgweb/xrw/SPMMP02200_DetailView.xrw";
-
- }else{
-
- if( ivw_outline.attribute("top") == 27 ){
- tCase = 1;
- grp_prcp.attribute("top") = 27;
- grp_prcp.attribute("height") = 880;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 880;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 731; //-10
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 731;
- grd_prcplist.attribute("height") = 732;
-
- }else if( ivw_outline.attribute("top") == 446 ){ //(org-317-2)
- tCase = 2;
- grp_prcp.attribute("top") = 446;
- grp_prcp.attribute("height") = 479;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 766;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 623;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 623;
- grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 617;
-
- }else{
- tCase = 0;
- grp_prcp.attribute("top") = 142;
- grp_prcp.attribute("height") = 765;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 765;
- //group2.attribute("height") = 784-5; //?
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 623;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 623;
- grd_prcplist.attribute("height") = 617;
- }
- fResizeControls();
-
- if( btn_detail_tab.selected == true && parseInt(ivw_detail.rct_border.attribute("height")) != 737 && tCase != 1 ){
- ivw_detail.window.javascript.fReSize("S"); //small
- }
- else if( btn_detail_tab.selected == true && parseInt(ivw_detail.rct_border.attribute("height")) == 737 && tCase == 1 ){
- ivw_detail.window.javascript.fReSize("L"); //large
- }
-
- if( model.getValue("/root/temp1/refresh_obj/change_gps") == "Y" ) {
- fSendDetailValue();
- ivw_detail.window.javascript.fInitGrigInfo();
- //선택된 셀 색상, 다시 초기화
- ivw_detail.window.javascript.fInitGridStyle();
-
- model.setValue("/root/temp1/refresh_obj/change_gps", "N");
- }
- }
-
- //btn_detail_popup.disabled = true;
- //ivw_outline.window.javascript.fViewDetailInfo("GPS");
- ivw_outline.visible = false;
- imp_prcp.visible = false;
- ivw_prcp2.visible = false;
- ivw_prcp3.visible = false;
- ivw_detail.visible = true;
-
- preSelectedTab = "btn_detail_tab";
- ]]>
- </script>
- </button>
- <button id="btn_outline_tab" class="btn_sw" group="tab3" style="left:125px; top:115px; width:69px; height:22px; ">
- <caption>OutLine</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- if( ivw_outline.attribute("top") == 27 ){
- grp_prcp.attribute("top") = 27;
- grp_prcp.attribute("height") = 880;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 880;
- //group2.attribute("height") = 881;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 731; //-10
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 731;
- grd_prcplist.attribute("height") = 732;
-
- }else if( ivw_outline.attribute("top") == 446 ){ //(org-317-2)
- grp_prcp.attribute("top") = 446;
- grp_prcp.attribute("height") = 479;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 766;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 623;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 623;
- grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 617;
- }else{
- grp_prcp.attribute("top") = 142;
- grp_prcp.attribute("height") = 765;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 765;
- //group2.attribute("height") = 784-5; //?
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 623;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 623;
- //grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 617;
- }
- fResizeControls();
-
- //ivw_outline.window.javascript.fViewDetailInfo("GPS");
- ivw_outline.visible = true;
- ivw_detail.visible = false;
- imp_prcp.visible = false;
- ivw_prcp2.visible = false;
- ivw_prcp3.visible = false;
- //btn_detail_popup.disabled = false;
- preSelectedTab = "btn_outline_tab";
-
- if(ivw_outline.src != "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw"){
- ivw_outline.src = "../../../emr/cpgweb/xrw/SPMMP01900_OutlineView.xrw";
- return;
- }
-
- if( model.getValue("/root/temp1/refresh_obj/change_outline") == "Y" ){
- //fResizeControls();
- fInitializeOutline();
- model.setValue("/root/temp1/refresh_obj/change_outline", "N");
- }
- ]]>
- </script>
- </button>
- <button id="btn_action_tab" class="btn_sw" group="tab3" style="left:81px; top:115px; width:44px; height:22px; ">
- <caption>OCS</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- if ( btn_init.visible == true || btn_reinit.visible == true ){
- fInitPrcpWnd("init");
- }
-
- if( ivw_outline.attribute("top") == 27 ){
- grp_prcp.attribute("top") = 27;
- grp_prcp.attribute("height") = 880;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 880;
- //group2.attribute("height") = 881;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 731; //-10
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 731;
- grd_prcplist.attribute("height") = 732;
-
- }else if( ivw_outline.attribute("top") == 446 ){ //(org-317-2)
- grp_prcp.attribute("top") = 446;
- grp_prcp.attribute("height") = 480;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 766;
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 320;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 320;
- //grd_prcplist.attribute("top") = 148;
- //grd_prcplist.attribute("height") = 480;
- grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 315;
- }else{
-
- grp_prcp.attribute("top") = 142;
- grp_prcp.attribute("height") = 765;
- imp_prcp.attribute("top") = 0;
- imp_prcp.attribute("height") = 765;
- //group2.attribute("height") = 784-5; //?
- ivw_prcp2.attribute("top") = 142;
- ivw_prcp2.attribute("height") = 623;
- ivw_prcp3.attribute("top") = 142;
- ivw_prcp3.attribute("height") = 623;
- //grd_prcplist.attribute("top") = 148;
- grd_prcplist.attribute("height") = 617;
- }
- fResizeControls();
-
- //btn_detail_popup.disabled = true;
- imp_prcp.visible = true;
- if(btn_ivbfprcp.selected){
- ivw_prcp2.visible = false;
- ivw_prcp3.visible = true;
- }else{
- ivw_prcp2.visible = true;
- ivw_prcp3.visible = false;
- }
- ivw_outline.visible = false;
- ivw_detail.visible = false;
- preSelectedTab = "btn_action_tab";
- //인증저장 버튼 보이지 않도록 처리
- btn_prcpsave.visible = false;
- btn_tempsave.attribute("left") = "1140px";
- btn_undo.attribute("left") = "1073px";
- //처방이동 버튼 위치 이동
- button24.attribute("left") = 937 + 79;
- button26.attribute("left") = 965 + 79;
-
- if( model.getValue("/root/temp1/refresh_obj/change_ocs") == "Y" ){
-
- /*
- // import 화면은 src 를 다시 셋팅해도 변화가 없으므로, 처방.xrw 의 초기화 function들 직접 호출 시작 ~
- fInitializeConDone();
- fBaseCdInit();
- fInitBtnSet();
- button106.attribute ( "background-color" ) = "#7cbbdd";
- //fScrnInitialize();
- zesfInitSign();
- fInitializeReady();
- fAnstPrcp();
- model.setValue ( "/root/init/setprcpyn", "Y" );
- model.setValue("/root/temp1/refresh_obj/change_ocs", "N");
- // import 화면은 src 를 다시 셋팅해도 변화가 없으므로, 처방.xrw 의 초기화 function들 직접 호출 끝 !
- */
- fPatDiagSrch();
- model.setValue("/root/temp1/refresh_obj/change_ocs", "N");
- }
-
- ]]>
- </script>
- </button>
- <line id="line8" class="line_1" style="x1:0px; y1:137px; x2:1208px; y2:137px; "/>
- <button id="importbutton1" class="btn2_letter3" visibility="hidden" style="left:1108px; top:4px; width:53px; height:19px; text-align:left; ">
- <caption>reset</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fReconstruct();
- ]]>
- </script>
- <hint>
- <![CDATA[완성된 미완성 처방을 저장합니다.]]>
- </hint>
- </button>
- <button id="btn_calcqnt" class="btn2_letter6" visibility="hidden" style="left:1120px; top:117px; width:86px; height:19px; ">
- <caption>소아용량계산</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- //model.refresh();
- //body.attribute("overflow") = "hidden";
- alert("구현중 입니다.");
-
- ]]>
- </script>
- </button>
- <button id="btn_upviewmode" class="icon_top" style="left:198px; top:4px; width:26px; height:19px; ">
- <caption/>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- changeViewMode( "U" );
- ]]>
- </script>
- </button>
- <button id="btn_downviewmode" class="icon_bottom" style="left:227px; top:4px; width:26px; height:19px; ">
- <caption/>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- changeViewMode( "D" );
- ]]>
- </script>
- </button>
- <button id="importbutton2" class="btn2_letter3" visibility="hidden" style="left:1107px; top:4px; width:53px; height:19px; ">
- <caption>alert</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
-
- var errOjb = getOpenWindow("SPMMP00200");
- if(errOjb == null){
- open ("SPMMP00200", "2", "", "", "SPMMP00200", "", "", "width:900; height:455;", false );
- }
- ]]>
- </script>
- <hint>
- <![CDATA[완성된 미완성 처방을 저장합니다.]]>
- </hint>
- </button>
- <iviewer id="ivw_ocr" visibility="hidden" src="../../../emr/formmngtweb/xrw/SSMRF03800_OCR뷰어.xrw" style="left:885px; top:5px; width:90px; height:20px; "/>
- <caption id="importcaption1" visibility="hidden" style="left:750px; top:5px; width:90px; height:20px; ">
- <![CDATA[getAppStepStat(원무에서O->I전환시 호출하는 CP인터페이스에 입원일 변경에 따른 update)]]>
- <script type="javascript" ev:event="onclick">
- <![CDATA[
- /*
- //바뀐 수진정보를 MMPSSTT에 update 해준다.
- var init_ordtype = model.getValue ( "/root/patflag/list/prcpgenrflag" );
- if ( init_ordtype == "O" ){ //외래일때
- var init_orddd = model.getValue ( "/root/paminfo/list/orddd" );
- } else {
- var init_orddd = model.getValue ( "/root/paminfo/list/indd" );
- }
- model.setValue("/root/temp1/getdata/appstepstatflag", "U");
- model.makeValue("/root/temp1/getdata/orddd", init_orddd);
- model.makeValue("/root/temp1/getdata/prcpgenrflag", init_ordtype);
- model.makeValue("/root/temp1/getdata/cretno", model.getValue ( "/root/paminfo/list/cretno" ));
- submit("TRMMP00803");
-
- model.makeValue("/root/temp1/getdata/appstepstatflag", "");
- */
-
- //model.makeValue("/root/send/batch/instcd", "012");
- //submit("TRMMP00810");
- ]]>
- </script>
- </caption>
- <button id="btn_refresh" class="btn2_letter3" style="left:198px; top:117px; width:53px; height:19px; ">
- <caption>재조회</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- // tab_refresh() 와 동일 기능...?
- model.makeValue("/root/temp1/getdata/appstepstatflag", ""); //steppath 조회 시 update를 무조건 하지 않도록 값 셋팅 추가
- model.makeValue("/root/temp1/getdata/srchcond", "1"); //조회조건 1:로딩 및 재조회, 2:적용 후 재조회, 3:퇴원예고시 문진조회 (20090.5.19 JJE)
- if( submit("TRMMP00803", true) ){ //steppath 조회
- if( instance1.selectSingleNode("/root/main/steppath/appinfo/appstat") != null ){
- model.makeValue( "/root/temp1/getdata/appstat", model.getValue("/root/main/steppath/appinfo/appstat") );
- appStat = model.getValue("/root/main/steppath/appinfo/appstat");
- model.removeNodeset("/root/main/steppath/appinfo");
- model.removeNodeset("/root/send/srchcond");
- model.removeNodeset("/root/send/steplist");
-
- if( resetAppScopYN == "Y" ) fResetStepFlag(); //CPG의 경우 Step의 S/E flag 재설정
- }
- }
-
- if(imp_prcp.visible == true){
- model.setValue("/root/temp1/refresh_obj/change_ocs", "N");
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
- model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
- btn_action_tab.dispatch("DOMActivate");
- return;
-
- }else if(ivw_detail.visible == true){
- //alert("환자계획표 재조회");
- model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
- //btn_detail_tab.dispatch("DOMActivate"); //환자계획표 다시 조회
- model.setValue("/root/temp1/refresh_obj/change_ocs", "Y");
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
- btn_detail_tab.dispatch("DOMActivate");
- return;
-
- }else{
- model.setValue("/root/temp1/refresh_obj/change_outline", "Y");
- //btn_outline_tab.dispatch("DOMActivate"); //바로 아웃라인을 재조회하는 func 호출!
- model.setValue("/root/temp1/refresh_obj/change_ocs", "Y");
- model.setValue("/root/temp1/refresh_obj/change_gps", "Y");
- btn_outline_tab.dispatch("DOMActivate");
- return;
- }
-
- ]]>
- </script>
- </button>
- <group id="grp_prcp" style="left:0px; top:140px; width:1208px; height:766px; ">
- <import id="imp_prcp" visibility="hidden" overflow="hidden" src="../../../emr/prcpmngtweb/xrw/SMMMO00100_처방.xrw" style="left:0px; top:0px; width:1208px; height:766px; border-width:0; border-left-width:0; border-top-width:0; border-right-width:0; border-bottom-width:0; border-style:none; margin-left:0; margin-top:0; margin-right:0; margin-bottom:0; "/>
- <iviewer id="ivw_prcp2" visibility="hidden" style="left:0px; top:142px; width:381px; height:623px; border-left-color:#c7a3cf; border-top-color:#c7a3cf; border-right-color:#c7a3cf; border-bottom-color:#c7a3cf; border-style:solid; margin-left:0; margin-top:0; margin-right:0; "/>
- </group>
- <iviewer id="ivw_detail" visibility="hidden" style="left:0px; top:142px; width:1208px; height:766px; border-color:#c0c0c0; margin-left:0; margin-top:0; margin-right:0; margin-bottom:0; "/>
- <iviewer id="ivw_outline" style="left:0px; top:142px; width:1208px; height:766px; border-color:#c0c0c0; margin-left:0; margin-top:0; margin-right:0; margin-bottom:0; "/>
- <button id="importbutton5" class="btn2_letter4" visibility="hidden" style="left:394px; top:117px; width:64px; height:19px; ">
- <caption>비우기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.removeNodeset("/root/main/prcp/prcplist");
- model.removeNodeset("/root/temp1/tmpprcplist/prcplist");
- appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" ); //검색라인추가
- grd_prcplist.nodeset = "/root/main/prcp/prcplist"; // /root/temp1/tmpprcplist/prcplist
- model.recalculate();
- ]]>
- </script>
- </button>
- <button id="btn_initcpgprcp" class="btn2_letter8" visibility="hidden" style="left:388px; top:117px; width:108px; height:19px; ">
- <caption>적용범위 재설정</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- resetAppScopYN = "Y";
- if( instance1.selectNodes("/root/main/prcp/prcplist[status!='S' and etclnkspec!='-' and etclnkspec!='']").length > 0 ){
- var msgRtn = messageBox("OCS탭에 이전 적용범위의 CPG 처방이 존재합니다.\n\nOCS탭의 처방을 함께 삭제", "S001");
- if( msgRtn == 6 ){
- model.removeNodeset("/root/main/prcp/prcplist[status!='S' and etclnkspec!='-' and etclnkspec!='']");
- model.removeNodeset("/root/temp1/tmpprcplist/prcplist");
- model.recalculate();
- grd_prcplist.refresh();
- }else if( msgRtn != 7 ){
- resetAppScopYN = "N";
- return;
- }
- }
-
- //적용을 위한 global 변수 초기화하여 적용 로직을 재실행 가능하도록
- fRemoveSaveNodeList( 1 );
-
- stopSavePrcpYN_SMMMO00110 = "N";
- clickBtnNm_SMMMO00110 = "";
- prtlFlag_SMMMO00110 = "-";
- ErrExistYN_SMMMO00110 = "N";
- questionYN_SMMMO00110 = "N";
-
- btn_refresh.dispatch("DOMActivate");
- messageBox("적용범위가 초기화되었습니다.\n적용범위를 다시 선택", "I008");
-
- resetAppScopYN = "N";
- model.setValue("/root/main/appscopmode", "");
- ]]>
- </script>
- </button>
- <select1 id="cmb_stepnm" ref="/root/main/stepinfo/info/daynm" class="combo_search" disabled="true" visibility="hidden" appearance="minimal" style="left:830px; top:110px; width:30px; height:19px; ">
- <choices>
- <itemset nodeset="/root/temp/oplist/op">
- <label ref="nm"/>
- <value ref="id"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- var stepno = parseInt(model.getValue("/root/main/stepinfo/info/stepno"));
- var times = model.getValue("/root/main/stepinfo/info/times");
-
- ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/tmpstepnm", cmb_stepnm.label);
- ivw_outline.grp_swimline.refresh();
- if(ivw_outline.model.getValue("/root/main/steplist/info[" + stepno + "]/m") != "i" ){
- ivw_outline.model.setValue( "/root/main/steplist/info[" + stepno + "]/m", "u" );
- }
- ivw_outline.window.javascript.fSetDayImage(stepno, times, ipt_times.label, cmb_stepnm.label);
- ]]>
- </script>
- </select1>
- <button id="btn_cpbatch" class="btn2_letter3" visibility="hidden" style="left:705px; top:5px; width:53px; height:19px; ">
- <caption>batch</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- //2008.10.03 시간 상관없이 당일, 익일 모두 실처방 발행 수행하도록 수정.(당일 퇴원예고 찍을 시, 미래로 남아있는 퇴원처방이 나가야 함.)
- //if( getCurrentTime() > "180000" ){
- var dschdclrtyn = getPatientInfoDetail("dschdclrtyn");
- var dschschedd = instance1.selectSingleNode("/root/main/steppath/info[decirflag='D' or decirflag='C']/prcpdd");
- var today = getCurrentDate();
- var nxtDate = new Date().getAddDate(1, "D").getDateFormat();
- var curInvalNodeList = null;
-
- if( dschdclrtyn == "Y" && dschschedd != null ){
- model.makeValue("/root/temp1/getdata/dschschedd", dschschedd.text);
-
- if( ( getParameter("SPMMO00400_dclrdd") == nxtDate && getCurrentTime() >= 180000 )
- || getParameter("SPMMO00400_dclrdd") == today ){
- //퇴원예고 후 - 익일, 당일 풀리지 않은 퇴원관련 처방 없으면 - 자동발행 안함.
- if( ivw_detail.src != "../../../emr/prcpmngtweb/xrw/SPMMP02200_DetailView.xrw" ){
- curInvalNodeList = ivw_detail.instance1.selectNodes("/root/main/prcp/prcplist[(prtlstat='10' or (prtlstat>'12' and prtlstat<'22')) and (prcpkindcd='60' or prcpkindcd = '70') and (prcpdd = '"+today+"' or prcpdd = '"+nxtDate+"')]");
- if( curInvalNodeList.length <= 0 ) return;
- }
- if( submit("TXMMP00809", false) == false ){
- messageBox ( "당일처방 및 미래처방 저장은 성공하였으나,\예외 상황으로 인해 익일처방을 실처방으로 저장", "E009" );
- return;
- }
-
- fResetAppStat();
- tab_refresh();
-
- fMssgInvalPrcp("1"); //퇴원예고를 하지 않아서 미완성 처방인 건이 있을 경우, 미완성리스트에서 처리하라고 알림 (2008.09.19 JJE)
- return;
-
- }else if( getParameter("SPMMO00400_dclrdd") == nxtDate && getCurrentTime() < 180000 ){
- if( ivw_detail.src != "../../../emr/prcpmngtweb/xrw/SPMMP02200_DetailView.xrw" ){
- curInvalNodeList = ivw_detail.instance1.selectNodes("/root/main/prcp/prcplist[(prtlstat='10' or (prtlstat>'12' and prtlstat<'22')) and (prcpkindcd='60' or prcpkindcd = '70') and (prcpdd = '"+today+"' or prcpdd = '"+nxtDate+"')]");
- if( curInvalNodeList.length <= 0 ) return;
-
- messageBox ( "미발행 퇴원 관련 처방은\n퇴원 전일 CP 처방 정규 반영 시간(저녁 6시)에\n발행 예정", "I009" );
- return;
- }
- }
- }
- //}
- ]]>
- </script>
- <hint>
- <![CDATA[완성된 미완성 처방을 저장합니다.]]>
- </hint>
- </button>
- <button id="btn_monitoring" class="btn_sw" visibility="hidden" group="tab2" style="left:260px; top:4px; width:75px; height:22px; ">
- <caption>모니터링</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.toggle("monitoring_tab");
- btn_savecomplprcp.visible = false;
- ]]>
- </script>
- </button>
- <button id="btn_inqr" visibility="hidden" style="left:1182px; top:100px; width:25px; height:20px; ">
- <caption>문진</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var dschdclrtyn = getPatientInfoDetail("dschdclrtyn");
- if( getParameter("SMMMO034_pntmflag") == "2" || dschdclrtyn == "Y" ){
- if( dschdclrtyn == "Y" && isNull(getParameter("SMMMO034_pntmflag")) ) setParameter("SMMMO034_pntmflag", "1"); //M0515 1:퇴원예고, 2:CPG종료, 3:특정스텝종료
- fLoadInqrPopup("END"); //문진팝업호출
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onmousedown">
- <![CDATA[
- if (event.button == 3) {
- fLoadInqrPopup("END"); //문진팝업호출
- }
- ]]>
- </script>
- </button>
- <caption id="cap_appscop" visibility="hidden" style="left:501px; top:117px; width:75px; height:20px; font-weight:bold; ">* 적용범위:</caption>
- <caption id="cap_appscoplist" ref="/root/main/appscoplist" visibility="hidden" style="left:576px; top:117px; width:630px; height:20px; font-weight:bold; color:#ff0000; "/>
- <button id="btn_essprcpinfo" class="btn5_letter4" visibility="hidden" style="left:321px; top:117px; width:64px; height:19px; ">
- <caption>필수처방</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- open("SPMMP04100");
- ]]>
- </script>
- </button>
- </group>
- <group id="grp_btn" style="left:0px; top:909px; width:1208px; height:27px; ">
- <button id="btn_allInfoSave" class="btn4_letter2" style="left:1092px; top:4px; width:56px; height:22px; ">
- <caption>적용</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- btn_savecomplprcp.selected = false;
-
- var today = getCurrentDate();
- var orgAppStat = appStat; //원래 적용상태
- model.setValue("/root/temp1/exe/lastupdtrid", getCurrentDateTime());
- if( stopSavePrcpYN_SMMMO00110 != "Y" && btn_outline_tab.selected == true ){
- var currTab = "btn_outline_tab";
- }else if( stopSavePrcpYN_SMMMO00110 != "Y" && btn_detail_tab.selected == true ){
- var currTab = "btn_detail_tab";
- }
-
- fGuidDschDclrt(); //퇴원예고 유도
-
- fSetupPrcpDD(); //CPG의 시작/종료스텝 설정에 따른 처방일자 조정
-
- if( fBatSaveCpPrtlPrcp("", "6", cpgflagcd) == false && stopSavePrcpYN_SMMMO00110 == "N" ){
- clickBtnNm_SMMMO00110 = "btn_allInfoSave";
- stopSavePrcpYN_SMMMO00110 = "Y";
- }
-
- if( stopSavePrcpYN_SMMMO00110 != "Y" || SubmitTF_SMMMO00110 == true ){ //저장 성공 시,
- stopSavePrcpYN_SMMMO00110 = "N";
-
- /*-------------------------- 원래는 당일처방 저장종료 후 처리 -> 당일+미래처방 저장 종료 후 처리 ----------------------------*/
-
- //중증등록, 법전전염병 팝업 (and 전처방 조회)
- if( model.getValue ( "/root/addprcp" ) != "Y" && SubmitTF_SMMMO00110 == true ){
- var aftdcyn = "N";
- var aftdclist = model.instances(0).selectNodes( "/root/prcpdc/prcplist[tempcol21='C']" );
- //청구후 d/c가 아닐 경우만 타도록 parameter 추가 (2008.11.30)
- if( aftdclist != null ){
- if( aftdclist.length > 0 ) aftdcyn = "Y";
- }
- if( fGetPrcpSaveAftInfo(prcpsaveyn_SMMMO00110, aftdcyn) == false ){
- messageBox ( "전처방 조회를", "E009" ); //2008.09.29 추가
- return;
- }
- prcpsaveyn_SMMMO00110 = "N";
- }
-
- //OCR자동출력
- //ocrcalcscorcd = ocrcalcscorcd_SMMMO00110 + ocrcalcscorcd; // 2016.04.14 동의서 출력 수정 엄영만 당일처방과 미래처방을 한번에 체크 하던것을 각각 따로 체크 하도록 수정 처방정보의 동의서 번호 때문, ocrcalcscorcd_SMMMO00110 : 당일 처방 동의서 출력 항목
- if (!isNull(ocrcalcscorcd)){ //OCR 자동출력 ocrcalcscorcd 값은 MMO001에 global로 선언. 값은 fPrcpSaveChkaft에서 체크한다.
- fOcrAutoPrint(ocrcalcscorcd);
- ocrcalcscorcd = "";
- ocrcalcscorcd_SMMMO00110 = "";
- }
-
- fInitializeConDone("save");
- fTempPrcp("save");
-
- /*-----------------------------------------------------------------------------------------------------------------------*/
-
- clickBtnNm_SMMMO00110 = "";
- prtlFlag_SMMMO00110 = "-";
-
- //임시처방 없을 경우 remove
- var tmpPrcpNodeList = instance1.selectNodes("/root/main/prcp/prcplist[prcphistcd != 'T']");
- if( tmpPrcpNodeList.length <= 0 ){
- model.removeNodeset("/root/main/prcp/prcplist");
- appendChildPrcp ( "/root/reset/prcplist", "/root/main/prcp", "main" ); //검색라인추가
- }
-
- grd_prcplist.refresh();
- model.recalculate();
-
- model.makeValue("/root/temp1/getdata/srchcond", "2"); //조회조건 1:로딩 및 재조회, 2:적용 후 재조회, 3:퇴원예고시 문진조회 (20090.5.19 JJE)
- model.makeValue("/root/temp1/getdata/appstepstatflag", ""); //steppath 조회 시 update를 무조건 하지 않도록 값 셋팅 추가 (2010.03.10 JJE)
- if( submit("TRMMP00803", true) ){ //steppath 조회
- fResetAppStat();
-
- //미래처방 분에 대한 처방오류 메세지 -> 미완성처방 존재 여부를 ErrExistYN_SMMMO00110 아닌, /root/main/invalprcplist null 여부로 가리도록 변경 (2008.09.30)
- var popYN = getParameter("SPMMP00200_popupYN");
- if( ErrExistYN_SMMMO00110 == "Y" ){
- if ( instance1.selectSingleNode("/root/main/invalprcplist/prcplist") != null && popYN == "Y" ) {
- var mon = getCurrentMonitorNumber();
- var monSize = getMonitorSize(mon);
- var xpt = 10;
- var ypt = monSize[1]/2 - 500;
- setParameter("SMMMP00800_popupYN", "Y");
- var errOjb = getOpenWindow("SPMMP00200");
- if(errOjb == null){
- open ("SPMMP00200", mon, xpt, ypt, "SPMMP00200", "", "", "width:900; height:455;", false );
- }
- questionYN_SMMMO00110 = "N"; //초기화
-
- }else{
- btn_saveincomplprcp.selected = true;
- model.toggle("incompletion_tab");
- fGetErrPrcpList();
- fCase2ViewMode();
- }
-
- ErrExistYN_SMMMO00110 = "N";
- }
-
- fRemoveSaveNodeList( 1 );
- } //end steppath 조회
-
- tab_refresh();
-
- // 2008.07.21 외래 cp 마지막 차수 발행 -> 평가 popup (s)
- if(cpgflagcd == "01") {
- //일괄저장한 시간이 오후6시 이후라면, 익일처방을 실처방으로 저장하는 배치 프로그램을 호출해야 함 (2007.12.21 추가)
- var nextDay = getCurrentDate().toDate().getAddDate(1,"D").getDateFormat(); //다음날을 찾는다.
- var NextStepNode = instance1.selectSingleNode("/root/main/steppath/info" + "[prcpdd='" + nextDay + "' and stepstat != '30']");
- if( NextStepNode != null && getCurrentTime() >= 180000 ){ //인증저장 시에는 익일처방까지 풀리는 경우는 최초저장(첫째날)일 경우만 (2010.02.09 JJE)
-
- model.setValue("/root/temp1/exe/lastupdtrid", getUserId());
- model.setValue("/root/temp1/exe/lastupdtdt", getCurrentDateTime() + "000");
- // 2008.07.07 pymi 배치호출시 cpno 추가
- model.setValue("/root/temp1/exe/paramcnts", "stat:1 " + "cpno:"+ model.getValue("/root/temp1/getdata/cpgappno"));
-
- if( submit("TXMMP00807", false) == false ){
- messageBox ( "당일처방 및 미래처방 저장은 성공하였으나,\예외 상황으로 인해 익일처방을 실처방으로 저장", "E009" );
- }
- model.setValue("/root/temp1/exe/lastupdtrid", "");
- model.setValue("/root/temp1/exe/lastupdtdt", "");
- model.setValue("/root/temp1/exe/paramcnts", "");
- }
-
- if ( model.getValue("/root/main/masterinfo/info/ioflagcd") == "O" ){
- if(getCurrentDate() == instance1.selectSingleNode("/root/main/steppath/info[startendflag = 'E']/prcpdd").text ) {
- setParameter("cpgappno", model.getValue("/root/temp1/getdata/cpgappno"));
- modal("SPMMP02500");
- }
- }
-
- }else{ //CPG case
-
- fResetStepFlag(); //CPG의 경우 Step의 S/E flag 재설정
-
- if( stepArray_SMMMO00110 != "" ){
- //범위 내의 서식 리스트 재조회 (2009.01.09)
- var startendNodeList = instance1.selectNodes("/root/main/steppath/info[stepstat!='10' and prcpdd!='']");
- //스텝에 해당되는 문진 팝업 호출
- var stepInqrList = instance1.selectNodes("/root/main/inqrinfo/inqrheader[stepno!='0' and stepno!='' and inqrstatcd!='E' and inqroffyn!='Y']");
- var steps = stepArray_SMMMO00110.split("|");
- var sNum = 0;
- if(stepInqrList.length > 0 && steps.length > 0){
- for( var s1=0; s1<stepInqrList.length; s1++){
- var node = stepInqrList.item(s1);
- var s1Node = node.selectSingleNode("stepno");
- for( var s2=0; s2<steps.length; s2++){
- if( s1Node.text == steps[s2] ){
- sNum++;
- }
- }
- }
- if(sNum > 0 ) fLoadInqrPopup("APP"); //문진팝업호출
- }
-
- stepArray_SMMMO00110 = "";
- }
-
- //CPG인 경우, outline에서 시작/종료를 재설정 및 결정이 가능하므로 temp/getdata/authflag 재생성 (저장 후 사라짐)
- if( isNull(model.getValue("/root/temp/getdata/authflag")) ){
- model.makeValue("/root/temp/getdata/authflag", iAuthflag);
- model.makeValue("/root/temp1/getdata/authflag", iAuthflag);
- }
- }
- //2008..07.22 (e)
-
- }else{ //저장 취소, 실패 시,
- //환자계획표에서 추가/수정/삭제 할 경우, OCS탭 전환 안하고, 처방 instance reset함
- if( ivw_detail.visible == true ){
- if( model.getValue("/root/main/masterinfo/info/ioflagcd") == "O" ){
- var nodeList = instance1.selectNodes("/root/main/steppath/info" + "[prcpdd='" + today + "' and stepstat='10']");
- }else{
- if( iPrcpgenrflag == "O" )
- var nodeList = instance1.selectNodes("/root/main/steppath/info" + "[times='0' and stepstat='10']");
- else var nodeList = instance1.selectNodes("/root/main/steppath/info" + "[stepstat='10']");
- }
-
- if( nodeList.length > 0 ){
- fCpInPrcpVisible();
- return;
- }
-
- }else{
- fCpInPrcpVisible();
- }
- }
-
- if( SubmitTF_SMMMO00110 == true ){ //orgAppStat == "00" &&
- if( cpgflagcd == "01" ) fsetCpInfo("save"); //상단CP여부 변경
- fMssgInvalPrcp("2"); //퇴원예고를 하지 았았고, 당일~익일자 처방 중 퇴원처방이 존재하면 퇴원예고 유도 alert
- }
- ]]>
- </script>
- </button>
- <button id="button48" class="btn3_letter4" style="left:331px; top:4px; width:80px; height:22px; ">
- <caption>통합결과</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var xpt = window.screenleft + 10;
- var ypt = window.screenTop + 10;
-
- var coord = getRelativeCoordinate ( xpt, ypt );
- var mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
- open("SMAER00800", mon, xpt, ypt, "SMAER00800", "/root/paminfo/list/pid", "/root/paminfo/list/pid" );
- ]]>
- </script>
- </button>
- <button id="button49" class="btn3_letter7" visibility="hidden" style="left:413px; top:4px; width:116px; height:22px; ">
- <caption>FLOW SHEET</caption>
- </button>
- <button id="button45" class="btn3_letter6" style="left:1px; top:4px; width:104px; height:22px; ">
- <caption>수술예약장부</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var xpt = window.screenleft + 10;
- var ypt = window.screenTop + 10;
- var coord = getRelativeCoordinate ( xpt, ypt );
- var mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
-
- var param = iPid + "▦" +
- iHngnm + "▦" +
- iSex + "▦" +
- iAge + "▦" +
- iInsukind + "▦" +
- iSuppkind + "▦" +
- iOrddd + "▦" +
- iOrddeptcd + "▦" +
- iPrcpgenrflag;
- setParameter("SMMMO05700_param", param);
- modal("SMMMO05700", mon, xpt, ypt, "SMMMO05700");
- ]]>
- </script>
- </button>
- <button id="btn_close" class="btn4_letter2" style="left:1150px; top:4px; width:56px; height:22px; ">
- <caption>닫기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- /*
- if( appStat == "00" ){
- if( checkAuth("X") ){
- if( messageBox ( "CP 선택이 취소됩니다.", "Q003" ) == "6" ){
- fCnclApp();
- window.close();
- }else{
- return;
- }
- }
- }else{
- */
- window.close();
- //}
- ]]>
- </script>
- </button>
- <button id="btn_drop" class="btn4_letter2" style="left:1034px; top:4px; width:56px; height:22px; ">
- <caption>취소</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- //if(cpgflagcd == "02") fCnclApp();
- if(model.getValue("/root/temp1/getdata/appstat") == "00" && instance1.selectSingleNode("/root/main/steppath/info[stepstat >= '20']") == null ){
- if( messageBox ( "", "Q007" ) == "6" ){
- fCnclApp();
- }
- }else{
- fDropApp(btn_drop.attribute("text"));
- }
- ]]>
- </script>
- </button>
- <button id="btn_val" class="btn4_letter2" visibility="hidden" style="left:964px; top:4px; width:56px; height:22px; ">
- <caption>평가</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- setParameter("cpgappno", appNo_SMMMO00110);
- var mainObj = getMainViewer();
- //mainObj.window.javascript.modal("SPMMP02500");
- modal("SPMMP02500");
-
- ]]>
- </script>
- </button>
- <button id="importbutton3" class="btn3_letter6" style="left:107px; top:4px; width:104px; height:22px; ">
- <caption>수술마취의뢰</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- //setParameter ( "SPMMO00200_pid", model.getValue ( "/root/paminfo/list/pid" ));
- //setParameter ( "SPMMO00200_orddeptcd" , model.getValue ( "/root/paminfo/list/orddeptcd" ));
- //setParameter ( "SPMMO00200_ioflag" , prcpgenrflag
- fPrcpModal ("SPMMO00200", 0, 80);
- ]]>
- </script>
- </button>
- <button id="importbutton4" class="btn3_letter7" style="left:213px; top:4px; width:116px; height:22px; ">
- <caption>수술마취스케줄</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var xpt = window.screenleft + 10;
- var ypt = window.screenTop + 10;
- var coord = getRelativeCoordinate ( xpt, ypt );
- var mon = coord[0];
- xpt = coord[1];
- ypt = coord[2];
- //setParameter ( "SPMMO00200_pid", model.getValue ( "/root/paminfo/list/pid" ));
- //setParameter ( "SPMMO00200_orddeptcd" , model.getValue ( "/root/paminfo/list/orddeptcd" ));
- //setParameter ( "SPMMO00200_ioflag" , prcpgenrflag );
- open("SMMMO05100", mon, xpt, ypt, "SMMMO05100", "/root/paminfo/list/pid", "/root/main/cond/pid" );
- ]]>
- </script>
- </button>
- </group>
- <script type="javascript" ev:event="onkeydown">
- <![CDATA[
- if(event.keyCode == "27") {
- btn_prcpsave.visible = true;
- btn_tempsave.visible = true;
- }
- ]]>
- </script>
- </xhtml:body>
- </xhtml:html>
|