12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999 |
- /* ---------------------------------------------------------------------
- 수술기록 사항(SMMNP00300.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- : Create By Francis Choi
- : 2007.05.02
- ---------------------------------------------------------------------- */
- var hPath = "/root/main/operation/list"
- var xPathFormat = "/root/init/XmlFormat" ; //
- var xPathData = "/root/main/MnphopcrData/MnphopcrList" ; //
- var xPathDispDT = "/root/init/workinst/datetimedata" ; //
- var CountPath = "/root/main/MnphopcoLists/mnphopcolist" ; // Counter Instance
- var OpcdPath = "/root/main/MnphopcrData/MnphopcrList/aftopopnm/aftopoplists";
- var xPathSheetData3 = "/root/main/SheetData3";
- var xPathHiddenSheetData3 = "/root/temp/SheetData3";
- var certkind = "1";
- var sSignNo = "";
- //---------(20110512)
- // var XmlInstName = "opbfpatcnfmspec" + " " // 01 수술전 환자확인
- // + "timeoutspec" + " " // 02 TimeOut
- // + "anstkindspec" + " " // 03 마취종류
- // + "opposturespec" + " " // 04 수술체위
- // + "skindinfspec" + " " // 05 피부소독제
- // + "esuspec" + " " // 06 ESU
- // + "tourniquetspec" + " " // 07 Tourniquet
- // + "warmcoldregmspec" + " " // 08 온냉요법
- // + "postureskinupdtspec" + " " // 09 체위에 따른 피부변화
- // + "counspec" + " " // 10 Count내역
- // + "aftopopnm" + " " // 11 수술 후 수술명
- // + "packingspec" + " " // 12 Packing내역
- // + "opnursrectimeremark" ; // 13 수술지연사유정보
- var XmlInstName = "opbfpatcnfmspec" + " " // 01 수술전 환자확인
- + "timeoutspec" + " " // 02 TimeOut
- + "anstkindspec" + " " // 03 마취종류
- + "opposturespec" + " " // 04 수술체위
- + "skindinfspec" + " " // 05 피부소독제
- + "esuspec" + " " // 06 ESU
- + "tourniquetspec" + " " // 07 Tourniquet
- + "warmcoldregmspec" + " " // 08 온냉요법
- + "postureskinupdtspec" + " " // 09 체위에 따른 피부변화
- + "counspec" + " " // 10 Count내역
- + "aftopopnm" + " " // 11 수술 후 수술명
- + "packingspec" + " " // 12 Packing내역
- + "opnursrectimeremark" + " " // 13 수술지연사유정보
- + "opdiscordspec"; // 14 불일치 조치사항 정보
- //---------(20110512)
- var XmlInstNm = XmlInstName.split(" ");
- //----------
- var OpeuPathD = "/root/init/workinst/cOpeu/opeulist" ; // 참여자 Duplicate Node
- var OpeuPathR = "/root/init/workinst/Opeudata" ; // 참여자 Instance
- var OpeuGrid1 = "/root/init/workinst/OpeuLists/opeulist1";
- var OpeuGrid2 = "/root/init/workinst/OpeuLists/opeulist2";
- var OpeuColData = "entridflag " // 참가자 ID구분
- + "entrid " // 참가자ID
- + "entrdt " // 참가시간
- + "entrnm " // 참가자명
- + "deptcd " // 부서코드
- + "deptnm " // 부서명
- + "refseq " // 조회순서
- + "outdt " // 퇴실일시
- + "entrtm" ; // 입실시간
- var OpeuColumn = OpeuColData.split(" ");
- var OpeuName = "D1" + " " // 집도의
- + "D4" + " " // Assist
- + "D3" + " " // 마취의
- + "N1" + " " // 소독간호사
- + "N2" + " " // 순회간호사
- + "N3" ; // 마취간호사
- var OpeuInit = OpeuName.split(" ");
- var sPartFlag = ""; // 사용부위 팝업 사용 항목(drug/ drge)
- // ---------------------------------------------------------------------------------
- // 수술기록 - 수술간호기록정보
- // EMR.MNPHOPCR 수술간호기록정보
- // ---------------------------------------------------------------------------------
- var sMnphopcrData = "" ; // 00 수술간호기록정보
- var sOprsrvno = ""; // CHARACTER(10) 01 수술예약(의뢰)번호(년도+일련번호)
- var sInstcd = ""; // CHARACTER(3) 02 기관코드
- var sPid = ""; // VARCHAR(10) 03 환자번호
- var sOptrustflag = ""; // VARCHAR(1) 04 수술의뢰구분-정규(일반)E응급
- var sOppatflag = ""; // CHARACTER(1) 05 수술환자구분
- var sOpbfpatcnfmspec = ""; // "SYSIBM"."XML" 06 수술전환자확인내역
- var sOppartdispyn = ""; // CHARACTER(1) 07 수술부위표시여부
- var sTimeoutspec = ""; // "SYSIBM"."XML" 08 TimeOut내역
- var sAnstkindspec = ""; // "SYSIBM"."XML" 09 마취종류내역
- var sOpposturespec = ""; // "SYSIBM"."XML" 10 수술체위내역
- var sSkindinfspec = ""; // "SYSIBM"."XML" 11 피부소독제내역
- var sAftopopnm = ""; // "SYSIBM"."XML" 12 수술후수술명
- var sOpscale = ""; // CHARACTER(01) 13 수술스케일 L,M,S
- var sPatinroomdt = ""; // CHARACTER(14) 13 환자입실시간
- var sPatoutroomdt = ""; // CHARACTER(14) 14 환자퇴실시간
- var sAnstsrtdt = ""; // CHARACTER(14) 15 마취시작시간
- var sAnstenddt = ""; // CHARACTER(14) 16 마취종료시간
- var sPerfidarvdt = ""; // CHARACTER(14) 17 집도의도착일시
- var sPerfidoutdt = ""; // CHARACTER(14) 18 집도의퇴실일시
- var sOpfromdt = ""; // CHARACTER(14) 19 수술시작일자
- var sOptodt = ""; // CHARACTER(14) 20 수술종료일자
- var sOpoutrmplcecd = ""; // VARCHAR(10) 21 수술후퇴실장소
- var sOpoutrmplcenm = ""; // VARCHAR(50) 22 수술후퇴실장소기타
- var sEsuspec = ""; // "SYSIBM"."XML" 23 ESU내역
- var sTourniquetspec = ""; // "SYSIBM"."XML" 24 Tourniquet내역
- var sWarmcoldregmspec = ""; // "SYSIBM"."XML" 25 온냉요법내역
- var sPostureskinupdtspec = ""; // "SYSIBM"."XML" 26 체위에따른피부변화내역
- var sCounspec = ""; // "SYSIBM"."XML" 29 Count,내역
- var sPackingspec = ""; // "SYSIBM"."XML" 30 Packing내역
- var sCertno = ""; // VARCHAR(17) 31 인증코드
- var sOpcnfmdd = ""; // CHARACTER(8) 32 수술확정일자(의뢰상태일경우예정일자와동일)
- var sFstrgstrid = ""; // CHARACTER(10) 33 최초등록자ID(시스템정보)
- var sLastupdtid = ""; // CHARACTER(10) 34 최종수정자(시스템정보)
- //--
- var sOpstatcd = ""; // 35 진행상태
- var sOpstatcdnew = ""; // 36 진행상태
- var sOphistno = ""; // 37 예약번호에따른이력번호
- var sRecstat = ""; // 34 Record 상태정보 I:신규,U:수정
- var sDrugUseYN = ""; // 약품사용여부
- var sDrgeUseYN = ""; // 배액관사용여부
- var sEqmtUseYN = ""; // 장비사용여부
- var sImplantUseYN = ""; // Implant사용여부
- var sDrugCmt = ""; // 약품비고
- var sDrgeCmt = ""; // 배액관비고
- var sEqmtCmt = ""; // 장비비고
- var sImplantCmt = ""; // implant 비고
- var sTnsYN = ""; // 수혈여부
- var sSpcUseYN = ""; // 검체사용여부
- var sCareRecUseYN = ""; // 간호기록 사용여부
- //=============================================================
- //2008-06-27 오전 10:33:23 taebum 추가요구사항 반영
- var sCuthairflag = "";
- var sXrayflag = "";
- var sXraydrugspec = "";
- var sDrsflag = "";
- var sDrsetc = "";
- //2008-06-30 오후 5:11:50
- var sNocountdoctid = ""; //집도의 요청에 의한 계수확인 안함 집도의ID
- //2008-07-01 오전 10:41:02
- var sIcuGoFlag = ""; // 회복환자관리용 퇴실장소가 ICU일 경우 사용
- var sSignGernalFlag = ""; //2008-07-01 오후 8:50:52 인증 저장시 계속 오류로 전역변수로 선언함.(초기 paminfo 전역변수에서 받음.)
- //2008-07-03 오후 2:07:54 적출물여부, 분만여부, 피부상태 추가 요구사항 적용
- var sExtcyn = ""; //적출물 여부
- var sSkinstatflag = ""; // 피부상태 구분
- var sDelivyn = ""; //분만여부
- //2010.04.09 K. J. M 퇴실저장여부
- var sOutflag = ""; //퇴실저장여부
- //----------(20110512)
- var opdiscordspec = ""; //불일치시 조시사항정리
- //----------(20110512)
- //==============================================================
- //2008-07-05 오후 2:03:41 분만정보 조회시
- var sIndd = "";
- var sCretno = "";
- //=============================================================
- //2008-07-07 오후 2:52:32
- var sPlatatransid = ""; //태반운반자ID
- var sOtyn = ""; //장기이식여부 2008-07-08 오후 9:46:50
- var sObRecyn = ""; //관찰기록여부 2012-06-03 오후 4:55:18
- var sPatopinsndsmsid = ""; //환자입실sms전송ID 2008-07-22 오후 10:23:58
- var sPatopoutsndsmsid = "";//환자퇴실SMS전송ID 2008-07-22 오후 10:24:00
- //=============================================================
- //2009-09-02 ycd 수술간호기록지 기록항목 추가
- var sEscopeeqmtuseyn = ""; //내시경장비사용여부
- var sInsuremark = ""; //보험팀전달사항
- var sPrcporderid = ""; //처방의사ID
- var sDeptremark = ""; //부서Remark
- var sOproomremark = ""; //수술실Remark
- var sOpcntlistremark = ""; //수술count리스트 Remark
- var sOpNursRecTimeRemark = ""; //수술지연사유정보
- var sOpDrgeSpec = ""; //삽관기록
- //2009-09-10 ycd 검체비고입력 기록항목 추가
- var sSpcCmt = "";
- //2010.02.18 K. J. M 인증저장 로직에서 퇴실저장 로직을 타는지 구분 Flag
- var sCertOutFlag = "N";
- var sOpscaleOrg = "";
- var sOpscaleChgFlag = false;
-
- var sOpcntlisttoexecyn = ""; //수술count리스트 Time Out 시행여부
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2007.05.03 */
- /* by : 최학록 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : xforms-ready시 수행한다 */
- /* return : */
- /* --------------------------------------------------*/
- function fFormInit() {
- // 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- //grp_partlist.visible = false;
- group5.visible = false;
- model.removeNodeset(grd_skinsurveylist.nodeset);
- var paminfo = getGlobalVariable("paminfo");
- model.makeNode("/root/main/paminfo");
- var node = getGlobalVariable("operation");
- setCSVToNode("/root/main/operation", node);
- setCSVToNode("/root/main/paminfo", paminfo);
- grd_count.isReadOnly(1, grd_count.colRef("nacls"), 1, grd_count.colRef("totqty"))=true;
- var sPid = model.getValue(hPath+"/pid");
- // ---Test 시 막고하는 부분 ----------------------
- if (sPid == "") {
- var mainObj = getMainViewer();
- messageBox("수술 환자를 선택하십시요!", "I000");
- window.close();
- // mainObj.javascript.navigate("SMMNP00100"); // 수술마취메인
- return;
- }
- // ---Test 시 막고하는 부분 마지막 ---------------
- node = getGlobalVariable("paminfo");
- setCSVToNode("/root/temp/paminfo", node);
- //외래/입원/DSC을 구분하기 위하여 추가함.
- sSignGernalFlag = model.getValue("/root/temp/paminfo/list/ioflag"); //인증저장시 받아온후 전역변수로 세팅한다.
- sPid = model.getValue("/root/temp/paminfo/list/pid");
- sCretno = model.getValue("/root/temp/paminfo/list/cretno");
- if(sSignGernalFlag == "O"){
- sIndd = model.getValue("/root/temp/paminfo/list/orddd");
- }else{
- sIndd = model.getValue("/root/temp/paminfo/list/indd");
- }
- // 감염정보가져오기 혈액, 접촉, 공기 순으로 | 구분자 N | N | N 혹은 Y | Y | Y
- var InsfectData = getPatientInfo("infection");
- // if (InsfectData =="") InsfectData ="Y|Y|Y";
- var iData = InsfectData.split("|");
- var InsfectName = "";
- if (iData.length > 0) {
- InsfectName += (iData[0] == "Y") ? "혈액 " : "";
- InsfectName += (iData[1] == "Y") ? "접촉 " : "";
- InsfectName += (iData[2] == "Y") ? "공기" : "";
- model.setValue("/root/init/workinst/OpOtherData/infection", InsfectName);
- }
- //
- if (sPid != "") {
- model.makeValue("/root/init/HideData/instcd" , model.getValue(hPath+ "/instcd" )); // 기관코드
- model.makeValue("/root/init/HideData/pid" , model.getValue(hPath+ "/pid" )); // 환자번호
- model.makeValue("/root/init/HideData/oprsrvno", model.getValue(hPath+ "/oprsrvno")); // 의뢰번호
- model.makeValue("/root/init/HideData/ophistno", model.getValue(hPath+ "/ophistno")); // 이력번호
- for (var iRow=1; iRow<=getNodesetCnt(model, xPathFormat+"/SpecimenLists/specimenlist"); iRow++){
- model.setValue(xPathFormat+"/SpecimenLists/specimenlist["+iRow+"]/oprsrvno", model.getValue("/root/init/HideData/oprsrvno"));
- }
- }
- zbcfGetCodeList(new Array("M0260","M0065","M0016", "M0526", "M0527", "M0528", "M0529", "M0029", "M0559"),
- new Array("/root/init/M0260list", "/root/init/M0065list", "/root/init/M0016list", "/root/init/M0526list"
- , "/root/init/M0527list", "/root/init/M0528list", "/root/init/M0529list", "/root/init/M0029list", "/root/init/M0559list" ), true);
- fGetNursHardCdInfo("'111','144', '182', '329','164', '137','154', '155'", getCurrentDate());
- group2.visible = true;
- // 검체_new 항목 사용 시작하는 기준시간 (공통코드 : 329 항목 )_손성훈.
- model.setValue("/root/specdd/chkdd",model.getValue("/root/code/codeinfo/codelist[cdgrupid='329']/cdnm"));
- //
- /*
- 2008-05-19 오후 4:05:41 TimeOut 사용자 요구사항 관련 추가사항 김태범.
- 기존에 inputBox 와 Button을 이용하여 PopUp을 사용하던 Flow에서 ComboList를 이용하도록 수정요청
- 2009-02-10 ycd 기초데이성 부터 조회하도록 처리
- */
- fSheet1TimeOutAddInfo();
- OpRoomCode_Read(); //수술방조회
- OpRecBasic_Read(); //퇴실장소, 피부소독제 조회 , 불일치시 조치사항 리스트 조회
- var sRtn = MnphopcrList_Read();
- if (sRtn == false) {
- bbt_inroom.disabled = true;
- bbt_outroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- return;
- }
- fPackingMergeFalse();
- fMnphopco_Read();
- model.setValue(xPathData+"/eqmtuseyn","X");
-
- fSheetData3_Read("all");
- fSrchCareRecList();
- //fSpecimenCheck(); // 검체 해당없음 check //2008-07-14 오후 8:02:43 taebum 235Line에서 초기에 정보를 가져오므로 주석처리함. fSheetData3_Read
- //*************************************************************************************************
- //사용자 ID Display용 Setting
- //2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- model.setValue("root/init/HideData/timeOutDisplayInfo/perfdr", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdr"));
- model.setValue("root/init/HideData/timeOutDisplayInfo/nurse1", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1"));
- model.setValue("root/init/HideData/timeOutDisplayInfo/anstdr", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdr"));
- model.setValue("root/init/HideData/timeOutDisplayInfo/nurse2", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2"));
- out_perfdr.refresh();
- out_nurse1.refresh();
- out_anstdr.refresh();
- out_nurse2.refresh();
- */
- //*************************************************************************************************
- //2008-08-20 오전 7:25:01 taebum 상태가 확정이면서 부수술일 경우에는 기록작성 할 수 있도록 수정
- //2009-02-11 ycd 재수술 여부에 따른 버튼 활성화 부분 추가
- if(model.getValue(xPathData + "/reopflag") == "N"){
- // ---Test 시 막고하는 부분 ----------------------
- if((model.getValue(xPathData+"/opstatcd") < "30") &&
- ( (model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno") ||
- model.getValue(xPathData+"/mainoprsrvno") == "-" ) ) ){
- messageBox("임시저장만 가능합니다.", "I000"); //2008-09-02 오후 7:34:20 taebum
- //messageBox("입실 전에는 기록을 작성", "E001"); //2008-09-02 오후 8:12:06 주석처리 taebum
- //messageBox("수술준비확인표를 작성하기 전에는 기록을 작성", "E001");
- //messageBox("수술진행 상태가 *대기*전에는 기록을 작성", "E001");
- //2008-09-02 오후 7:34:20 taebum add
- //==================================
- inp_patinroomdd.disabled = true;
- inp_patinroomhh.disabled = true;
- btn_patinroomhh.visible = false;
- bbt_inroom.visible = false;
- inp_patoutroomdd.disabled = true;
- inp_patoutroomhh.disabled = true;
- btn_patoutroomhh.visible = false;
- bbt_outroom.visible = false;
- //btn_patinroomhh.disabled = true;
- //btn_patoutroomhh.disabled = true;
- //==================================
- btn_rgst_sct.disabled = true;
- //btn_rgst_tmp.disabled = true; //2008-09-02 오후 8:19:32 taebum 주석처리
- //btn_forcergst_sct.disabled = true; //2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- //2009-02-17 삭제처리
- //전광판 관련 입퇴실 버튼을 활성화 시킨다.
- //bbt_outroom.disabled = false;
- //bbt_inroom.disabled = false;
- }else if( model.getValue(xPathData+"/opstatcd").substr(1,1) == "9"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }else if (model.getValue(xPathData+"/ophistcd") != "O"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }
- //2008-10-12 오후 5:01:15 수술실에서 준비확인 인증저장 안할 경우 메세지 처리
- if(model.getValue(xPathData+"/opstatcd") >= "30" && model.getValue(xPathData+"/operchfrecdttm") == ""){ //수술실에서 준비확인 인증저장을 안할 경우
- messageBox("수술실에서 준비확인을 하지 않았습니다. 임시저장만 가능합니다.", "I000");
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = false;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }
- //2008-09-03 taebum 오전 10:32:44 협진관련 화면 버튼 처리 추가
- if( (model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){
- /*
- if(model.getValue(xPathData+"/opstatcd") < "30"){
- //임시저장 기능만.
- btn_rgst_sct.disabled = true;
- }
- */
- //2008-09-02 오후 7:34:20 taebum add
- //==================================
- //입/퇴실 관련 비활성화 처리
- inp_patinroomdd.disabled = true;
- inp_patinroomhh.disabled = true;
- btn_patinroomhh.visible = false;
- bbt_inroom.visible = false;
- inp_patoutroomdd.disabled = true;
- inp_patoutroomhh.disabled = true;
- btn_patoutroomhh.visible = false;
- bbt_outroom.visible = false;
- //bbt_outroom.disabled = true;
- //bbt_inroom.disabled = true;
- //수술시작/종료 활성화처리
- //inp_opfromdd.disabled = false;
- //inp_opfromhh.disabled = false;
- //bbt_opfromhh.disabled = false;
- //bbt_opfromhh.visible = true;
- //inp_optodd.disabled = false;
- //inp_optohh.disabled = false;
- //bbt_optohh.disabled = false;
- //bbt_optohh.visible = true;
- //퇴실장소 관련 비활성화 처리
- img2.disabled = true;
- cmb_outplc.disabled = true;
- ipt_opoutrmplcenm.disabled = true;
- }
- //grd_count.isReadOnly(1, 3, 1, 7); //instrument
- if (model.getValue(xPathData+"/certno") != ""){ // 인증저장후 자료 처리
- btn_rgst_tmp.disabled = true;
- }
- bbt_reload.disabled = false;
- var recendflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/recendflag");
- //수술간호기록 마감됐는데도 기록지에서 마감체크가 안됐던 부분 오류 수정 by 박영우 2010-02-11
- if( ( recendflag == "1" )||( recendflag == "3" )) {//수술실이 마감에 포함되어 있으면
- messageBox("수술기록이 마감된 상태입니다. 기록을 할 수 없습니다.", "I000");
- switch1.disabled = true;
- //2009-02-09 ycd 수술간호기록 마감처리시 입실저장, 퇴실저장 버튼 비활성화되도록 변경
- bbt_inroom.disabled = true;
- bbt_outroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- /*
- caption37.visible = false;
- caption39.visible = false;
- caption44.visible = false;
- caption45.visible = false;
- */
- }else {
- //2008-08-25 오후 12:40:29 마취의뢰만 할 경우, Angio방일 경우 입/퇴실 저장하는 로직 추가 ====================
- //group 로직으로 처리하려고 하였으나, 비정상적인 오류로 inputbox에 입력을 못하는 현상 발생으로 캡션으로 처리
- //Angio방은 0041 ~ 0049 임. 현재 0045 BMT방은 잘못된 방으로 삭제 예정
- var sAnstreqflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstreqflag");
- var sRoomcd = model.getValue("/root/main/MnphopcrData/MnphopcrList/opbfpatcnfmspec/opbfpatcnfm/oproom");
- //alert("마취의뢰 구분 : "+sAnstreqflag);
- //alert("수술방 코드 : "+sRoomcd.substr(0,3));
- if((sAnstreqflag == "Y") && (sRoomcd.substr(0,3) == "004")){
- //2009-02-11 ycd 삭제 처리
- //caption37.visible = true;
- //caption39.visible = true;
- //caption44.visible = true;
- //caption45.visible = true;
- //2009-02-11 ycd Angio 환자일 경우 입퇴실 저장만 가능하도록 처리
- bbt_inroom.disabled = false;
- bbt_outroom.disabled = false;
- button7.disabled = true;
- button8.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }else{
- switch1.disabled = false; //2008-08-25 오후 12:52:14 기존 로직 else문 삽입
- //caption37.visible = false;
- //caption39.visible = false;
- //caption44.visible = false;
- //caption45.visible = false;
- }
- //2008-08-25 오후 12:40:29 ===========================================================================
- }
- }
- //---------------------------------------------------------------------------------------------------------
- //2009-02-11 ycd 재수술일 경우 처리
- //재수술일 경우 상태값에 상관없이 처리함
- //---------------------------------------------------------------------------------------------------------
- else{
- if( model.getValue(xPathData+"/opstatcd").substr(1,1) == "9"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- }else if (model.getValue(xPathData+"/ophistcd") != "O"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }
- //2008-09-03 taebum 오전 10:32:44 협진관련 화면 버튼 처리 추가
- if( (model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){
- //2008-09-02 오후 7:34:20 taebum add
- //==================================
- //입/퇴실 관련 비활성화 처리
- inp_patinroomdd.disabled = true;
- inp_patinroomhh.disabled = true;
- btn_patinroomhh.visible = false;
- bbt_inroom.visible = false;
- inp_patoutroomdd.disabled = true;
- inp_patoutroomhh.disabled = true;
- btn_patoutroomhh.visible = false;
- bbt_outroom.visible = false;
- //btn_patinroomhh.disabled = true;
- //btn_patoutroomhh.disabled = true;
- //bbt_outroom.disabled = true;
- //bbt_inroom.disabled = true;
- //수술시작/종료 활성화처리
- //inp_opfromdd.disabled = false;
- //inp_opfromhh.disabled = false;
- //bbt_opfromhh.disabled = false;
- //bbt_opfromhh.visible = true;
- //inp_optodd.disabled = false;
- //inp_optohh.disabled = false;
- //bbt_optohh.disabled = false;
- //bbt_optohh.visible = true;
- //퇴실장소 관련 비활성화 처리
- img2.disabled = true;
- cmb_outplc.disabled = true;
- ipt_opoutrmplcenm.disabled = true;
- }
- //grd_count.isReadOnly(1, 3, 1, 7); //instrument
- if (model.getValue(xPathData+"/certno") != ""){ // 인증저장후 자료 처리
- btn_rgst_tmp.disabled = true;
- }
- bbt_reload.disabled = false;
- var recendflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/recendflag");
- //수술간호기록 마감됐는데도 기록지에서 마감체크가 안됐던 부분 오류 수정 by 박영우 2010-02-11
- if( ( recendflag == "1" )||( recendflag == "3" )) {//수술실이 마감에 포함되어 있으면
- messageBox("수술기록이 마감된 상태입니다. 기록을 할 수 없습니다.", "I000");
- switch1.disabled = true;
- //2009-02-09 ycd 수술간호기록 마감처리시 입실저장, 퇴실저장 버튼 비활성화되도록 변경
- bbt_inroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- /*
- caption37.visible = false;
- caption39.visible = false;
- caption44.visible = false;
- caption45.visible = false;
- */
- }else {
- //2008-08-25 오후 12:40:29 마취의뢰만 할 경우, Angio방일 경우 입/퇴실 저장하는 로직 추가 ====================
- //group 로직으로 처리하려고 하였으나, 비정상적인 오류로 inputbox에 입력을 못하는 현상 발생으로 캡션으로 처리
- //Angio방은 0041 ~ 0049 임. 현재 0045 BMT방은 잘못된 방으로 삭제 예정
- var sAnstreqflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstreqflag");
- var sRoomcd = model.getValue("/root/main/MnphopcrData/MnphopcrList/opbfpatcnfmspec/opbfpatcnfm/oproom");
- //alert("마취의뢰 구분 : "+sAnstreqflag);
- //alert("수술방 코드 : "+sRoomcd.substr(0,3));
- if((sAnstreqflag == "Y") && (sRoomcd.substr(0,3) == "004")){
- //2009-02-11 ycd 삭제 처리
- //caption37.visible = true;
- //caption39.visible = true;
- //caption44.visible = true;
- //caption45.visible = true;
- //2009-02-11 ycd Angio 환자일 경우 입퇴실 저장만 가능하도록 처리
- bbt_inroom.disabled = false;
- bbt_outroom.disabled = false;
- button7.disabled = true;
- button8.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }else{
- switch1.disabled = false; //2008-08-25 오후 12:52:14 기존 로직 else문 삽입
- //caption37.visible = false;
- //caption39.visible = false;
- //caption44.visible = false;
- //caption45.visible = false;
- }
- //2008-08-25 오후 12:40:29 ===========================================================================
- }
- }
- //fInstchk(); // 본원 칠곡 구분_손성훈
- model.refresh();
- //2008-07-22 오후 9:25:16 바코드 read를 위한 Focus 세팅
- model.setFocus("inp_patinroomhh");
- //2008-08-28 오전 9:46:06 taebum 상단정보와의 정보 불일치를 막기 위해 추가
- model.setAttribute("susulrec_oprsrvno", model.getValue("/root/main/operation/list/oprsrvno"));
- model.setAttribute("susulrec_pid", model.getValue("/root/temp/paminfo/list/pid"));
- model.setAttribute("susulrec_hngnm", model.getValue("/root/temp/paminfo/list/hngnm"));
- group2.visible = false;
- model.setFocus("input4");
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* --------------------------------------------------*/
- function fReload(pFlag) {
- //model.refresh();
- var sParamFalg = "B";
- if(pFlag == ""){
- sParamFalg = "B";
- }else{
- sParamFalg = pFlag;
- }
- //기록 가져오기 버튼 클릭시에만 메시지창이 보이도록 수정
- if(sParamFalg == "B"){
- group2.visible = true;
- }
- //display 정보 초기화
- //2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- model.setValue("/root/init/HideData/timeOutDisplayInfo/perfdr","");
- model.setValue("/root/init/HideData/timeOutDisplayInfo/nurse1","");
- model.setValue("/root/init/HideData/timeOutDisplayInfo/anstdr","");
- model.setValue("/root/init/HideData/timeOutDisplayInfo/nurse2","");
- */
- if ( !( (sParamFalg == "B")&&((model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") != "")
- ||(model.getValue(xPathData+"/anstkindspec/anstkind/anstcprchk") != "")
- ||(model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck99") != "")) ) ) {//국소, CPCR, 마취없음이 아니고 기록가져오기 일때만 셋팅
- for(var i = 1; i <= 5; i++){
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid1tmp" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid1" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrnm1" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid2" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrnm2" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid3tmp" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid3" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrnm3" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/deptcd1" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/deptcd2" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/deptcd3" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/deptnm1" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/deptnm2" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/deptnm3" , "");
- // 2009-02-09 ycd 수술간호기록 화면 수정으로 인하여 추가
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrtm1" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrtm2" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrtm3" , "");
- }
- for(var i = 1; i <= 5; i++){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid1tmp","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid1","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrnm1","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid2tmp","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid2","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrnm2","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid3tmp","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid3","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrnm3","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/deptcd1","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/deptcd2","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/deptcd3","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/deptnm1","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/deptnm2","");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/deptnm3","");
- // 2009-02-09 ycd 수술간호기록 화면 수정으로 인하여 추가
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrtm1" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrtm2" , "");
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrtm3" , "");
- }
- var sRtn = MnphopcrList_Read(sParamFalg);
- if (sRtn == false) {
- bbt_inroom.disabled = true;
- bbt_outroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- return;
- }
- }
- fPackingMergeFalse();
- fMnphopco_Read();
- model.setValue(xPathData+"/eqmtuseyn","X");
-
- fSheetData3_Read("all");
- fSrchCareRecList();
- fSettingOPdate("all"); //수술관련 시간 참여자 정보에 자동 세팅 처리(집도의입실, 수술시작)
- //fSpecimenCheck(); // 검체 해당없음 check
- //TimeOut의료진 정보 display
- //2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- model.setValue("root/init/HideData/timeOutDisplayInfo/perfdr", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdr"));
- model.setValue("root/init/HideData/timeOutDisplayInfo/nurse1", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1"));
- model.setValue("root/init/HideData/timeOutDisplayInfo/anstdr", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdr"));
- model.setValue("root/init/HideData/timeOutDisplayInfo/nurse2", model.getValue("root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2"));
- */
- //2009-02-11 ycd 재수술 여부에 따른 버튼 활성화 부분 추가
- if(model.getValue(xPathData + "/reopflag") == "N"){
- // ---Test 시 막고하는 부분 ----------------------
- if( (model.getValue(xPathData+"/opstatcd") < "30")
- &&((model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno"))||(model.getValue(xPathData+"/mainoprsrvno") == "-")) ){
- //기록 가져오기 버튼 클릭시에만 메시지창이 보이도록 수정
- if(sParamFalg == "B"){
- messageBox("임시저장만 가능합니다.", "I000"); //2008-09-02 오후 7:34:20 taebum
- }
- //messageBox("입실 전에는 기록을 작성", "E001"); //2008-09-02 오후 8:12:06 주석처리 taebum
- //messageBox("수술준비확인표를 작성하기 전에는 기록을 작성", "E001");
- //messageBox("수술진행 상태가 *대기*전에는 기록을 작성", "E001");
- //2008-09-02 오후 7:34:20 taebum add
- inp_patinroomdd.disabled = true;
- inp_patinroomhh.disabled = true;
- btn_patinroomhh.visible = false;
- bbt_inroom.visible = false;
- inp_patoutroomdd.disabled = true;
- inp_patoutroomhh.disabled = true;
- btn_patoutroomhh.visible = false;
- bbt_outroom.visible = false;
- //btn_patinroomhh.disabled = true;
- //btn_patoutroomhh.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_rgst_tmp.disabled = true; //2008-09-02 오후 8:19:32 taebum 주석처리
- //btn_forcergst_sct.disabled = true; //2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- //2009-02-17 삭제처리
- //전광판 관련 입퇴실 버튼을 활성화 시킨다.
- //bbt_outroom.disabled = false;
- //bbt_inroom.disabled = false;
- }else if( model.getValue(xPathData+"/opstatcd").substr(1,1) == "9"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }else if (model.getValue(xPathData+"/ophistcd") != "O"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }
- //2008-10-12 오후 5:01:15 수술실에서 준비확인 인증저장 안할 경우 메세지 처리
- if(model.getValue(xPathData+"/opstatcd") >= "30" && model.getValue(xPathData+"/operchfrecdttm") == ""){ //수술실에서 준비확인 인증저장을 안할 경우
- //기록 가져오기 버튼 클릭시에만 메시지창이 보이도록 수정
- if(sParamFalg == "B"){
- messageBox("수술실에서 준비확인을 하지 않았습니다. 임시저장만 가능합니다.", "I000");
- }
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = false;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }
- //2008-09-03 taebum 오전 10:32:44 협진관련 화면 버튼 처리 추가
- if( (model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){
- /*
- if(model.getValue(xPathData+"/opstatcd") < "30"){
- //임시저장 기능만.
- btn_rgst_sct.disabled = true;
- }
- */
- //2008-09-02 오후 7:34:20 taebum add
- //==================================
- //입/퇴실 관련 비활성화 처리
- inp_patinroomdd.disabled = true;
- inp_patinroomhh.disabled = true;
- btn_patinroomhh.visible = false;
- bbt_inroom.visible = false;
- inp_patoutroomdd.disabled = true;
- inp_patoutroomhh.disabled = true;
- btn_patoutroomhh.visible = false;
- bbt_outroom.visible = false;
- //bbt_outroom.disabled = true;
- //bbt_inroom.disabled = true;
- //수술시작/종료 활성화처리
- //inp_opfromdd.disabled = false;
- //inp_opfromhh.disabled = false;
- //bbt_opfromhh.disabled = false;
- //bbt_opfromhh.visible = true;
- //inp_optodd.disabled = false;
- //inp_optohh.disabled = false;
- //bbt_optohh.disabled = false;
- //bbt_optohh.visible = true;
- //퇴실장소 관련 비활성화 처리
- img2.disabled = true;
- cmb_outplc.disabled = true;
- ipt_opoutrmplcenm.disabled = true;
- }
- //grd_count.isReadOnly(1, 3, 1, 7); //instrument
- if (model.getValue(xPathData+"/certno") != ""){ // 인증저장후 자료 처리
- btn_rgst_tmp.disabled = true;
- }
- bbt_reload.disabled = false;
- var recendflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/recendflag");
- //수술간호기록 마감됐는데도 기록지에서 마감체크가 안됐던 부분 오류 수정 by 박영우 2010-02-11
- if( ( recendflag == "1" )||( recendflag == "3" )) {//수술실이 마감에 포함되어 있으면
- messageBox("수술기록이 마감된 상태입니다. 기록을 할 수 없습니다.", "I000");
- switch1.disabled = true;
- //2009-02-09 ycd 수술간호기록 마감처리시 입실저장, 퇴실저장 버튼 비활성화되도록 변경
- bbt_inroom.disabled = true;
- bbt_outroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- /*
- caption37.visible = false;
- caption39.visible = false;
- caption44.visible = false;
- caption45.visible = false;
- */
- }else {
- //2008-08-25 오후 12:40:29 마취의뢰만 할 경우, Angio방일 경우 입/퇴실 저장하는 로직 추가 ====================
- //group 로직으로 처리하려고 하였으나, 비정상적인 오류로 inputbox에 입력을 못하는 현상 발생으로 캡션으로 처리
- //Angio방은 0041 ~ 0049 임. 현재 0045 BMT방은 잘못된 방으로 삭제 예정
- var sAnstreqflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstreqflag");
- var sRoomcd = model.getValue("/root/main/MnphopcrData/MnphopcrList/opbfpatcnfmspec/opbfpatcnfm/oproom");
- //alert("마취의뢰 구분 : "+sAnstreqflag);
- //alert("수술방 코드 : "+sRoomcd.substr(0,3));
- if((sAnstreqflag == "Y") && (sRoomcd.substr(0,3) == "004")){
- //2009-02-11 ycd 삭제 처리
- //caption37.visible = true;
- //caption39.visible = true;
- //caption44.visible = true;
- //caption45.visible = true;
- //2009-02-11 ycd Angio 환자일 경우 입퇴실 저장만 가능하도록 처리
- bbt_inroom.disabled = false;
- bbt_outroom.disabled = false;
- button7.disabled = true;
- button8.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }else{
- switch1.disabled = false; //2008-08-25 오후 12:52:14 기존 로직 else문 삽입
- //caption37.visible = false;
- //caption39.visible = false;
- //caption44.visible = false;
- //caption45.visible = false;
- }
- }
- }
- //---------------------------------------------------------------------------------------------------------
- //2009-02-11 ycd 재수술일 경우 처리
- //재수술일 경우 상태값에 상관없이 처리함
- //---------------------------------------------------------------------------------------------------------
- else{
- if( model.getValue(xPathData+"/opstatcd").substr(1,1) == "9"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- }else if (model.getValue(xPathData+"/ophistcd") != "O"){
- messageBox("취소된 수술스케줄 입니다.", "I000");
- bbt_outroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }
- //2008-09-03 taebum 오전 10:32:44 협진관련 화면 버튼 처리 추가
- if( (model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){
- //2008-09-02 오후 7:34:20 taebum add
- //==================================
- //입/퇴실 관련 비활성화 처리
- inp_patinroomdd.disabled = true;
- inp_patinroomhh.disabled = true;
- btn_patinroomhh.visible = false;
- bbt_inroom.visible = false;
- inp_patoutroomdd.disabled = true;
- inp_patoutroomhh.disabled = true;
- btn_patoutroomhh.visible = false;
- bbt_outroom.visible = false;
- //btn_patinroomhh.disabled = true;
- //btn_patoutroomhh.disabled = true;
- //bbt_outroom.disabled = true;
- //bbt_inroom.disabled = true;
- //수술시작/종료 활성화처리
- //inp_opfromdd.disabled = false;
- //inp_opfromhh.disabled = false;
- //bbt_opfromhh.disabled = false;
- //bbt_opfromhh.visible = true;
- //inp_optodd.disabled = false;
- //inp_optohh.disabled = false;
- //bbt_optohh.disabled = false;
- //bbt_optohh.visible = true;
- //퇴실장소 관련 비활성화 처리
- img2.disabled = true;
- cmb_outplc.disabled = true;
- ipt_opoutrmplcenm.disabled = true;
- }
- //grd_count.isReadOnly(1, 3, 1, 7); //instrument
- if (model.getValue(xPathData+"/certno") != ""){ // 인증저장후 자료 처리
- btn_rgst_tmp.disabled = true;
- }
- bbt_reload.disabled = false;
- var recendflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/recendflag");
- //수술간호기록 마감됐는데도 기록지에서 마감체크가 안됐던 부분 오류 수정 by 박영우 2010-02-11
- if( ( recendflag == "1" )||( recendflag == "3" )) {//수술실이 마감에 포함되어 있으면
- messageBox("수술기록이 마감된 상태입니다. 기록을 할 수 없습니다.", "I000");
- switch1.disabled = true;
- //2009-02-09 ycd 수술간호기록 마감처리시 입실저장, 퇴실저장 버튼 비활성화되도록 변경
- bbt_inroom.disabled = true;
- bbt_inroom.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- /*
- caption37.visible = false;
- caption39.visible = false;
- caption44.visible = false;
- caption45.visible = false;
- */
- }else {
- //2008-08-25 오후 12:40:29 마취의뢰만 할 경우, Angio방일 경우 입/퇴실 저장하는 로직 추가 ====================
- //group 로직으로 처리하려고 하였으나, 비정상적인 오류로 inputbox에 입력을 못하는 현상 발생으로 캡션으로 처리
- //Angio방은 0041 ~ 0049 임. 현재 0045 BMT방은 잘못된 방으로 삭제 예정
- var sAnstreqflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstreqflag");
- var sRoomcd = model.getValue("/root/main/MnphopcrData/MnphopcrList/opbfpatcnfmspec/opbfpatcnfm/oproom");
- //alert("마취의뢰 구분 : "+sAnstreqflag);
- //alert("수술방 코드 : "+sRoomcd.substr(0,3));
- if((sAnstreqflag == "Y") && (sRoomcd.substr(0,3) == "004")){
- //2009-02-11 ycd 삭제 처리
- //caption37.visible = true;
- //caption39.visible = true;
- //caption44.visible = true;
- //caption45.visible = true;
- //2009-02-11 ycd Angio 환자일 경우 입퇴실 저장만 가능하도록 처리
- bbt_inroom.disabled = false;
- bbt_outroom.disabled = false;
- button7.disabled = true;
- button8.disabled = true;
- btn_rgst_tmp.disabled = true;
- btn_rgst_sct.disabled = true;
- //btn_forcergst_sct.disabled = true; 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- }else{
- switch1.disabled = false; //2008-08-25 오후 12:52:14 기존 로직 else문 삽입
- //caption37.visible = false;
- //caption39.visible = false;
- //caption44.visible = false;
- //caption45.visible = false;
- }
- }
- }
- model.refresh();
- group2.visible = false;
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2007.05.15 */
- /* by : 최학록 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 수술방정보 가져오기 */
- /* param : 기관코드 */
- /* return : */
- /* --------------------------------------------------*/
- function OpRoomCode_Read() {
- model.removenode("/root/send");
- model.makeValue("/root/send/flag" , "userid" );
- model.makeValue("/root/send/searchitem" , "00009006" );
- submit("TRMNP00301", false); // 수술실의 코드와 명칭을 가져온다.
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.03.31 */
- /* by : 양천덕 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 수술후퇴실장소, 피부소독제 정보 조회 */
- /* param : 기관코드 */
- /* return : */
- /* --------------------------------------------------*/
- function OpRecBasic_Read() {
- model.removenode("/root/send");
- model.makeValue("/root/send/cdgrupid" , "041" );
- //------(20110512) 불일치시 조치 사항 정보 추가(06)
- //model.makeValue("/root/send/lrgclscd" , "04, 05" );
- model.makeValue("/root/send/lrgclscd" , "04, 05, 06" );
- //------(20110512) 불일치시 조치 사항 정보 추가
- submit("TRMNP00324", false); // 퇴실장소구분, 피부소독제 정보 조회, 불일치시 조치 사항 정보 추가
- /*
- var CountListCapValue = "";
- if(getNodesetCount("/root/init/HideData/OpBasicCdList/cntlistresn") > 0 ){
- for(var i = 1 ; i <= getNodesetCount("/root/init/HideData/OpBasicCdList/cntlistresn") ; i++){
- if(model.getValue("/root/init/HideData/OpBasicCdList/cntlistresn["+i+"]/cdid") != "-" ){
- CountListCapValue += model.getValue("/root/init/HideData/OpBasicCdList/cntlistresn["+i+"]/cdnm") +". "
- + model.getValue("/root/init/HideData/OpBasicCdList/cntlistresn["+i+"]/cddesc") +" ";
- }
- }
- }
- caption11.value = CountListCapValue;
- caption11.refresh();
- */
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.03.31 */
- /* by : 양천덕 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 수술물품확인 Count관리 내역 정보를 */
- /* 조회 요청을 처리한다 */
- /* param : 기관코드 */
- /* return : */
- /* --------------------------------------------------*/
- function fMnphopco_Read() {
- model.removenode("/root/send");
- model.makeValue("/root/send/instcd" , model.getValue("/root/init/HideData/instcd" ));
- model.makeValue("/root/send/oprsrvno" , model.getValue("/root/init/HideData/oprsrvno"));
- submit("TRMNP00303"); // 수술물품확인 Count관리 내역 조회
- //=================================================================
- //2008-06-17 오후 5:37:10 taebum add
- if(getNodesetCount("/root/main/MnphopcoLists/mnphopcolist") < 1){
- // 2009-09-10 멀티 Count Sheet 추가 구현 부분 추가(INSTRUMENT 추가로 Sheet 구분 처리)
- fAddCountSheet();
- //grd_count.refresh();
- //grd_count.isReadOnly(2, grd_count.colRef("nacls"), 2, grd_count.colRef("packqty")) = true;
- //grd_count.cellStyle("background-color", 2, grd_count.colRef("nacls"), 2, grd_count.colRef("packqty")) = "#DCDACS";
- return;
- }
- //=================================================================
- //Sheet별 스타일 적용을 위하여 별도 함수로 설정
- fSetCountSheetStyle();
- //grd_count.fixedcellcheckbox(0, grd_count.colRef("nacls")) = true;
- //grd_count.fixedcellcheckbox(1, grd_count.colRef("nacls")) = true;
- //grd_count.fixedcellcheckbox(1, grd_count.colRef("samey")) = true;
- //grd_count.fixedcellcheckbox(1, grd_count.colRef("samen")) = true;
- //
- // End Of for (var i=1; i<= sRowCnt; i++)
- // INSTRUMENT 인경우는 Clear한다.
- //model.setValue(CountPath + "[" + 1 +"]/initqty" , ""); // 04
- //model.setValue(CountPath + "[" + 1 +"]/addqty" , ""); // 05
- //model.setValue(CountPath + "[" + 1 +"]/totqty" , ""); // 06
- //model.setValue(CountPath + "[" + 1 +"]/packqty" , ""); // 07
- //grd_count.isReadOnly(2, grd_count.colRef("nacls"), 2, grd_count.colRef("packqty")) = true;
- //grd_count.cellStyle("background-color", 2, grd_count.colRef("nacls"), 2, grd_count.colRef("packqty")) = "#DCDACS";
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 또는 Count Sheet 추가시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.09.10 */
- /* by : 양천덕 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : Count Sheet INSTRUMENT 추가 로직 */
- /* 하드코딩 제거 해야함 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fAddCountSheet(){
- var ChkRecNo = "" ;
- var CountSheetRowCnt = getNodesetCount(CountPath);
- var InsRow = eval(CountSheetRowCnt) + 1 ;
- //2009-09-11 ycd Sheet Seq 확인
- for(var i = 1 ; i <= CountSheetRowCnt ; i++){
- ChkRecNo = model.getValue(CountPath + "["+i+"]/recno");
- }
- if(ChkRecNo != "" ){
- ChkRecNo = eval(ChkRecNo) + 1;
- }else{
- ChkRecNo = 1;
- }
- //2009-09-11 ycd Sheet 구분 로우 생성을 하기 위해 Temp 노드에 copy작업 추가
- model.removeNode("/root/temp/MnphopcoLists");
- // 2008-06-30 오전 10:59:20 taebum 신규일 경우 instrument만 자동 생성한다.
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/codenm1" , "INSTRUMENT" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/codenm2" , "INSTRUMENT" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/codenm3" , "INSTRUMENT" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nacls" , "false" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/naclsinucd" , "-" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/initqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/addqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/totqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/packqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursnm42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/samey" , "true" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/samen" , "false" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/nursid42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptcd42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/deptnm42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/checkid42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/packspec" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/kindcd" , "00" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/refseq" , "1" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/recflag" , "I" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/recno" , ChkRecNo );
- //---(20101024) 경북대
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/discordaction" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/discordactionetc" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsRow+"]/discordactionnm" , "" );
- //---(20101024) 경북대
- fSetCountSheetStyle();
- // grd_count.refresh();
- // grd_count.isReadOnly(InsRow, grd_count.colRef("nacls"), InsRow, grd_count.colRef("packqty")) = true;
- // grd_count.cellStyle("background-color", InsRow, grd_count.colRef("nacls"), InsRow, grd_count.colRef("packqty")) = "#DCDACS";
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* Count Sheet 삭제 및 복구 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.09.16 */
- /* by : 양천덕 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : Sheet 삭제 및 복구 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fDeleteCountSheet(pRow){
- //if(grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) != "-" ) {
- // messageBox("삭제 및 삭제 취소할 Sheet Title을 선택하십시요", "I");
- // return;
- //}
- var FindDelRecno = grd_count.valueMatrix(pRow, grd_count.colRef("recno"));
- var recflag = grd_count.valueMatrix(pRow, grd_count.colRef("recflag"));
- var CountSheetRowCnt = getNodesetCount(CountPath);
- if( FindDelRecno == "1" && recflag == "-") {
- messageBox("Sheet No.1은 삭제할 수 없습니다.", "E000");
- return;
- }
- if(grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) == "-" ) {
- for(var i = 1 ; i <= CountSheetRowCnt ; i++){
- if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recno") == FindDelRecno){
- if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag") == "I" ){
- model.setValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag", "X");
- }else if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag") == "U" ){
- model.setValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag", "D");
- }else if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag") == "X" ){
- model.setValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag", "I");
- }else if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag") == "D" ){
- model.setValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recflag", "U");
- }
- }
- }
- } else {
- if(grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) == "I") {
- grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) = "X";
- } else if(grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) == "U") {
- grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) = "D";
- } else if(grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) == "X") {
- grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) = "I";
- } else if(grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) == "D") {
- grd_count.valueMatrix(pRow, grd_count.colRef("recflag")) = "D";
- }
- }
- grd_count.rebuildStyle();
- fSetStyle();
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 또는 Count Sheet 추가시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.09.10 */
- /* by : 양천덕 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : Sheet 구분 Row추가 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fSetCountSheetStyle(){
- //스타일 적용전 MAIN -> TEMP NODE로 COPY 처리
- model.makeNode("/root/temp/MnphopcoLists");
- model.removeNodeset("/root/main/MnphopcoLists/mnphopcolist[recflag = '-']");
- model.copyNode("/root/temp/MnphopcoLists", "/root/main/MnphopcoLists");
- model.removeNodeset("/root/main/MnphopcoLists/mnphopcolist");
- var CountSheetRowCnt = getNodesetCount("/root/temp/MnphopcoLists/mnphopcolist");
- var BfChkRecNo = 0;
- var AfChkRecNo = 0;
- var SheetNum = 1;
- //2009-09-11 ycd Sheet 구분 행 추가 및 이전 기록 Node Copy
- for(var i = 1 ; i <= CountSheetRowCnt ; i++){
- AfChkRecNo = model.getValue("/root/temp/MnphopcoLists/mnphopcolist["+i+"]/recno");
- InsSheetRow = eval(getNodesetCount("/root/main/MnphopcoLists/mnphopcolist"))+1;
- if(BfChkRecNo != AfChkRecNo){
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/codenm1" , "Sheet No." + SheetNum );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/codenm2" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/codenm3" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nacls" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/naclsinucd" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/initqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/addqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/totqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/packqty" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursnm42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/samey" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/samen" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/nursid42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptcd42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/deptnm42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid11" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid12" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid21" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid22" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid31" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid32" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid41" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/checkid42" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/packspec" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/kindcd" , "00" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/refseq" , "1" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/recflag" , "-" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/recno" , AfChkRecNo );
- //-----(20101024) 경북대
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/discordaction" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/discordactionetc" , "" );
- model.makeValue("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]/discordactionnm" , "" );
- //-----(20101024) 경북대
- InsSheetRow = eval(InsSheetRow) + 1;
- model.makeNode("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]");
- model.copyNode("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]", "/root/temp/MnphopcoLists/mnphopcolist["+i+"]");
- SheetNum++;
- BfChkRecNo = AfChkRecNo;
- }else{
- model.makeNode("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]");
- model.copyNode("/root/main/MnphopcoLists/mnphopcolist["+InsSheetRow+"]", "/root/temp/MnphopcoLists/mnphopcolist["+i+"]");
- }
- }
- grd_count.rebuild();
- //sRowCnt = grd_count.rows - grd_count.fixedRows;
- //2009-02-26 이전 기록에 대해서도 처리를 할 수 있도록 예외 처리 부분 추가
- /*
- if (grd_count.valueMatrix(i, grd_count.colRef("nacls")) == 'true') {
- if(i == 1){
- fReadOnlyFlag(grd_count, i+1, i+1, grd_count.colRef("nacls"), grd_count.colRef("nursnm42"), true);
- grd_count.cellStyle("background-color", i+1, grd_count.colRef("nacls"), i+1, grd_count.colRef("packqty")) = "#DCDACS";
- }else{
- fReadOnlyFlag(grd_count, i+1, i+1, grd_count.colRef("initqty"), grd_count.colRef("samen"), true);
- }
- }else{
- if(i == 1){
- if(model.getValue(CountPath + "["+ (i) +"]/samen") == 'true'){
- if(model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno") && model.getValue(xPathData+"/mainoprsrvno") != "-" ){
- model.setValue(CountPath + "["+ (i) +"]/nacls", 'true');
- model.setValue(CountPath + "["+ (i) +"]/naclsinucd", "9");
- fReadOnlyFlag(grd_count, i+1, i+1, grd_count.colRef("nacls"), grd_count.colRef("nursnm42"), true);
- grd_count.cellStyle("background-color", i+1, grd_count.colRef("nacls"), i+1, grd_count.colRef("packqty")) = "#DCDACS";
- }else{
- model.setValue(CountPath + "["+ (i) +"]/initqty", "");
- model.setValue(CountPath + "["+ (i) +"]/addqty" , "");
- model.setValue(CountPath + "["+ (i) +"]/totqty" , "");
- model.setValue(CountPath + "["+ (i) +"]/packqty", "");
- grd_count.isReadOnly(i+1, grd_count.colRef("nacls"), i+1, grd_count.colRef("packqty")) = true;
- grd_count.cellStyle("background-color", i+1, grd_count.colRef("nacls"), i+1, grd_count.colRef("packqty")) = "#DCDACS";
- }
- }else{
- model.setValue(CountPath + "["+ (i) +"]/initqty", "");
- model.setValue(CountPath + "["+ (i) +"]/addqty" , "");
- model.setValue(CountPath + "["+ (i) +"]/totqty" , "");
- model.setValue(CountPath + "["+ (i) +"]/packqty", "");
- model.setValue(CountPath + "["+ (i) +"]/samey" , 'true');
- model.setValue(CountPath + "["+ (i) +"]/samen" , 'false');
- grd_count.isReadOnly(i+1, grd_count.colRef("nacls"), i+1, grd_count.colRef("packqty")) = true;
- grd_count.cellStyle("background-color", i+1, grd_count.colRef("nacls"), i+1, grd_count.colRef("packqty")) = "#DCDACS";
- }
- }else{
- grd_count.isReadOnly((i+1), grd_count.colRef("naclsinucd"), (i+1), grd_count.colRef("naclsinucd")) = true;
- }
- }
- }
- */
- // 2009-09-14 ycd 색상 지정
- fSetStyle();
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* Count Sheet 생상 및 merge 처리 */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2009.09.14 */
- /* by : 양천덕 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 화면 style 설정 처리 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fSetStyle(){
- //2009-09-11 YCD Count Sheet 멀티 기록 처리
- //Sheet 별로 구별할 수 있는 Row 추가 및 스타일 별도 적용
- var CntListOprsrvNo = model.getValue(xPathData+"/oprsrvno");
- var CntListMainOprsrvNo = model.getValue(xPathData+"/mainoprsrvno");
- for (var i = grd_count.fixedRows; i <= grd_count.rows - grd_count.fixedRows + 1 ; i++) {
- var CntListRecFlag = grd_count.valueMatrix(i, grd_count.colRef("recflag"));
- var CntListKindCd = grd_count.valueMatrix(i, grd_count.colRef("kindcd"));
- var CntListNacls = grd_count.valueMatrix(i, grd_count.colRef("nacls"));
- var CntListSamen = grd_count.valueMatrix(i, grd_count.colRef("samen"));
- if(CntListRecFlag == "-"){
- grd_count.mergeByFree(i, grd_count.fixedCols, i, grd_count.cols-1);
- grd_count.isReadOnly(i,grd_count.fixedCols, i, grd_count.cols-1) = true;
- grd_count.rowStyle(i,"data","background-color") = "#c0c0c0";
- grd_count.rowStyle(i,"data","font-weight") = "bold";
- }else{
- //Sheet 삭제 처리
- if(CntListRecFlag == "D" || CntListRecFlag == "X"){
- grd_count.cellStyle("color", i, grd_count.colRef("codenm1"), i, grd_count.colRef("samen")) = "#ff0000";
- grd_count.cellStyle("font_weight", i, grd_count.colRef("codenm1"), i, grd_count.colRef("samen")) = "bold";
- grd_count.cellStyle("background-color", i, grd_count.colRef("codenm1"), i, grd_count.colRef("samen")) = "#ffff99";
- }else{
- if(CntListKindCd == "00"){
- if(CntListNacls == 'true'){
- fReadOnlyFlag(grd_count, i, i, grd_count.colRef("nacls"), grd_count.colRef("nursnm42"), true);
- }else{
- if(CntListSamen == 'true'){
- if(CntListOprsrvNo != CntListMainOprsrvNo && CntListMainOprsrvNo != "-" ){
- grd_count.valueMatrix(i, grd_count.colRef("nacls" )) = 'true';
- grd_count.valueMatrix(i, grd_count.colRef("naclsinucd" )) = "9";
- fReadOnlyFlag(grd_count, i, i, grd_count.colRef("nacls"), grd_count.colRef("nursnm42"), true);
- }else{
- grd_count.valueMatrix(i, grd_count.colRef("initqty" )) = "";
- grd_count.valueMatrix(i, grd_count.colRef("addqty" )) = "";
- grd_count.valueMatrix(i, grd_count.colRef("totqty" )) = "";
- grd_count.valueMatrix(i, grd_count.colRef("packqty" )) = "";
- grd_count.isReadOnly(i, grd_count.colRef("nacls"), i, grd_count.colRef("packqty")) = true;
- }
- }else{
- grd_count.valueMatrix(i, grd_count.colRef("initqty")) = "";
- grd_count.valueMatrix(i, grd_count.colRef("addqty" )) = "";
- grd_count.valueMatrix(i, grd_count.colRef("totqty" )) = "";
- grd_count.valueMatrix(i, grd_count.colRef("packqty")) = "";
- grd_count.valueMatrix(i, grd_count.colRef("samey" )) = 'true';
- grd_count.valueMatrix(i, grd_count.colRef("samen" )) = 'false';
- grd_count.isReadOnly(i, grd_count.colRef("nacls"), i, grd_count.colRef("packqty")) = true;
- }
- grd_count.isReadOnly(i, grd_count.colRef("nacls"), i, grd_count.colRef("packqty")) = true;
- }
- grd_count.cellStyle("background-color", i, grd_count.colRef("nacls"), i, grd_count.colRef("packqty")) = "#DCDACS";
- }else{
- if(CntListNacls == 'true'){
- fReadOnlyFlag(grd_count, i, i, grd_count.colRef("initqty"), grd_count.colRef("samen"), true);
- }else{
- grd_count.isReadOnly(i, grd_count.colRef("naclsinucd"), i, grd_count.colRef("naclsinucd")) = true;
- }
- }
- }
- }
- }
- }
- function fUserInfo() {
- model.removenode("/root/send");
- model.makeValue("/root/send/instcd" , model.getValue("/root/init/HideData/instcd") );
- submit("TRZSU10102"); // 사용자의 코드와 명칭을 가져온다.
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2007.05.15 */
- /* by : 최학록 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc :수술기록 정보 가져오기 */
- /* param : 기관코드 */
- /* return : */
- /* --------------------------------------------------*/
- function MnphopcrList_Read(sParamFalg) {
- var sOpCnfmDD = "";
- var xPathOpCd = "/root/init/workinst/OpcdData/opcdlist" ; // 수술전 수술명
- model.removenode("/root/send");
- model.makeValue("/root/send/instcd" , model.getValue("/root/init/HideData/instcd" ));
- model.makeValue("/root/send/pid" , model.getValue("/root/init/HideData/pid" ));
- model.makeValue("/root/send/oprsrvno" , model.getValue("/root/init/HideData/oprsrvno"));
- model.makeValue("/root/send/ophistno" , model.getValue("/root/init/HideData/ophistno"));
- if (submit("TRMNP00302", false)) { // 수술실의 코드와 명칭을 가져온다.
- // alert(getNodesetCount("/root/main/MnphopcrData/MnphopcrList"));
- sOpscaleOrg = model.getValue(xPathData+"/opscale"); //박영우
- sOpscaleChgFlag = false;
- if (getNodesetCount("/root/main/MnphopcrData/MnphopcrList") < 1) {
- messageBox("수술 예약정보가 없습니다. 확인하십시요!", "I000");
- group2.visible = false;
- return false;
- }
- }
- model.setValue(xPathDispDT+"/patinroomdd" , model.getValue(xPathData+"/patinroomdt" ).substr(0,8) ); // 환자입실시간
- model.setValue(xPathDispDT+"/patinroomhh" , model.getValue(xPathData+"/patinroomdt" ).substr(8,4) );
- model.setValue(xPathDispDT+"/patoutroomdd" , model.getValue(xPathData+"/patoutroomdt").substr(0,8) ); // 환자퇴실시간
- model.setValue(xPathDispDT+"/patoutroomhh" , model.getValue(xPathData+"/patoutroomdt").substr(8,4) );
- model.setValue(xPathDispDT+"/perfidarvdd" , model.getValue(xPathData+"/perfidarvdt" ).substr(0,8) ); // 집도의도착일자
- model.setValue(xPathDispDT+"/perfidarvhh" , model.getValue(xPathData+"/perfidarvdt" ).substr(8,4) ); // 집도의도착시간
- model.setValue(xPathDispDT+"/perfidoutdd" , model.getValue(xPathData+"/perfidoutdt" ).substr(0,8) ); // 집도의퇴실일자
- model.setValue(xPathDispDT+"/perfidouthh" , model.getValue(xPathData+"/perfidoutdt" ).substr(8,4) ); // 집도의퇴실시간
- model.setValue(xPathDispDT+"/anstsrtdd" , model.getValue(xPathData+"/anstsrtdt" ).substr(0,8) ); // 마취시작일자
- model.setValue(xPathDispDT+"/anstsrthh" , model.getValue(xPathData+"/anstsrtdt" ).substr(8,4) ); // 마취시작시간
- model.setValue(xPathDispDT+"/anstenddd" , model.getValue(xPathData+"/anstenddt" ).substr(0,8) ); // 마취종료일자
- model.setValue(xPathDispDT+"/anstendhh" , model.getValue(xPathData+"/anstenddt" ).substr(8,4) ); // 마취종료시간
- model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/opfromdt" ).substr(0,8)); // 수술시작일자
- model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/opfromdt" ).substr(8,4)); // 수술시작시간
- model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/optodt" ).substr(0,8)); // 수술종료일자
- model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/optodt" ).substr(8,4)); // 수술종료시간
- if ( (sParamFalg == "B")&&((model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") == "")
- &&(model.getValue(xPathData+"/anstkindspec/anstkind/anstcprchk") == "")
- &&(model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck99") == "")) ) {//국소, CPCR, 마취없음이 아니고 기록가져오기 일때만 셋팅
- model.setValue(xPathDispDT+"/anstsrtdd" , model.getValue(xPathData+"/anstanstsrtdt" ).substr(0,8) ); // 마취시작일자
- model.setValue(xPathDispDT+"/anstsrthh" , model.getValue(xPathData+"/anstanstsrtdt" ).substr(8,4) ); // 마취시작시간
- model.setValue(xPathDispDT+"/anstenddd" , model.getValue(xPathData+"/anstanstenddt" ).substr(0,8) ); // 마취종료일자
- model.setValue(xPathDispDT+"/anstendhh" , model.getValue(xPathData+"/anstanstenddt" ).substr(8,4) ); // 마취종료시간
- model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/anstopfromdt" ).substr(0,8)); // 수술시작일자
- model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/anstopfromdt" ).substr(8,4)); // 수술시작시간
- model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/anstoptodt" ).substr(0,8)); // 수술종료일자
- model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/anstoptodt" ).substr(8,4)); // 수술종료시간
- }
- //속도개선용으로 막음.20130724_김병국(앞에 가져올때 같이 가져옴.)
- //fGetHardCodeInfo("/root/main/cond", "/root/init/opscale", "154");
- //fGetHardCodeInfo("/root/main/cond", "/root/init/opscaletm", "155");
-
- model.makeNode("/root/init/opscale");
- model.makeNode("/root/init/opscaletm");
-
- model.copyNode("/root/init/opscale", "/root/code/codeinfo/codelist[cdgrupid='154']");
- model.copyNode("/root/init/opscale", "/root/code/codeinfo/codelist[cdgrupid='155']");
- fOpTotalTime(); // 총수술시간 계산
- fAnTotalTime(); // 총마취시간 계산
- model.makeValue("/root/init/HideData/opoutrmplcecd", model.getValue(xPathData+ "/opoutrmplcecd")); // 퇴실장소
- XmlDataCheck(); // Xml Data가 없는 경우 구조를 Copy한다.
- // 2007.11.13 Choi
- // model.makeNode(xPathData+"/counspec" ); // 27 Count,내역
- // model.makeNode(xPathData+"/packingspec" ); // 28 Packing내역
- // InstanceNodeCopy(model, xPathData+"/counspec" , xPathFormat+"/counspec" ); // Count,내역
- // InstanceNodeCopy(model, xPathData+"/packingspec", xPathFormat+"/packingspec"); // Packing내역
- sOpCnfmDD = model.getValue(xPathData+"/opcnfmdd");
- sOutflag = model.getValue(xPathData+"/outflag");
- inp_patinroomdd.attribute("color") = "";
- inp_patinroomhh.attribute("color") = "";
- inp_patoutroomdd.attribute("color") = "";
- inp_patoutroomhh.attribute("color") = "";
- // ---------------------------------
- // 진행상태
- // 00 : 임시'
- // 10 : 의뢰'
- // 19 : 의뢰취소'
- // 20 : 예정'
- // 29 : 취소'
- // 30 : 대기'
- // 39 : 대기취소'
- // 40 : 수술'
- // 49 : 수술취소'
- // 50 : 종료'
- // 60 : 회복'
- // 70 : 종료'
- // ---------------------------------
- if( model.getValue(xPathDispDT+"/patinroomdd" ) == "" ) {
- if( getUserInfo("dutplceinstcd") == "017" ) {//빈센트 수술기록일시 입실일시로 셋팅 2010.04.09 K. J. M
- var ccsroprectm = model.getValue(xPathData+"/ccsroprectm");
- if( ccsroprectm != "" ) {
- model.setValue(xPathDispDT+"/patinroomdd", ccsroprectm.substr(0, 8));
- model.setValue(xPathDispDT+"/patinroomhh", ccsroprectm.substr(8, 4));
- }
- }else {
- model.setValue(xPathDispDT+"/patinroomdd" , sOpCnfmDD);
- }
- } else {
- if (model.getValue(xPathData+"/opstatcd") > "39") { // 진행상태
- inp_patinroomdd.attribute("color") = "#0000ff";
- inp_patinroomhh.attribute("color") = "#0000ff";
- }
- }
- //퇴실일자가 없거나, 퇴실시간이 없으면 마취종료시간, 수술종료시간으로 셋팅 2010.05.27 K. J. M
- if( (model.getValue(xPathDispDT+"/patoutroomdd") == "")||(model.getValue(xPathDispDT+"/patoutroomdd") != ""&&model.getValue(xPathDispDT+"/patoutroomhh") == "") ) {
- if( getUserInfo("dutplceinstcd") == "017" ) {//빈센트 마취종료시간 퇴실일시로 셋팅 2010.04.09 K. J. M
- var anstenddd = model.getValue(xPathData+"/anstanstenddt").substr(0,8);
- var anstendhh = model.getValue(xPathData+"/anstanstenddt").substr(8,4);
- var openddd = model.getValue(xPathDispDT+"/optodd");
- var opendhh = model.getValue(xPathDispDT+"/optohh");
- if( anstenddd != ""&&anstendhh != "" ) {
- model.setValue(xPathDispDT+"/patoutroomdd", anstenddd);
- model.setValue(xPathDispDT+"/patoutroomhh", anstendhh);
- }else if( (openddd != "")&&(opendhh != "")&&(chk_anstkindcheck03.value == "S") ){//국소마취일경우 수술종료시간 셋팅
- model.setValue(xPathDispDT+"/patoutroomdd", openddd);
- model.setValue(xPathDispDT+"/patoutroomhh", opendhh);
- }
- }else {
- model.setValue(xPathDispDT+"/patoutroomdd" , sOpCnfmDD);
- }
- }else {
- if( model.getValue(xPathData+"/opstatcd") > "39"&&sOutflag == "Y" ) { // 진행상태+퇴실저장여부
- inp_patoutroomdd.attribute("color") = "#0000ff";
- inp_patoutroomhh.attribute("color") = "#0000ff";
- }
- }
- if (model.getValue(xPathDispDT+"/anstsrtdd" ) == "") model.setValue(xPathDispDT+"/anstsrtdd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/anstenddd" ) == "") model.setValue(xPathDispDT+"/anstenddd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/perfidarvdd" ) == "") model.setValue(xPathDispDT+"/perfidarvdd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/perfidoutdd" ) == "") model.setValue(xPathDispDT+"/perfidoutdd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/opfromdd" ) == "") model.setValue(xPathDispDT+"/opfromdd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/optodd" ) == "") model.setValue(xPathDispDT+"/optodd" , sOpCnfmDD);
- if (model.getValue(xPathData+"/recstat") == "I"){
- //2009-02-02 ycd 삭제 요청으로 삭제 처리
- //model.setValue(xPathData+"/timeoutspec/timeout/timeoutcheck", "1 2 3 4");
- //2008-06-25 오후 1:41:48 taebum 추가요구사항으로 default로 check안되도록 수정함.
- /*
- model.setValue(xPathData+"/druguseyn" , "N" );
- model.setValue(xPathData+"/drgeuseyn" , "N" );
- model.setValue(xPathData+"/eqmtuseyn" , "X" );
- model.setValue(xPathData+"/implantuseyn" , "N" );
- model.setValue(xPathData+"/tnsyn" , "N" );
- model.setValue(xPathData+"/carerecuseyn" , "N" );
- model.setValue(xPathData+"/spcuseyn" , "X" );
- model.setValue(xPathData+"/esuspec/esu/esuyn" , "N");
- model.setValue(xPathData+"/tourniquetspec/tourniquet/tourniquetyn" , "N");
- */
- //===========================================================================================
- //2008-06-18 오후 1:11:39 taebum 요구사항으로 UI 수정 및 로직 수정
- //model.setValue(xPathData+"/warmcoldregmspec/warmcoldregm/warmcoldregmyn" , "N");
- //model.setValue(xPathData+"/warmcoldregmspec/warmcoldregm/ltube/ltubecheck" , "X");
- //model.setValue(xPathData+"/warmcoldregmspec/warmcoldregm/urinary/urinarycheck" , "X");
- //model.setValue(xPathData+"/postureskinupdtspec/postureskinupdt/skinupdtcheck" , "X");
- //model.setValue(xPathData+"/warmcoldregmspec/warmcoldregm/subclavian/subclaviancheck", "X");
- //===========================================================================================
- }
- // 주수술
- if (model.getValue(xPathData+"/opcd") != "") {
- model.removenode(xPathOpCd );
- model.makeNode(xPathOpCd+"[1]" );
- model.makeNode(xPathOpCd+"[1]/opstat" );
- model.makeNode(xPathOpCd+"[1]/subcls" );
- model.makeNode(xPathOpCd+"[1]/opcd" );
- model.makeNode(xPathOpCd+"[1]/calcd" );
- model.makeNode(xPathOpCd+"[1]/opcdname" );
- model.setValue(xPathOpCd+"[1]/opstat" ,"" );
- model.setValue(xPathOpCd+"[1]/subcls" ,"1" );
- model.setValue(xPathOpCd+"[1]/opcd" ,model.getValue(xPathData+"/opcd" ));
- model.setValue(xPathOpCd+"[1]/calcd" ,model.getValue(xPathData+"/calcd" ));
- model.setValue(xPathOpCd+"[1]/opcdname",model.getValue(xPathData+"/opcdnm"));
- }
- // 부수술
- if (model.getValue(xPathData+"/subopcd") != "" && model.getValue(xPathData+"/subopcd") != "-") {
- model.makeNode(xPathOpCd+"[2]" );
- model.makeNode(xPathOpCd+"[2]/opstat" );
- model.makeNode(xPathOpCd+"[2]/subcls" );
- model.makeNode(xPathOpCd+"[2]/opcd" );
- model.makeNode(xPathOpCd+"[2]/calcd" );
- model.makeNode(xPathOpCd+"[2]/opcdname" );
- model.setValue(xPathOpCd+"[2]/opstat" ,"" );
- model.setValue(xPathOpCd+"[2]/subcls" ,"2" );
- model.setValue(xPathOpCd+"[2]/opcd" ,model.getValue(xPathData+"/subopcd" ));
- model.setValue(xPathOpCd+"[2]/calcd" ,model.getValue(xPathData+"/subcalcd" ));
- model.setValue(xPathOpCd+"[2]/opcdname",model.getValue(xPathData+"/subopcdnm"));
- }
- grd_bfopnm.refresh();
- //수술후 수술명 생성 2008-07-17 오전 10:39:20 taebum 기록3에서 만드는 부분 주석처리 후 로직 생성함.
- //OpcdPath = "/root/main/MnphopcrData/MnphopcrList/aftopopnm/aftopoplists";
- var sOprddata = model.getValue("/root/main/MnphopcrData/MnphopcrList/oprddata");
- if(sOprddata != "" && sOprddata != null && sOprddata != "undefined"){
- var sRowArr = sOprddata.split("▩");
- var sColArr = null;
- if(sRowArr.length > 0){
- model.removeNodeSet(OpcdPath);
- for(var j = 0; j < sRowArr.length; j++){
- sColArr = sRowArr[j].split("▦");
- if(sColArr[2] != ""){ //수술코드
- model.makeNode (OpcdPath+"/opcdlist["+(j+1)+"]");
- model.makeValue(OpcdPath+"/opcdlist["+(j+1)+"]/opstat" , sColArr[0]);
- model.makeValue(OpcdPath+"/opcdlist["+(j+1)+"]/subcls" , sColArr[1]);
- model.makeValue(OpcdPath+"/opcdlist["+(j+1)+"]/opcd" , sColArr[2]);
- model.makeValue(OpcdPath+"/opcdlist["+(j+1)+"]/opcdname" , sColArr[3]);
- }
- }
- }
- }
- grd_afopnm.refresh();
- fOpeuDataDisplay();
- fSettingOPdate("all"); //수술관련 시간 참여자 정보에 자동 세팅 처리(집도의입실, 수술시작)
- if (model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/oproom")==""){
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/oproom", model.getValue(xPathData+"/oproomcd"));
- }
- //2008-08-20 오전 11:06:11 taebum 조회된 Data를 잘못된 값으로 Display하는 오류 발생(instacne안에는 제대로 조회됨)
- //===================== 주석처리 하지 말것! ========================================================
- grd_opposture.refresh();
- grd_inscath.refresh();
- //===================================================================================================
- fEsuCheck(); // ESU 해당없음 Check
- fTourniquetCheck(); // Tourniquet 해당없음 Check
- fInscathCheck(); // 삽관기록 데이터 clear
- //====================================================================================================
- //2008-06-18 오전 11:28:55 taebum - 요구사항의 Catheter삽관기록 UI 및 로직 수정요청반영관련 주석처리
- //fWarmcoldregmCheck(); // 냉온요법
- //fSkinupdtcheck(); // 피부변화
- //fUrinarycheck();
- //fLtubecheck();
- //fSubclaviancheck();
- //====================================================================================================
- fTnsRecCheck(); // 수혈기록지 기록여부 체크
- fDelivynCheck(); //2008-08-25 오후 8:19:50 taebum 분만 여부 체크
- fExtcynCheck(); //2008-08-25 오후 8:19:50 taebum 적출물 체크
- fOtynCheck(); //2008-08-25 오후 8:20:56 taebum 장기이식 체크
- //fObRecCheck(); //2012-06.03 오후 02.51 손성훈. 관찰기록 체크
- var StayChk = model.getValue(xPathData + "/staycnfmpat" ) +" " // 대기실 환자명
- + model.getValue(xPathData + "/staycnfmid" ) +" " // 대기실 등록번호
- + model.getValue(xPathData + "/staycnfmdr" ) +" " // 대기실 집도의
- + model.getValue(xPathData + "/staycnfmpart") ; // 대기실 수술부위
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opcnfcheck" ,StayChk); // 대기실 Check정보
- model.setValue(xPathData+"/oppartdispyn" ,model.getValue(xPathData+"/staycnfmpartdisp")); // 대기실 수술부위표시
- var sPatInfo = model.getValue(xPathData+"/pid" ) + " " // 등록번호
- + model.getValue(xPathData+"/patname2" ) + " " // 환자명(표시명)
- + model.getValue(xPathData+"/sa" ) + " " // SA
- + model.getValue(xPathData+"/wardcd" ) + " " // 병동
- + model.getValue(xPathData+"/roomcd" ) ; // 병실
- var sPatInfo2= model.getValue(xPathData+"/depthngnm" ) + " " // 진료과
- + model.getValue(xPathData+"/oproomnm" ) + " " // 수술실명
- + model.getValue(xPathData+"/perfdridnm" ) + " " // 집도의
- + model.getValue(xPathData+"/opcdnm" ) ; // 수술명
- model.setValue("/root/init/HideData/patinfo" ,sPatInfo);
- model.setValue("/root/init/HideData/patinfo2",sPatInfo2);
- //2009-02-11 ycd 수술전처치 및 간호상태 확인 기록지 정보 연동 및 TextArea 세팅
- if(getNodesetCount(xPathData+"/curenurgstatspec/ItemCheckLists/ItemCheckList") > 0 ){
- //보낸 물품 & 약품 정보
- var sItemChekInfo1 = "";
- var sItemChekInfo2 = "";
- var sItemChekInfo3 = "";
- var sItemCd1 = "ITM019";
- var sItemCd2 = "ITM021";
- sItemChekInfo1 = model.getValue(xPathData+"/curenurgstatspec/ItemCheckLists/ItemCheckList[ItemCode ='"+ sItemCd1 + "']/ItemInfoBk");
- if(sItemChekInfo1 != ""){
- sItemChekInfo1 = sItemChekInfo1 + " : " + model.getValue(xPathData+"/curenurgstatspec/ItemCheckLists/ItemCheckList[ItemCode ='"+ sItemCd1 + "']/ItemInfo");
- }
- sItemChekInfo2 = model.getValue(xPathData+"/curenurgstatspec/ItemCheckLists/ItemCheckList[ItemCode ='"+ sItemCd2 + "']/ItemInfoBk");
- if(sItemChekInfo2 != ""){
- sItemChekInfo2 = sItemChekInfo2 + " : " + model.getValue(xPathData+"/curenurgstatspec/ItemCheckLists/ItemCheckList[ItemCode ='"+ sItemCd2 + "']/ItemInfo");
- }
- sItemChekInfo3 = sItemChekInfo1 + "\n" + sItemChekInfo2;
- model.setValue(xPathData + "/deptremark" , sItemChekInfo3);
- }
- // 2009-02-19 그리드 형식으로 조회 처리
- model.removenode("/root/temp/anstkindinfo/anstkindlist");
- model.makeNode("/root/temp/anstkindinfo/anstkindlist[1]" );
- model.makeNode("/root/temp/anstkindinfo/anstkindlist[2]" );
- model.makeNode("/root/temp/anstkindinfo/anstkindlist[1]/anstflag" );
- model.makeNode("/root/temp/anstkindinfo/anstkindlist[1]/anstmthdname" );
- model.makeNode("/root/temp/anstkindinfo/anstkindlist[2]/anstflag" );
- model.makeNode("/root/temp/anstkindinfo/anstkindlist[2]/anstmthdname" );
- model.setValue("/root/temp/anstkindinfo/anstkindlist[1]/anstflag" , "1");
- model.setValue("/root/temp/anstkindinfo/anstkindlist[1]/anstmthdname" , model.getValue(xPathData+"/anstmthdname"));
- model.setValue("/root/temp/anstkindinfo/anstkindlist[2]/anstflag" , "2");
- model.setValue("/root/temp/anstkindinfo/anstkindlist[2]/anstmthdname" , model.getValue(xPathData+"/anstmthdsubname"));
- grd_anstlist.refresh();
- //model.setValue(xPathData+"/skindinfspec/skindinf/Skindinfkind", model.getValue(xPathData+"/skindinfspec/skindinf/Skindinfkind")); //피부소독
- var sOpposturecd = model.getValue(xPathData+"/opposturecd");
- var sAnstmthdcd = model.getValue(xPathData+"/anstmthdcd" );
- var sAnstmthdname = model.getValue(xPathData+"/anstmthdname" );
- //2009-02-03 ycd 기록 항목 변경 요청 추가 부분(병동, 대기실, 수술실 사용자 정보 세팅)
- if(getNodesetCount(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/wardnurse") > 0 ){ //기록항목 추가건 반영 후 기록
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/wardnurse" ,model.getValue(xPathData+"/nurgpartid")); // 병동 기록자NM
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/wardnursenm" ,model.getValue(xPathData+"/nurgpartnm")); // 병동 기록자NM
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/cnfnurse" ,model.getValue(xPathData+"/staychfid")); // 대기실 기록자ID
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/cnfnursenm" ,model.getValue(xPathData+"/staychfidnm")); // 대기실 기록자NM
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opnurse" ,model.getValue(xPathData+"/operchfid")); // 수술실 기록자NM
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opnursenm" ,model.getValue(xPathData+"/operchfnm")); // 수술실 기록자NM
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opocr1chkexec" ,model.getValue(xPathData+"/ocrchk1")); // OCR서식(수술(시술) 부위 표식 확인서 : '0000002304' ) 출력
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opocr2chkexec" ,model.getValue(xPathData+"/ocrchk2")); // OCR서식(수술부위 확인 점검표 : '0000002850' ) 출력
- model.setValue(xPathData+"/anstkindspec/anstkind/anstmthdname" ,model.getValue(xPathData+"/anstmthdname")); // 주마취명
- model.setValue(xPathData+"/anstkindspec/anstkind/anstmthdnamesub" ,model.getValue(xPathData+"/anstmthdsubname")); // 부마취명
- } else { //기록항목 추가건 반영 전 기록
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/wardnurse" ,model.getValue(xPathData+"/nurgpartid")); // 병동 기록자NM
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/wardnursenm" ,model.getValue(xPathData+"/nurgpartnm")); // 병동 기록자NM
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/cnfnurse" ,model.getValue(xPathData+"/staychfid")); // 대기실 기록자ID
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/cnfnursenm" ,model.getValue(xPathData+"/staychfidnm")); // 대기실 기록자NM
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opnurse" ,model.getValue(xPathData+"/operchfid")); // 수술실 기록자NM
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opnursenm" ,model.getValue(xPathData+"/operchfnm")); // 수술실 기록자NM
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opocr1chkexec" ,model.getValue(xPathData+"/ocrchk1")); // OCR서식(수술(시술) 부위 표식 확인서 : '0000002304' ) 출력
- model.makeValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opocr2chkexec" ,model.getValue(xPathData+"/ocrchk2")); // OCR서식(수술부위 확인 점검표 : '0000002850' ) 출력
- model.makeNode(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpatchk");
- model.makeNode(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpatresn");
- model.makeNode(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpartchk");
- model.makeNode(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpartresn");
- model.makeNode(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/optimeoutchk");
- model.makeNode(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbftimeoutresn");
- model.makeValue(xPathData+"/anstkindspec/anstkind/anstmthdname" ,model.getValue(xPathData+"/anstmthdname")); // 주마취명
- model.makeValue(xPathData+"/anstkindspec/anstkind/anstmthdnamesub" ,model.getValue(xPathData+"/anstmthdsubname")); // 부마취명
- model.makeNode(xPathData+"/anstkindspec/anstkind/anstchngchk");
- model.makeNode(xPathData+"/anstkindspec/anstkind/anstcprchk");
- model.makeNode(xPathData+"/anstkindspec/anstkind/anstbfchngnm");
- model.makeNode(xPathData+"/anstkindspec/anstkind/anstaftchngnm");
- //model.makeNode(xPathData+"/anstkindspec/anstkind/anstopchk");
- }
- // 2009-02-10 ycd 재수술 여부 확인 조회 추가
- var sReOpFlag = model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/reopflag");
- // 2009-02-03 ycd 시행,미시행 처리부분 추가
- // 수술전 준비확인 기록 여부에 따른 처리
- if(model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpatchk") == ""){
- if(model.getValue(xPathData+"/opbfcureseqno") != ""){ //수술전 준비확인 기록이 존재하지 않을 경우
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpatchk", "Y");
- cmb_opbfpatresn.disabled = true;
- }else{
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpatchk", "N");
- cmb_opbfpatresn.disabled = false;
- }
- }else{
- if(model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpatchk") == "N" ){
- cmb_opbfpatresn.disabled = false;
- }else{
- cmb_opbfpatresn.disabled = true;
- }
- }
- // 수술(시술) 부위 표식 확인서 출력 여부에 따른 처리
- if(model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpartchk") == ""){
- if(model.getValue(xPathData+"/ocrchk1") != "" ){
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpartchk", "Y");
- cmb_opbfpartresn.disabled = true;
- }else{
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpartchk", "N");
- cmb_opbfpartresn.disabled = false;
- }
- }else{
- if(model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/opbfpartchk") == "N" ){
- cmb_opbfpartresn.disabled = false;
- }else{
- cmb_opbfpartresn.disabled = true;
- }
- }
- // 수술부위 확인 점검표 출력 여부에 따른 처리
- if(model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/optimeoutchk") == ""){
- if(model.getValue(xPathData+"/timeoutdtnrchkyn") != "N" ){
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/optimeoutchk", "Y");
- cmb_opbftimeoutresn.disabled = true;
- }else{
- model.setValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/optimeoutchk", "N");
- cmb_opbftimeoutresn.disabled = false;
- }
- }else{
- if(model.getValue(xPathData+"/opbfpatcnfmspec/opbfpatcnfm/optimeoutchk") == "N" ){
- cmb_opbftimeoutresn.disabled = false;
- }else{
- cmb_opbftimeoutresn.disabled = true;
- }
- }
- // 2009-02-10 ycd 수술기록 진행 상태 표시
- if(model.getValue(xPathData+"/opcertstat") == "Y"){
- model.setValue("/root/init/XmlFormat/opcertviewstat", "확정");
- opt_opcertstat.attribute("color") = "#ff0000";
- }else if(model.getValue(xPathData+"/opcertstat") == "N"){
- model.setValue("/root/init/XmlFormat/opcertviewstat", "임시");
- opt_opcertstat.attribute("color") = "#000000";
- }else{
- model.setValue("/root/init/XmlFormat/opcertviewstat", "");
- opt_opcertstat.attribute("color") = "#000000";
- }
- // 2009-02-19 ycd 협진 상태 표시
- if( model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno") &&
- model.getValue(xPathData+"/mainoprsrvno") != "-" ){
- model.setValue("/root/init/XmlFormat/reopviewflag", "협진");
- }else{
- model.setValue("/root/init/XmlFormat/reopviewflag", "");
- }
- // 2009-02-11 ycd 재수술 상태 표시
- if(model.getValue(xPathData+"/reopflag") == "Y"){
- if(model.getValue("/root/init/XmlFormat/reopviewflag") == ""){
- model.setValue("/root/init/XmlFormat/reopviewflag", "재수술");
- }else{
- model.setValue("/root/init/XmlFormat/reopviewflag", "(재수술)");
- }
- }
- // 2009-02-03 ycd 기록 항목 삭제로 인한 변경
- if (sAnstmthdcd == "G") {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck01",sAnstmthdcd);
- }
- if (sAnstmthdcd == "P") {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck02",sAnstmthdcd);
- }
- /*
- if (chk_anstkindcheck01.value == ""){ // 전신
- if (sAnstmthdcd == "G") {
- chk_anstkindcheck01.value = sAnstmthdcd;
- ipt_anstmthdname.value = sAnstmthdname;
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck02","");
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03","");
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck09","");
- }
- }
- if (chk_anstkindcheck02.value == ""){ // 부위
- if (sAnstmthdcd == "P") {
- chk_anstkindcheck02.value = sAnstmthdcd;
- ipt_anstmthdname.value = sAnstmthdname;
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck01","");
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03","");
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck09","");
- }
- }
- if (chk_anstkindcheck09.value == ""){ // 기타
- if (sAnstmthdcd == "E") {
- chk_anstkindcheck09.value = sAnstmthdcd;
- ipt_anstmthdname.value = sAnstmthdname;
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck01","");
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck02","");
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03","");
- }
- }
- //2008-08-28 오전 10:21:15 taebum 마취종류가 전신 또는 국소일 경우 국소 또는 기타가 Check 안되도록
- */
- if (chk_anstkindcheck03.value == ""){ // 국소
- if (sAnstmthdcd == "S") {
- chk_anstkindcheck03.value = sAnstmthdcd;
- //model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck01","");
- //model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck02","");
- //model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck09","");
- }
- }
- // 마취없음 체크
- if (chk_anstkindcheck99.value != ""){
- ipt_anstkindothertext.disabled = false;
- }else{
- ipt_anstkindothertext.disabled = true;
- }
- // 2009-02-19 YCD 삭제 처리
- // 수술중 마취변경 체크
- /*
- if (chk_anstchngchk.value != ""){
- ipt_anstbfchngnm.disabled = false;
- ipt_anstaftchngnm.disabled = false;
- }else{
- ipt_anstbfchngnm.disabled = true;
- ipt_anstaftchngnm.disabled = true;
- }
- */
- //수술체위 정보 세팅
- if (model.getValue(xPathData+"/opposturespec/opposture/opposturelist[1]/opposturekind") == "" ) {
- model.makeValue(xPathData+"/opposturespec/opposture/opposturelist[1]/opposturekind", sOpposturecd );
- model.makeValue(xPathData+"/opposturespec/opposture/opposturelist[1]/opposturefrdt", model.getValue(xPathData+"/anstopfromdt" ).substr(0,8)); // 수술시작일자
- model.makeValue(xPathData+"/opposturespec/opposture/opposturelist[1]/opposturefrtm", model.getValue(xPathData+"/anstopfromdt" ).substr(8,4)); // 수술시작시간
- model.makeNode(xPathData+"/opposturespec/opposture/opposturelist[1]/opposturetodt");
- model.makeNode(xPathData+"/opposturespec/opposture/opposturelist[1]/opposturetotm");
- model.makeNode(xPathData+"/opposturespec/opposture/opposturelist[1]/oppostureterm");
- model.makeNode(xPathData+"/opposturespec/opposture/opposturelist[1]/opposturetot");
- grd_opposture.rebuild();
- }
- fOpTimeControl(""); //국소마취여부를 Check한다.
- opt_cnfnursenm.refresh();
- opt_wardnursenm.refresh();
- opt_opnursenm.refresh();
- //chk_stay.refresh(); //수술전환자확인 2009-02-02 삭제 ycd
- //rdo_oppartdispyn.refresh(); //수술부위표시 2009-02-02 삭제 ycd
- //inp_cnfnurse.refresh(); //대기실간호사ID 2009-02-02 삭제 ycd
- //opt_anstmthdname.refresh();
- //opt_anstmthdnamesub.refresh();
- // 2009-01-23 간호처방 확정상태 색변경 ycd
- cmb_cartstat.refresh();
- opt_ccrtstat.value = cmb_cartstat.label;
- if(model.getValue(xPathData+"/ccrtstat") == "5"){
- opt_ccrtstat.attribute("color") = "#ff0000";
- }else{
- opt_ccrtstat.attribute("color") = "#000000";
- }
- // 2010-04-13 오전 11:15:50 마취기록 마취방법 변경요청건 taebum
- if(model.getValue(xPathData+"/anstmthdchgflag") == "Y"){
- //기존에 마취종류가 국소로 입력되어 있을 경우 국소를 데이터를 없애고, 마취기록정보를 연동한다.
- if(model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03") == "S"){
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03", "");
- fOpTimeControl("");
- }
- caption39.visible = true;
- }else{
- caption39.visible = false;
- }
- }
- // 수혈기록지 기록여부 체크
- function fTnsRecCheck(){
- if(model.getValue(xPathData+"/tnsyn") == "Y"){
- btn_tnsrec.disabled = false;
- }else{
- btn_tnsrec.disabled = true;
- }
- }
- // 분만여부 체크
- function fDelivynCheck(){ //2008-08-25 오후 8:19:50 taebum 분만 여부 체크
- if(model.getValue(xPathData+"/delivyn") == "Y"){
- button28.disabled = false;
- }else{
- button28.disabled = true;
- }
- }
- //적출물 여부 체크
- function fExtcynCheck(){ //2008-08-25 오후 8:19:50 taebum 적출물 체크
- if(model.getValue(xPathData+"/extcyn") == "Y"){
- button12.disabled = false;
- }else{
- button12.disabled = true;
- }
- }
- //장기이식 체크
- function fOtynCheck(){ //2008-08-25 오후 8:20:56 taebum 장기이식 체크
- if(model.getValue(xPathData+"/otyn") == "Y"){
- button29.disabled = false;
- }else{
- button29.disabled = true;
- }
- }
- //관찰기록 여부 체크
- function fObRecCheck(){ //2008-08-25 오후 8:19:50 taebum 적출물 체크
- if(model.getValue(xPathData+"/obrecyn") == "Y"){
- button11.disabled = false;
- }else{
- button11.disabled = true;
- }
- }
- // ESU 해당사없음 체크
- function fEsuCheck(){
- if (model.getValue("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esuyn") == 'N') {
- //if (chk_esuyn.value == 'N') { //2008-08-07 오후 8:18:35 taebum 속도 개선을 위한 주석처리
- model.removeNodeset(xPathData+"/esuspec/esu/esulist");
- //model.copyNode(xPathData+"/esuspec", xPathFormat+"/esuspec"); 2008-06-25 오후 2:43:32 taebum
- model.setValue(xPathData+"/esuspec/esu/esuyn", "N");
- grp_esu.disabled = true ;
- button19.disabled = true ;
- button2.disabled = true ;
- } else {
- grp_esu.disabled = false ;
- button19.disabled = false ;
- button2.disabled = false ;
- }
- grd_esu.rebuild();
- }
- // 장비사용내역 해당없음 체크 로직
- // 2009-02-16 ycd 기록 데이터 존재하지 않을 경우 해당없음 체크
- function fTourniquetCheck(){
- if (model.getValue("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetyn") == 'N') {
- //if (chk_tourniquetyn.value == 'N') {//2008-08-07 오후 8:20:51 속도 개선을 위한 주석처리 taebum
- model.removeNodeset(xPathData+"/tourniquetspec/tourniquet/tourniquetlist");
- //model.copyNode(xPathData+"/tourniquetspec", xPathFormat+"/tourniquetspec"); 2008-07-09 오전 10:18:09 경로 수정으로 변경
- //model.setValue(xPathData+"/tourniquetspec/tourniquet/tourniquetyn","N");
- grd_tourniquet.disabled = true ;
- btn_addtourniquet.disabled = true ;
- bnt_deltourniquet.disabled = true ;
- } else {
- grd_tourniquet.disabled = false ;
- btn_addtourniquet.disabled = false ;
- bnt_deltourniquet.disabled = false ;
- }
- grd_tourniquet.rebuild();
- }
- function fInscathCheck(){
- if(model.getValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath/itemnm") == ""){
- model.removeNodeset("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath");
- grd_inscath.refresh();
- }
- }
- function fWarmcoldregmCheck(){
- // if (chk_warmcoldregmyn.value == 'N') {
- // fClearGroup(grp_warmcoldregm_urinary , 2);
- // fClearGroup(grp_warmcoldregm_ltube , 3);
- // fClearGroup(grp_warmcoldregm_subclavian, 4);
- // chk_warmcoldregmyn.value = "N";
- //
- // grp_warmcoldregm_urinary.disabled = "true" ;
- // grp_warmcoldregm_ltube.disabled = "true" ;
- // // grp_warmcoldregm_subclavian.disabled = "true" ;
- // }
- // else {
- // grp_warmcoldregm_urinary.disabled = "false" ;
- // grp_warmcoldregm_ltube.disabled = "false" ;
- // // grp_warmcoldregm_subclavian.disabled = "false" ;
- // }
- }
- function fSkinupdtcheck(){
- if (chk_skinupdtcheck.value == 'Y') {
- /*
- fClearGroup(grp_postureskinupdt, 5);
- fClearGroup(grp_postureskinupdt, 6);
- chk_skinupdtcheck.value = "X";
- grp_postureskinupdt.disabled = "true" ;
- */
- datagrid2.disabled = true;
- button15.disabled = true;
- button13.disabled = true;
- model.removeNodeSet("/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/lists/skinlist");
- datagrid2.refresh();
- }
- else {
- datagrid2.disabled = false;
- button15.disabled = false;
- button13.disabled = false;
- datagrid2.addRow();
- }
- }
- // 2009-04-03 ycd 수술간호 기록 수정으로 인하여 삭제 처리
- /*
- function fWarmColdMethodNoneChech(){
- if(chk_warmnoneflag.value == 'X') {
- datagrid2.disabled = true;
- button16.disabled = true;
- button21.disabled = true;
- model.removeNodeSet("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/warmlist/warmcoldregm");
- datagrid3.refresh();
- } else {
- datagrid2.disabled = false;
- button16.disabled = false;
- button21.disabled = false;
- datagrid3.addRow();
- }
- }
- */
- function fUrinarycheck(){
- if (fCheckBoxValueCheck(chk_urinarycheck.value, 'X') ) {
- fClearGroup(grp_warmcoldregm_urinary , 2);
- chk_urinarycheck.value = "X";
- grp_urinary.disabled = "true" ;
- }
- else {
- grp_urinary.disabled = "false" ;
- }
- }
- function fLtubecheck(){
- if (fCheckBoxValueCheck(chk_ltubecheck.value, 'X') ) {
- fClearGroup(grp_warmcoldregm_ltube, 3);
- chk_ltubecheck.value = "X";
- grp_ltube.disabled = "true" ;
- }
- else {
- grp_ltube.disabled = "false" ;
- }
- }
- function fSubclaviancheck(){
- if (fCheckBoxValueCheck(chk_subclaviancheck.value, 'X') ) {
- fClearGroup(grp_warmcoldregm_subclavian, 4);
- chk_subclaviancheck.value = "X";
- grp_subclavian.disabled = "true" ;
- }
- else {
- grp_subclavian.disabled = "false" ;
- }
- }
- function fSkinupdtStatcheck(pPre){
- if (eval(pPre+"none").value == "Y") {
- eval(pPre+"redness" ).value = "";
- eval(pPre+"bulla" ).value = "";
- eval(pPre+"abrasion").value = "";
- eval(pPre+"redness" ).disabled = "true";
- eval(pPre+"bulla" ).disabled = "true";
- eval(pPre+"abrasion").disabled = "true";
- } else {
- eval(pPre+"redness" ).disabled = "false";
- eval(pPre+"bulla" ).disabled = "false";
- eval(pPre+"abrasion").disabled = "false";
- }
- }
- /* ------------------------------------------------- */
- /* desc : 수술기록 자료저장하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fSave(pFlag){
- //2012.09.03 _ 인증저장 할 경우 검체 항목에 '보낸시간' 이 입력 되어 있지 않을때는 '퇴실일시'가 자동 저장 되도록 체크._장수경샘 요청._손성훈.
- for(var i = 1 ; i< grd_spclistnew.rows ; i++ ){
- if (model.getValue("/root/main/SheetData3/SpecimenLists/specimenlistnew[" + i + "]/specimentm") == ""){
- var sOutroomhh = model.getValue("/root/init/workinst/datetimedata/patoutroomhh");
- model.setValue("/root/main/SheetData3/SpecimenLists/specimenlistnew[" + i + "]/specimentm", sOutroomhh );
- }
- }
- grd_spclistnew.gridToInstance();
- // ----------------------------------------2012.09.03_손성훈 //
- model.removenode("/root/send");
- var rtn = fOpeuDataConcatenate(); // 참가자정보 조합
- if(rtn == false) return;
- rtn = fInstance2Save(pFlag); // 수술기록 자료 Copy 하기
- if(rtn == false) return;
- if (pFlag == "C") {
- fCheckMedrList();
- var actcnt = model.getValue("/root/hidden/medrinfo/medrlist/actcnt");
- var totalcnt = model.getValue("/root/hidden/medrinfo/medrlist/totalcnt");
- if(actcnt < totalcnt && totalcnt != 0) {
- messageBox("미투약된 수술중 처방이 존재합니다.", "I");
- }
- //sCertOutFlag = "Y"; // 인증저장 플래그
- //fInOutRoomSave("2"); // 수술기록 1:입실저장,2:퇴실저장,9:입실취소 등록/수정/삭제 요청을 처리한다.
- //sCertOutFlag = "N"; // 인증저장 플래그
- if(chk_opnoyn.value == "Y") {
- } else {
- var rtn = fConfirmInputData3(); // 시간정보 퇴실 저장 여부
- if (rtn == false) return;
- }
- }
- //if (pFlag == "T") {//임시저장
- // fChkInputTime();//입력시간 자릿수 체크
- //}
- fMnphopcrDataConcatenate(pFlag) ; // 수술간호기록정보 조합하기
- rtn = fCountDataSave(pFlag); // 수술기록2 Count정보 저장하기
- if(rtn == false) return;
- // var wUserId = getUserInfo("userid" ); // 사용자
- // var wUserNm = getUserInfo("usernm" ); // 사용자 명
- // var wDeptNm = getUserInfo("posdeptnm"); // 사용자 부서명
- var wDate = getCurrentDate();
- var wTime = getCurrentTime();
- var wDate = wDate.substr(0,4) + "-"
- + wDate.substr(4,2) + "-" + wDate.substr(6,2) + " "
- + wTime.substr(0,2) + ":" + wTime.substr(2,2) ;
- model.setValue("/root/init/workinst/OpOtherData/OpWrtDate", wDate );
- model.setValue("/root/init/workinst/OpOtherData/OpWrtName", getUserInfo("usernm") );
- model.setValue("/root/init/workinst/OpOtherData/OpWrtDept", getUserInfo("posdeptnm"));
- //인증저장 관련 자료 Call
- var CertFlag = true;
- if( pFlag == "C" ) {
- //피부관찰기록 체크 여부 확인
- var SkinRecViewOpenYn = "";
- //피부관찰기록 여부 'Y' 이면서 주수술에 한에서 체크
- if(chk_opnoyn.value == "Y") {
- } else {
- if( model.getValue("/root/code/codeinfo/codelist[cdgrupid='144']/cdid") == "Y" &&
- ( model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno") || model.getValue(xPathData+"/mainoprsrvno") == "-" ) ){
- model.removeNodeset("/root/recinfo/skinrecinfo");
- submit("TRMNP00326", false);
- if( ( model.getValue("/root/code/codeinfo/codelist[cdgrupid='182']/cdid") == model.getValue(xPathData+"/perfdeptcd") )
- &&(( chk_anstkindcheck03.value != "" )||( chk_anstcprchk.value != "" )) || chk_esuyn.value != "" ) {//안과 수술 피부관찰지 체크 제외(국소, CPCR일때) //20110322 이선경(경북대) : ESU 해당없음인경우도 제외
- //피부관찰지 체크 제외
- }else {
- if((model.getValue("/root/recinfo/skinrecinfo/skinreclist/reccnt") == "0" || model.getValue("/root/recinfo/skinrecinfo/skinreclist/tmpreccnt") != "0") && grd_skinsurveylist.rows <= 2){
- messageBox("피부관찰기록 정보가 존재하지 않거나 미인증 기록이 존재합니다.\n수술간호기록III의 피부관찰기록을 작성하거나 피부관찰기록지에서 피부관찰기록을 작성하십시오.","I");
- return;
- }
- if( (model.getValue("/root/recinfo/skinrecinfo/skinreclist/reccnt") == "0" || model.getValue("/root/recinfo/skinrecinfo/skinreclist/tmpreccnt") != "0") && grd_skinsurveylist.rows <= 2 ){
- //messageBox("수술간호기록 저장에 실패하였습니다.\n\n피부관찰기록 정보를 확인 하시고 인증저장 하십시요.", "C");
- return;
- }
- }
- }
- }
- //2008-07-27 오후 3:14:29 인증을 할 경우 적출물기록, 장기이식기록을 조회하여 데이터가 존재할 경우 함께 인증처리 한다.
- fGetExtcOtRecord();
- //인증저장 번호 추출 및 기록 필수 조건 블럭킹
- for(var i = grd_skinsurveylist.fixedRows ; i < grd_skinsurveylist.rows ; i++){
- if(grd_skinsurveylist.rowStatus(i) == 0){
- grd_skinsurveylist.rowStatus(i) = 2;
- }
- if(grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("surveypriod")) == ""){
- messageBox("관찰시기 항목은 필수 입력 항목입니다.", "I");
- return;
- }
- if(grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("surveyplace")) == ""){
- messageBox("관찰장소 항목은 필수 입력 항목입니다.", "I");
- return;
- }
- if(grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("surveynm")) == ""){
- messageBox("관찰자 항목은 필수 입력 항목입니다.", "I");
- return;
- }
- if(grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("cnfmrnm")) == ""){
- messageBox("확인의 항목은 필수 입력 항목입니다.", "I");
- return;
- }
- if(grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("trobyn")) == "Y" &&
- grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("skinstat")) == "" ){
- messageBox("이상유무 'Y'일 경우 피부상태는 필수 입력 항목입니다.", "I");
- return;
- }
- if( grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("signno")) != ""){
- sSignNo = grd_skinsurveylist.valueMatrix(i, grd_skinsurveylist.colRef("signno"));
- }
- }
- CertFlag = fSignProcessSet();
- }
-
- var updtdata = getGridUpdateData(grd_skinsurveylist);
- model.makeValue("/root/send/recsavedata" , updtdata);
- if (CertFlag == false) return; // 인증실패
- if (submit("TXMNP00303", false)){ // 수술간호기록정보,참가자 정보저장
- //messagebox("저장 되었습니다.", "I000" );
- model.setValue(xPathData+"/recstat" , "U"); // record 상태정보 i:신규,u:수정
- //2008-08-28 오후 1:44:05 taebum 입/퇴실 저장이 아닐 경우 수술예약정보는 변경 되지 못하도록 수정.
- //model.setValue(xPathData+"/opstatcd", sOpstatcdnew); // 진행상태
- model.setValue(xPathData+"/org_opoutrmplcecd", sOpoutrmplcecd);
- model.setValue("/root/init/HideData/opoutrmplcecd", model.getValue(xPathData+ "/opoutrmplcecd")); // 퇴실장소
- //==================================================================================================
- if( pFlag == "C" ) {
- model.setValue(xPathData+"/certno" , model.getValue("/root/temp/retdata/certno"));
- btn_rgst_tmp.disabled = true;
- }
- fReload("S");
- //Mnphopcrlist_Read();
- //fMnphopco_Read(); // Count 정보를 다시 읽는다. 그렇지 않으면 오류발생한다.
- //fOpTotalTime();
- //fSettingOPdate("all"); //수술관련 시간 참여자 정보에 자동 세팅 처리(집도의입실, 수술시작)
- }
- btn_specmini.dispatch("DOMActivate"); // 검체_new 크기 축소
- grd_skinsurveylist.clearStatus();
- btn_decrease.dispatch("DOMActivate");
- grd_count.rebuildStyle();
- fSetStyle();
- }
- /* ------------------------------------------------- */
- /* desc : 수술기록 시간 자릿수 체크 */
- /* param : */
- /* return : */
- /* -------------------------------------------------- */
- //function fChkInputTime() {
- // var sFromdd = model.getValue(xPathDispDT+"/perfidarvhh" ); // 집도의입실시간
- // var sFromhh = model.getValue(xPathDispDT+"/patinroomhh" ); // 입실시간
- // var sTodd = model.getValue(xPathDispDT+"/perfidouthh"); // 집도의퇴실시간
- // var sTohh = model.getValue(xPathDispDT+"/patoutroomhh"); // 퇴실시간
- // var sTohh = model.getValue(xPathDispDT+"/optohh"); // 수술종료시간
- // var sTohh = model.getValue(xPathDispDT+"/anstendhh"); // 수술종료시간
- // var sTohh = model.getValue(xPathDispDT+"/optohh"); // 수술종료시간
- // var sTohh = model.getValue(xPathDispDT+"/optohh"); // 수술종료시간
- //
- //
- //
- //}
- /* ------------------------------------------------- */
- /* desc : 수술기록 강제 인증저장하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fOnClickForceSaveBtn(pFlag){
- model.removenode("/root/send");
- var rtn = fOpeuDataConcatenate(); // 참가자정보 조합
- //if(rtn == false) return;
- rtn = fInstance2Save(pFlag); // 수술기록 자료 Copy 하기
- //if(rtn == false) return;
- if (pFlag == "C") {
- var rtn = fConfirmInputData3(); // 시간정보 퇴실 저장 여부
- //if (rtn == false) return;
- }
- fMnphopcrDataConcatenate(pFlag) ; // 수술간호기록정보 조합하기
- rtn = fCountDataSave(pFlag); // 수술기록2 Count정보 저장하기
- //if(rtn == false) return;
- // var wUserId = getUserInfo("userid" ); // 사용자
- // var wUserNm = getUserInfo("usernm" ); // 사용자 명
- // var wDeptNm = getUserInfo("posdeptnm"); // 사용자 부서명
- var wDate = getCurrentDate();
- var wTime = getCurrentTime();
- var wDate = wDate.substr(0,4) + "-"
- + wDate.substr(4,2) + "-" + wDate.substr(6,2) + " "
- + wTime.substr(0,2) + ":" + wTime.substr(2,2) ;
- model.setValue("/root/init/workinst/OpOtherData/OpWrtDate", wDate );
- model.setValue("/root/init/workinst/OpOtherData/OpWrtName", getUserInfo("usernm") );
- model.setValue("/root/init/workinst/OpOtherData/OpWrtDept", getUserInfo("dutplcecd"));
- //인증저장 관련 자료 Call
- var CertFlag = true;
- if (pFlag == "C") {
- //2008-07-27 오후 3:14:29 인증을 할 경우 적출물기록, 장기이식기록을 조회하여 데이터가
- // 존재할 경우 함께 인증처리 한다.
- fGetExtcOtRecord();
- CertFlag = fSignProcessSet();
- }
- if (CertFlag == false) return; // 인증실패
- if (submit("TXMNP00303")){ // 수술간호기록정보,참가자 정보저장
- messageBox("저장 되었습니다.", "I000" );
- model.setValue(xPathData+"/recstat" , "U"); // Record 상태정보 I:신규,U:수정
- //2008-08-28 오후 1:44:05 taebum 입/퇴실 저장이 아닐 경우 수술예약정보는 변경 되지 못하도록 수정.
- //model.setValue(xPathData+"/opstatcd", sOpstatcdnew); // 진행상태
- model.setValue(xPathData+"/org_opoutrmplcecd", sOpoutrmplcecd);
- model.setValue("/root/init/HideData/opoutrmplcecd", model.getValue(xPathData+ "/opoutrmplcecd")); // 퇴실장소
- //==================================================================================================
- if (pFlag == "C") {
- model.setValue(xPathData+"/certno" , model.getValue("/root/temp/retdata/certno"));
- btn_rgst_tmp.disabled = true;
- }
- fMnphopco_Read(); // Count 정보를 다시 읽는다. 그렇지 않으면 오류발생한다.
- fOpTotalTime();
- }
- }
- //이전 같은날 같은 수술방의 직전에 수술한 수술환자의 수술시간 check
- function fValidPreOpdt(){
- var sPre_opdt = model.getValue("/root/main/MnphopcrData/MnphopcrList/pre_optodt");
- var sPre_opdd = "";
- var sPre_optm = "";
- var sPre_opmi = "";
- //2008-09-03 오후 8:24:36 taebum 협진일 경우 return;
- if( (model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){
- return true;
- }
- if(sPre_opdt != "" && sPre_opdt != null && sPre_opdt != "undefined"){
- sPre_opdd = sPre_opdt.substr(0,8);
- sPre_optm = sPre_opdt.substr(8,2);
- sPre_opmi = sPre_opdt.substr(10,2)
- var sDisplayPreOpdate = sPre_opdt.substr(0,4) + "-"
- + sPre_opdt.substr(4,2) + "-"
- + sPre_opdt.substr(6,2) + " "
- + sPre_optm + ":"
- + sPre_opmi ;
- if(eval(sPre_opdd) > eval(inp_patinroomdd.value)){
- messageBox("이전 수술환자의 퇴실일시를 확인하십시요. 이전 퇴실일시 : "+ sDisplayPreOpdate , "C000");
- return false;
- }else if(eval(sPre_opdd) == eval(inp_patinroomdd.value)){
- if(eval(sPre_optm) > eval((inp_patinroomhh.value).substr(0,2))){
- messageBox("이전 수술환자의 퇴실일시를 확인하십시요. 이전 퇴실일시 : "+ sDisplayPreOpdate , "C000");
- return false;
- }else if(eval(sPre_optm) == eval((inp_patinroomhh.value).substr(0,2))){
- if(eval(sPre_opmi) > eval((inp_patinroomhh.value).substr(2,2))){
- messageBox("이전 수술환자의 퇴실일시를 확인하십시요. 이전 퇴실일시 : "+ sDisplayPreOpdate , "C000");
- return false;
- }
- }
- }
- }
- return true;
- }
- // --------------------------------------------------------------------------
- // 수술기록 1:입실저장,2:퇴실저장,9:입실취소 등록/수정/삭제 요청을 처리한다.
- // --------------------------------------------------------------------------
- function fInOutRoomSave(pFlag){
- //cart 자동 불출 //2008-07-31 오후 8:03:05 수술대기 이상 Cart 불출이하 자동불출 go
- //=======================================================================
- //2008-08-19 오전 10:09:12 taebum 주석처리 요청
- /*
- var sTmpOprsrvno = model.getValue("/root/main/operation/list/oprsrvno");
- var sTmpOproomcd = model.getValue("/root/main/operation/list/oproomcd");
- var sTmpOpstatcd = model.getValue("/root/main/MnphopcrData/MnphopcrList/opstatcd");
- var sTempCartGubn = model.getValue("/root/main/MnphopcrData/MnphopcrList/ccrtstat"); //수술카트
- var sTmpAnstCartGubn = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstccrtstat"); //마취카트
- var cartbaglist = "m▦rownum▦oprsrvno▦oproomcd▦cartgubn";
- var bSubMitFlag = false;
- //수술Cart
- if((parseInt(sTmpOpstatcd) > 29) && (parseInt(sTempCartGubn) < 3) ){ //2008-07-31 오후 8:03:05 수술대기 이상 Cart 불출이하 자동불출 go
- cartbaglist = cartbaglist + "▩" + "u" + "▦" + "1" + "▦" + sTmpOprsrvno + "▦" + sTmpOproomcd + "▦" + "O";
- bSubMitFlag = true;
- }
- if((parseInt(sTmpOpstatcd) > 29) && (parseInt(sTmpAnstCartGubn) < 3) ){
- if(bSubMitFlag == true){
- cartbaglist = cartbaglist + "▩" + "u" + "▦" + "2" + "▦" + sTmpOprsrvno + "▦" + sTmpOproomcd + "▦" + "A";
- }else{
- cartbaglist = cartbaglist + "▩" + "u" + "▦" + "1" + "▦" + sTmpOprsrvno + "▦" + sTmpOproomcd + "▦" + "A";
- bSubMitFlag = true;
- }
- }
- if(bSubMitFlag == true){
- model.removenode("/root/send");
- model.makeValue("/root/send/cartsend" , cartbaglist );
- if(submit("TXMNP03401")){
- if((parseInt(sTmpOpstatcd) > 29) && (parseInt(sTempCartGubn) < 3) ){
- model.setValue("/root/main/MnphopcrData/MnphopcrList/ccrtstat", "3");
- cmb_cartstat.refresh();
- }
- }
- }
- */
- if( sCertOutFlag == "N" ) {//인증저장일때는 인스턴스 삭제 안함
- model.removenode("/root/send");
- }
- sPid = model.getValue("/root/init/HideData/pid" ); // 01 환자번호
- sOprsrvno = model.getValue("/root/init/HideData/oprsrvno"); // 02 수술예약(의뢰)번호(년도+일련번호)
- sOphistno = model.getValue("/root/init/HideData/ophistno"); // 03 예약번호에따른이력번호
- sInstcd = model.getValue("/root/init/HideData/instcd" ); // 04 기관코드
- //2008-06-23 오후 4:52:59 taebum 입/퇴실 시간 저장시 시간이 입력되지 않았을 경우 경고 후 return
- if (pFlag == "1") {
- model.makeValue("/root/send/instcd" , model.getValue("/root/init/HideData/instcd" ));
- model.makeValue("/root/send/pid" , model.getValue("/root/init/HideData/pid" ));
- model.makeValue("/root/send/oprsrvno" , model.getValue("/root/init/HideData/oprsrvno"));
- model.makeValue("/root/send/ophistno" , model.getValue("/root/init/HideData/ophistno"));
- var ccrtstat = "";
- if (submit("TRMNP00350", false)) { // 수술실의 코드와 명칭을 가져온다.
- var ccrtstat = model.getValue("/root/main/CartList/cartlist/ccrtstat");
- if(ccrtstat < 3) {
- var rtn = messageBox("아직 cart미불출 상태입니다 그래도 입실하시겠습니까?", "Q");
- if(rtn != "6") {
- return;
- }
- }
- }
- if(inp_patinroomhh.value == "" || (inp_patinroomhh.value.replace(' ', '')).length < 4){
- messageBox("입실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_patinroomhh");
- return;
- }else if(inp_patinroomdd.value == "" || (inp_patinroomdd.value.replace(' ', '')).length < 8){
- messageBox("입실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_patinroomdd");
- return;
- }else{
- if(!fValidPreOpdt()){ //이전 수술시작시간 validcheck
- return;
- }
- //2008-10-05 오후 11:47:19 taebum
- //환자 도착시간보다 입실시간이 작을 경우 메세지 호출 추가
- var sPatArriveDt = model.getValue("/root/main/MnphopcrData/MnphopcrList/patarrvdt") +
- model.getValue("/root/main/MnphopcrData/MnphopcrList/patarrvtm");
- var sInroomDt = model.getValue("/root/init/workinst/datetimedata/patinroomdd")+
- model.getValue("/root/init/workinst/datetimedata/patinroomhh");
- if(sPatArriveDt > sInroomDt){
- messageBox("환자도착 시간을 확인 하시기 바랍니다.", "I000");
- model.setFocus("inp_patinroomhh");
- return;
- }
- }
- //입실시간 자동 세팅 부분
- fSettingOPdate("Opfromdt");
- }else if (pFlag == "2") {
- //2009-02-19 ycd 퇴실 저장시 시간 체크 추가
- if(inp_patinroomdd.value == "" || (inp_patinroomdd.value.replace(' ', '')).length < 8){
- messageBox("입실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_patoutroomhh");
- return;
- }
- if(inp_patinroomhh.value == "" || (inp_patinroomhh.value.replace(' ', '')).length < 4){
- messageBox("입실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_patoutroomhh");
- return;
- }
- if(inp_patoutroomdd.value == "" || (inp_patoutroomdd.value.replace(' ', '')).length < 8){
- messageBox("퇴실일자를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_patoutroomdd");
- return;
- }
- if(inp_patoutroomhh.value == "" || (inp_patoutroomhh.value.replace(' ', '')).length < 4 ){
- messageBox("퇴실시간을 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_patoutroomhh");
- return;
- }
- //2010.04.09 K. J. M 퇴실저장여부 추가
- sOutflag = "Y";
- /* ycd 확실하지 않아 로직 추가 제한
- if(inp_optodd.value == "" || (inp_optodd.value).length < 8 || inp_optohh.value == "" || (inp_optohh.value).length < 4){
- messageBox("수술종료일시를 입력 하시기 바랍니다.", "I000");
- model.setFocus("inp_optohh");
- return;
- }
- if(inp_optodd.value ||inp_optohh.value > inp_patoutroomdd.value || inp_patoutroomhh.value ){
- messageBox("퇴실일시가 수술종료일시보다 이전입니다. 퇴실일시를 확인 하십시오.", "I000");
- model.setFocus("inp_patoutroomhh");
- return;
- }
- */
- if(inp_patinroomdd.value + inp_patinroomhh.value > inp_patoutroomdd.value + inp_patoutroomhh.value ){
- messageBox("퇴실일시가 입실일시보다 이전입니다. 퇴실일시를 확인 하십시오.", "I000");
- model.setFocus("inp_patoutroomhh");
- return;
- }
- //=========================================================================================
- //2008-06-27 오후 3:42:06 taebum add 추가 요구사항
- if(cmb_outplc.value == "" || cmb_outplc.value == "undefined" || cmb_outplc.value == null || cmb_outplc.value == "00" || cmb_outplc.value == "43"){
- messageBox("퇴실장소를 입력 하시기 바랍니다.", "I000");
- model.setFocus("cmb_outplc");
- return;
- }
- //인증저장 후 퇴실장소 입력오류로 수정 불가
- /*
- //2008-06-27 오후 2:52:26 taebum add 추가요구사항
- setParameter("SPMNP00305_message", "입력하신 퇴실장소가 맞습니까?");
- setParameter("SPMNP00305_button1", "확 인");
- setParameter("SPMNP00305_button2", "취 소");
- setParameter("SPMNP00305_buttonFocus", "button2");
- modal("SPMNP00305", "", 300, 400, "SPMNP00305", "width:510px;height:130px;");
- var sResult = getParameter("SPMNP00305_result");
- */
- //alert(sResult);
- //2008-09-04 오후 9:42:57 퇴실 장소 재확인...
- if( (model.getValue(xPathData+"/certno") == "")&&( sCertOutFlag == "Y" )&&( sOpstatcd < "50" ) ){//처음 인증저장시 퇴실저장 확인 2010.02.18 K. J. M
- if (window.alert("퇴실 저장 하시겠습니까?." ,"퇴실장소 확인", 1 | 32) != 1){
- messageBox("퇴실 저장이 취소 되었습니다.", "I000");
- return;
- }
- }else if( ( sCertOutFlag == "N" )&&( pFlag == "2" ) ) {//퇴실저장시 무조건 확인 2010.02.18 K. J. M
- if (window.alert("퇴실 저장 하시겠습니까?." ,"퇴실장소 확인", 1 | 32) != 1){
- messageBox("퇴실 저장이 취소 되었습니다.", "I000");
- return;
- }
- }
- //=========================================================================================
- }
- var sOutplccd = model.getValue("/root/main/MnphopcrData/MnphopcrList/opoutrmplcecd");
- var sOutplcnm = model.getValue("/root/main/MnphopcrData/MnphopcrList/opdisplaynm");//기준자료로 자동셋팅되게 수정 K. J. M 2010.01.21
- if(sOutplccd != "" && sOutplccd != null && sOutplccd != "undefined"){
- if( sOutplcnm == "" ) {//전광판명이 없으면
- // 2009-02-05 ycd 퇴실장소 flag에 따른 전광판용 퇴실장소명 (공통코드 관리시 수정 필요)
- if(sOutplccd == "01"){
- sOutplcnm = "회복실";
- }else if(sOutplccd == "02"){
- sOutplcnm = "병실";
- }else if(sOutplccd == "31"){
- sOutplcnm = "DSC";
- }else if(sOutplccd == "32"){
- sOutplcnm = "주사실";
- }else if(sOutplccd == "21"){
- sOutplcnm = "ICU";
- }else if(sOutplccd == "22"){
- sOutplcnm = "ICU";
- }else if(sOutplccd == "23"){
- sOutplcnm = "ICU";
- }else if(sOutplccd == "24"){
- sOutplcnm = "ICU";
- }else if(sOutplccd == "25"){
- sOutplcnm = "회복실";
- }else if(sOutplccd == "26"){
- sOutplcnm = "회복실";
- }else if(sOutplccd == "99"){
- sOutplcnm = model.getValue("/root/main/MnphopcrData/MnphopcrList/opoutrmplcenm");
- }
- // 2009-02-05 ycd 퇴실장소 추가
- else if(sOutplccd == "27"){
- sOutplcnm = "ICU";
- }else if(sOutplccd == "28"){
- sOutplcnm = "ICU";
- }else if(sOutplccd == "29"){
- sOutplcnm = "ICU";
- }else if(sOutplccd == "20"){
- sOutplcnm = "ICU";
- }
- }
- }
- sJobProc = "pid" + "▦" // 01 환자번호
- + "oprsrvno" + "▦" // 02 수술예약
- + "ophistno" + "▦" // 03 이력번호
- + "instcd" + "▦" // 04 기관코드
- + "jobflag" + "▦" // 05 작업구분(1:입실저장,2:퇴실저장,9:입실취소)
- + "outplcnm" + "▩" // 06 퇴실장소명
- + sPid + "▦" // 01 환자번호
- + sOprsrvno + "▦" // 02 수술예약
- + sOphistno + "▦" // 03 이력번호
- + sInstcd + "▦" // 04 기관코드
- + pFlag + "▦" // 05 작업구분(1:입실저장,2:퇴실저장,9:입실취소)
- + sOutplcnm + "▩"; // 06 퇴실장소명
- model.makeValue("/root/send/JobProc", sJobProc);
- var rtn = fInstance2Save(pFlag); // 수술기록 자료 Copy 하기
- if(rtn == false) return;
- fMnphopcrDataConcatenate("Y"); // 수술간호기록정보 조합하기
- if( submit("TXMNP00301") ){ // 수술간호기록정보,참가자 정보저장
- if( (model.getValue(xPathData+"/certno") == "")&&( sCertOutFlag == "Y" )&&( sOpstatcd < "50" ) ){//처음 인증저장시 퇴실저장 확인 2010.02.18 K. J. M
- messageBox("저장 되었습니다.", "I000" );
- //sOpstatcd = sOpstatcdnew;//수술상태값 변경(인증저장시 퇴실저장여부 체크로직 때문에 바뀐 상태값으로 셋팅)2010.02.19 K. J. M
- }else if( (( sCertOutFlag == "N" )&&( pFlag == "2" ))||( pFlag == "1" )) {//퇴실저장시 무조건 확인 2010.02.18 K. J. M, 입실저장일때
- messageBox("저장 되었습니다.", "I000" );
- }
- model.setValue(xPathData+"/recstat" ,"U"); // Record 상태정보 I:신규,U:수정
- //================================================================================================
- //입실 저장 후 진행사항 정보 관련 null exception error 처리 관련 추가 2008-07-26 오후 1:56:53
- model.setValue(xPathData+"/opstatcd", sOpstatcdnew); // 진행상태
- model.setValue(xPathData+"/org_opoutrmplcecd", sOpoutrmplcecd);
- //================================================================================================
- if( pFlag == "1" ) {
- inp_patinroomdd.attribute("color") = "#0000ff";
- inp_patinroomhh.attribute("color") = "#0000ff";
- if(model.getValue("/root/main/MnphopcrData/MnphopcrList/opposturespec/opposture/opposturelist/opposturefrdt") == ""){
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opposturespec/opposture/opposturelist/opposturefrdt",
- model.getValue("/root/init/workinst/datetimedata/patinroomdd"));
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opposturespec/opposture/opposturelist/opposturefrtm",
- model.getValue("/root/init/workinst/datetimedata/patinroomhh"));
- grd_opposture.refresh();
- }
- }
- if( pFlag == "2" ) {
- inp_patoutroomdd.attribute("color") = "#0000ff";
- inp_patoutroomhh.attribute("color") = "#0000ff";
- }
- //입실/퇴실 smsid 저장한 Setting 2008-07-24 오전 10:35:03 taebum
- model.setValue("/root/main/MnphopcrData/MnphopcrList/patopinsndsmsid" ,model.getValue("/root/sms/MnphopcrList/patopinsndsmsid"));
- model.setValue("/root/main/MnphopcrData/MnphopcrList/patopoutsndsmsid",model.getValue("/root/sms/MnphopcrList/patopoutsndsmsid"));
- }else {//입퇴실저장 실패시 수술상태값 이전으로 돌리기 2010.04.09 K. J. M
- if( pFlag == "1" ) {
- model.setValue(xPathData+"/opstatcd", "30");
- }else if( pFlag == "2" ) {
- model.setValue(xPathData+"/opstatcd", "40");
- }
- //2010.04.09 K. J. M 퇴실저장 실패시 플래그 값 초기화
- sOutflag = "";
- }
- }
- /* ------------------------------------------------- */
- /* desc : 수술기록 자료 Copy 하기 */
- /* param : */
- /* return : */
- /* -------------------------------------------------- */
- function fInstance2Save(pFlag){
- if (pFlag == "C") {
- var rtn = fConfirmInputData1(); // 필수 입력 데이터 확인하기
- if (rtn == false) return false;
- }
- sPid = model.getValue("/root/init/HideData/pid" ); // 01 환자번호
- sOprsrvno = model.getValue("/root/init/HideData/oprsrvno" ); // 02 수술예약(의뢰)번호(년도+일련번호)
- sOphistno = model.getValue("/root/init/HideData/ophistno" ); // 03 예약번호에따른이력번호
- sInstcd = model.getValue("/root/init/HideData/instcd" ); // 04 기관코드
- sOptrustflag = model.getValue(xPathData +"/optrustflag" ); // 05 수술의뢰구분-정규(일반)E응급
- sOppatflag = model.getValue(xPathData +"/oppatflag" ); // 06 수술환자구분
- sOppartdispyn = model.getValue(xPathData +"/oppartdispyn" ); // 08 수술부위표시여부
- sOpscale = model.getValue(xPathData+"/opscale" ); // 수술 스케일
- wPatinroomdd = model.getValue(xPathDispDT+"/patinroomdd" ); // 환자입실일자
- wPatinroomhh = model.getValue(xPathDispDT+"/patinroomhh" ); // 환자입실시간
- wPatoutroomdd = model.getValue(xPathDispDT+"/patoutroomdd" ); // 환자퇴실일자
- wPatoutroomhh = model.getValue(xPathDispDT+"/patoutroomhh" ); // 환자퇴실시간
- wAnstsrtdd = model.getValue(xPathDispDT+"/anstsrtdd" ); // 마취시작일자
- wAnstsrthh = model.getValue(xPathDispDT+"/anstsrthh" ); // 마취시작시간
- wAnstenddd = model.getValue(xPathDispDT+"/anstenddd" ); // 마취종료일자
- wAnstendhh = model.getValue(xPathDispDT+"/anstendhh" ); // 마취종료시간
- wPerfidarvdd = model.getValue(xPathDispDT+"/perfidarvdd" ); // 집도의도착일자
- wPerfidarvhh = model.getValue(xPathDispDT+"/perfidarvhh" ); // 집도의도착시간
- wPerfidoutdd = model.getValue(xPathDispDT+"/perfidoutdd" ); // 집도의퇴실일자
- wPerfidouthh = model.getValue(xPathDispDT+"/perfidouthh" ); // 집도의퇴실시간
- wOpfromdd = model.getValue(xPathDispDT+"/opfromdd" ); // 수술시작일자
- wOpfromhh = model.getValue(xPathDispDT+"/opfromhh" ); // 수술시작시간
- wOptodd = model.getValue(xPathDispDT+"/optodd" ); // 수술종료일자
- wOptohh = model.getValue(xPathDispDT+"/optohh" ); // 수술종료시간
- sDrugUseYN = model.getValue(xPathData+"/druguseyn" ); // 약품사용여부
- sDrgeUseYN = model.getValue(xPathData+"/drgeuseyn" ); // 배액관사용여부
- sEqmtUseYN = model.getValue(xPathData+"/eqmtuseyn" ); // 장비사용여부
- sImplantUseYN = model.getValue(xPathData+"/implantuseyn" ); // Implant사용여부
- sDrugCmt = model.getValue(xPathData+"/drugcmt" ); // 약품비고
- sDrgeCmt = model.getValue(xPathData+"/drgecmt" ); // 배액관비고
- sEqmtCmt = model.getValue(xPathData+"/eqmtcmt" ); // 장비비고
- sImplantCmt = model.getValue(xPathData+"/implantcmt" ); // Implant비고
- sTnsYN = model.getValue(xPathData+"/tnsyn" ); // 수혈여부
- sSpcUseYN = model.getValue(xPathData+"/spcuseyn" ); // 검체사용여부
- sCareRecUseYN = model.getValue(xPathData+"/carerecuseyn" ); // 간호기록사용여부
- //--
- sOpoutrmplcecd = model.getValue(xPathData+"/opoutrmplcecd" ); // 수술후퇴실장소
- sOpoutrmplcenm = model.getValue(xPathData+"/opoutrmplcenm" ); // 수술후퇴실장소기타
- //2008-06-27 오전 10:32:54 taebum 추가요구사항 적용
- sCuthairflag = model.getValue(xPathData+"/cuthairflag"); //삭모
- sXrayflag = model.getValue(xPathData+"/xrayflag"); //X-Ray
- sXraydrugspec = model.getValue(xPathData+"/xraydrugspec"); //X-Ray 조용제 사용입력 text
- sDrsflag = model.getValue(xPathData+"/drsflag"); //Dressing 구분
- sDrsetc = model.getValue(xPathData+"/drsetc"); //Dressing 기타 입력 text
- sNocountdoctid = model.getValue(xPathData+"/nocountdoctid"); //집도의 요청에 의한 계수확인 안함 집도의ID
- sExtcyn = model.getValue(xPathData+"/extcyn"); //적출물 여부
- sSkinstatflag = model.getValue(xPathData+"/skinstatflag"); //피부상태 구분
- sDelivyn = model.getValue(xPathData+"/delivyn"); //분만여부
- sPlatatransid = model.getValue(xPathData+"/platatransid"); //태반운반자 2008-07-07 오후 2:55:43 추가
- sOtyn = model.getValue(xPathData+"/otyn"); //장기이식여부 2008-07-08 오후 9:47:42 add
- sObRecyn = model.getValue(xPathData+"/obrecyn"); //관찰기록여부 2012-06-03 오후 4:56:15 cnrk
- sPatopinsndsmsid = model.getValue(xPathData+"/patopinsndsmsid"); //환자입실smsID 2008-07-22 오후 10:25:51
- sPatopoutsndsmsid = model.getValue(xPathData+"/patopoutsndsmsid"); //환자퇴실smsID 2008-07-22 오후 10:26:06
- //2009-02-09 ycd 수술간호기록 화면 수정 중 추가 기록 항목 세팅
- sEscopeeqmtuseyn = model.getValue(xPathData+"/escopeeqmtuseyn"); //내시경장비사용여부
- sInsuremark = model.getValue(xPathData+"/insuremark"); //보험팀전달사항
- sPrcporderid = model.getValue(xPathData+"/prcporderid"); //처방의사ID
- sDeptremark = model.getValue(xPathData+"/deptremark"); //부서Remark
- sOproomremark = model.getValue(xPathData+"/oproomremark"); //수술실Remark
- sOpcntlistremark = model.getValue(xPathData+"/opcntlistremark"); //수술count리스트 Remark
- sOpcntlisttoexecyn = model.getValue(xPathData+"/opcntlisttoexecyn"); //수술count리스트 Time Out 시행여부
- //2008-07-01 오전 10:55:57 taebum 중환자실용 회복환자 관리 요구사항
- if(pFlag == "2"
- //&& (sOpoutrmplcecd == "21" || sOpoutrmplcecd == "22" || sOpoutrmplcecd == "23" || sOpoutrmplcecd == "24")){
- //2009-02-09 ycd 수술실 퇴실장소 추가로 인하여 수정 처리
- && ( sOpoutrmplcecd == "21" || //내과중환자실
- sOpoutrmplcecd == "22" || //신경외과중환자실
- //sOpoutrmplcecd == "23" || //심장내과중환자실 삭제처리
- sOpoutrmplcecd == "24" || //외과중환자실
- sOpoutrmplcecd == "27" || //2층중환자실
- sOpoutrmplcecd == "28" || //순환기계중환자실
- sOpoutrmplcecd == "29" || //신생아중환자실
- sOpoutrmplcecd == "20" //호흡기내과중환자실
- )){
- //퇴실 장소가 ICU일 경우에만.
- sIcuGoFlag = "Y";
- }else{
- sIcuGoFlag = "N";
- }
- //
- CheckCnt = 0;
- if (wPatinroomhh == "") { // 01 : 환자입실일자
- wPatinroomdd = "";
- }
- if (wPerfidarvhh == "") { // 02 : 집도의도착일자
- wPerfidarvdd = "";
- }
- if (wAnstsrthh == "") { // 03 : 마취시작일자
- wAnstsrtdd = "";
- }
- if (wOpfromhh == "") { // 04 : 수술시작일자
- wOpfromdd = "";
- }
- if (wAnstendhh == "") { // 05 : 마취종료일자
- wAnstenddd = "";
- }
- if (wOptohh == "") { // 06 : 수술종료일자
- wOptodd = "";
- }
- if (wPerfidouthh == "") { // 07 : 집도의퇴실일자
- wPerfidoutdd = "";
- }
- if (wPatoutroomhh == "") { // 08 : 환자퇴실일자
- wPatoutroomdd = "";
- } else {
- CheckCnt++;
- }
- sPatinroomdt = wPatinroomdd // 환자입실일자
- + wPatinroomhh ; // 환자입실시간
- sPatoutroomdt = wPatoutroomdd // 환자퇴실일자
- + wPatoutroomhh; // 환자퇴실시간
- sAnstsrtdt = wAnstsrtdd // 마취시작일자
- + wAnstsrthh ; // 마취시작시간
- sAnstenddt = wAnstenddd // 마취종료일자
- + wAnstendhh ; // 마취종료시간
- sPerfidarvdt = wPerfidarvdd // 집도의도착일자
- + wPerfidarvhh ; // 집도의도착시간
- sPerfidoutdt = wPerfidoutdd // 집도의퇴실일자
- + wPerfidouthh ; // 집도의퇴실시간
- sOpfromdt = wOpfromdd // 수술시작일자
- + wOpfromhh ; // 수술시작시간
- sOptodt = wOptodd // 수술종료일자
- + wOptohh ; // 수술종료시간
- if( pFlag == "T" ) {//임시저장일때 수술시작 종료 시간 자릿수 체크 2010.03.18
- if( (sOpfromdt != "")&&(sOpfromdt.length < 12) ) {
- messageBox("수술시작일시를 확인하십시요.!", "E000");
- return false;
- }else if( (sOptodt != "")&&(sOptodt.length < 12) ) {
- messageBox("수술종료일시를 확인하십시요.!", "E000");
- return false;
- }else if( (sPerfidarvdt != "")&&(sPerfidarvdt.length < 12) ) {
- messageBox("집도의 입실일시를 확인하십시요.!", "E000");
- return false;
- }else if( (sPerfidoutdt != "")&&(sPerfidoutdt.length < 12) ) {
- messageBox("집도의 퇴실일시를 확인하십시요.!", "E000");
- return false;
- }
- }
- sCertno = model.getValue(xPathData+"/certno" ); // 인증코드
- sOpcnfmdd = model.getValue(xPathData+"/opcnfmdd" ); // 수술확정일자(의뢰상태일경우예정일자와동일)
- sOpstatcd = model.getValue(xPathData+"/opstatcd" ); // 진행상태
- sOpstatcdnew = model.getValue(xPathData+"/opstatcd" ); // 진행상태
- sRecstat = model.getValue(xPathData+"/recstat" ); // Record 상태정보 I:신규,U:수정
- sOpbfpatcnfmspec = instance1.selectSingleNode(xPathData+"/opbfpatcnfmspec/opbfpatcnfm" ).xml; // 07 수술전환자확인내역
- sTimeoutspec = instance1.selectSingleNode(xPathData+"/timeoutspec/timeout" ).xml; // 09 TimeOut내역
- sAnstkindspec = instance1.selectSingleNode(xPathData+"/anstkindspec/anstkind" ).xml; // 10 마취종류내역
- sOpposturespec = instance1.selectSingleNode(xPathData+"/opposturespec/opposture" ).xml; // 11 수술체위내역
- sSkindinfspec = instance1.selectSingleNode(xPathData+"/skindinfspec/skindinf" ).xml; // 12 피부소독제내역
- sAftopopnm = instance1.selectSingleNode(xPathData+"/aftopopnm/aftopoplists" ).xml; // 13 수술후수술명
- //sAftopopnm = instance1.selectSingleNode(xPathData+"/aftopopnm/opcdlist" ).xml; // 13 수술후수술명 2008-07-18 오후 5:39:51 taebum 주석처리
- sEsuspec = instance1.selectSingleNode(xPathData+"/esuspec/esu" ).xml; // 21 ESU내역
- sTourniquetspec = instance1.selectSingleNode(xPathData+"/tourniquetspec/tourniquet" ).xml; // 22 Tourniquet내역
- //2009-02-09 ycd 수술간호기록 내역에서 삭제
- sWarmcoldregmspec = instance1.selectSingleNode(xPathData+"/warmcoldregmspec/lists" ).xml; // 23 온냉요법내역, Catheter 삽관기록
- //sPostureskinupdtspec = instance1.selectSingleNode(xPathData+"/postureskinupdtspec/lists" ).xml; // 24 체위에따른피부변화내역
- sCounspec = instance1.selectSingleNode(xPathData+"/counspec/countlist" ).xml; // 27 Count,내역
- sPackingspec = instance1.selectSingleNode(xPathData+"/packingspec/packing" ).xml; // 28 Packing내역
- sOpNursRecTimeRemark = instance1.selectSingleNode(xPathData+"/opnursrectimeremark/delyresnlist" ).xml; // 70 수술지연사유정보
- //sOpDrgeSpec = instance1.selectSingleNode(xPathData+"/warmcoldregmspec/lists" ).xml; // 삽관기록
- sSpcCmt = model.getValue(xPathData+"/spccmt" ); // 71 장비비고
- //--------(20110512)
- fopdicordnmcreate(); //불일치시 자료 전달기능
- //--------(20110512)
- // ---------------------------------
- // 진행상태
- // 00 : 임시'
- // 00 : 임시'
- // 10 : 의뢰'
- // 19 : 의뢰취소'
- // 20 : 예정'
- // 29 : 취소'
- // 30 : 대기'
- // 39 : 대기취소'
- // 40 : 수술'
- // 49 : 수술취소'
- // 50 : 종료'
- // 60 : 회복'
- // 70 : 종료'
- // ---------------------------------
- sOpstatcdnew = sOpstatcd ; // 진행상태
- //2008-06-27 오후 4:25:16 taebum 수정 임시저장일 경우에도 진행상태가 반영이 되어야한다.
- //if (pFlag == "C" || pFlag == "1") {
- if (pFlag == "1") {
- if (sOpstatcd < "40" && sPatinroomdt != "") {
- sOpstatcdnew = "40"; // 진행상태
- sOpoutrmplcecd = "26";//43->26 퇴실장소 기준자료와 동기화시키기위해 변경 2010.01.22 K.J.M
- }
- }
- //2008-06-27 오후 4:25:16 taebum 수정 임시저장일 경우에도 진행상태가 반영이 되어야한다.
- //2008-06-28 오전 11:31:34 taebum 수술실과 분만실이 퇴실장소인 경우는 전광판에 회복중으로 요청
- // 퇴실장소가 수술실인 경우 HIV 환자도 수술실에서 .... 회복한다고 함.
- //if (pFlag == "C" || pFlag == "2"){
- if (pFlag == "2") {
- //if (sOpstatcd < "50" && sPatoutroomdt != "")
- if (sPatoutroomdt != "") {//상태값에 관계없이 퇴실저장시에는 수술상태값 변경2010.02.08 K.J.M
- // 2009-02-09 ycd 퇴실장소 추가로 인하여 조건 추가
- if( sOpoutrmplcecd == "01" || //회복실
- sOpoutrmplcecd == "21" || //내과중환자실
- sOpoutrmplcecd == "22" || //신경외과중환자실
- sOpoutrmplcecd == "23" || //심장내과중환자실
- sOpoutrmplcecd == "24" || //외과중환자실
- sOpoutrmplcecd == "25" || //분만실
- sOpoutrmplcecd == "27" || //2층중환자실
- sOpoutrmplcecd == "28" || //순환기계중환자실
- sOpoutrmplcecd == "29" || //신생아중환자실
- sOpoutrmplcecd == "20" || //호흡기내과중환자실
- sOpoutrmplcecd == "26" //수술실
- ){ // 회복실 입실
- sOpstatcdnew = "60";
- }else{
- sOpstatcdnew = "50"; // 진행상태 퇴실 - 회복실, 중환자실, 분만실, 수술실을 제외한 나머지는 모두 종료처리
- }
- }
- }
- //
- model.setValue(xPathData+"/patinroomdt" , sPatinroomdt ); // 환자입실시간
- model.setValue(xPathData+"/patoutroomdt", sPatoutroomdt); // 환자퇴실시간
- model.setValue(xPathData+"/anstsrtdt" , sAnstsrtdt ); // 마취시작일자
- model.setValue(xPathData+"/anstenddt" , sAnstenddt ); // 마취종료일자
- model.setValue(xPathData+"/perfidarvdt" , sPerfidarvdt ); // 집도의도착일자
- model.setValue(xPathData+"/perfidoutdt" , sPerfidoutdt ); // 집도의퇴실일자
- model.setValue(xPathData+"/opfromdt" , sOpfromdt ); // 수술시작일자
- model.setValue(xPathData+"/optodt" , sOptodt ); // 수술종료일자
- model.setValue(xPathData+"/opstatcd" , sOpstatcdnew ); // 진행상태
- //2009-02-09 ycd 수술간호기록 내역에서 삭제
- //cmb_opstatcd.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : 필수 입력 데이터 확인하기 */
- /* -------------------------------------------------- */
- function fConfirmInputData1(){
- // 집도의 : fUserEnter(xPathData,"/timeoutspec/timeout/perfdr" , "/timeoutspec/timeout/perfdrnm" ,"/timeoutspec/timeout/pertdrdeptcd", "/timeoutspec/timeout/pertdrdeptnm" , inp_perfdrnm.currentText , inp_perfdrnm );
- // 수련의 : fUserEnter(xPathData,"/timeoutspec/timeout/apprtcdr", "/timeoutspec/timeout/apprtcdrnm","/timeoutspec/timeout/apprtcdrdeptcd", "/timeoutspec/timeout/apprtcdrdeptnm", inp_apprtcdrnm.currentText, inp_apprtcdrnm);
- // 마취의 : fUserEnter(xPathData,"/timeoutspec/timeout/anstdr" , "/timeoutspec/timeout/anstdrnm" ,"/timeoutspec/timeout/anstdrdeptcd", "/timeoutspec/timeout/anstdrdeptnm" , inp_anstdrnm.currentText , inp_anstdrnm );
- // 간호사1 : fUserEnter(xPathData,"/timeoutspec/timeout/nurse1" , "/timeoutspec/timeout/nurse1nm" ,"/timeoutspec/timeout/nurse1deptcd", "/timeoutspec/timeout/nurse1deptnm" , inp_nurse1nm.currentText , inp_nurse1nm );
- // 간호사2 : fUserEnter(xPathData,"/timeoutspec/timeout/nurse2" , "/timeoutspec/timeout/nurse2nm" ,"/timeoutspec/timeout/nurse2deptcd" , "/timeoutspec/timeout/nurse2deptnm" , inp_nurse2nm.currentText , inp_nurse2nm );
- //2008-10-21 오전 9:54:44 taebum Timeout 인증 저장시 전체 unCheck 대하여 Blocking 해제
- //alert(model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/timeoutcheck"));
- var CheckCnt = 0;
- //2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- if (model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/timeoutcheck") != ""
- && model.getValue(xPathData+"/timeoutspec/timeout/perfdr" ) == "") {
- //CheckCnt += 1;
- messageBox("Time Out 수술의를 ","C001");
- return false;
- }
- */
- //
- // if (model.getValue(xPathData+"/timeoutspec/timeout/apprtcdr") == "" || model.getValue(xPathData+"/timeoutspec/timeout/apprtcdrnm")=="") {
- // CheckCnt += 1;
- // // messageBox("Time Out 수련의를 다시","C001");
- // // return false;
- // }
- //
- // if (CheckCnt == 2) {
- // messageBox("Time Out 수술의를 다시","C001");
- // return false;
- // }
- //
- //2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- if (model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/timeoutcheck") != ""
- && model.getValue(xPathData+"/timeoutspec/timeout/nurse1" ) == "") {
- messageBox("Time Out 수술간호사를 ","C001");
- return false;
- }
- */
- CheckCnt = 0;
- // 2009-02-09 ycd 수술간호기록 기록내역 변경으로 인하여 CPR 정보 체크 추가
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck01") != "") CheckCnt++; //전신마취
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck02") != "") CheckCnt++; //부위마취
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") != "") CheckCnt++; //국소마취
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck99") != "") CheckCnt++; //마취없음
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstcprchk" ) != "") CheckCnt++; //CPR
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstopchk" ) != "") CheckCnt++; //수술없음
- // 2009-02-09 ycd 수술간호기록 기록내역 변경으로 인하여 삭제 항목 체크 부분 삭제
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck04") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck05") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck06") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck07") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck08") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck10") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck11") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck12") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck13") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck14") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck15") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck99") != "") CheckCnt++;
- // 2009-05-15 ycd 주석처리
- //if (CheckCnt == 0) {
- // messageBox("마취종류를 ","C001");
- // return false;
- //}
- //2010-03-03 K. J. M 수술안함일경우 유효성체크 제외
- var opnoyn = model.getValue("/root/main/MnphopcrData/MnphopcrList/opnoyn");
- //2009-02-11 저장시 미시행 사유 등록여부 체크
- if(rdo_opbfpatchk.value == "N" && cmb_opbfpatresn.value == ""){
- messageBox("수술전 환자 확인 미시행 사유를 확인하십시오.","I000");
- return false;
- }
- if( opnoyn != "Y" ) {//수술안함이면 체크안함.
- if(rdo_opbfpartchk.value == "N" && cmb_opbfpartresn.value == ""){
- messageBox("수술부위표시확인 미시행 사유를 확인하십시오.","I000");
- return false;
- }
-
- if(rdo_optimeoutchk.value == "N" && cmb_opbftimeoutresn.value == ""){
- messageBox("Time Out 미시행 사유를 확인하십시오.","I000");
- return false;
- }
- }
- //2008-09-25 오전 12:43:31 taebum 주석처리
- //if (CheckCnt == 1 && model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") == "S") { //
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") == "S") { //
- CheckCnt = 99;
- }
- //2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- if (CheckCnt != 99) {
- if (model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/timeoutcheck") != ""
- && (model.getValue(xPathData+"/timeoutspec/timeout/anstdr" ) == "" || model.getValue(xPathData+"/timeoutspec/timeout/anstdrnm")=="")) {
- messageBox("Time Out 마취의를 ","C001");
- return false;
- }
- if (model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/timeoutcheck") != ""
- && (model.getValue(xPathData+"/timeoutspec/timeout/nurse2" ) == "" || model.getValue(xPathData+"/timeoutspec/timeout/nurse2nm")=="")) {
- messageBox("Time Out 마취간호사를 ","C001");
- return false;
- }
- }
- */
- //
- if( opnoyn != "Y" ) {//수술안함이면 체크안함.
- if (grd_opposture.rows < 2) {
- messageBox("수술체위를","C001");
- return false;
- }
- }
- var sListIndex = "";
- var sRowCnt = (grd_opposture.rows - grd_opposture.fixedrows) + 1;
- if( opnoyn != "Y" ) {//수술안함이면 체크안함.
- //2009-02-13 마지막행 수술종료일시로 매핑 및 소요시간 총소요시간 합계처리
- if(model.getValue(xPathData+"/opposturespec/opposture/opposturelist["+(sRowCnt-1)+"]/oppostureterm") == "" ){
- if(inp_optodd.value != "" && inp_optohh.value != ""){
- var iRow = (sRowCnt-1);
- var iCol = grd_opposture.colRef("opposturetotm");
- if (iRow < 1 || iCol == grd_opposture.colRef("opposturekind") || iCol == grd_opposture.colRef("oppostureterm") || iCol == grd_opposture.colRef("opposturetot")) return;
- if (iCol == grd_opposture.colRef("opposturefrtm") || iCol == grd_opposture.colRef("opposturetotm")) {
- grd_opposture.textmatrix(iRow, iCol-1) = inp_optodd.value;
- grd_opposture.textmatrix(iRow, iCol) = inp_optohh.value;
- }
- var pFrDate = model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+iRow+"]/opposturefrdt");
- var pFrTime = model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+iRow+"]/opposturefrtm");
- var pToDate = model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+iRow+"]/opposturetodt");
- var pToTime = model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+iRow+"]/opposturetotm");
- var rTime = fTimeInterval(pFrDate, pToDate, pFrTime, pToTime, "1");
- model.setValue(xPathData +"/opposturespec/opposture/opposturelist["+iRow+"]/oppostureterm", rTime );
- //grd_opposture.refresh();
- fTotalTimeSet();
- }else{
- //if(chk_anstcprchk.value == ""){
- // messageBox("수술종료 일시를 확인하십시오.","I000");
- // return false;
- //}
- }
- }
- for (var i=1; i < sRowCnt; i++) {
- if (model.getValue(xPathData+"/opposturespec/opposture/opposturelist["+i+"]/oppostureterm") == "" ||
- model.getValue(xPathData+"/opposturespec/opposture/opposturelist["+i+"]/opposturekind") == "" ) {
- sListIndex = i;
- }
- }
- //
- if (sListIndex != "") {
- messageBox("수술체위 정보의 누락 부분(체위, 시작시간, 종료시간)을","C001");
- return false;
- }
- if (model.getValue(xPathData+"/skindinfspec/skindinf/Skindinfkind") == "") {
- messageBox("피부 소독제를 선택하십시오.","I000");
- return false;
- }
- if (model.getValue(xPathData+"/opscale") == "") {
- messageBox("수술스케일를 선택하십시오.","I000");
- return false;
- }
- }
- //2008-06-26 오전 11:38:08 tabum - esu, tour, 검체 해당없음 체크
- var sEsuCheckFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esuyn");
- if(sEsuCheckFlag == "" || sEsuCheckFlag == "undefined" || sEsuCheckFlag == null){
- var iEsuCnt = getNodesetCount("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esulist");
- var sCut = "";
- var sCoag = "";
- var sWatt = "";
- var sImgpostView = "";
- var iRecCnt = 0;
- for(var k = 1; k <= iEsuCnt; k++){
- sCut = model.getValue("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esulist["+k+"]/mfrcut");
- sCoag = model.getValue("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esulist["+k+"]/mfrcong");
- sWatt = model.getValue("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esulist["+k+"]/bwatt");
- sImgpostView = model.getValue("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esulist["+k+"]/imgpostview");
- iRecCnt = 0;
- if( (sCut != "" || sCoag != "") && sImgpostView == "" ){
- messageBox("ESU Monopolar기록에 대한 위치 정보를 입력하십시요","I000");
- return false;
- }
- // 2009-02-13 ycd ESU저장 체크 처리 변경으로 인하여 주석처리
- /*
- if(sCut == "" || sCut == null || sCut == "undefined"){
- iRecCnt++;
- }
- if(sCoag == "" || sCoag == null || sCoag == "undefined"){
- iRecCnt++;
- }
- if(sWatt == "" || sWatt == null || sWatt == "undefined"){
- iRecCnt++;
- }
- if(iRecCnt == 3){
- messageBox("ESU 상세 내역을 기록하십시오.","I000");
- return false;
- }
- */
- }
- }
- // 2009-02-16 ycd 검체정보 개수 입력시 취급자 정보 체크 추가
- var sSpcuseynFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/spcuseyn");
- if(sSpcuseynFlag == "" || sSpcuseynFlag == "undefined" || sSpcuseynFlag == null){
- var iSpcuseCnt = getNodesetCount("/root/main/SheetData3/SpecimenLists/specimenlist");
- var sSpcuseQty = "";
- var sSpcuseChargerId = "";
- var sSpcuseChargerNm = "";
- for(var k = 1 ; k <= iSpcuseCnt ; k++){
- sSpcuseQty = model.getValue("/root/main/SheetData3/SpecimenLists/specimenlist["+k+"]/qty");
- sSpcuseChargerId = model.getValue("/root/main/SheetData3/SpecimenLists/specimenlist["+k+"]/chargerid");
- sSpcuseChargerNm = model.getValue("/root/main/SheetData3/SpecimenLists/specimenlist["+k+"]/chargernm");
- if( sSpcuseQty != "0" && ( sSpcuseChargerId == "" || sSpcuseChargerNm == "" ) ){
- messageBox("검체기록에 대한 취급자 정보를 입력하십시오.","I000");
- return false;
- }
- }
- }
- var sTourniquetFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetyn");
- if(sTourniquetFlag == "" || sTourniquetFlag == "undefined" || sTourniquetFlag == null){
- var iToniqCnt = getNodesetCount("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetlist");
- var sToniFrdd = "";
- var sToniFrtm = "";
- var sToniTodd = "";
- var sToniTotm = "";
- var iRecCnt = 0;
- for(var k = 1; k <= iToniqCnt; k++){
- sToniFrdd = model.getValue("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetlist["+k+"]/startdd");
- sToniFrtm = model.getValue("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetlist["+k+"]/starttm");
- sToniTodd = model.getValue("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetlist["+k+"]/enddd");
- sToniTotm = model.getValue("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetlist["+k+"]/endtm");
- iRecCnt = 0;
- if(sToniFrdd == "" || sToniFrdd == null || sToniFrdd == "undefined"){
- iRecCnt++;
- }
- if(sToniFrtm == "" || sToniFrtm == null || sToniFrtm == "undefined"){
- iRecCnt++;
- }
- if(sToniTodd == "" || sToniTodd == null || sToniTodd == "undefined"){
- iRecCnt++;
- }
- if(sToniTotm == "" || sToniTotm == null || sToniTotm == "undefined"){
- iRecCnt++;
- }
- if(iRecCnt > 0){
- messageBox("Tourniquet 상세 내역을 기록하십시오.","I000");
- return false;
- }
- }
- }
- //2009-02-13 ycd 장비사용기록 사용시작일시, 사용종료일시 기록 누락건 검색 - 사용시작일시 : 수술시작, 사용종료일시 : 수술종료 로 세팅
- /* 장비사용기록시 사용시작일시, 사용종료일시 삭제.2012.05.18_손성훈(본원 칠곡 수술실 간호사 요청사항.)
- var sEqmtUseYnChk = model.getValue("/root/main/MnphopcrData/MnphopcrList/eqmtuseyn");
- if(sEqmtUseYnChk == "" || sEqmtUseYnChk == "undefined" || sEqmtUseYnChk == null){
- var iEqmtUseYnChk = getNodesetCount("/root/main/SheetData3/OpEqmtLists/opeqmtlist");
- var ChkCnt = 0 ;
- for(var i = 1 ; i <= iEqmtUseYnChk ; i++){
- sEqmFromdd = model.getValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/fromdd" );
- sEqmFromtm = model.getValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/fromtm" );
- sEqmTodd = model.getValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/todd" );
- sEqmTotm = model.getValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/totm" );
- if( sEqmFromdd == "" && sEqmFromtm == "" ) {
- model.setValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/fromdd", inp_opfromdd.value );
- model.setValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/fromtm", inp_opfromhh.value );
- }
- if( sEqmTodd == "" && sEqmTotm == "" ) {
- model.setValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/todd" , inp_optodd.value );
- model.setValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/totm" , inp_optohh.value );
- }
- if( model.getValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/fromdd" ) == "" ||
- model.getValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist["+ i +"]/todd" ) == "" ){
- ChkCnt ++;
- }
- }
- if( ChkCnt > 0 ){
- messageBox("장비사용기록 시작, 종료 일시 정보를 확인하십시오.","I000");
- return false;
- }
- }
- */
- /*
- var sCutHairYn = model.getValue("/root/main/MnphopcrData/MnphopcrList/cuthairflag");
- if(sCutHairYn == "" || sCutHairYn == null || sCutHairYn == "undefined"){
- messageBox("삭모 시행 여부를 ","C001");
- return false;
- }
- */
- var sXrayFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/xrayflag");
- if(sXrayFlag == "" || sXrayFlag == null || sXrayFlag == "undefined"){
- messageBox("X-ray 촬영 여부를 선택하십시오.","I000");
- return false;
- }else{
- var XrayData = sXrayFlag.split(" ");
- for(var i = 0 ; i < XrayData.length ; i++){
- if(XrayData[i] == "3"){
- if(model.getValue("/root/main/MnphopcrData/MnphopcrList/xraydrugspec") == ""){
- messageBox("조영제 종류를 입력하십시오.","I000");
- return false;
- }
- }
- }
- }
- var sDressingFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/drsflag");
- if(sDressingFlag == "" || sDressingFlag == null || sDressingFlag == "undefined"){
- messageBox("Dressing 내역을 ","C001");
- return false;
- }
- /*
- var sImplantFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/implantuseyn");
- if(sImplantFlag == "" || sImplantFlag == "undefined" || sImplantFlag == null){
- var sTempData = model.getValue("/root/main/SheetData3/ImplantLists/implantlist/goodhngnm");
- if(sTempData == "" || sTempData == "undefined" || sTempData == null){
- messageBox("Implant / Prosthesis 등록 내역을 다시","C001");
- return false;
- }
- }
- var sDrugFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/druguseyn");
- if(sDrugFlag == "" || sDrugFlag == "undefined" || sDrugFlag == null){
- var sTempData = model.getValue("/root/main/SheetData3/DrugLists/druglist/drugnm");
- if(sTempData == "" || sTempData == "undefined" || sTempData == null){
- messageBox("수술중 사용한 약품 등록 내역을 다시","C001");
- return false;
- }
- }
- var sDrqeFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/drgeuseyn");
- if(sDrqeFlag == "" || sDrqeFlag == "undefined" || sDrqeFlag == null){
- var sTempData = model.getValue("/root/main/SheetData3/DrgeLists/drgelist/drgenm");
- if(sTempData == "" || sTempData == "undefined" || sTempData == null){
- messageBox("배액관 내역을 다시","C001");
- return false;
- }
- }
- */
- /*
- var sEqmtFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/eqmtuseyn");
- if(sEqmtFlag == "" || sEqmtFlag == "undefined" || sEqmtFlag == null){
- var sTempData = model.getValue("/root/main/SheetData3/OpEqmtLists/opeqmtlist/opeqmtnm");
- if(sTempData == "" || sTempData == "undefined" || sTempData == null){
- messageBox("장비 내역을 다시","C001");
- return false;
- }
- }
- */
- return true;
- }
- /* ------------------------------------------------- */
- /* desc : 필수 입력 데이터 확인하기 */
- /* -------------------------------------------------- */
- function fConfirmInputData3(){
- var CheckCnt = 0;
- var sTmpAnstKindChk = "";
- CheckCnt = 0;
- var preopcureflag = model.getValue("/root/main/MnphopcrData/MnphopcrList/preopcureflag");
- // 2009-02-09 ycd 수술기록 체위에 따른 피부변화 삭제 처리
- //체위에 따른 피부변화 CheckCnt
- /*
- var iTempGridCnt = getNodesetCnt(model,"/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/lists/skinlist");
- var sNomalFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/lists/skinflag");
- if(iTempGridCnt > 0){
- /*
- var sAPFlag = "";
- var sRLFlag = "";
- var sPartcd = "";
- var sOpbStat = "";
- for(var i = 1; i <= iTempGridCnt; i++){
- sAPFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/lists/skinlist["++"]/apflag");
- sRLFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/lists/skinlist["++"]/rlflag");
- sPartcd = model.getValue("/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/lists/skinlist["++"]/partcd");
- sOpbStat = model.getValue("/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/lists/skinlist["++"]/opbstat");
- //필요시 validcheck
- }
- }else{
- if(sNomalFlag != "Y"){
- messageBox("체위에 따른 피부변화 상태를 기록하십시오. ","I000");
- }
- }
- */
- // 2009-02-09 ycd 수술기록 체위에 따른 온냉요법 삭제 처리
- //온냉요법 check
- /*
- iTempGridCnt = getNodesetCnt(model,"/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/warmlist/warmcoldregm");
- var sTmpNoneFlag = model.getValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/warmlist/warmnoneflag");
- if(iTempGridCnt > 0){
- //필요시 validcheck 추가
- }else{
- /*
- if(sNomalFlag != "X"){
- messageBox("온냉요법 적용 여부를 기록하십시오.","I000");
- return false;
- }
- }
- */
- //2010-03-03 K. J. M 수술안함일경우 유효성체크 제외
- var opnoyn = model.getValue("/root/main/MnphopcrData/MnphopcrList/opnoyn");
- //2010-04-19 K. J. M PHYSSTAT 6 장기기증환자 마취시간하고 수술시간 시간체크 안함
- var physstat = model.getValue("/root/main/MnphopcrData/MnphopcrList/physstat");
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck01") != "") CheckCnt++;
- if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck02") != "") CheckCnt++;
- if ( CheckCnt > 0 ){
- sTmpAnstKindChk = "M";
- }
- // 2009-02-09 ycd 수술기록 마취기록 연계정보 변경으로 인하여 삭제 처리
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck09") != "") CheckCnt++;
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") != "") CheckCnt++;
- // 2009-02-09 ycd 수술기록 마취기록 연계정보 변경으로 인하여 추가
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck99") != "") CheckCnt++; //마취없음
- //if (model.getValue(xPathData+"/anstkindspec/anstkind/anstcprchk") != "") CheckCnt++; //CPR
- //2008-09-25 오전 12:57:03 taebum 주석처리.
- //if (CheckCnt == 1 && model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") == "S") { //
- // 2009-02-09 ycd 수술기록 마취기록 연계정보 변경으로 인하여 기록 저장시 체크 부분 변경
- if ( model.getValue(xPathData+"/anstkindspec/anstkind/anstcprchk") == "Y" ){ // CPR
- CheckCnt = 99;
- sTmpAnstKindChk = "Y" ;
- }
- if ( model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck03") == "S" || // 국소마취
- model.getValue(xPathData+"/anstkindspec/anstkind/anstkindcheck99") == "N" ){ // 마취없음
- CheckCnt = 99;
- sTmpAnstKindChk = "S" ;
- }
- if ( model.getValue("/root/main/MnphopcrData/MnphopcrList/spcuseyn") != "X" ){//검체 해당없음 체크가 풀려있으면 검체확인의 체크
- if (model.getValue("/root/main/operation/list/opcnfmdd") <= model.getValue("/root/specdd/chkdd") ) { //검체 기록을 과거 화면과 분리를 위해_20120904_손성훈.
- var prcporderid = model.getValue("/root/main/MnphopcrData/MnphopcrList/prcporderid");
- if( prcporderid == ""|| prcporderid == null ) {
- messageBox("수술간호기록지의 검체 확인의를 확인하십시오.!","E000");
- return false;
- }
- }else {
- for (var i = 1 ; i< grd_spclistnew.rows ; i++){
- var prcporderid = model.getValue("/root/main/SheetData3/SpecimenLists/specimenlistnew[" + i + "]/prcporderid");
- if( prcporderid == ""|| prcporderid == null ) {
- messageBox("수술간호기록지의 검체 확인의를 확인하십시오.!","E000");
- return false;
- }
- }
- }
- }
- //2009-02-20 YCD 인증 저장 전 처리 필요 부분
- if (sOpstatcd < "40"){
- messageBox("인증저장 전 입실저장을 하시기 바랍니다.","");
- return false;
- }
- if (sOpstatcd < "50"){
- messageBox("인증저장 전 퇴실저장을 하시기 바랍니다.","");
- return false;
- }
- if( sOpstatcd >= "40"&&sOutflag == "N" ) {//수술이상이면서 퇴실저장안한 경우 2010.04.12 K. J. M
- messageBox("인증저장 전 퇴실저장을 하시기 바랍니다.","");
- return false;
- }
- // 2009-02-16 ycd 저장 제어 조건 정리
- // 공동 처리 부분(전신, 부분)======================================================================================================
- if(sPatinroomdt == "" || sPatoutroomdt == "" || sPatinroomdt > sPatoutroomdt){
- messageBox("입실일시, 퇴실일시를 확인 하십시오.","I000");
- return false;
- }
- if( (sPatoutroomdt != "" && sOpoutrmplcecd == "" ) || (sOpoutrmplcecd != "" && (sPatoutroomdt == "")) ){
- messageBox("퇴실장소와 퇴실시간을 확인 하십시오.","I000");
- return false;
- }
- // =================================================================================================================================
- //2010-04-13 오전 11:29:26 마취기록에서 마취기록변경을 체크하였을 경우 마취시작,종료/수술시작,종료 Check 로직 Check 안함 추가 taebum
- var sAnstmthdchgflag = model.getValue(xPathData+"/anstmthdchgflag");
- if( opnoyn != "Y" ) {//수술안함이면 체크안함.
- //2009-02-20 YCD 기타 시간 체크 부분 처리
- if (CheckCnt != 99) { //전신 부위 마취일경우
- if(sAnstsrtdt == "" || sAnstenddt == "" || sAnstsrtdt > sAnstenddt) {
- messageBox("마취기록지의 마취 시작, 종료일시를 확인하십시오.","I000");
- return false;
- }
- if(sOpfromdt == "" || sOptodt == "" || sOpfromdt > sOptodt) {
- messageBox("마취기록지의 수술 시작, 종료일시를 확인하십시오.","I000");
- return false;
- }
- //2009-08-18 마취기록지 수술전처치체크 시 유효성체크 안함. 대기실에서 마취를 먼저 시작할 수 있음.K. J. M 최소현 선생님 요청
- if( preopcureflag == "N" ) {
- if(sAnstmthdchgflag != "Y"){ //2010-04-13 오전 11:33:49 taebum add
- if(sAnstsrtdt > sOpfromdt ){
- messageBox("마취기록지의 마취시작일시를 확인 하십시오. \n\n마취시작일시가 수술시작일시 보다 늦습니다.","I000");
- return false;
- }
- }
- }
- if(sAnstmthdchgflag != "Y"&&physstat != "06" ){//2010-04-13 오전 11:33:49 taebum add, 2010.04.19 K. J. M 장기기증이 아닐때 체크
- if(sAnstenddt < sOptodt ){
- messageBox("마취기록지의 마취종료일시를 확인 하십시오. \n\n수술종료일시가 마취종료일시 보다 늦습니다.","I000");
- return false;
- }
- }
- //2009-08-18 마취기록지 수술전처치체크 시 유효성체크 안함. 대기실에서 마취를 먼저 시작할 수 있음.K. J. M 최소현 선생님 요청
- if( preopcureflag == "N" ) {
- if(sPatinroomdt > sAnstsrtdt ){
- messageBox("입실일시를 확인 하십시오. \n\n입실일시가 마취시작일시 보다 늦습니다.","I000");
- return false;
- }
- }
- if(sPatinroomdt > sOpfromdt ){
- messageBox("입실일시를 확인 하십시오. \n\n입실일시가 수술시작일시 보다 늦습니다.","I000");
- return false;
- }
- if(sAnstenddt > sPatoutroomdt){
- messageBox("퇴실일시를 확인 하십시오. \n\n마취종료일시가 퇴실일시 보다 늦습니다.","I000");
- return false;
- }
- if(sOptodt > sPatoutroomdt){
- messageBox("퇴실일시를 확인 하십시오. \n\n수술종료일시가 퇴실일시 보다 늦습니다.","I000");
- return false;
- }
- if(sPatinroomdt > sPerfidarvdt){
- messageBox("집도의입실 일시를 확인 하십시오. \n\n환자 입실일시가 집도의입실 일시 보다 늦습니다.","I000");
- return false;
- }
- if(sPerfidoutdt > sPatoutroomdt){
- messageBox("집도의퇴실 일시를 확인 하십시오. \n\n집도의퇴실 일시가 환자 퇴실일시 보다 늦습니다.","I000");
- return false;
- }
- //2009-02-13 ycd 수술간호기록 마취종류에 따른 시간 체크 로직 변경
- /*
- var sTmpAnstKind = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03");
- if((sTmpAnstKind != "S") && ((sAnstsrtdt == "" || sAnstenddt == "" || sAnstsrtdt >= sAnstenddt))){
- messageBox("마취 시작, 종료일시를 확인 하십시오.","I000");
- return false;
- }
- if ( (sTmpAnstKind != "S") && (sPatinroomdt > sAnstsrtdt)) {
- //messageBox("마취시작일시가 입실일시 보다 빠릅니다. 다시","C001");
- messageBox(" 입실일시를 확인 하십시오. \n\n 입실일시가 마취시작일시보다 늦습니다.","I000");
- return false;
- }
- */
- /*
- //
- if ((sTmpAnstKind != "S") && (sAnstenddt < sOptodt)) {
- messageBox("마취종료일시가 수술종료일시 보다 빠릅니다. 다시","C001");
- return false;
- }
- //
- if ((sTmpAnstKind != "S") && (sAnstenddt > sPatoutroomdt)) {
- messageBox("환자퇴실일시가 마취종료일시 보다 빠릅니다. 다시","C001");
- return false;
- }
- */
- } else { // 전신, 부위마취가 아닐 경우
- if(sTmpAnstKindChk == "S"){ //CPR만 선택 없이 국소 or 마취없음 선택시
- // 2009-02-26 ycd 체크로직 하나로 합침
- /*
- if (sOpfromdt > sOptodt) {
- //messageBox("수술관련 시간기록을 확인하십시오. \n\n수술종료일시가 수술시작일시 보다 빠릅니다.","I000");
- messageBox("수술관련 시간기록을 확인하십시오.","I000");
- return false;
- }
- if (sPatinroomdt > sOpfromdt) {
- //messageBox("수술관련 시간기록을 확인하십시오. \n\n수술시작일시가 입실일시 보다 빠릅니다.","I000");
- messageBox("수술관련 시간기록을 확인하십시오.","I000");
- return false;
- }
- if (sPatoutroomdt > sOptodt) {
- messageBox("수술관련 시간기록을 확인하십시오. \n\n수술종료일시가 퇴실일시 보다 빠릅니다.","I000");
- return false;
- }
- */
- if(sOpfromdt == "" || sOptodt == "" || sOpfromdt > sOptodt) {
- messageBox("수술 시작, 종료일시를 확인하십시오.","I000");
- return false;
- }
- if(sPatinroomdt > sOpfromdt){
- messageBox("입실일시를 확인 하십시오. \n\n입실일시가 수술시작일시 보다 늦습니다.","I000");
- return false;
- }
- if(sOptodt > sPatoutroomdt){
- messageBox("퇴실일시를 확인 하십시오. \n\n수술종료일시가 퇴실일시 보다 늦습니다.","I000");
- return false;
- }
- if(sPatinroomdt > sPerfidarvdt){
- messageBox("집도의입실 일시를 확인 하십시오. \n\n환자 입실일시가 집도의입실 일시 보다 늦습니다.","I000");
- return false;
- }
- if(sPerfidoutdt > sPatoutroomdt){
- messageBox("집도의퇴실 일시를 확인 하십시오. \n\n집도의퇴실 일시가 환자 퇴실일시 보다 늦습니다.","I000");
- return false;
- }
- }
- }
- }
- // 2009-02-16 ycd 저장 제어 조건 정리
- // 공동 처리 부분(전신, 부분)======================================================================================================
- if( opnoyn != "Y" ) {//수술안함이면 체크안함.
- if(sPerfidarvdt == "" || sPerfidoutdt == "" || sPerfidarvdt > sPerfidoutdt){
- messageBox("집도의 입실일시, 퇴실일시를 확인 하십시오.","I000");
- return false;
- }
- }
- //=================================================================================================================================
- /*
- //
- if ((sTmpAnstKind != "S") && (sOptodt > sPatoutroomdt)) {
- messageBox("환자퇴실일시가 마취종료일시 보다 빠릅니다. 다시","C001");
- return false;
- }
- */
- //2008-08-12 오후 3:22:41 taebum 국소마취일 경우에는 check 안하도록 수정. 입력 자체를 하지 않는다.
- //2009-02-09 ycd 수술기록 마취기록 연계정보 변경으로 인하여 기록 저장시 체크 부분 변경
- /*
- var sTmpAnstKind = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03");
- if((sTmpAnstKind != "S") && ((sAnstsrtdt == "" && sAnstenddt != "") ||
- (sAnstsrtdt != "" && sAnstenddt != "" && sAnstsrtdt > sAnstenddt) )){
- messageBox("마취기록지 수술관련 시간기록을 확인하십시오. ","C001");
- return false;
- }*/
- // 2009-02-16 ycd 기존 로직 삭제 처리
- /*
- if((sPatinroomdt == "" && sPatoutroomdt != "") ||
- (sPatinroomdt != "" && sPatoutroomdt !="" && sPatinroomdt > sPatoutroomdt)){
- messageBox("입실, 퇴실일시를 확인하십시오.","I000");
- return false;
- }
- if((sPatinroomdt == "" || sPatoutroomdt =="" || sPatinroomdt > sPatoutroomdt)){
- messageBox("입실, 퇴실일시를 확인하십시오.","I000");
- return false;
- }
- if( (sTmpAnstKindChk != "Y" ) && (sOpfromdt == "" || sOptodt == "" || (sOpfromdt != "" && sOptodt != "" && sOpfromdt > sOptodt)) ){
- messageBox("수술 시작, 종료일시를 확인하십시오.","I000");
- return false;
- }
- if( (sTmpAnstKindChk != "Y" ) && (sOpfromdt == "" || sOptodt == "" || sOpfromdt > sOptodt)){
- messageBox("수술 시작, 종료일시를 확인하십시오.","I000");
- return false;
- }
- if(sOptodt != "" && sPatoutroomdt != "" && sOptodt > sPatoutroomdt){
- messageBox("수술관련 시간기록을 확인하십시오. \n\n 퇴실일시가 수술종료일시보다 빠릅니다.","I000");
- return false;
- }
- */
- /*
- if((sPerfidarvdt == "" && sPerfidoutdt != "") ||
- (sPerfidarvdt != "" && sPerfidoutdt != "" && sPerfidarvdt > sPerfidoutdt)){
- messageBox("집도의 도착, 퇴실일시를 확인하십시오.","I000");
- return false;
- }
- if((sPerfidarvdt == "" || sPerfidoutdt == "" || sPerfidarvdt > sPerfidoutdt)){
- messageBox("집도의입실, 퇴실일시를 확인하십시오.","I000");
- return false;
- }
- */
- /*
- if(sPatoutroomdt != "" && sOpoutrmplcecd == ""){
- messageBox("퇴실장소가 입력이 되었습니다. 퇴실일시도","C001");
- return false;
- }
- */
- //2009-02-13 인증저장시 Cheke 추가 자동완성 기능 추가
- // var sEsuListCnt = getNodesetCount("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esulist"); //ESU 기록값 체크
- // var sEsuListCnt = getNodesetCount("/root/main/SheetData3/OpEqmtLists/opeqmtlist");
- // var sEsuListCnt = getNodesetCount("/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet/tourniquetlist");
- // var sEsuListCnt = getNodesetCount("/root/main/SheetData3/SpecimenLists/specimenlist");
- // var sEsuListCnt = getNodesetCount("/root/main/MnphopcrData/MnphopcrList/opposturespec/opposture/opposturelist");
- //
- // if(getNodesetCount("/root/main/MnphopcrData/MnphopcrList/esuspec/esu/esulist") > 0){
- //
- // }
- /*
- if (sOpoutrmplcecd == ""){
- messageBox("퇴실장소를 확인하십시오.","I000");
- return false;
- }
- */
- //2008-09-04 오후 10:34:39 taebum 주/부수술 모두 확인하도록 수정
- //주수술기록일 경우에만 check
- //if( (model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- // (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){
- //skip
- //}else{
- // 2009-02-20 YCD 저장 데이터 체크 조건 순서 변경
- /*
- if (sOpstatcd < "40"){
- messageBox("인증저장 전 입실저장을 하시기 바랍니다.","");
- return false;
- }
- if (sOpstatcd < "50"){
- messageBox("인증저장 전 퇴실저장을 하시기 바랍니다.","");
- return false;
- }
- */
- //}
- return true;
- }
- /* ------------------------------------------------- */
- /* desc : 수술간호기록정보 조합하기 */
- /* param : */
- /* return : */
- /* -------------------------------------------------- */
- function fMnphopcrDataConcatenate(pFlag){
- // 00 수술간호기록정보
- //----(20110512) 불일치조치사항 추가
- // sMnphopcrData = "oprsrvno" + "▦" // 01 CHARACTER(10) 수술예약(의뢰)번호(년도+일련번호)
- // + "instcd" + "▦" // 02 CHARACTER(3) 기관코드
- // + "pid" + "▦" // 03 VARCHAR(10) 환자번호
- // + "optrustflag" + "▦" // 04 VARCHAR(1) 수술의뢰구분-정규(일반)E응급
- // + "oppatflag" + "▦" // 05 CHARACTER(1) 수술환자구분
- // + "opbfpatcnfmspec" + "▦" // 06 "SYSIBM"."XML" 수술전환자확인내역
- // + "oppartdispyn" + "▦" // 07 CHARACTER(1) 수술부위표시여부
- // + "timeoutspec" + "▦" // 08 "SYSIBM"."XML" TimeOut내역
- // + "anstkindspec" + "▦" // 09 "SYSIBM"."XML" 마취종류내역
- // + "opposturespec" + "▦" // 10 "SYSIBM"."XML" 수술체위내역
- // + "skindinfspec" + "▦" // 11 "SYSIBM"."XML" 피부소독제내역
- // + "aftopopnm" + "▦" // 12 "SYSIBM"."XML" 수술후수술명
- // + "opscale" + "▦" // 13 CHARACTER(01) 수술스케일 L,M,S
- // + "patinroomdt" + "▦" // 14 CHARACTER(14) 환자입실시간
- // + "patoutroomdt" + "▦" // 15 CHARACTER(14) 환자퇴실시간
- // + "anstsrtdt" + "▦" // 16 CHARACTER(14) 마취시작시간
- // + "anstenddt" + "▦" // 17 CHARACTER(14) 마취종료시간
- // + "perfidarvdt" + "▦" // 18 CHARACTER(14) 집도의도착일시
- // + "perfidoutdt" + "▦" // 19 CHARACTER(14) 집도의퇴실일시
- // + "opfromdt" + "▦" // 20 CHARACTER(14) 수술시작일자
- // + "optodt" + "▦" // 21 CHARACTER(14) 수술종료일자
- // + "opoutrmplcecd" + "▦" // 22 VARCHAR(10) 수술후퇴실장소
- // + "opoutrmplcenm" + "▦" // 23 VARCHAR(50) 수술후퇴실장소기타
- // + "esuspec" + "▦" // 24 "SYSIBM"."XML" ESU내역
- // + "tourniquetspec" + "▦" // 25 "SYSIBM"."XML" Tourniquet내역
- // + "warmcoldregmspec" + "▦" // 26 "SYSIBM"."XML" 온냉요법내역
- // + "postureskinupdtspec" + "▦" // 27 "SYSIBM"."XML" 체위에따른피부변화내역
- // + "counspec" + "▦" // 28 "SYSIBM"."XML" Count,내역
- // + "packingspec" + "▦" // 29 "SYSIBM"."XML" Packing내역
- // + "certno" + "▦" // 30 VARCHAR(17) 인증코드
- // + "opcnfmdd" + "▦" // 31 CHARACTER(8) 수술확정일자(의뢰상태일경우예정일자와동일)
- // + "fstrgstrid" + "▦" // 32 CHARACTER(10) 최초등록자ID(시스템정보)
- // + "lastupdtid" + "▦" // 33 CHARACTER(10) 최종수정자(시스템정보)
- // + "opstatcd" + "▦" // 34 진행상태
- // + "opstatcdnew" + "▦" // 35 진행상태
- // + "ophistno" + "▦" // 36 예약번호에따른이력번호
- // + "recstat" + "▦" // 37 Record 상태정보 I:신규,U:수정
- // + "druguseyn" + "▦" // 38 약품사용여부
- // + "drugcmt" + "▦" // 39 약품비고
- // + "drgeuseyn" + "▦" // 40 배액관사용여부
- // + "drgecmt" + "▦" // 41 배액관비고
- // + "eqmtuseyn" + "▦" // 42 장비사용여부
- // + "eqmtcmt" + "▦" // 43 장비비고
- // + "implantuseyn" + "▦" // 44 Implant 사용 여부
- // + "implantcmt" + "▦" // 45 Implant비고
- // + "tnsyn" + "▦" // 46 수혈여부
- // + "spcuseyn" + "▦" // 47 검체사용여부
- // + "carerecuseyn" + "▦" // 48 간호기록사용여부
- // + "certflag" + "▦" // 49 임시/인증 저장 여부(C:인증, T:임시)
- // + "cuthairflag" + "▦" // 50 삭모구분
- // + "xrayflag" + "▦" // 51 X-Ray 구분
- // + "xraydrugspec" + "▦" // 52 X-Ray 조영제 사용 text
- // + "drsflag" + "▦" // 53 Dressing 구분
- // + "drsetc" + "▦" // 54 Dressing 기타 입력 text
- // + "nocountdoctid" + "▦" // 55 집도의 요청에 이한 계수확인 안함 집도의ID
- // + "icugoflag" + "▦" // 56 ICU 회복환자 관리용 회복실 입실구분
- // + "extcyn" + "▦" // 57 적출물여부
- // + "skinstatflag" + "▦" // 58 피부상태구분
- // + "delivyn" + "▦" // 59 분만여부
- // + "platatransid" + "▦" // 60 태반운반자
- // + "otyn" + "▦" // 61 장기이식여부
- // + "patopinsndsmsid" + "▦" // 62 환자입실smsID
- // + "patopoutsndsmsid" + "▦" // 63 환자퇴실SMSID
- // + "escopeeqmtuseyn" + "▦" // 64 내시경장비사용여부
- // + "insuremark" + "▦" // 65 보험팀전달사항
- // + "prcporderid" + "▦" // 66 처방의사ID
- // + "deptremark" + "▦" // 67 부서Remark
- // + "oproomremark" + "▦" // 68 수술실Remark
- // + "opcntlistremark" + "▦" // 69 수술count리스트 Remark
- // + "opnursrectimeremark" + "▦" // 70 수술지연사유정보
- // + "spccmt" + "▦" // 71 검체비고입력
- // + "opnoyn" + "▦" // 72 수술안함여부
- // + "outflag" + "▦" // 73 퇴실저장여부
- // + "mainoprsrvno" + "▩" // 74 MAINOPRSRVNO
- //
- // sMnphopcrData += sOprsrvno + "▦" // 01 CHARACTER(10) 수술예약(의뢰)번호(년도+일련번호)
- // + sInstcd + "▦" // 02 CHARACTER(3) 기관코드
- // + sPid + "▦" // 03 VARCHAR(10) 환자번호
- // + sOptrustflag + "▦" // 04 VARCHAR(1) 수술의뢰구분-정규(일반)E응급
- // + sOppatflag + "▦" // 05 CHARACTER(1) 수술환자구분
- // + sOpbfpatcnfmspec + "▦" // 06 "SYSIBM"."XML" 수술전환자확인내역
- // + sOppartdispyn + "▦" // 07 CHARACTER(1) 수술부위표시여부
- // + sTimeoutspec + "▦" // 08 "SYSIBM"."XML" TimeOut내역
- // + sAnstkindspec + "▦" // 09 "SYSIBM"."XML" 마취종류내역
- // + sOpposturespec + "▦" // 10 "SYSIBM"."XML" 수술체위내역
- // + sSkindinfspec + "▦" // 11 "SYSIBM"."XML" 피부소독제내역
- // + sAftopopnm + "▦" // 12 "SYSIBM"."XML" 수술후수술명
- // + sOpscale + "▦" // 13 CHARACTER(01) 수술스케일 L,M,S
- // + sPatinroomdt + "▦" // 14 CHARACTER(14) 환자입실시간
- // + sPatoutroomdt + "▦" // 15 CHARACTER(14) 환자퇴실시간
- // + sAnstsrtdt + "▦" // 16 CHARACTER(14) 마취시작시간
- // + sAnstenddt + "▦" // 17 CHARACTER(14) 마취종료시간
- // + sPerfidarvdt + "▦" // 18 CHARACTER(14) 집도의도착일시
- // + sPerfidoutdt + "▦" // 19 CHARACTER(14) 집도의퇴실일시
- // + sOpfromdt + "▦" // 20 CHARACTER(14) 수술시작일자
- // + sOptodt + "▦" // 21 CHARACTER(14) 수술종료일자
- // + sOpoutrmplcecd + "▦" // 22 VARCHAR(10) 수술후퇴실장소
- // + sOpoutrmplcenm + "▦" // 23 VARCHAR(50) 수술후퇴실장소기타
- // + sEsuspec + "▦" // 24 "SYSIBM"."XML" ESU내역
- // + sTourniquetspec + "▦" // 25 "SYSIBM"."XML" Tourniquet내역
- // + sWarmcoldregmspec + "▦" // 26 "SYSIBM"."XML" 온냉요법내역
- // + sPostureskinupdtspec + "▦" // 27 "SYSIBM"."XML" 체위에따른피부변화내역
- // + sCounspec + "▦" // 28 "SYSIBM"."XML" Count,내역
- // + sPackingspec + "▦" // 29 "SYSIBM"."XML" Packing내역
- // + sCertno + "▦" // 30 VARCHAR(17) 인증코드
- // + sOpcnfmdd + "▦" // 31 CHARACTER(8) 수술확정일자(의뢰상태일경우예정일자와동일)
- // + sFstrgstrid + "▦" // 32 CHARACTER(10) 최초등록자ID(시스템정보)
- // + sLastupdtid + "▦" // 33 CHARACTER(10) 최종수정자(시스템정보)
- // + sOpstatcd + "▦" // 34 진행상태
- // + sOpstatcdnew + "▦" // 35 진행상태
- // + sOphistno + "▦" // 36 예약번호에따른이력번호
- // + sRecstat + "▦" // 37 Record 상태정보 I:신규,U:수정
- // + sDrugUseYN + "▦" // 38 약품사용여부분
- // + sDrugCmt + "▦" // 39 약품비고
- // + sDrgeUseYN + "▦" // 40 배액관사용여부
- // + sDrgeCmt + "▦" // 41 배액관비고
- // + sEqmtUseYN + "▦" // 42 장비사용여부
- // + sEqmtCmt + "▦" // 43 장비비고
- // + sImplantUseYN + "▦" // 44 Implant 사용 여부
- // + sImplantCmt + "▦" // 45 Implant비고
- // + sTnsYN + "▦" // 46 수혈여부
- // + sSpcUseYN + "▦" // 47 검체사용여부
- // + sCareRecUseYN + "▦" // 48 간호기록사용여부
- // + pFlag + "▦" // 49 임시/인증 저장 여부(C:인증, T:임시)
- // + sCuthairflag + "▦" // 50 삭모구분
- // + sXrayflag + "▦" // 51 X-Ray 구분
- // + sXraydrugspec + "▦" // 52 X-Ray 조영제 사용 입력 text
- // + sDrsflag + "▦" // 53 Dressing 구분
- // + sDrsetc + "▦" // 54 Dressing 기타 입력 text
- // + sNocountdoctid + "▦" // 55 집도의 요청에 의한 계수확인 안함 집도의ID
- // + sIcuGoFlag + "▦" // 56 중환자실용 회복환자 관리 flag
- // + sExtcyn + "▦" // 57 적출물여부
- // + sSkinstatflag + "▦" // 58 피부상태구분
- // + sDelivyn + "▦" // 59 분만여부
- // + sPlatatransid + "▦" // 60 태반운반자
- // + sOtyn + "▦" // 61 장기이식여부
- // + sPatopinsndsmsid + "▦" // 62 환자입실smsID
- // + sPatopoutsndsmsid + "▦" // 63 환자퇴실SMSID
- // + sEscopeeqmtuseyn + "▦" // 64 내시경장비사용여부
- // + sInsuremark + "▦" // 65 보험팀전달사항
- // + sPrcporderid + "▦" // 66 처방의사ID
- // + sDeptremark + "▦" // 67 부서Remark
- // + sOproomremark + "▦" // 68 수술실Remark
- // + sOpcntlistremark + "▦" // 69 수술count리스트 Remark
- // + sOpNursRecTimeRemark + "▦" // 70 수술지연사유정보
- // + sSpcCmt + "▦" // 71 검체비고입력
- // + model.getValue("/root/main/MnphopcrData/MnphopcrList/opnoyn") + "▦" // 72 수술안함 여부
- // + sOutflag + "▦" // 73 퇴실저장여부
- // + model.getValue("/root/main/MnphopcrData/MnphopcrList/mainoprsrvno") + "▩"; // 74 MAINOPRSRVNO
- sMnphopcrData = "oprsrvno" + "▦" // 01 CHARACTER(10) 수술예약(의뢰)번호(년도+일련번호)
- + "instcd" + "▦" // 02 CHARACTER(3) 기관코드
- + "pid" + "▦" // 03 VARCHAR(10) 환자번호
- + "optrustflag" + "▦" // 04 VARCHAR(1) 수술의뢰구분-정규(일반)E응급
- + "oppatflag" + "▦" // 05 CHARACTER(1) 수술환자구분
- + "opbfpatcnfmspec" + "▦" // 06 "SYSIBM"."XML" 수술전환자확인내역
- + "oppartdispyn" + "▦" // 07 CHARACTER(1) 수술부위표시여부
- + "timeoutspec" + "▦" // 08 "SYSIBM"."XML" TimeOut내역
- + "anstkindspec" + "▦" // 09 "SYSIBM"."XML" 마취종류내역
- + "opposturespec" + "▦" // 10 "SYSIBM"."XML" 수술체위내역
- + "skindinfspec" + "▦" // 11 "SYSIBM"."XML" 피부소독제내역
- + "aftopopnm" + "▦" // 12 "SYSIBM"."XML" 수술후수술명
- + "opscale" + "▦" // 13 CHARACTER(01) 수술스케일 L,M,S
- + "patinroomdt" + "▦" // 14 CHARACTER(14) 환자입실시간
- + "patoutroomdt" + "▦" // 15 CHARACTER(14) 환자퇴실시간
- + "anstsrtdt" + "▦" // 16 CHARACTER(14) 마취시작시간
- + "anstenddt" + "▦" // 17 CHARACTER(14) 마취종료시간
- + "perfidarvdt" + "▦" // 18 CHARACTER(14) 집도의도착일시
- + "perfidoutdt" + "▦" // 19 CHARACTER(14) 집도의퇴실일시
- + "opfromdt" + "▦" // 20 CHARACTER(14) 수술시작일자
- + "optodt" + "▦" // 21 CHARACTER(14) 수술종료일자
- + "opoutrmplcecd" + "▦" // 22 VARCHAR(10) 수술후퇴실장소
- + "opoutrmplcenm" + "▦" // 23 VARCHAR(50) 수술후퇴실장소기타
- + "esuspec" + "▦" // 24 "SYSIBM"."XML" ESU내역
- + "tourniquetspec" + "▦" // 25 "SYSIBM"."XML" Tourniquet내역
- + "warmcoldregmspec" + "▦" // 26 "SYSIBM"."XML" 온냉요법내역
- + "postureskinupdtspec" + "▦" // 27 "SYSIBM"."XML" 체위에따른피부변화내역
- + "counspec" + "▦" // 28 "SYSIBM"."XML" Count,내역
- + "packingspec" + "▦" // 29 "SYSIBM"."XML" Packing내역
- + "certno" + "▦" // 30 VARCHAR(17) 인증코드
- + "opcnfmdd" + "▦" // 31 CHARACTER(8) 수술확정일자(의뢰상태일경우예정일자와동일)
- + "fstrgstrid" + "▦" // 32 CHARACTER(10) 최초등록자ID(시스템정보)
- + "lastupdtid" + "▦" // 33 CHARACTER(10) 최종수정자(시스템정보)
- + "opstatcd" + "▦" // 34 진행상태
- + "opstatcdnew" + "▦" // 35 진행상태
- + "ophistno" + "▦" // 36 예약번호에따른이력번호
- + "recstat" + "▦" // 37 Record 상태정보 I:신규,U:수정
- + "druguseyn" + "▦" // 38 약품사용여부
- + "drugcmt" + "▦" // 39 약품비고
- + "drgeuseyn" + "▦" // 40 배액관사용여부
- + "drgecmt" + "▦" // 41 배액관비고
- + "eqmtuseyn" + "▦" // 42 장비사용여부
- + "eqmtcmt" + "▦" // 43 장비비고
- + "implantuseyn" + "▦" // 44 Implant 사용 여부
- + "implantcmt" + "▦" // 45 Implant비고
- + "tnsyn" + "▦" // 46 수혈여부
- + "spcuseyn" + "▦" // 47 검체사용여부
- + "carerecuseyn" + "▦" // 48 간호기록사용여부
- + "certflag" + "▦" // 49 임시/인증 저장 여부(C:인증, T:임시)
- + "cuthairflag" + "▦" // 50 삭모구분
- + "xrayflag" + "▦" // 51 X-Ray 구분
- + "xraydrugspec" + "▦" // 52 X-Ray 조영제 사용 text
- + "drsflag" + "▦" // 53 Dressing 구분
- + "drsetc" + "▦" // 54 Dressing 기타 입력 text
- + "nocountdoctid" + "▦" // 55 집도의 요청에 이한 계수확인 안함 집도의ID
- + "icugoflag" + "▦" // 56 ICU 회복환자 관리용 회복실 입실구분
- + "extcyn" + "▦" // 57 적출물여부
- + "skinstatflag" + "▦" // 58 피부상태구분
- + "delivyn" + "▦" // 59 분만여부
- + "platatransid" + "▦" // 60 태반운반자
- + "otyn" + "▦" // 61 장기이식여부
- + "patopinsndsmsid" + "▦" // 62 환자입실smsID
- + "patopoutsndsmsid" + "▦" // 63 환자퇴실SMSID
- + "escopeeqmtuseyn" + "▦" // 64 내시경장비사용여부
- + "insuremark" + "▦" // 65 보험팀전달사항
- + "prcporderid" + "▦" // 66 처방의사ID
- + "deptremark" + "▦" // 67 부서Remark
- + "oproomremark" + "▦" // 68 수술실Remark
- + "opcntlistremark" + "▦" // 69 수술count리스트 Remark
- + "opnursrectimeremark" + "▦" // 70 수술지연사유정보
- + "spccmt" + "▦" // 71 검체비고입력
- + "opnoyn" + "▦" // 72 수술안함여부
- + "outflag" + "▦" // 73 퇴실저장여부
- + "mainoprsrvno" + "▦" // 74 MAINOPRSRVNO
- + "opdiscordspec" + "▦" // 75 불일치조치사항
- + "obrecyn" + "▦" // 76 관찰기록여부
- + "calmflag" + "▦" // 77 진정유무
- + "opcntlisttoexecyn" + "▩"; // 78 수술count리스트 Time Out 시행여부
- sMnphopcrData += sOprsrvno + "▦" // 01 CHARACTER(10) 수술예약(의뢰)번호(년도+일련번호)
- + sInstcd + "▦" // 02 CHARACTER(3) 기관코드
- + sPid + "▦" // 03 VARCHAR(10) 환자번호
- + sOptrustflag + "▦" // 04 VARCHAR(1) 수술의뢰구분-정규(일반)E응급
- + sOppatflag + "▦" // 05 CHARACTER(1) 수술환자구분
- + sOpbfpatcnfmspec + "▦" // 06 "SYSIBM"."XML" 수술전환자확인내역
- + sOppartdispyn + "▦" // 07 CHARACTER(1) 수술부위표시여부
- + sTimeoutspec + "▦" // 08 "SYSIBM"."XML" TimeOut내역
- + sAnstkindspec + "▦" // 09 "SYSIBM"."XML" 마취종류내역
- + sOpposturespec + "▦" // 10 "SYSIBM"."XML" 수술체위내역
- + sSkindinfspec + "▦" // 11 "SYSIBM"."XML" 피부소독제내역
- + sAftopopnm + "▦" // 12 "SYSIBM"."XML" 수술후수술명
- + sOpscale + "▦" // 13 CHARACTER(01) 수술스케일 L,M,S
- + sPatinroomdt + "▦" // 14 CHARACTER(14) 환자입실시간
- + sPatoutroomdt + "▦" // 15 CHARACTER(14) 환자퇴실시간
- + sAnstsrtdt + "▦" // 16 CHARACTER(14) 마취시작시간
- + sAnstenddt + "▦" // 17 CHARACTER(14) 마취종료시간
- + sPerfidarvdt + "▦" // 18 CHARACTER(14) 집도의도착일시
- + sPerfidoutdt + "▦" // 19 CHARACTER(14) 집도의퇴실일시
- + sOpfromdt + "▦" // 20 CHARACTER(14) 수술시작일자
- + sOptodt + "▦" // 21 CHARACTER(14) 수술종료일자
- + sOpoutrmplcecd + "▦" // 22 VARCHAR(10) 수술후퇴실장소
- + sOpoutrmplcenm + "▦" // 23 VARCHAR(50) 수술후퇴실장소기타
- + sEsuspec + "▦" // 24 "SYSIBM"."XML" ESU내역
- + sTourniquetspec + "▦" // 25 "SYSIBM"."XML" Tourniquet내역
- + sWarmcoldregmspec + "▦" // 26 "SYSIBM"."XML" 온냉요법내역
- + sPostureskinupdtspec + "▦" // 27 "SYSIBM"."XML" 체위에따른피부변화내역
- + sCounspec + "▦" // 28 "SYSIBM"."XML" Count,내역
- + sPackingspec + "▦" // 29 "SYSIBM"."XML" Packing내역
- + sCertno + "▦" // 30 VARCHAR(17) 인증코드
- + sOpcnfmdd + "▦" // 31 CHARACTER(8) 수술확정일자(의뢰상태일경우예정일자와동일)
- + sFstrgstrid + "▦" // 32 CHARACTER(10) 최초등록자ID(시스템정보)
- + sLastupdtid + "▦" // 33 CHARACTER(10) 최종수정자(시스템정보)
- + sOpstatcd + "▦" // 34 진행상태
- + sOpstatcdnew + "▦" // 35 진행상태
- + sOphistno + "▦" // 36 예약번호에따른이력번호
- + sRecstat + "▦" // 37 Record 상태정보 I:신규,U:수정
- + sDrugUseYN + "▦" // 38 약품사용여부분
- + sDrugCmt + "▦" // 39 약품비고
- + sDrgeUseYN + "▦" // 40 배액관사용여부
- + sDrgeCmt + "▦" // 41 배액관비고
- + sEqmtUseYN + "▦" // 42 장비사용여부
- + sEqmtCmt + "▦" // 43 장비비고
- + sImplantUseYN + "▦" // 44 Implant 사용 여부
- + sImplantCmt + "▦" // 45 Implant비고
- + sTnsYN + "▦" // 46 수혈여부
- + sSpcUseYN + "▦" // 47 검체사용여부
- + sCareRecUseYN + "▦" // 48 간호기록사용여부
- + pFlag + "▦" // 49 임시/인증 저장 여부(C:인증, T:임시)
- + sCuthairflag + "▦" // 50 삭모구분
- + sXrayflag + "▦" // 51 X-Ray 구분
- + sXraydrugspec + "▦" // 52 X-Ray 조영제 사용 입력 text
- + sDrsflag + "▦" // 53 Dressing 구분
- + sDrsetc + "▦" // 54 Dressing 기타 입력 text
- + sNocountdoctid + "▦" // 55 집도의 요청에 의한 계수확인 안함 집도의ID
- + sIcuGoFlag + "▦" // 56 중환자실용 회복환자 관리 flag
- + sExtcyn + "▦" // 57 적출물여부
- + sSkinstatflag + "▦" // 58 피부상태구분
- + sDelivyn + "▦" // 59 분만여부
- + sPlatatransid + "▦" // 60 태반운반자
- + sOtyn + "▦" // 61 장기이식여부
- + sPatopinsndsmsid + "▦" // 62 환자입실smsID
- + sPatopoutsndsmsid + "▦" // 63 환자퇴실SMSID
- + sEscopeeqmtuseyn + "▦" // 64 내시경장비사용여부
- + sInsuremark + "▦" // 65 보험팀전달사항
- + sPrcporderid + "▦" // 66 처방의사ID
- + sDeptremark + "▦" // 67 부서Remark
- + sOproomremark + "▦" // 68 수술실Remark
- + sOpcntlistremark + "▦" // 69 수술count리스트 Remark
- + sOpNursRecTimeRemark + "▦" // 70 수술지연사유정보
- + sSpcCmt + "▦" // 71 검체비고입력
- + model.getValue("/root/main/MnphopcrData/MnphopcrList/opnoyn") + "▦" // 72 수술안함 여부
- + sOutflag + "▦" // 73 퇴실저장여부
- + model.getValue("/root/main/MnphopcrData/MnphopcrList/mainoprsrvno") + "▦" // 74 MAINOPRSRVNO
- + opdiscordspec + "▦" // 75 "SYSIBM"."XML" 불일치시조치사항
- + sObRecyn + "▦" // 76 관찰기록여부
- + model.getValue("/root/main/MnphopcrData/MnphopcrList/calmflag") + "▦" // 77 진정유무
- + sOpcntlisttoexecyn + "▩" // 78 수술count리스트 Time Out 시행여부
- //----(20110512) 불일치조치사항 추가
- model.makeValue("/root/send/MnphopcrList", sMnphopcrData );
- if (pFlag != "Y") {
- fDetailDataConcatenate(); // 기타상세 기록정보 조합하기
- }
- }
- /* ------------------------------------------------- */
- /* desc : 기타상세 기록정보 조합하기 */
- /* -------------------------------------------------- */
- function fDetailDataConcatenate(){
- //ESU 자동 삭제 기능 추가
- var iRow = grd_esu.rows-grd_esu.fixedrows;
- for (var i = iRow; i > 0; i--){
- if ((model.getValue(xPathData+"/esuspec/esu/esulist["+ i +"]/mfrcut" ) == "" || model.getValue(xPathData+"/esuspec/esu/esulist["+ i +"]/mfrcut" ) == "0" ) &&
- (model.getValue(xPathData+"/esuspec/esu/esulist["+ i +"]/mfrcong" ) == "" || model.getValue(xPathData+"/esuspec/esu/esulist["+ i +"]/mfrcong" ) == "0" ) &&
- (model.getValue(xPathData+"/esuspec/esu/esulist["+ i +"]/bwatt" ) == "" || model.getValue(xPathData+"/esuspec/esu/esulist["+ i +"]/bwatt" ) == "0" ) &&
- model.getValue(xPathData+"/esuspec/esu/esulist["+ i +"]/imgpostview" ) == "" ){
- model.removeNodeset(xPathData+"/esuspec/esu/esulist["+ i +"]");
- }
- }
- model.makeValue("/root/send/druglist" , grd_druglist.getUpdateDataAll("i") ); // 약품정보
- //model.makeValue("/root/send/drgelist" , grd_inscath.getUpdateDataAll("i") ); // 삽관정보
- model.makeValue("/root/send/eqmtlist" , grd_opeqmtlist.getUpdateDataAll("i")); // 장비정보
- if (model.getValue("/root/main/operation/list/opcnfmdd") <= model.getValue("/root/specdd/chkdd") ) {
- model.makeValue("/root/send/specimenlist" , grd_spclist.getUpdateDataAll("i") ); // 검체정보
- } else {
- model.makeValue("/root/send/specimenlist" , grd_spclistnew.getUpdateDataAll("i") ); // 검체정보_new_2012.08.30_손성훈.
- }
- //model.makeValue("/root/send/organlist" , datagrid4.getUpdateData()); // 장기이식정보
- }
- /* ------------------------------------------------- */
- /* desc : 수술기록2 Count정보 저장하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fCountDataSave(pFlag){
- var CountMainPath = "/root/main/MnphopcoLists"; // Count Main Path
- var CountListPath = "/root/main/MnphopcoLists/mnphopcolist"; // Count List Path
- var sNode = instance1.selectSingleNode(CountMainPath);
- if (sNode == null) {
- return false;
- }
- //------------
- var DgrsData = "1 1 2 2 3 3 4 4"; // 차수(1:1차,2:2차,3:3차,4:END)
- var FlasData = "1 2 1 2 1 2 1 2"; // 1.소독간호사, 2.순회간호사
- var NursnmData = "nursnm11 nursnm12 nursnm21 nursnm22 nursnm31 nursnm32 nursnm41 nursnm42"; // 확인간호사명
- var NursidData = "nursid11 nursid12 nursid21 nursid22 nursid31 nursid32 nursid41 nursid42"; // 확인간호사ID
- var DeptcdData = "deptcd11 deptcd12 deptcd21 deptcd22 deptcd31 deptcd32 deptcd41 deptcd42"; // 부서코드
- var DeptnmData = "deptnm11 deptnm12 deptnm21 deptnm22 deptnm31 deptnm32 deptnm41 deptnm42"; // 부서명
- var CheckidData = "checkid11 checkid12 checkid21 checkid22 checkid31 checkid32 checkid41 checkid42"; // 확인간호사ID Check
- var Dgrs = DgrsData.split(" ");
- var Flas = FlasData.split(" ");
- var Nursnm = NursnmData.split(" ");
- var Nursid = NursidData.split(" ");
- var Deptcd = DeptcdData.split(" ");
- var Deptnm = DeptnmData.split(" ");
- var Checkid = CheckidData.split(" ");
- var sCheck = "N";
- var CocnCnt = 0;
- var OpcoCnt = 0;
- var OpcoStat = "" ;
- var CountNode = "" ;
- var eNurseData = ""; // 해당없음이 아닌 경우 확인 간호사 1,2,3 모두 들어갔는지 Check.
- var eNurseFlag = false;
- var MnphcocnData = fMnphcocnTitle(); // 수술기록의 계수정보 TITLE
- var MnphopcoData = fMnphopcoTitle(); // 수술기록_계수확인 간호사 정보 TITLE
- //--------(20101024) 경북대
- var discordaction = ""; //불일치 조치사항 추가
- var discordactionetc= ""; //불일치 조치사항 기타 입력 추가
- var discordactionnm = ""; //불일치 조치사항 추가
- //--------(20101024) 경북대
- var nIdx = sNode.childNodes.length;
- var sOprsrvno = model.getValue("/root/init/HideData/oprsrvno"); // 수술예약(의뢰)번호
- var sInstCd = model.getValue("/root/init/HideData/instcd" ); // 기관코드
- for (n = 1; n <= nIdx; n++) {
- sCheck = "N";
- CountNode = CountListPath + "["+ n + "]";
- sKindcd = model.getValue(CountNode+ "/kindcd" ); // 종류코드
- sNacls = model.getValue(CountNode+ "/nacls" ); // 종류해당유무
- sSameyn = model.getValue(CountNode+ "/samey" ); // 계수일치여부
- sRecstat = model.getValue(CountNode+ "/recflag" ); // Record 상태정보 I:신규,U:수정
- sTotQty = model.getValue(CountNode+ "/totqty" ); // Total수량
- //2009-02-09 ycd Count List 해당사유없음 체크시 상세 정보추가
- sNaclsinucd = model.getValue(CountNode+ "/naclsinucd" ); // 해당없음 사유코드
- SCodenm3 = model.getValue(CountNode+ "/codenm3" ); // 기록종류명
- sRecNo = model.getValue(CountNode+ "/recno" ); // Sheet 번호
- //---------(20101024) 경북대
- discordaction = model.getValue(CountNode+ "/discordaction" ); // 불일치사유
- discordactionetc = model.getValue(CountNode+ "/discordactionetc" ); // 불일치사유기타사유
- discordactionnm = model.getValue(CountNode+ "/discordactionnm" ); // 불일치사유
- //---------(20101024) 경북대
- sNacls = (sNacls == "true") ? "Y" : "N" ;
- sSameyn = (sSameyn == "true") ? "Y" : "N" ;
- sTotQty = (sTotQty == "" ) ? "0" : sTotQty;
- if(sRecstat == "-") continue;
- if (sNacls == "Y") {
- if (sRecstat != "I") {
- sCheck = "N";
- sRecstat = "U";
- }
- //2009-02-09 ycd Count List 해당사유없음 체크시 사유정보 입력 체크
- if (sNaclsinucd == "-"){
- messageBox(SCodenm3 + " 기록항목 해당없음에 대한 사유를 입력하십시오." , "I000");
- return false;
- }
- } else {
- if (sTotQty != "0" || sKindcd == "00" || n == 1) { // INSTRUMENT
- sCheck = "Y";
- } else {
- //2008-09-03 오후 1:27:06 taebum 협진관련 로직 추가
- //2009-02-19 ycd 임시저장시 Count List 확인자 입력 체크 제외(협진 체크는 제외)
- //if ((pFlag == "C") && ( (model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno"))
- // || (model.getValue(xPathData+"/mainoprsrvno") == "-") )) {
- if (pFlag == "C"){
- sCheck = "N";
- sRecstat = "D";
- //alert(model.getValue(CountNode + "/codenm3")+"의 수량을 입력하십시요 !!" );
- //2008-08-21 오후 2:06:12 Count List
- //messageBox("Count List 수량을 입력하십시오!" , "I000");
- //return false;
- }
- }
- }
- if (sCheck == "Y") {
- sInitqty = model.getValue(CountNode + "/initqty" ); // 03 최초수량
- sAddqty = model.getValue(CountNode + "/addqty" ); // 04 추가수량
- sPackqty = model.getValue(CountNode + "/packqty" ); // 05 Packing수량
- if (n == 1) {
- sInitqty = "0";
- sAddqty = "0";
- sPackqty = "0";
- }else{
- // 2009-02-27 count list 저장시 packing 수량, total 수량 비교
- if(((eval(sInitqty) + eval(sAddqty)) < eval(sPackqty)) && pFlag == "C"){
- //if(((eval(sInitqty) + eval(sAddqty)) < eval(sPackqty))){
- messageBox(SCodenm3+" 의 Total 수량과 Packing 수량을 확인하십시요." , "I000");
- return false;
- }
- }
- }
- //--(20101024) 경북대
- // MnphcocnData += sOprsrvno + "▦" // 00 수술예약(의뢰)번호
- // + model.getValue(CountNode + "/kindcd" ) + "▦" // 01 종류코드
- // + sInstCd + "▦" // 02 기관코드
- // + model.getValue(CountNode + "/initqty" ) + "▦" // 03 최초수량
- // + model.getValue(CountNode + "/addqty" ) + "▦" // 04 추가수량
- // + model.getValue(CountNode + "/packqty" ) + "▦" // 05 Packing수량
- // + instance1.selectSingleNode(CountNode+"/packspec").xml + "▦" // 06 Packing내역
- // + sNacls + "▦" // 07 종류해당유무
- // + sSameyn + "▦" // 08 계수일치여부
- // + model.getValue(CountNode + "/codenm1" ) + "▦" // 09 종류코드명1
- // + model.getValue(CountNode + "/codenm2" ) + "▦" // 10 종류코드명2
- // + model.getValue(CountNode + "/codenm3" ) + "▦" // 11 종류코드명3
- // + model.getValue(CountNode + "/refseq" ) + "▦" // 12 조회순서
- // + sRecstat + "▦" // 13 Record 상태정보 I:신규,U:수정
- // + sNaclsinucd + "▦" // 14 해당없음의 사유코드
- // + sRecNo + "▩"; // 15 Sheet 번호
- MnphcocnData += sOprsrvno + "▦" // 00 수술예약(의뢰)번호
- + model.getValue(CountNode + "/kindcd" ) + "▦" // 01 종류코드
- + sInstCd + "▦" // 02 기관코드
- + model.getValue(CountNode + "/initqty" ) + "▦" // 03 최초수량
- + model.getValue(CountNode + "/addqty" ) + "▦" // 04 추가수량
- + model.getValue(CountNode + "/packqty" ) + "▦" // 05 Packing수량
- + instance1.selectSingleNode(CountNode+"/packspec").xml + "▦" // 06 Packing내역
- + sNacls + "▦" // 07 종류해당유무
- + sSameyn + "▦" // 08 계수일치여부
- + model.getValue(CountNode + "/codenm1" ) + "▦" // 09 종류코드명1
- + model.getValue(CountNode + "/codenm2" ) + "▦" // 10 종류코드명2
- + model.getValue(CountNode + "/codenm3" ) + "▦" // 11 종류코드명3
- + model.getValue(CountNode + "/refseq" ) + "▦" // 12 조회순서
- + sRecstat + "▦" // 13 Record 상태정보 I:신규,U:수정
- + sNaclsinucd + "▦" // 14 해당없음의 사유코드
- + sRecNo + "▦" // 15 Sheet 번호
- + discordaction + "▦" // 16 불일치사유(추가)
- + discordactionetc + "▦" // 17 불일치사유기타입력(추가)
- + discordactionnm + "▩"; // 16 불일치사유(추가)
- //alert("막음"+discordaction + "/" + discordactionetc);
- //--(20101024) 경북대
- CocnCnt++;
- // 확인간호사 Check
- // I : 입력, U : 수정, D : 입력데이터 삭제, X : 삭제
- if (sRecstat == "D") {
- MnphopcoData += sOprsrvno + "▦" // 00 수술예약(의뢰)번호
- + sKindcd + "▦" // 01 종류(수술기본코드분류:01참조)
- + "" + "▦" // 02 차수(1:1차,2:2차,3:3차,4:END)
- + "X" + "▦" // 03 1.소독간호사, 2.순회간호사
- + "" + "▦" // 04 기관코드
- + "" + "▦" // 05 확인간호사ID
- + "" + "▦" // 06 확인간호사명
- + "" + "▦" // 07 부서코드
- + "" + "▦" // 08 부서명
- + "" + "▦" // 09 일치여부
- + "0" + "▦" // 10 PAD개수
- + "D" + "▦" // 11 Record 상태정보 I:신규,U:수정
- + sRecNo + "▩"; // 12 Sheet 번호
- } else if(sRecstat == "I" || sRecstat == "U") {
- for (var i=0; i < Nursnm.length; i++){
- //---------(20110512)
- //간호사 end 숨김
- if (Nursid[i] == "nursid41" || Nursid[i] == "nursid42" ) {
- sNursid = "-"; // 확인간호사ID
- sNursnm = "-"; // 확인간호사명
- sDeptcd = "-"; // 부서코드
- sDeptnm = "-"; // 부서명
- sCheckid = "-"; // 확인간호사ID Check
- } else {
- sNursid = model.getValue(CountNode + "/" + Nursid[i] ); // 확인간호사ID
- sNursnm = model.getValue(CountNode + "/" + Nursnm[i] ); // 확인간호사명
- sDeptcd = model.getValue(CountNode + "/" + Deptcd[i] ); // 부서코드
- sDeptnm = model.getValue(CountNode + "/" + Deptnm[i] ); // 부서명
- sCheckid = model.getValue(CountNode + "/" + Checkid[i]); // 확인간호사ID Check
- }
- //alert(i+"/"+sNursid+"/"+CountNode + "/" + Nursid[i]);
- //---------(20110512)
- if (sNursid != sCheckid) {
- if (sNursid == "" ) {
- OpcoStat = "D";
- sNursid = sCheckid;
- } else if (sCheckid == "" ) {
- OpcoStat = "I";
- } else {
- OpcoStat = "U";
- }
- MnphopcoData += sOprsrvno + "▦" // 00 수술예약(의뢰)번호
- + sKindcd + "▦" // 01 종류(수술기본코드분류:01참조)
- + Dgrs[i] + "▦" // 02 차수(1:1차,2:2차,3:3차,4:END)
- + Flas[i] + "▦" // 03 1.소독간호사, 2.순회간호사
- + sInstCd + "▦" // 04 기관코드
- + sNursid + "▦" // 05 확인간호사ID
- + sNursnm + "▦" // 06 확인간호사명
- + sDeptcd + "▦" // 07 부서코드
- + sDeptnm + "▦" // 08 부서명
- + sSameyn + "▦" // 09 일치여부
- + sTotQty + "▦" // 10 PAD개수
- + OpcoStat + "▦" // 11 Record 상태정보 I:신규,U:수정
- + sRecNo + "▩"; // 12 Sheet 번호
- OpcoCnt++;
- }
- if (sNacls != "Y") {
- if (sNursid == "") {
- //if ((pFlag == "C") && (model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno")) || (model.getValue(xPathData+"/mainoprsrvno") == "-")) {
- // 2009-02-19 ycd 임시저장시 Count List 확인자 입력 체크 제외(협진 체크는 제외)
- if( model.getValue("/root/main/MnphopcrData/MnphopcrList/opnoyn") != "Y" ) {
- if (pFlag == "C") {
- //alert(model.getValue(CountNode + "/codenm3")+"의 확인자을 입력하십시요 !!" );
- messageBox("Count List 확인자를 입력하십시오!" , "I000");
- return false;
- }
- }
- }
- }
- } // for (var i=0; i < Nursnm.length; i++){
- }
- } // if (sCheck == "Y") {
- //} // for (n = 1; n <= nIdx; n++) {
- model.makeValue("/root/send/MnphcocnList",MnphcocnData);
- model.makeValue("/root/send/MnphopcoList",MnphopcoData);
- // if (submit("TXMNP00302")){ // 수술기록2 Count정보 저장
- // messageBox("자료 저장이", "I002");
- // }
- }
- /* ------------------------------------------------- */
- /* EMR.MNPHCOCN 수술기록의 계수정보 TITLE */
- /* -------------------------------------------------- */
- function fMnphcocnTitle(){
- //---------(20101024) 경북대
- // var TitData = "oprsrvno" + "▦" // 00 수술예약(의뢰)번호 CHAR
- // + "kindcd" + "▦" // 01 종류코드 CHAR
- // + "instcd" + "▦" // 02 기관코드 CHAR
- // + "initqty" + "▦" // 03 최초수량 INT
- // + "addqty" + "▦" // 04 추가수량 INT
- // + "packqty" + "▦" // 05 Packing수량 INT
- // + "packspec" + "▦" // 06 Packing내역 XML
- // + "nacls" + "▦" // 07 종류해당유무 CHAR
- // + "sameyn" + "▦" // 08 계수일치여부 CHAR
- // + "kindnm1" + "▦" // 09 종류코드명1 VCHAR
- // + "kindnm2" + "▦" // 10 종류코드명2 VCHAR
- // + "kindnm3" + "▦" // 11 종류코드명3 VCHAR
- // + "refseq" + "▦" // 12 조회순서 INT
- // + "recstat" + "▦" // 13 Record 상태정보 I:신규,U:수정
- // + "naclsinucd" + "▦" // 14 해양유무사유코드
- // + "recno" + "▩"; // 15 기록번호
- var TitData = "oprsrvno" + "▦" // 00 수술예약(의뢰)번호 CHAR
- + "kindcd" + "▦" // 01 종류코드 CHAR
- + "instcd" + "▦" // 02 기관코드 CHAR
- + "initqty" + "▦" // 03 최초수량 INT
- + "addqty" + "▦" // 04 추가수량 INT
- + "packqty" + "▦" // 05 Packing수량 INT
- + "packspec" + "▦" // 06 Packing내역 XML
- + "nacls" + "▦" // 07 종류해당유무 CHAR
- + "sameyn" + "▦" // 08 계수일치여부 CHAR
- + "kindnm1" + "▦" // 09 종류코드명1 VCHAR
- + "kindnm2" + "▦" // 10 종류코드명2 VCHAR
- + "kindnm3" + "▦" // 11 종류코드명3 VCHAR
- + "refseq" + "▦" // 12 조회순서 INT
- + "recstat" + "▦" // 13 Record 상태정보 I:신규,U:수정
- + "naclsinucd" + "▦" // 14 해양유무사유코드
- + "recno" + "▦" // 15 기록번호
- + "discordaction" + "▦" // 16 불일치사유(추가)
- + "discordactionetc" + "▦" // 17 불일치사유기타입력(추가)
- + "discordactionnm" + "▩"; // 16 불일치사유(추가)
- //---------(20101024) 경북대
- return TitData;
- }
- /* ------------------------------------------------- */
- /* EMR.MNPHOPCO 수술기록_계수확인 간호사 정보 TITLE */
- /* -------------------------------------------------- */
- function fMnphopcoTitle(){
- var TitData = "oprsrvno" + "▦" // 00 수술예약(의뢰)번호 CHAR
- + "kindcd" + "▦" // 01 종류(수술기본코드분류:01참조) CHAR
- + "dgrs" + "▦" // 02 차수(1:1차,2:2차,3:3차,4:END) INT
- + "nursflag" + "▦" // 03 1.소독간호사, 2.순회간호사 CHAR
- + "instcd" + "▦" // 04 기관코드 CHAR
- + "cnfmnursid" + "▦" // 05 확인간호사ID CHAR
- + "cnfmnursnm" + "▦" // 06 확인간호사명 VCHAR
- + "deptcd" + "▦" // 07 부서코드 CHAR
- + "deptnm" + "▦" // 08 부서명 VCHAR
- + "sameyn" + "▦" // 09 일치여부 CHAR
- + "padcnt" + "▦" // 10 PAD개수 INT
- + "recstat" + "▦" // 11 Record 상태정보 I:신규,U:수정
- + "recno" + "▩"; // 12 기록번호
- return TitData;
- }
- /* ------------------------------------------------- */
- /* desc : Instance NodeCopy 하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function InstanceNodeCopy(pModel, tNode, sNode) {
- pModel.copyNode(tNode, sNode );
- }
- /* ------------------------------------------------- */
- /* desc : Instance NodeCopy 하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function XmlDataCheck() {
- var tNode = "";
- var sNode = "";
- var pNode = "";
- for (var i=0; i < XmlInstNm.length; i++){
- tNode = xPathData + "/" + XmlInstNm[i];
- pNode = instance1.selectSingleNode(tNode);
- if (pNode != null) {
- if (pNode.childNodes.length < 1) {
- sNode = xPathFormat + "/" + XmlInstNm[i];
- InstanceNodeCopy(model, tNode, sNode);
- }
- }
- }
- return;
- }
- /* ------------------------------------------------- */
- /* desc : 수술참가자 조합하기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fOpeuDataConcatenate(){
- //2008-08-07 오후 9:57:34 taebum valid check add
- var sOpeu1Cnt = getNodesetCnt(model, "/root/init/workinst/OpeuLists/opeulist1");
- var sTmpUid = "";
- var sTmpUid2 = "";
- var sTmp2Uid = "";
- var sTmp2Uid2 = "";
- var sTmp3Uid = "";
- var sTmp3Uid2 = "";
- if(sOpeu1Cnt > 0){
- for(var i = 1; i < sOpeu1Cnt; i++){
- if(sOpeu1Cnt > 1){
- sTmpUid = model.getValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid1");
- sTmp2Uid = model.getValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid2");
- sTmp3Uid = model.getValue("/root/init/workinst/OpeuLists/opeulist1["+i+"]/entrid3");
- for(var j = i+1 ; j <= sOpeu1Cnt; j++){
- sTmpUid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist1["+j+"]/entrid1");
- sTmp2Uid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist1["+j+"]/entrid2");
- sTmp3Uid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist1["+j+"]/entrid3");
- if(sTmpUid != "" && sTmpUid == sTmpUid2){
- messageBox("동일한 집도의 정보가 존재합니다. 확인하십시오.","I000");
- return false;
- }
- if(sTmp2Uid != "" && sTmp2Uid == sTmp2Uid2){
- messageBox("동일한 Assist 정보가 존재합니다. 확인하십시오.","I000");
- return false;
- }
- if(sTmp3Uid != "" && sTmp3Uid == sTmp3Uid2){
- messageBox("동일한 마취의 정보가 존재합니다. 확인하십시오.","I000");
- return false;
- }
- }
- }
- }
- }
- //2008-08-07 오후 11:55:53 taebum valid check add
- var sOpeu2Cnt = getNodesetCnt(model, "/root/init/workinst/OpeuLists/opeulist2");
- sTmpUid = "";
- sTmpUid2 = "";
- sTmp2Uid = "";
- sTmp2Uid2 = "";
- sTmp3Uid = "";
- sTmp3Uid2 = "";
- if(sOpeu2Cnt > 0){
- for(var i = 1; i < sOpeu2Cnt; i++){
- if(sOpeu2Cnt > 1){
- sTmpUid = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid1");
- sTmp2Uid = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid2");
- sTmp3Uid = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+i+"]/entrid3");
- if(i+1 < sOpeu2Cnt){
- sTmpUid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+(i+1)+"]/entrid1");
- sTmp2Uid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+(i+1)+"]/entrid2");
- sTmp3Uid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+(i+1)+"]/entrid3");
- if(sTmpUid != "" && sTmpUid == sTmpUid2){
- messageBox("동일한 소독간호사 정보가 연속 존재합니다. 확인하십시오.","I000");
- return false;
- }
- if(sTmp2Uid != "" && sTmp2Uid == sTmp2Uid2){
- messageBox("동일한 순환간호사 정보가 연속 존재합니다. 확인하십시오.","I000");
- return false;
- }
- if(sTmp3Uid != "" && sTmp3Uid == sTmp3Uid2){
- messageBox("동일한 마취간호사 정보가 연속 존재합니다. 확인하십시오.","I000");
- return false;
- }
- }
- /*
- for(var j = i+1 ; j <= sOpeu2Cnt; j++){
- sTmpUid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+j+"]/entrid1");
- sTmp2Uid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+j+"]/entrid2");
- sTmp3Uid2 = model.getValue("/root/init/workinst/OpeuLists/opeulist2["+j+"]/entrid3");
- if(sTmpUid != "" && sTmpUid == sTmpUid2){
- messageBox("동일한 소독간호사 정보가 존재합니다. 확인하십시오.","I000");
- return false;
- }
- if(sTmp2Uid != "" && sTmp2Uid == sTmp2Uid2){
- messageBox("동일한 순환간호사 정보가 존재합니다. 확인하십시오.","I000");
- return false;
- }
- if(sTmp3Uid != "" && sTmp3Uid == sTmp3Uid2){
- messageBox("동일한 마취간호사 정보가 존재합니다. 확인하십시오.","I000");
- return false;
- }
- }
- */
- }
- }
- }
- var ii = 1;
- var rValue = "";
- var sPatoutroomdt = model.getValue(xPathDispDT+"/patoutroomdd"); // 15 환자퇴실일자
- if (sPatoutroomdt == "" ) {
- sPatoutroomdt = getCurrentDate();
- }
- var sOutTime = model.getValue(xPathDispDT+"/patoutroomhh");
- if (sOutTime == "" ) {
- sOutTime = getCurrentTime().substr(0,6);
- }
- sOutTime = sOutTime.getRightPad(6,"0");
- sPatoutroomdt += sOutTime; // 15 환자퇴실시간
- sOutTime = sPatoutroomdt.substr(0,4) + "-"
- + sPatoutroomdt.substr(4,2) + "-"
- + sPatoutroomdt.substr(6,2) + " "
- + sPatoutroomdt.substr(8,2) + ":"
- + sPatoutroomdt.substr(10,2) + ":"
- + sPatoutroomdt.substr(12,2) ;
- // alert(sOutTime);
- var sMnphopeuData = "pid" + "▦" // 01 환자번호
- + "oprsrvno" + "▦" // 02 수술예약(의뢰)번호 (년도 + 일련번호)
- + "ophistno" + "▦" // 03 예약번호에 따른 이력번호
- + "entridflag" + "▦" // 04 참가자 ID구분
- + "entrid" + "▦" // 05 참가자ID
- + "entrdt" + "▦" // 06 참가시간
- + "entrnm" + "▦" // 07 참가자명
- + "deptcd" + "▦" // 08 부서코드
- + "deptnm" + "▦" // 09 부서명
- + "refseq" + "▦" // 10 조회순서
- + "outdt" + "▦" // 11 퇴실일시
- + "instcd" + "▦" // 12 기관코드
- + "fstrgstrid" + "▦" // 13 최초등록자ID
- + "lastupdtid" + "▦" // 14 최종수정자
- + "entrtm" + "▩"; // 15 입실시간
- sPid = model.getValue("/root/init/HideData/pid" );
- sOprsrvno = model.getValue("/root/init/HideData/oprsrvno");
- sOphistno = model.getValue("/root/init/HideData/ophistno");
- var sOpeuKey = sPid + "▦" // 환자번호
- + sOprsrvno + "▦" // 수술예약(의뢰)번호 (년도 + 일련번호)
- + sOphistno + "▦" ; // 예약번호에 따른 이력번호
- var sOpeuLast = model.getValue(xPathData+"/instcd")+ "▦" // 기관코드
- + "" + "▦" // 최초등록자ID(시스템정보)
- + "" + "" ; // 최종수정자(시스템정보)
- var iPath = "";
- var sEntrnmData = "entrnm1 entrnm2 entrnm3";
- var sEntridData = "entrid1 entrid2 entrid3";
- var sDeptcdData = "deptcd1 deptcd2 deptcd3";
- var sDeptnmData = "deptnm1 deptnm2 deptnm3";
- var sEntrTmData = "entrtm1 entrtm2 entrtm3";
- var sEntrnm = sEntrnmData.split(" ");
- var sEntrid = sEntridData.split(" ");
- var sDeptcd = sDeptcdData.split(" ");
- var sDeptnm = sDeptnmData.split(" ");
- var sEntrtm = sEntrTmData.split(" ");
- // D1: 집도의, D4: 보조의, D3: 마취의, N1: 소독간호사, N2: 순회간호사, N3: 마취간호사
- var OpeuFlags = "D1*D4*D3#N1*N2*N3";
- var OpeuFlag = OpeuFlags.split("#");
- for (var k=1; k < 3; k++){ // 1: grd_opeu1, 2:grd_opeu2
- wPath = (k == 1) ? OpeuGrid1 : OpeuGrid2;
- var oFlag = OpeuFlag[k-1].split("*");
- for (var j=0; j < sEntrid.length; j++){
- for (var i=1; i < 6; i++){ // Grid Row5
- iPath = wPath + "["+i+"]/";
- if ((model.getValue(iPath+sEntrnm[j]) != "") &&
- (model.getValue(iPath+sEntrid[j]) == "") ) {
- //alert(" , iPath : "+iPath + " , data : "+ iPath+sEntrnm[j]+" , "+ iPath+sEntrid[j] + ", j, : "+ j+ ", sEntrid[j] :"+sEntrid[j]);
- messageBox("수술 참가자를 다시","C001");
- return false;
- }
- //
- if (model.getValue(iPath+sEntrid[j]) != "") {
- rValue += sOpeuKey;
- rValue += oFlag[j] + "▦" // 04 참가자 ID구분
- rValue += model.getValue(iPath+sEntrid[j] ) + "▦" // 05 참가자ID
- rValue += "12" + "▦" // 06 참가시간
- rValue += model.getValue(iPath+sEntrnm[j] ) + "▦" // 07 참가자명
- rValue += model.getValue(iPath+sDeptcd[j] ) + "▦" // 08 부서코드
- rValue += model.getValue(iPath+sDeptnm[j] ) + "▦" // 09 부서명
- rValue += ii + "▦" // 10 조회순서
- rValue += sOutTime + "▦" // 11 퇴실일시
- rValue += sOpeuLast + "▦" // 12
- rValue += model.getValue(iPath+sEntrtm[j] ) + "▩"; // 15 입실시간정보
- ii++;
- }
- }
- }
- }
- sMnphopeuData += rValue;
- model.makeValue("/root/send/MnphopeuList",sMnphopeuData);
- }
- /* ------------------------------------------------- */
- /* desc : 수술참가자 보여주기 */
- /* param : pModel - Model */
- /* tNode - Target Node */
- /* sNode - Source Node */
- /* return : */
- /* -------------------------------------------------- */
- function fOpeuDataDisplay(){
- var ii = 1;
- var jj = 1;
- var kk = 1;
- var c = 0;
- var c1 = 0;
- var c2 = 0;
- var c3 = 0;
- var c4 = 0;
- var c5 = 0;
- var c6 = 0;
- var sNode = "";
- var OpeuList = model.getValue(xPathData+"/opeudata");
- // if (OpeuList == "") {
- // OpeuList = "D1▦D11234▦200705152222▦집도의▦000001▦집도의부서▦1▦2007-05-15 22:22▩" ;
- // OpeuList += "D2▦D21234▦200705152222▦전공의▦000002▦전공의부서▦2▦2007-05-15 22:22▩" ;
- // OpeuList += "D3▦D31234▦200705152222▦마취의▦000003▦마취의부서▦3▦2007-05-15 22:22▩" ;
- // OpeuList += "D4▦D41234▦200705152222▦보조의▦000004▦보조의부서▦4▦2007-05-15 22:22▩" ;
- // OpeuList += "N1▦N11234▦200705152222▦소독간호사▦000005▦소독간부서▦5▦2007-05-15 22:22▩" ;
- // OpeuList += "N2▦N21234▦200705152222▦순회간호사▦000006▦순회간부서▦6▦2007-05-15 22:22▩" ;
- // OpeuList += "N3▦N31234▦200705152222▦마취간호사▦000007▦마취간부서▦7▦2007-05-15 22:22▩" ;
- // OpeuList += "N4▦N41234▦200705152222▦보조간호사▦000008▦보조간부서▦8▦2007-05-15 22:22" ;
- // }
- // OpeuList += "D1▦D11234▦200705152222▦집도의▦000001▦집도의부서▦1▦2007-05-15 22:22▩" ;
- // OpeuList += "D2▦D21234▦200705152222▦전공의▦000002▦전공의부서▦2▦2007-05-15 22:22▩" ;
- // OpeuList += "D3▦D31234▦200705152222▦마취의▦000003▦마취의부서▦3▦2007-05-15 22:22▩" ;
- // OpeuList += "D4▦D41234▦200705152222▦보조의▦000004▦보조의부서▦4▦2007-05-15 22:22▩" ;
- // OpeuList += "N1▦N11234▦200705152222▦소독간호사▦000005▦소독간부서▦5▦2007-05-15 22:22▩" ;
- // OpeuList += "N2▦N21234▦200705152222▦순회간호사▦000006▦순회간부서▦6▦2007-05-15 22:22▩" ;
- // OpeuList += "N3▦N31234▦200705152222▦마취간호사▦000007▦마취간부서▦7▦2007-05-15 22:22▩" ;
- // OpeuList += "N4▦N41234▦200705152222▦보조간호사▦000008▦보조간부서▦8▦2007-05-15 22:22" ;
- //
- // OpeuList += "D1▦98030869▦12 ▦김병로▦77200 ▦외래식당 ▦1▦20070730171724000▩" ;
- // OpeuList += "D3▦39087 ▦12 ▦김병국▦11300 ▦이비인후과 ▦3▦20070730171724000▩" ;
- // OpeuList += "D4▦92010036▦12 ▦어용성▦73411 ▦원무행정Unit ▦2▦20070730171724000▩" ;
- // OpeuList += "N1▦95010019▦12 ▦이훈구▦77200 ▦정보지원팀 ▦4▦20070730171724000▩" ;
- // OpeuList += "N2▦84030289▦12 ▦최영숙▦30786 ▦외래Unit ▦5▦20070730171724000▩" ;
- // OpeuList += "N3▦94030533▦12 ▦박현숙▦50131 ▦간호행정교육팀▦6▦20070730171724000▩" ;
- var OpeuDataRec = OpeuList.split("▩");
- // 기존자료 삭제
- // model.removeNodeset(OpeuPathR);
- model.removenode(OpeuPathR);
- model.makeNode(OpeuPathR);
- var wOpeuGrid = "";
- for (var i=0; i < OpeuDataRec.length; i++){
- var OpeuData = OpeuDataRec[i].split("▦");
- for (var j=0; j < OpeuColumn.length; j++){
- model.setValue(OpeuPathD+"/"+OpeuColumn[j], OpeuData[j]);
- }
- model.duplicate(OpeuPathR, OpeuPathD);
- r = 0;
- c = 0;
- switch(OpeuData[0]){
- case "D1" : // 집도의
- c1++;
- r = c1;
- c = 1 ;
- wOpeuGrid = OpeuGrid1;
- break;
- case "D2" : // 전공의
- c2++;
- r = c2;
- c = 2 ;
- wOpeuGrid = OpeuGrid1;
- break;
- case "D3" : // 마취의
- c3++;
- r = c3;
- c = 3 ;
- wOpeuGrid = OpeuGrid1;
- break;
- case "D4" : // 보조의(Assist)
- c2++;
- r = c2;
- c = 2 ;
- wOpeuGrid = OpeuGrid1;
- break;
- case "N1" : // 소독간호사
- c4++;
- r = c4;
- c = 1 ;
- wOpeuGrid = OpeuGrid2;
- break;
- case "N2" : // 순회간호사
- c5++;
- r = c5;
- c = 2 ;
- wOpeuGrid = OpeuGrid2;
- break;
- case "N3" : // 마취간호사
- c6++;
- r = c6;
- c = 3 ;
- wOpeuGrid = OpeuGrid2;
- }
- if (r > 0 && r < 6) {
- if (c > 0 && c < 4) {
- if( OpeuData[0] == "D1" && ( model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno") ) ){
- }else{
- if( OpeuData[0] == "D1" || OpeuData[0] == "D3" || OpeuData[0] == "N1" || OpeuData[0] == "N2"|| OpeuData[0] == "N3" ){
- model.setValue(wOpeuGrid+"["+r+"]/entrid"+c+"tmp", OpeuData[1].replace(/(^\s*)|(\s*$)/g, ""));
- }
- model.setValue(wOpeuGrid+"["+r+"]/entrid"+c, OpeuData[1].replace(/(^\s*)|(\s*$)/g, ""));
- model.setValue(wOpeuGrid+"["+r+"]/entrnm"+c, OpeuData[3].replace(/(^\s*)|(\s*$)/g, ""));
- model.setValue(wOpeuGrid+"["+r+"]/deptcd"+c, OpeuData[4].replace(/(^\s*)|(\s*$)/g, ""));
- model.setValue(wOpeuGrid+"["+r+"]/deptnm"+c, OpeuData[5].replace(/(^\s*)|(\s*$)/g, ""));
- model.setValue(wOpeuGrid+"["+r+"]/entrtm"+c, OpeuData[8].replace(/(^\s*)|(\s*$)/g, ""));
- }
- }
- }
- }
- if( model.getValue(xPathData+"/perfdrid" ) != "" && model.getValue(OpeuGrid1+"["+1+"]/entrid1")== "" ){
- model.setValue(OpeuGrid1+"["+1+"]/entrid1tmp" , model.getValue(xPathData+"/perfdrid" ));
- model.setValue(OpeuGrid1+"["+1+"]/entrid1" , model.getValue(xPathData+"/perfdrid" ));
- model.setValue(OpeuGrid1+"["+1+"]/entrnm1" , model.getValue(xPathData+"/perfdridnm" ));
- model.setValue(OpeuGrid1+"["+1+"]/deptcd1" , model.getValue(xPathData+"/perfdeptcd" ));
- model.setValue(OpeuGrid1+"["+1+"]/deptnm1" , model.getValue(xPathData+"/depthngnm" ));
- if(model.getValue(OpeuGrid1+"["+1+"]/entrtm1") == ""){
- model.setValue(OpeuGrid1+"["+1+"]/entrtm1" , inp_perfidarvhh.value );
- }else{
- model.setValue(OpeuGrid1+"["+1+"]/entrtm1" , model.getValue(xPathData+"/entrtm1" ));
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.03.16
- * @by : 최학록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInit(){
- var Cnt = 6;
- var ItemCode = "ITM013";
- if (checkOpener()) {
- ItemCode = model.getValue("/root/init/hidden/refinfo/ItemCode");
- }
- grd_StatList2.colWidth(1) = 32 ;
- grd_StatList2.colWidth(2) = 272;
- grd_StatList2.colWidth(3) = 0 ;
- grd_StatList2.attribute("visibility") = "hidden";
- // txt_ItemOther.disabled = false;
- txt_ItemOther.attribute("visibility") = "visible";
- if (ItemCode == "ITM008") { // 알러지여부
- Cnt = 1;
- } else if (ItemCode == "ITM009") { // 수술전 검사
- Cnt = 2;
- txt_ItemOther.attribute("visibility") = "hidden";
- grd_StatList2.attribute("visibility") = "visible";
- } else if (ItemCode == "ITM012") { //수술부위 피부준비
- Cnt = 3;
- txt_ItemOther.attribute("visibility") = "hidden";
- grd_StatList2.attribute("visibility") = "visible";
- } else if (ItemCode == "ITM013") { // 수술전투약
- Cnt = 4;
- } else if (ItemCode == "ITM017") { // 전염성 질환
- Cnt = 5;
- } else if (ItemCode == "ITM018") { // 혈액준비사항
- Cnt = 6;
- grd_StatList2.colWidth(2) = 136;
- grd_StatList2.colWidth(3) = 136;
- txt_ItemOther.attribute("visibility") = "hidden";
- grd_StatList2.attribute("visibility") = "visible";
- }
- model.copyNode(xPathItem , xPathItemTemp+"["+Cnt+"]"); // 환자 수술전 처치 및 간호상태 확인 사항
- grp_biz.refresh();
- }
- /**
- * @group :
- * @ver : 2007.03.16
- * @by : 최학록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 항목 보내기
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSendItem(){
- var Itempath = "";
- var SendData = "";
- var sRowCnt = grd_StatList2.rows - grd_StatList2.fixedrows;
- var iRow = 0;
- for (var i=1; i<= sRowCnt; i++){
- if (model.getValue(xPathItemList+"["+i+"]/ItmCheck") == "true"){
- iRow++;
- if (iRow > 1) {
- SendData += ",";
- }
- SendData += model.getValue(xPathItemList+"["+i+"]/ItmName1");
- }
- }
- if (model.getValue(xPathItem+"/ItemOther") != ""){
- SendData += ",";
- SendData += model.getValue(xPathItem+"/ItemOther");
- }
- opener.javascript.setParameter("SendData", SendData);
- // model.makeValue("/root/init/hidden/refinfo/ItemInfo",SendData);
- //
- // if (checkOpener()){
- // model.copyNode(opener.root.HideData.recinfo, root.hidden.refinfo);
- // } else{
- // alert("상위화면이 변경되어 데이터를 전달할 수 없습니다.");
- // }
- // alert(SendData);
- model.close();
- }
- /**
- * @group :
- * @ver : 2007.03.16
- * @by : 최학록
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearch(){
- var sTerm = model.getValue(xRefPath+"/terminfo");
- model.removenode("/root/send");
- model.makeValue("/root/send/attrcnts",model.getValue(xRefPath+"/terminfo"));
- submit("TRMNR01501");
- }
- var GroupPathData = "/root/main/MnphopcrData/MnphopcrList/esuspec/esu" + "*" // 0
- + "/root/main/MnphopcrData/MnphopcrList/tourniquetspec/tourniquet" + "*" // 1
- + "/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/warmcoldregm/urinary" + "*" // 2
- + "/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/warmcoldregm/ltube" + "*" // 3
- + "/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/warmcoldregm/subclavian" + "*" // 4
- + "/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/postureskinupdt/skinpartafter" + "*" // 5
- + "/root/main/MnphopcrData/MnphopcrList/postureskinupdtspec/postureskinupdt/skinpartbefore" // 6
- var GroupPath = GroupPathData.split("*");
- /* ------------------------------------------------- */
- /* desc : 선택 NODE 하위의 내용을 CLEAR한다. */
- /* return : */
- /* -------------------------------------------------- */
- function fClearGroup(pGroup, pIDX){
- fClearChildNode(GroupPath[pIDX]);
- pGroup.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : 선택 NODE 하위의 내용을 CLEAR한다. */
- /* return : */
- /* -------------------------------------------------- */
- function fClearChildNode(pNode){
- xNode = instance1.selectSingleNode(pNode);
- if (xNode == null) return;
- nLen = xNode.childNodes.length;
- for (var i=0;i<nLen; i++){
- xNode.childNodes(i).text = '';
- }
- }
- /* ------------------------------------------------- */
- /* desc : CheckBox의 값 Check */
- /* param : pCheckData : Check Box의 값 */
- /* pComp : 비교대상 값 */
- /* return : true, false */
- /* -------------------------------------------------- */
- function fCheckBoxValueCheck(pCheckData, pComp){
- return getData2ArrayCheck(pCheckData, " ", pComp);
- }
- /* ------------------------------------------------- */
- /* group : EMR 간호 */
- /* ver : 2007.05.03 */
- /* by : 최학록 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : GRID 한줄 추가 */
- /* param : pGridNm : DataGrid Name */
- /* pLine : DataGrid Row */
- /* return : */
- /* --------------------------------------------------*/
- function fAddItem(pGridNm,pLine){
- if (pLine == '') {
- pGridNm.addItem();
- }
- else {
- pGridNm.addItem(pLine, "after");
- }
- }
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : GRID 한줄 삭제 */
- /* param : pGridNm : DataGrid Name */
- /* pLine : DataGrid Row */
- /* return : */
- /* --------------------------------------------------*/
- function fDeleteItem(pGridNm,pLine){
- if (pLine == '') {
- pGridNm.removeItem();
- }
- else {
- pGridNm.deleteItem(pLine);
- }
- }
- //참여자 정보 Local Data 찾기
- function fFindNurseData(pRow, pCol){
- var iRowCnt = 0;
- var sSuSulNurXpath = "/root/init/HideData/timeOutAddInfo/opnurlist";
- var sAnstNurXpath = "/root/init/HideData/timeOutAddInfo/anstnurlist";
- var sSearchXpath = "";
- var sUsernm = grd_opeu2.valueMatrix(pRow, pCol);
- var sUserid = "";
- var sTempUsernm = "";
- var sTempDeptcd = "";
- var sTempDeptnm = "";
- var iSameCnt = 0;
- if(pCol == 2 || pCol == 4){
- sSearchXpath = sSuSulNurXpath;
- }else if(pCol == 6){
- sSearchXpath = sAnstNurXpath;
- }
- var wCol = pCol / 2; "deptcd"+wCol, "deptnm"+wCol
- iRowCnt = getNodesetCnt(model, sSearchXpath);
- for(var i= 1; i<= iRowCnt; i++){
- sTempUsernm = model.getValue(sSearchXpath+"["+i+"]/usernm");
- if(sUsernm == sTempUsernm){
- sUsernm = sTempUsernm;
- sUserid = model.getValue(sSearchXpath+"["+i+"]/userid");
- sTempDeptcd = model.getValue(sSearchXpath+"["+i+"]/posdeptcd");
- sTempDeptnm = model.getValue(sSearchXpath+"["+i+"]/posdeptnm");
- iSameCnt++;
- }
- }
- if(iSameCnt == 1){
- grd_opeu2.valueMatrix(pRow, pCol) = sUsernm;
- grd_opeu2.valueMatrix(pRow, pCol-1) = sUserid;
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptcd"+wCol, sTempDeptcd);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptnm"+wCol, sTempDeptnm);
- grd_opeu2.refresh();
- return true;
- }
- return false;
- }
- //========================================
- // 사용자 정보, 부서정보 copy
- // 2008-08-07 오후 9:29:00 taebum
- //========================================
- function fMakeUserInfo(pCls, pRow, pCol){
- var sTmpUsernm = "";
- var sTmpDeptnm = "";
- var sTmpDeptcd = "";
- var sTmpUserid = "";
- if(pCls == "1"){ // Doct info
- sTmpUserid = grd_opeu1.valueMatrix(pRow, pCol);
- sTmpUsernm = grd_opeu1.labelMatrix(pRow, pCol);
- if(sTmpUsernm == " "){
- sTmpUsernm = "";
- }
- if(pCol == grd_opeu1.colRef("entrid1") || pCol == grd_opeu1.colRef("entrid3")){
- if(pCol == grd_opeu1.colRef("entrid1")){
- sTmpDeptcd = model.getValue("/root/init/HideData/timeOutAddInfo/opstaffdoctlist[userid='"+sTmpUserid+"']/posdeptcd");
- sTmpDeptnm = model.getValue("/root/init/HideData/timeOutAddInfo/opstaffdoctlist[userid='"+sTmpUserid+"']/posdeptnm");
- }else{
- sTmpDeptcd = model.getValue("/root/init/HideData/timeOutAddInfo/anstdoclist[userid='"+sTmpUserid+"']/posdeptcd");
- sTmpDeptnm = model.getValue("/root/init/HideData/timeOutAddInfo/anstdoclist[userid='"+sTmpUserid+"']/posdeptnm");
- }
- if(pCol == grd_opeu1.colRef("entrid1")){
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/entrid1tmp", sTmpUserid);
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/entrnm1", sTmpUsernm);
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/deptcd1", sTmpDeptcd);
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/deptnm1", sTmpDeptnm);
- }else{
- //if(sTmpDeptcd != "" && sTmpDeptnm != ""){
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/entrid3tmp", sTmpUserid);
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/entrnm3", sTmpUsernm);
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/deptcd3", sTmpDeptcd);
- model.setValue("/root/init/workinst/OpeuLists/opeulist1["+pRow+"]/deptnm3", sTmpDeptnm);
- //}
- }
- grd_opeu1.refresh();
- }
- }else if(pCls == "2"){ // nurse info
- sTmpUserid = grd_opeu2.valueMatrix(pRow, pCol);
- sTmpUsernm = grd_opeu2.labelMatrix(pRow, pCol);
- if(sTmpUsernm == " "){
- sTmpUsernm = "";
- }
- if(pCol == grd_opeu2.colRef("entrid1") || pCol == grd_opeu2.colRef("entrid2") || pCol == grd_opeu2.colRef("entrid3")){
- if(pCol == grd_opeu2.colRef("entrid1") || pCol == grd_opeu2.colRef("entrid2")){
- sTmpDeptcd = model.getValue("/root/init/HideData/timeOutAddInfo/opnurlist[userid='"+sTmpUserid+"']/posdeptcd");
- sTmpDeptnm = model.getValue("/root/init/HideData/timeOutAddInfo/opnurlist[userid='"+sTmpUserid+"']/posdeptnm");
- }else if(pCol == grd_opeu2.colRef("entrid3")){
- sTmpDeptcd = model.getValue("/root/init/HideData/timeOutAddInfo/anstnurlist[userid='"+sTmpUserid+"']/posdeptcd");
- sTmpDeptnm = model.getValue("/root/init/HideData/timeOutAddInfo/anstnurlist[userid='"+sTmpUserid+"']/posdeptnm");
- }
- //if(sTmpDeptcd != "" && sTmpDeptnm != ""){
- if(pCol == grd_opeu2.colRef("entrid1")){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/entrid1tmp", sTmpUserid);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/entrnm1", sTmpUsernm);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptcd1", sTmpDeptcd);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptnm1", sTmpDeptnm);
- }else if(pCol == grd_opeu2.colRef("entrid2")){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/entrid2tmp", sTmpUserid);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/entrnm2", sTmpUsernm);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptcd2", sTmpDeptcd);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptnm2", sTmpDeptnm);
- }else if(pCol == grd_opeu2.colRef("entrid3")){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/entrid3tmp", sTmpUserid);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/entrnm3", sTmpUsernm);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptcd3", sTmpDeptcd);
- model.setValue("/root/init/workinst/OpeuLists/opeulist2["+pRow+"]/deptnm3", sTmpDeptnm);
- }
- grd_opeu2.refresh();
- //}
- }
- // 2009-02-12 ycd 검체 취급자 정보 선택 변경 input -> combo
- //}else if(pCls == "3" && pCol == grd_spclist.colRef("chargerid")){
- // 2009-02-19 ycd 'chargerid' 필드가 두개여서 필드값 세팅
- }else if(pCls == "3" && pCol == 4){
- sTmpUserid = grd_spclist.valueMatrix(pRow, pCol);
- sTmpUsernm = grd_spclist.labelMatrix(pRow, pCol);
- if(sTmpUsernm == ""){
- sTmpUsernm = "";
- }
- model.setValue("/root/main/SheetData3/SpecimenLists/specimenlist["+pRow+"]/chargerid", sTmpUserid);
- model.setValue("/root/main/SheetData3/SpecimenLists/specimenlist["+pRow+"]/chargernm", sTmpUsernm);
- model.setValue("/root/main/SheetData3/SpecimenLists/specimenlist["+pRow+"]/oprsrvno" , model.getValue("/root/main/operation/list/oprsrvno"));
- grd_spclist.refresh();
- //---------------(20101015) 경북대
- //검체정보에 보낸곳추가
- }else if(pCls == "3" && pCol == grd_spclist.colRef("deviposi")){
- sTmpUserid = grd_spclist.valueMatrix(pRow, pCol);
- sTmpUsernm = grd_spclist.labelMatrix(pRow, pCol);
- if(sTmpUsernm == ""){
- sTmpUsernm = "";
- }
- model.setValue("/root/main/SheetData3/SpecimenLists/specimenlist["+pRow+"]/deviposinm", sTmpUsernm);
- model.setValue("/root/main/SheetData3/SpecimenLists/specimenlist["+pRow+"]/oprsrvno" , model.getValue("/root/main/operation/list/oprsrvno"));
- grd_spclist.refresh();
- }
- //---------------(20101015) 경북대
- }
- // --------------------------------------------------
- // 참여자 정보가져오기
- // 2008-08-07 오후 11:17:06 Grid Button 및 input을 combo 로 변경 작업 taebum
- // --------------------------------------------------
- function fOpeuSelect(pCls, pRow, pCol){
- if(pCls == "1" &&(pCol == "2" || pCol == "9")){
- fMakeUserInfo(pCls, pRow, pCol);
- return;
- }else if(pCls == "2"){
- fMakeUserInfo(pCls, pRow, pCol);
- return;
- }else if(pCls == "3"){
- fMakeUserInfo(pCls, pRow, pCol);
- return;
- }
- //2008-08-07 오후 11:12:08 pCls == "2"는 로직을 타지 않음.
- /*
- //참여 간호사 정보 입력시 3자리 Full Name 입력하였을 경우
- if(pCls == "2"){
- if(fFindNurseData(pRow, pCol)){
- return;
- }
- }
- */
- var sData = "011*" // 0 집도의
- + "011*" // 1 Assist
- + "012*" // 2 마취의
- + "015*" // 3 소독간호사
- + "015*" // 4 순회간호사
- + "017" ; // 5 마취간호사
- var tNode = sData.split("*");
- var rPath = (pCls == "1") ? OpeuGrid1 + "["+ pRow + "]/" : OpeuGrid2 + "["+ pRow + "]/"
- var wCol = Math.round(pCol / 3); //2008-09-04 오후 9:58:24 taebum 컬럼 추가로 2로 나누는것을 2.5로 변경
- var rOpeu = model.getValue(rPath+"entrnm"+ wCol).replace(/(^\s*)|(\s*$)/g, "");
- model.setValue(rPath+"entrid"+wCol, "");
- model.setValue(rPath+"deptcd"+wCol, "");
- model.setValue(rPath+"deptnm"+wCol, "");
- var sOpeuGrid = eval("grd_opeu"+pCls); // grd_opeu1,2
- if (rOpeu == "") {
- sOpeuGrid.cellStyle("color", pRow, pCol, pRow, pCol) = "";
- sOpeuGrid.refresh();
- return;
- }
- var wNode = (pCls == "1") ? tNode[wCol-1] : tNode[wCol+2];
- var sSearchdd = model.getValue("/root/main/operation/list/opcnfmdd");
- //2008-07-25 오후 1:53:13 특정일자에 근무했던 정보를 가져오도록 수정
- fUserEnter(rPath,"entrid"+wCol, "entrnm"+wCol ,"deptcd"+wCol, "deptnm"+wCol, rOpeu, sOpeuGrid, "all", wNode, sSearchdd);
- //2008-06-23 오후 5:24:58 taebum 정보가 없을 경우에는 빈칸으로 들어가서 edit 모드로 변경함.
- if (model.getValue(rPath+"entrid"+wCol) =="") {
- //sOpeuGrid.cellStyle("color", pRow, pCol, pRow, pCol) = "#D22D2D";
- sOpeuGrid.valueMatrix(pRow, pCol) = "";
- sOpeuGrid.refresh();
- sOpeuGrid.editCell();
- } else {
- sOpeuGrid.cellStyle("color", pRow, pCol, pRow, pCol) = "";
- }
- }
- // --------------------------------------------------
- // Counter 정보가져오기
- // --------------------------------------------------
- function fCountSelect(pRow, pCol){
- if (pRow < 2) {
- return;
- }
- var rPath = CountPath + "["+ (pRow - 1) + "]"
- if (pCol > grd_count.colRef("packqty") && pCol < grd_count.colRef("samey") ) { // Counter 사원 Check
- sCol = pCol - grd_count.colRef("nursnm11");
- sData = "nursnm11 nursnm12 nursnm21 nursnm22 nursnm31 nursnm32 nursnm41 nursnm42 "
- + "nursid11 nursid12 nursid21 nursid22 nursid31 nursid32 nursid41 nursid42 "
- + "deptcd11 deptcd12 deptcd21 deptcd22 deptcd31 deptcd32 deptcd41 deptcd42 "
- + "deptnm11 deptnm12 deptnm21 deptnm22 deptnm31 deptnm32 deptnm41 deptnm42 ";
- sColumn = sData.split(" ");
- var nursnm = "/" + sColumn[sCol];
- var nursid = "/" + sColumn[sCol+(8*1)];
- var deptcd = "/" + sColumn[sCol+(8*2)];
- var deptnm = "/" + sColumn[sCol+(8*3)];
- model.setValue(rPath+nursid, "");
- model.setValue(rPath+deptcd, "");
- model.setValue(rPath+deptnm, "");
- var rName = model.getValue(rPath+nursnm);
- if (rName == "") {
- grd_count.cellStyle("color", pRow, pCol, pRow, pCol) = "";
- return;
- }
- //2008-07-27 오후 2:04:30 taebum 수술확정일자 기준의 사용자 정보를 조회하도록 수정
- var sSearchdd = model.getValue("/root/main/operation/list/opcnfmdd");
- fUserEnter(rPath, nursid , nursnm, deptcd, deptnm, rName, grd_count, "userid", "015", sSearchdd);
- if (model.getValue(rPath+nursid) =="") {
- grd_count.valueMatrix(pRow, pCol) = "";
- //2009-02-12 ycd 사용자 입력 빨간색 대신 입력값이 사라지도록 처리
- //grd_count.cellStyle("color", pRow, pCol, pRow, pCol) = "#D22D2D";
- //} else {
- //grd_count.cellStyle("color", pRow, pCol, pRow, pCol) = "";
- }
- }
- else if (pCol > grd_count.colRef("nacls") && pCol < grd_count.colRef("totqty")) { //수량 Check
- if (pRow == 2) {
- model.setValue(rPath + "/addqty" , "");
- model.setValue(rPath + "/initqty", "");
- model.setValue(rPath + "/totqty" , "");
- } else {
- tCnt = 0
- aCnt = model.getValue(rPath + "/addqty");
- iCnt = model.getValue(rPath + "/initqty");
- // 2009-02-05 ycd 수량 count 합계 처리 부분 제어문 추가
- if(aCnt != "" || iCnt != ""){
- iCnt = (iCnt == "" ) ? "0" : iCnt;
- aCnt = (aCnt == "" ) ? "0" : aCnt;
- tCnt = parseInt(iCnt)+ parseInt(aCnt);
- //model.setValue(rPath + "/totqty", tCnt);
- grd_count.valueMatrix(pRow, grd_count.colRef("totqty")) = tCnt;
- //grd_count.refresh();
- }else if(aCnt == "" && iCnt == ""){
- grd_count.valueMatrix(pRow, grd_count.colRef("totqty")) = "";
- }else{
- return;
- }
- }
- }
- }
- // --------------------------------------------------
- // Packing화면 Visible 처리하는 함수
- // --------------------------------------------------
- function fPackingVisible(pCol, pRow, pYpos) {
- if (pCol != grd_count.colRef("packqty") || grd_count.valueMatrix(pRow, grd_count.colRef("kindcd")) == "00") {
- fPackingHidden("C");
- return;
- }
- // Mouse Max 675
- var PackInit = "/root/init/XmlFormat";
- var OpcoPath = CountPath + "["+ (grd_count.row-1) + "]"
- opt_packrow.text = grd_count.row - 1;
- opt_kindnm.text = model.getValue(OpcoPath+"/codenm3");
- opt_packtot.text = model.getValue(OpcoPath+"/packqty");
- var sNode = instance1.selectSingleNode(OpcoPath+"/packspec");
- var nIdx = sNode.childNodes.length;
- if (nIdx > 0) {
- model.copyNode(PackInit+"/PackLists", OpcoPath+"/packspec");
- for(var i = 1 ; i <= getNodesetCount(PackInit+"/PackLists") ; i++){
- if(model.getValue(PackInit+"/PackLists/packlist["+i+"]/packcnt") == "" ||
- model.getValue(PackInit+"/PackLists/packlist["+i+"]/packcnt") == "0" ){
- model.setValue(PackInit+"/PackLists/packlist["+i+"]/lt" , "" );
- model.setValue(PackInit+"/PackLists/packlist["+i+"]/center" , "" );
- model.setValue(PackInit+"/PackLists/packlist["+i+"]/rt" , "" );
- model.setValue(PackInit+"/PackLists/packlist["+i+"]/packcnt" , "" );
- }
- }
- } else {
- model.copyNode(PackInit+"/PackLists", PackInit+"/PackInit");
- //
- }
- // fPackingTotal();
- var yPos = pYpos;
- if (yPos > 395) {
- yPos = pYpos - 300;
- }
- if (yPos > 426) {
- yPos = 426;
- }
- grp_packing.refresh();
- //output1.text = pYpos;
- //output2.text = yPos ;
- //output2.text = "85" ;
- // grp_packing.attribute("left") = "635px";
- // grp_packing.attribute("top" ) = yPos+"px"; // "85px";
- grp_packing.attribute("top" ) = "85px"; // "85px";
- grp_packing.attribute("visibility") ="visible";
- }
- // --------------------------------------------------
- // Packing화면 Hidden 처리하는 함수
- // --------------------------------------------------
- function fPackingHidden(pProc) {
- grp_packing.attribute("visibility") ="hidden";
- if (pProc == "C") {
- return;
- }
- fPackingTotal();
- var OpcoPath = CountPath+"["+ opt_packrow.text +"]";
- model.setValue(OpcoPath+"/packqty", opt_packtot.text);
- model.copyNode(OpcoPath+"/packspec", "/root/init/XmlFormat/PackLists");
- grd_count.refresh();
- //grp_packing.attribute("left") = "635px";
- //grp_packing.attribute("top" ) = "85px";
- }
- // 2009-02-07 ycd 부위별 입력 조건 변경으로 인하여 Lt, Center, Rt 입력 수치에 대한 합계 정보를 구함
- function fPackingPartEdit(pRow, pCol){
- //if(grd_opeuinfo1.valueMatrix(pRow, pCol) == "") {
- // return;
- //}
- var sPackCnt = 0;
- if(grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("lt")) != ""){
- sPackCnt += parseInt(grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("lt")));
- }
- if(grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("center")) != ""){
- sPackCnt += parseInt(grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("center")));
- }
- if(grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("rt")) != ""){
- sPackCnt += parseInt(grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("rt")));
- }
- //합계 입력
- if(sPackCnt == 0 ){
- grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("packcnt")) = "";
- }else{
- grd_opeuinfo1.valueMatrix(pRow, grd_opeuinfo1.colRef("packcnt")) = sPackCnt;
- }
- }
- // Packing수량 합계 구하기
- function fPackingTotal(){
- var pTot = 0;
- var pCnt = "";
- var PackNode = "/root/init/XmlFormat/PackLists";
- var sNode = instance1.selectSingleNode(PackNode);
- if (sNode == null) return;
- var nIdx = sNode.childNodes.length;
- PackNode = PackNode+"/packlist";
- for (n = 1; n <= nIdx; n++) {
- pCnt = model.getValue(PackNode + "["+ n + "]/packcnt");
- pCnt = (pCnt == "" ) ? "0" : pCnt;
- pTot += parseInt(pCnt);
- } // -- End Of for (n = 1; n <= nIdx; n++) --
- opt_packtot.text = pTot;
- }
- // Packing Grid Merge False
- function fPackingMergeFalse(){
- for(var i = grd_count.colRef("nacls") ; i <= grd_count.cols ; i++){
- grd_count.mergeCol(i) = false;
- }
- /*
- grd_count.mergeCol(03) = false;
- grd_count.mergeCol(04) = false;
- grd_count.mergeCol(05) = false;
- grd_count.mergeCol(06) = false;
- grd_count.mergeCol(07) = false;
- grd_count.mergeCol(08) = false;
- grd_count.mergeCol(09) = false;
- grd_count.mergeCol(10) = false;
- grd_count.mergeCol(11) = false;
- grd_count.mergeCol(12) = false;
- grd_count.mergeCol(13) = false;
- grd_count.mergeCol(14) = false;
- grd_count.mergeCol(15) = false;
- grd_count.mergeCol(16) = false;
- grd_count.mergeCol(17) = false;
- */
- }
- // Packing Data Clear
- function fPackingDataClear(pRow){
- var OpcoPath = CountPath+"["+ (pRow-1) +"]";
- //fCountDataClear(pRow);
- fReadOnlyFlag(grd_count, pRow, pRow, grd_count.colRef("initqty"), grd_count.colRef("samen"), true);
- }
- // Grid의 ReadOnly Set
- function fReadOnlyFlag(pGrid, pStrRow, pEndRow, pStrCol, pEndCol, pBool){
- // alert("fReadOnlyFlag("+pGrid+", "+pStrRow+", "+ pEndRow+", "+pStrCol+", "+ pEndCol+", "+ pBool);
- pGrid.isReadOnly(pStrRow, pStrCol, pEndRow, pEndCol)= pBool;
- if (pBool == true) {
- for (var Idx=pStrRow; Idx<= pEndRow; Idx++){
- fCountDataClear(Idx);
- }
- }
- }
- // Count Data Clear
- function fCountDataClear(pRow){
- var OpcoPath = CountPath+"["+ (pRow-1) +"]";
- if ((pRow-1) == 1) { // Instrument
- model.setValue(OpcoPath + "/initqty" , "" ); // 04
- model.setValue(OpcoPath + "/addqty" , "" ); // 05
- model.setValue(OpcoPath + "/totqty" , "" ); // 06
- model.setValue(OpcoPath + "/packqty" , "" ); // 07
- grd_count.cellStyle("background-color", pRow, 03, pRow, 07) = "#DCDACS";
- } else {
- model.setValue(OpcoPath + "/initqty" , "" ); // 04
- model.setValue(OpcoPath + "/addqty" , "" ); // 05
- model.setValue(OpcoPath + "/totqty" , "" ); // 06
- model.setValue(OpcoPath + "/packqty" , "" ); // 07
- }
- model.setValue(OpcoPath + "/nursnm11", "" ); // 08
- model.setValue(OpcoPath + "/nursnm12", "" ); // 09
- model.setValue(OpcoPath + "/nursnm21", "" ); // 10
- model.setValue(OpcoPath + "/nursnm22", "" ); // 11
- model.setValue(OpcoPath + "/nursnm31", "" ); // 12
- model.setValue(OpcoPath + "/nursnm32", "" ); // 13
- model.setValue(OpcoPath + "/nursnm41", "" ); // 14
- model.setValue(OpcoPath + "/nursnm42", "" ); // 15
- model.setValue(OpcoPath + "/samey" , "false"); // 16
- model.setValue(OpcoPath + "/samen" , "true" ); // 17
- model.setValue(OpcoPath + "/nursid11", "");
- model.setValue(OpcoPath + "/nursid12", "");
- model.setValue(OpcoPath + "/nursid21", "");
- model.setValue(OpcoPath + "/nursid22", "");
- model.setValue(OpcoPath + "/nursid31", "");
- model.setValue(OpcoPath + "/nursid32", "");
- model.setValue(OpcoPath + "/nursid41", "");
- model.setValue(OpcoPath + "/nursid42", "");
- model.setValue(OpcoPath + "/deptcd11", "");
- model.setValue(OpcoPath + "/deptcd12", "");
- model.setValue(OpcoPath + "/deptcd21", "");
- model.setValue(OpcoPath + "/deptcd22", "");
- model.setValue(OpcoPath + "/deptcd31", "");
- model.setValue(OpcoPath + "/deptcd32", "");
- model.setValue(OpcoPath + "/deptcd41", "");
- model.setValue(OpcoPath + "/deptcd42", "");
- model.setValue(OpcoPath + "/deptnm11", "");
- model.setValue(OpcoPath + "/deptnm12", "");
- model.setValue(OpcoPath + "/deptnm21", "");
- model.setValue(OpcoPath + "/deptnm22", "");
- model.setValue(OpcoPath + "/deptnm31", "");
- model.setValue(OpcoPath + "/deptnm32", "");
- model.setValue(OpcoPath + "/deptnm41", "");
- model.setValue(OpcoPath + "/deptnm42", "");
- var nIdx = 0;
- var sNode = instance1.selectSingleNode(OpcoPath + "/packspec");
- if (sNode != null) {
- nIdx = sNode.childNodes.length;
- }
- PackNode = OpcoPath + "/packspec/packlist";
- for (n = 1; n <= nIdx; n++) {
- model.setValue(PackNode + "["+ n + "]/packchk", "false");
- model.setValue(PackNode + "["+ n + "]/packcnt", "" );
- model.setValue(PackNode + "["+ n + "]/lt" , "" ); // 07
- model.setValue(PackNode + "["+ n + "]/center" , "" ); // 07
- model.setValue(PackNode + "["+ n + "]/rt" , "" ); // 07
- } // -- End Of for (n = 1; n <= nIdx; n++) --
- }
- // Grid의 CountOnClick Set
- function fCountOnClick(pGrid, pRow, pCol){
- if (pCol == grd_count.colRef("nacls")) {
- if (pRow < 2) {
- if (pGrid.fixedcellischeck(0, grd_count.colRef("nacls")) == true) {
- fReadOnlyFlag(pGrid, 3, pRow - 1, grd_count.colRef("initqty"), grd_count.colRef("samen"), true);
- pGrid.fixedcellcheckbox(1,grd_count.colRef("samey")) = false;
- pGrid.fixedcellcheckbox(1,grd_count.colRef("samen")) = false;
- } else {
- fReadOnlyFlag(pGrid, 3, pRow - 1, grd_count.colRef("initqty"), grd_count.colRef("samen"), false);
- pGrid.fixedcellcheckbox(1,grd_count.colRef("samey")) = true;
- pGrid.fixedcellcheckbox(1,grd_count.colRef("samen")) = true;
- }
- } else {
- if (pGrid.valueMatrix(pRow, pGrid.colRef("nacls")) == 'true') {
- fPackingDataClear(pRow);
- pGrid.isReadOnly(pRow, grd_count.colRef("initqty"), pRow, grd_count.colRef("samen")) = true;
- pGrid.isReadOnly(pRow, pGrid.colRef("naclsinucd"), pRow, pGrid.colRef("naclsinucd")) = false;
- } else {
- pGrid.isReadOnly(pRow, grd_count.colRef("initqty"), pRow, grd_count.colRef("samen")) = false;
- pGrid.isReadOnly(pRow, grd_count.colRef("naclsinucd"), pRow, grd_count.colRef("naclsinucd")) = true;
- model.setValue(CountPath+"["+ (pRow-1) +"]" + "/naclsinucd" , "-" ); // 사유란 초기화
- model.setValue(CountPath+"["+ (pRow-1) +"]" + "/samey" , "true" ); // 16
- model.setValue(CountPath+"["+ (pRow-1) +"]" + "/samen" , "false" ); // 17
- }
- }
- pGrid.valueMatrix(2, pGrid.colRef("nacls")) = 'false';
- pGrid.isReadOnly(2, pGrid.colRef("nacls"), 2, pGrid.colRef("totqty"))= true;
- } else if( pCol == grd_count.colRef("samey")) {
- // 2009-02-10 ycd 오류 처리 계수여부 2개 동시 선택 되던 문제를 위해 func 분리시 삭제 처리
- /*
- if (pGrid.valueMatrix(pGrid.row, grd_count.colRef("nacls")) == 'false') {
- fPackingVisible(pGrid.col, event.targetY);
- }else{
- fPackingHidden("C");
- }
- */
- if(grd_count.valueMatrix(pRow, grd_count.colRef("samey")) == 'true'){
- if(pRow == 2 && model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno") && model.getValue(xPathData+"/mainoprsrvno") != "-" ){
- fReadOnlyFlag(pGrid, pRow, pRow, grd_count.colRef("nursnm11"), grd_count.colRef("nursnm42"), false);
- pGrid.valueMatrix(pRow, grd_count.colRef("nacls")) = 'false';
- pGrid.valueMatrix(pRow, grd_count.colRef("naclsinucd")) = "-";
- }
- grd_count.valueMatrix(pRow, grd_count.colRef("samen")) = 'false';
- }else{
- if(pRow == 2 && model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno") && model.getValue(xPathData+"/mainoprsrvno") != "-" ){
- fReadOnlyFlag(pGrid, pRow, pRow, grd_count.colRef("nursnm11"), grd_count.colRef("nursnm42"), true);
- pGrid.valueMatrix(pRow, grd_count.colRef("nacls")) = 'true';
- pGrid.valueMatrix(pRow, grd_count.colRef("naclsinucd")) = "9";
- }
- grd_count.valueMatrix(pRow, grd_count.colRef("samen")) = 'true';
- }
- } else if( pCol == grd_count.colRef("samen")) {
- if(grd_count.valueMatrix(pRow, grd_count.colRef("samen")) == 'true'){
- if(pRow == 2 && model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno") && model.getValue(xPathData+"/mainoprsrvno") != "-" ){
- fReadOnlyFlag(pGrid, pRow, pRow, grd_count.colRef("nursnm11"), grd_count.colRef("nursnm42"), true);
- pGrid.valueMatrix(pRow, grd_count.colRef("nacls")) = 'true';
- pGrid.valueMatrix(pRow, grd_count.colRef("naclsinucd")) = "9";
- }
- grd_count.valueMatrix(pRow, grd_count.colRef("samey")) = 'false';
- }else{
- if(pRow == 2 && model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno") && model.getValue(xPathData+"/mainoprsrvno") != "-" ){
- fReadOnlyFlag(pGrid, pRow, pRow, grd_count.colRef("nursnm11"), grd_count.colRef("nursnm42"), false);
- pGrid.valueMatrix(pRow, grd_count.colRef("nacls")) = 'false';
- pGrid.valueMatrix(pRow, grd_count.colRef("naclsinucd")) = "-";
- }
- grd_count.valueMatrix(pRow, grd_count.colRef("samey")) = 'true';
- }
- }
- //---------(20101024) 경북대
- if( pCol == grd_count.colRef("discordaction")) {
- var stemp = pGrid.labelMatrix(pRow, grd_count.colRef("discordaction"));
- model.setValue(CountPath+"["+ (pRow-1) +"]" + "/discordactionnm" , stemp);
- }
- //---------(20101024) 경북대
- }
- // Grid의 CountOnClick Set 2009-02-10 ycd 변경요청에 의해 Packing 더블 클릭시 부위별 Packing 정보 입력창 활성화/비활성화 처리
- function fCountOndblclickClick(pGrid, pRow, pCol){
- if(pGrid.valueMatrix(pRow, pGrid.colRef("recflag")) == "-" ){
- fClickCountListPopUpBtn(pRow);
- }else{
- if(pCol == pGrid.colRef("packqty")){
- if (pGrid.valueMatrix(pRow, grd_count.colRef("nacls")) == 'false' && ( pGrid.valueMatrix(pRow, grd_count.colRef("recflag")) == "I" || pGrid.valueMatrix(pRow, grd_count.colRef("recflag")) == "U")) {
- fPackingVisible(pCol, pRow, event.targetY);
- }else{
- fPackingHidden("C");
- }
- }
- }
- }
- // --------------------------------------------------
- // 수술체위 추가
- // --------------------------------------------------
- function fOppostureInsertRow(){
- //2009-02-13 체위 추가시 자동 세팅 처리
- var sOppostureLastRow = getNodesetCount(xPathData +"/opposturespec/opposture/opposturelist");
- if ( sOppostureLastRow == 0 ){
- model.duplicate(xPathData +"/opposturespec/opposture", xPathFormat+"/opposturespec/opposture/opposturelist");
- sOppostureLastRow = getNodesetCount(xPathData +"/opposturespec/opposture/opposturelist");
- model.setValue(xPathData +"/opposturespec/opposture/opposturelist["+sOppostureLastRow+"]/opposturefrdt", inp_opfromdd.value);
- model.setValue(xPathData +"/opposturespec/opposture/opposturelist["+sOppostureLastRow+"]/opposturefrtm", inp_opfromhh.value);
- } else {
- if ( model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+sOppostureLastRow+"]/opposturetodt") == "" ||
- model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+sOppostureLastRow+"]/opposturetotm") == "" ){
- messageBox("수술체위 정보 추가시 이전 체위의 종료시간을 입력하십시오.", "I000");
- return;
- } else {
- model.duplicate(xPathData +"/opposturespec/opposture", xPathFormat+"/opposturespec/opposture/opposturelist");
- sOppostureLastRow = getNodesetCount(xPathData +"/opposturespec/opposture/opposturelist");
- sRtnBfOutoDate = model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+(sOppostureLastRow-1)+"]/opposturetodt") + model.getvalue(xPathData +"/opposturespec/opposture/opposturelist["+(sOppostureLastRow-1)+"]/opposturetotm") + "00";
- var sRtnOutoDate = getDateTime(sRtnBfOutoDate.toDate("YYYYMMDDhhmmss").getAddDate(1, "m"), 'A');
- model.setValue(xPathData +"/opposturespec/opposture/opposturelist["+sOppostureLastRow+"]/opposturefrdt", sRtnOutoDate.substr(0, 8));
- model.setValue(xPathData +"/opposturespec/opposture/opposturelist["+sOppostureLastRow+"]/opposturefrtm", sRtnOutoDate.substr(8, 4));
- }
- }
- grd_opposture.refresh();
- }
- // --------------------------------------------------
- // 수술체위 삭제
- // --------------------------------------------------
- function fOppostureDeleteRow(){
- if (grd_opposture.row > 0) {
- fDeleteItem(grd_opposture, grd_opposture.row) ;
- }
- }
- // 수술명 조회
- function fOpCodePopup(pRow, pCol) {
- var xpos = event.screenX;
- var ypos = event.screenY-300;
- setParameter("SendData", "");
- modal("SPMNP01500");
- // open("SPMNP01500", 1, xpos, ypos,"SPMNP01500","/root/init/WorkData/oplist", "/root/Cond/oplist");
- var iProperties = getParameter("SendData");
- var iSplit_Value = iProperties.split("|");
- if (iSplit_Value.length > 0) {
- if (model.getValue(OpcdPath+"/opcdlist["+pRow+"]/opcd") != iSplit_Value[0]){ // CODE
- model.setValue(OpcdPath+"/opcdlist["+pRow+"]/opstat" ,"수정");
- }
- //
- model.setValue(OpcdPath+"/opcdlist["+pRow+"]/opcd" , iSplit_Value[0]); // CODE
- model.setValue(OpcdPath+"/opcdlist["+pRow+"]/opcdname", iSplit_Value[1]); // NAME
- //} else {
- // model.setValue(OpcdPath+"/opcdlist["+pRow+"]/opstat" ,"");
- }
- }
- // 수술기록 III 조회
- function fSheetData3_Read_xxxxx(pFlag){
- var sSpecimenCd = "";
- if (pFlag == "all"){
- model.removenodeset(xPathSheetData3+"/DrugLists/druglist");
- model.removenodeset(xPathSheetData3+"/DrgeLists/drgelist");
- model.removenodeset(xPathSheetData3+"/ImplantLists/implantlist");
- model.removenodeset(xPathSheetData3+"/OpEqmtLists/opeqmtlist");
- //model.removenodeset(xPathSheetData3+"/OrganLists/organlist");
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/pid" , model.getValue("/root/init/HideData/pid" ));
- model.makeValue("/root/send/oprsrvno" , model.getValue("/root/init/HideData/oprsrvno"));
- // model.makeValue("/root/send/opcnfmdd" , model.getValue(hPath+"/opcnfmdd" ));
- model.makeValue("/root/send/opcnfmdd" , model.getValue(xPathData+"/opcnfmdd" ));
- model.makeValue("/root/send/flag", pFlag);
- if (submit("TRMNP00305")){
- // 약품정보
- if(getNodesetCnt(model, xPathHiddenSheetData3+"/druglist") >0 ){
- model.makeNode(xPathSheetData3+"/DrugLists/druglist");
- model.copyNode(xPathSheetData3+"/DrugLists/druglist" ,xPathHiddenSheetData3+"/druglist");
- }
- // 배액관정보
- // if(model.getValue(xPathData+"/drgeuseyn") != "X" &&
- if(getNodesetCnt(model, xPathHiddenSheetData3+"/drgelist") >0 ){
- model.makeNode(xPathSheetData3+"/DrgeLists/drgelist");
- model.copyNode(xPathSheetData3+"/DrgeLists/drgelist" ,xPathHiddenSheetData3+"/drgelist");
- }
- // 장비 정보
- if(model.getValue(xPathData+"/eqmtuseyn") != "X" &&getNodesetCnt(model, xPathHiddenSheetData3+"/opeqmtlist") >0 ){
- model.makeNode(xPathSheetData3+"/OpEqmtLists/opeqmtlist");
- model.copyNode(xPathSheetData3+"/OpEqmtLists/opeqmtlist" ,xPathHiddenSheetData3+"/opeqmtlist");
- }
- // implant 정보
- //if(model.getValue(xPathData+"/implantuseyn") != "X"
- fSheetData3_Copy("/ImplantLists/implantlist", "/implantlist");
- // if(getNodesetCnt(model, xPathHiddenSheetData3+"/implantlist") >0 ){
- // model.makeNode(xPathSheetData3+"/ImplantLists/implantlist");
- // model.copyNode(xPathSheetData3+"/ImplantLists/implantlist" ,xPathHiddenSheetData3+"/implantlist");
- // }
- // 검체 정보
- model.copyNode(xPathSheetData3+"/SpecimenLists", xPathFormat+"/SpecimenLists");
- // 20071120 Choi
- if(getNodesetCnt(model, xPathHiddenSheetData3+"/specimenlist") >0 ){
- for(var iRow = 1; iRow <= getNodesetCnt(model, xPathHiddenSheetData3+"/specimenlist"); iRow++){
- sSpecimenCd = model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/specimencd");
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/qty" , model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/qty"));
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/chargernm", model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/chargernm"));
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/chargerid", model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/chargerid"));
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/oprsrvno" , model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/oprsrvno"));
- }
- }
- if(getNodesetCnt(model, "/root/temp/SheetData3/specimenlistnew") >0 ){
- model.copyNode(xPathSheetData3+"/SpecimenLists/specimenlistnew", "/root/temp/SheetData3/specimenlistnew");
- }
- // Tourniquet 정보
- if(model.getValue(xPathData+"/tourniquetspec/tourniquet/tourniquetyn") != "N" &&
- getNodesetCnt(model, xPathHiddenSheetData3+"/tourniquetlist") > 0 ){
- for(var iRow = 1; iRow <= getNodesetCnt(model, xPathHiddenSheetData3+"/tourniquetlist"); iRow++){
- sTouranstrecno = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/anstrecno");
- pchkyn = "N";
- if(getNodesetCnt(model, xPathData+"/tourniquetspec/tourniquet/tourniquetlist") > 0 ){
- for(var cRow = 1 ; cRow <= getNodesetCnt(model, xPathData+"/tourniquetspec/tourniquet/tourniquetlist"); cRow++){
- if(model.getValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist[anstrecno ='"+sTouranstrecno+"']/startdd") != ""){
- pchkyn ="Y";
- }
- }
- }
- if(pchkyn == "N"){
- insRow = eval(getNodesetCnt(model, xPathData+"/tourniquetspec/tourniquet/tourniquetlist"))+ 1;
- var rSttTime = "";
- pFrDate = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquetfromdd" );
- pFrTime = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquetfromtm" );
- pToDate = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquettodd" );
- pToTime = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquettotm" );
- if(pFrDate != "" && pToDate != "" && pFrTime != "" && pToTime != "" ){
- rSttTime = fTimeInterval(pFrDate, pToDate, pFrTime, pToTime, "1");
- }
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/startdd" , pFrDate );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/starttm" , pFrTime );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/enddd" , pToDate );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/endtm" , pToTime );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/termtm" , rSttTime );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/pressure" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/posimage" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/posimageview" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/cuffsize" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/applierid" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/appliernm" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/anstrecno" , model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/anstrecno" ));
- }
- }
- }
- // 수술후 수술명
- xNode = instance1.selectSingleNode(OpcdPath);
- if (xNode == null) {
- nLen = 0;
- model.makeNode(OpcdPath); // Path 생성 /root/main/MnphopcrData/MnphopcrList/aftopopnm/aftopoplists
- } else {
- nLen = xNode.childNodes.length;
- }
- if (getNodesetCnt(model, xPathHiddenSheetData3+"/opcdlist") >0){
- model.makeNode(OpcdPath+"/opcdlist");
- model.copyNode(OpcdPath+"/opcdlist", xPathHiddenSheetData3+"/opcdlist");
- }else{
- if (nLen < 1) {
- model.copyNode(OpcdPath, "/root/init/workinst/OpcdData");
- }
- }
- grd_afopnm.refresh();
- grd_druglist.refresh();
- //grd_inscath.refresh();
- grd_opeqmtlist.refresh();
- grd_implantlist.refresh();
- grd_spclist.refresh();
- grd_tourniquet.refresh();
- }
- }
- // 수술기록 III 조회
- function fSheetData3_Read(pFlag){
- //return;
- var sSpecimenCd = "";
- if (pFlag == "all"){
- model.removenodeset(xPathSheetData3+"/DrugLists/druglist");
- model.removenodeset(xPathSheetData3+"/DrgeLists/drgelist");
- model.removenodeset(xPathSheetData3+"/ImplantLists/implantlist");
- model.removenodeset(xPathSheetData3+"/OpEqmtLists/opeqmtlist");
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/pid" , model.getValue("/root/init/HideData/pid" ));
- model.makeValue("/root/send/oprsrvno" , model.getValue("/root/init/HideData/oprsrvno"));
- // model.makeValue("/root/send/opcnfmdd" , model.getValue(hPath+"/opcnfmdd" ));
- model.makeValue("/root/send/opcnfmdd" , model.getValue(xPathData+"/opcnfmdd" ));
- model.makeValue("/root/send/flag", pFlag);
- if (submit("TRMNP00305", false)){
- fSheetData3_Copy("/DrugLists/druglist" , "/druglist" ); // 약품정보
- fSheetData3_Copy("/DrgeLists/drgelist" , "/drgelist" ); // 배액관정보
- fSheetData3_Copy("/skinserveyinfo/skinserveylist" , "/skinserveylist" ); // 피부관찰기록정보
- //============================================================================
- //2008-06-26 오후 5:12:43 taebum 추가요구사항
- //삽관기록에 배액관으로 처방된 목록이 기본으로 들어오도록 이때는 시기가 intra op 로 해서 추가
- if(model.getValue("/root//root/main/MnphopcrData/MnphopcrList/recstat") == "I"){
- fGetDrgeListForCath();
- }
- //============================================================================
- //2009-02-16 ycd 장비사용기록 해당없음 Y,N 여부에 따른 처리 로직 변경
- if(model.getValue(xPathData+"/eqmtuseyn") != "X" || getNodesetCnt(model, xPathHiddenSheetData3+"/opeqmtlist") > 0 ){
- btn_settingstrdt.disabled = false;
- btn_settingenddt.disabled = false;
- bbt_opeqmt.disabled = false;
- btn_eqmtinfo.disabled = false;
- fSheetData3_Copy("/OpEqmtLists/opeqmtlist" , "/opeqmtlist" ); // 장비 정보
- model.setValue(xPathData+"/eqmtuseyn","");
- chk_eqmtuseyn.refresh();
- }else{
- btn_settingstrdt.disabled = true;
- btn_settingenddt.disabled = true;
- bbt_opeqmt.disabled = true;
- btn_eqmtinfo.disabled = true;
- }
- fSheetData3_Copy("/ImplantLists/implantlist", "/implantlist"); // implant 정보
- //2008-07-03 오후 10:58:15 taebum add
- //fSheetData3_Copy("/OrganLists/organlist", "/organlist"); // 장기이식 정보
- // 검체 정보 체크
- // 2009-02-16 ycd 수정 fSpecimenCheck() 메소드 수정 처리시 같이 수정
- // model.copyNode(xPathSheetData3+"/SpecimenLists", xPathFormat+"/SpecimenLists");
- // 20071120 Choi
- if( model.getValue(xPathData+"/spcuseyn") != "X" ) {
- if (model.getValue("/root/main/operation/list/opcnfmdd") <= model.getValue("/root/specdd/chkdd") ) { //검체 기록을 과거 화면과 분리를 위해_20120904_손성훈.
- if( //model.getValue(xPathData+"/spcuseyn") != "X" &&
- getNodesetCnt(model, xPathHiddenSheetData3+"/specimenlist") > 0 ){
- for(var iRow = 1; iRow <= getNodesetCnt(model, xPathHiddenSheetData3+"/specimenlist"); iRow++){
- sSpecimenCd = model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/specimencd");
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/qty" , model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/qty"));
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/chargernm", model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/chargernm"));
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/chargerid", model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/chargerid"));
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/oprsrvno" , model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/oprsrvno"));
- //-----------(20101015) 경북대
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/deviposi" , model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/deviposi"));
- model.setValue(xPathSheetData3+"/SpecimenLists/specimenlist[specimencd='"+sSpecimenCd+"']/deviposinm" , model.getValue(xPathHiddenSheetData3+"/specimenlist["+iRow+"]/deviposinm"));
- //-----------(20101015) 경북대
- }
- }
- fChangGridSetting("grd_spclist");
- }else{
- // 검체항목 변경 _ 손성훈 _2012.08.29 ---------
- if(getNodesetCnt(model, xPathHiddenSheetData3+"/specimenlistnew") > 0 ){
- pNode1 = "/SpecimenLists/specimenlistnew" ;
- pNode2 = "/specimenlistnew" ;
- fSheetData3_Copy(pNode1, pNode2);
- }
- fChangGridSetting("grd_spclistnew"); // 검체항목 변경 _ 손성훈 _2012.08.29
- }
- // ----------------------- 손성훈 _2012.08.29 //
- }else{
- fSpecimenCheck();
- }
- // Tourniquet 정보
- if(model.getValue(xPathData+"/tourniquetspec/tourniquet/tourniquetyn") != "N" &&
- getNodesetCnt(model, xPathHiddenSheetData3+"/tourniquetlist") > 0 ){
- for(var iRow = 1; iRow <= getNodesetCnt(model, xPathHiddenSheetData3+"/tourniquetlist"); iRow++){
- sTouranstrecno = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/anstrecno");
- pchkyn = "N";
- if(getNodesetCnt(model, xPathData+"/tourniquetspec/tourniquet/tourniquetlist") > 0 ){
- for(var cRow = 1 ; cRow <= getNodesetCnt(model, xPathData+"/tourniquetspec/tourniquet/tourniquetlist"); cRow++){
- if(model.getValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist[anstrecno ='"+sTouranstrecno+"']/startdd") != ""){
- pchkyn ="Y";
- }
- }
- }
- if(pchkyn == "N"){
- insRow = eval(getNodesetCnt(model, xPathData+"/tourniquetspec/tourniquet/tourniquetlist"))+ 1;
- var rSttTime = "";
- pFrDate = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquetfromdd" );
- pFrTime = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquetfromtm" );
- pToDate = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquettodd" );
- pToTime = model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/torniquettotm" );
- if(pFrDate != "" && pToDate != "" && pFrTime != "" && pToTime != "" ){
- rSttTime = fTimeInterval(pFrDate, pToDate, pFrTime, pToTime, "1");
- }
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/startdd" , pFrDate );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/starttm" , pFrTime );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/enddd" , pToDate );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/endtm" , pToTime );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/termtm" , rSttTime );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/pressure" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/posimage" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/posimageview" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/cuffsize" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/applierid" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/appliernm" , "" );
- model.makeValue(xPathData+"/tourniquetspec/tourniquet/tourniquetlist["+insRow+"]/anstrecno" , model.getValue(xPathHiddenSheetData3+"/tourniquetlist["+iRow+"]/anstrecno" ));
- }
- }
- }
- /* 2009-02-16 ycd 삭제처리
- var iTotalSpecimentListsCnt = getNodesetCnt(model, xPathSheetData3+"/SpecimenLists/specimenlist");
- for(var i=1; i <= iTotalSpecimentListsCnt; i++ ){
- grd_spclist.cellstyle("background-color", i, 3, i, 3) = "#eaeaea";
- }
- */
- /*
- //opcr list에서 데이터를 가져오는데 왜 여기서 처리하는지 모르겠음. 2008-07-17 오전 10:08:46
- // 수술후 수술명
- xNode = instance1.selectSingleNode(OpcdPath);
- if (xNode == null) {
- nLen = 0;
- model.makeNode(OpcdPath); // Path 생성 /root/main/MnphopcrData/MnphopcrList/aftopopnm/aftopoplists
- } else {
- //nLen = xNode.childNodes.length;
- }
- if (getNodesetCnt(model, xPathHiddenSheetData3+"/opcdlist") >0){
- model.removenodeset(OpcdPath+"/opcdlist");
- model.makeNode(OpcdPath+"/opcdlist");
- model.copyNode(OpcdPath+"/opcdlist", xPathHiddenSheetData3+"/opcdlist");
- }else{
- model.removenodeset(OpcdPath+"/opcdlist");
- if (nLen < 1) {
- model.copyNode(OpcdPath, "/root/init/workinst/OpcdData");
- }
- }
- */
- grd_druglist.refresh();
- grd_opeqmtlist.refresh();
- grd_implantlist.refresh();
- grd_spclist.refresh();
- //grd_inscath.refresh();
- //grd_afopnm.rebuild();
- //datagrid4.rebuild();
- //datagrid4.clearStatus();
- grd_tourniquet.refresh();
- }
- }
- // 수술기록 III Instance Copy
- function fSheetData3_Copy(pNode1, pNode2){
- var NodeCnt = getNodesetCnt(model, xPathHiddenSheetData3+pNode2);
- if (NodeCnt > 0){
- for (var i =1; i <= NodeCnt; i++){
- model.makeNode(xPathSheetData3 + pNode1+"["+i+"]");
- model.copyNode(xPathSheetData3 + pNode1+"["+i+"]" ,xPathHiddenSheetData3+pNode2+"["+i+"]");
- }
- }
- }
- //배액관 정보 삽관기록으로 copy
- function fGetDrgeListForCath(){
- var NodeCnt = getNodesetCnt(model, "/root/main/SheetData3/DrgeLists/drgelist");
- var sCathFalg = "처방";
- if (NodeCnt > 0){
- var sGridInsert = "false";
- for (var i =1; i <= NodeCnt; i++){
- var sItemcd = model.getValue("/root/main/SheetData3/DrgeLists/drgelist["+i+"]/drgecd");
- var sItemNm = model.getValue("/root/main/SheetData3/DrgeLists/drgelist["+i+"]/drgenm");
- var sPartInfo = model.getValue("/root/main/SheetData3/DrgeLists/drgelist["+i+"]/partinfo");
- var sDrgeqty = model.getValue("/root/main/SheetData3/DrgeLists/drgelist["+i+"]/drgeqty");
- var sDrgespec = model.getValue("/root/main/SheetData3/DrgeLists/drgelist["+i+"]/drgespec");
- //기존에 삽관기록에 존재할 경우 skip한다.
- var iCathNodeCnt = getNodesetCnt(model, "/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath");
- var sCatchItemcd = "";
- var sExist = "false";
- for(var j = 1; j <= iCathNodeCnt; j++){
- sCatchItemcd = model.getValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+j+"]/itemcd");
- sCatchDrgespec = model.getValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+j+"]/spec");
- if(sItemcd == sCatchItemcd && sDrgespec == sCatchDrgespec ){
- sExist = "true";
- }
- }
- if(sExist == "false"){
- grd_inscath.addRow();
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/cathflag", sCathFalg);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/itemcd", sItemcd);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/itemnm", sItemNm);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/partinfo", sPartInfo);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/qty", sDrgeqty);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/spec", sDrgespec);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/actflag", "I");//intra op
- model.setValue("/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath["+(iCathNodeCnt+1)+"]/method", "A");
- sGridInsert = "true";
- }
- }
- if(sGridInsert == "true"){
- grd_inscath.refresh();
- }
- }
- }
- // 수술장비조회 팝업 호출
- function fOpEqmtPopup(){
- var sMsg = "";
- var sOPEqmtCD = "";
- if(model.getValue(xPathData+"/eqmtuseyn") == "X"){
- messageBox("해당없음 선택으로 장비 추가를 할 수","I004");
- return;
- }
- setParameter("SPMNP00300_oproomdept", model.getValue("/root/main/MnphopcrData/MnphopcrList/oproomcd"));
- //modal("SPMNP00301"); // 기존 장비 목록 조회
- modal("SPMNP00360"); // 장비목록 조회.2012.05.17_손성훈
- sMsg = getParameter("SPMNP00300_Return");
- if(sMsg == "") return;
- setParameter("SPMNP00300_Return", "");
- var iRow = grd_opeqmtlist.rows-grd_opeqmtlist.fixedrows;
- for(var i =1; i < sMsg.split("▩").length-1; i++){
- sOPEqmtCD = getArrayData(sMsg, i,0);
- if(model.getValue(xPathSheetData3+"/OpEqmtLists/opeqmtlist[opeqmtcd ='"+sOPEqmtCD+"']/opeqmtcd") != "") continue;
- //
- if ((iRow == 0) ||(model.getValue(xPathSheetData3+"/OpEqmtLists/opeqmtlist["+iRow+"]/opeqmtcd") !="")) {
- grd_opeqmtlist.addRow(false);
- iRow++;
- }
- //
- model.setValue(xPathSheetData3+"/OpEqmtLists/opeqmtlist["+iRow+"]/opeqmtcd", getArrayData(sMsg, i,0));
- model.setValue(xPathSheetData3+"/OpEqmtLists/opeqmtlist["+iRow+"]/opeqmtnm", getArrayData(sMsg, i,1));
- model.setValue(xPathSheetData3+"/OpEqmtLists/opeqmtlist["+iRow+"]/oprsrvno", model.getValue("/root/init/HideData/oprsrvno"));
- }
- grd_opeqmtlist.rebuild();
- }
- // 사용부위 팝업 호출
- function fPartListVisible(pPartFlag, pYpos){
- var yPos = pYpos;
- sPartFlag = pPartFlag;
- if (yPos > 395) {
- yPos = pYpos - 300;
- }
- if (yPos > 426) {
- yPos = 426;
- }
- // 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- //grp_partlist.attribute("top") = yPos+"px";
- //grp_partlist.visible= true;
- }
- // 사용부위 팝업 설정/취소
- function fPartListHidden(pProc){
- // 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- //grp_partlist.visible = false;
- var sSendMsg = "";
- var sPartMsg = "";
- var sPart = "";
- var iRow = 0;
- for(iRow=grd_partlist.fixedrows; iRow <= grd_partlist.rows; iRow++){
- sPartMsg = "";
- sPart = "";
- for(var iCol = 1; iCol <= 4; iCol++){
- if(grd_partlist.valueMatrix(iRow, iCol) == "true"){
- if(iCol == 1){
- sPart = "앞";
- }else if(iCol == 2){
- sPart = "뒤";
- }else if(iCol == 3){
- sPart = "왼쪽";
- }else if(iCol == 4){
- sPart = "오른쪽";
- }
- if( sPartMsg != ""){
- sPartMsg += ",";
- }else{
- sPartMsg += "(";
- }
- sPartMsg += sPart;
- grd_partlist.valueMatrix(iRow,iCol) = "";
- }
- }
- if(sPartMsg != ""){
- sPartMsg += ")";
- }
- if(sSendMsg != "" && sPartMsg != ""){
- sSendMsg += ",";
- }
- if(sPartMsg != ""){
- sSendMsg += grd_partlist.valueMatrix(iRow,0)+sPartMsg;
- }
- }
- if(pProc == "C") return;
- if(sPartFlag == "drug"){
- iRow = grd_druglist.row;
- model.setValue(xPathSheetData3+"/DrugLists/druglist["+iRow+"]/partinfo", sSendMsg);
- grd_druglist.rebuild();
- }
- // 2009-02-05 ycd 수술간호기록 수정작업 중 삭제 처리
- /*
- else if(sPartFlag == "drge"){
- iRow = grd_drgelist.row;
- model.setValue(xPathSheetData3+"/DrgeLists/drgelist["+iRow+"]/partinfo", sSendMsg);
- grd_drgelist.rebuild();
- }
- */
- }
- // 검체 체크
- function fSpecimenCheck(){
- /* 2009-02-16 ycd 삭제처리
- if(model.getValue(xPathData+"/spcuseyn") == "X"){
- model.removenodeset(xPathSheetData3+"/SpecimenLists/specimenlist");
- model.copyNode(xPathSheetData3+"/SpecimenLists", xPathFormat+"/SpecimenLists");
- for (var iRow = grd_spclist.fixedrows; iRow <= grd_spclist.rows; iRow++){
- grd_spclist.isReadOnly(iRow, 1, iRow, 5)= true;
- }
- }else{
- fSheetData3_Read("specimen");
- }
- grd_spclist.refresh();
- */
- model.setValue(xPathData+"/prcporderid","");
- model.setValue(xPathData+"/prcpordernm","");
- model.setValue(xPathData+"/spccmt", "");
- ipt_prcpordernm.disabled = true;
- button31.disabled = true;
- img1.disabled = true;
- txt_spccmt.disabled = true;
- opt_prcporderid.refresh();
- ipt_prcpordernm.refresh();
- txt_spccmt.refresh();
- model.removenodeset(xPathSheetData3+"/SpecimenLists/specimenlist");
- model.copyNode(xPathSheetData3+"/SpecimenLists", xPathFormat+"/SpecimenLists");
- fChangGridSetting("grd_spclist");
- fChangGridSetting("grd_spclistnew");
- /* 2009-02-19 ycd 주석처리
- for (var iRow = grd_spclist.fixedrows; iRow <= grd_spclist.rows; iRow++){
- grd_spclist.isReadOnly(iRow, 2, iRow, 5)= true;
- grd_spclist.cellstyle("background-color", i, 0, i, 5) = "#eaeaea";
- }
- grd_spclist.refresh();
- */
- }
- // 간호일지 조회
- function fSrchCareRecList(){
- model.setValue(xPathData+"/carerecuseyn", "");
- model.removenode("/root/send");
- /*
- model.makeValue("/root/send/pid" , model.getValue("/root/init/HideData/pid")); // 등록번호
- model.makeValue("/root/send/indd" , model.getValue(xPathData+"/inpt_indd" )); // 입원일자
- model.makeValue("/root/send/cretno" , model.getValue(xPathData+"/inpt_cretno" )); // 생성번호
- model.makeValue("/root/send/ioflag" , "I" ); // I/O 구분
- */
- // 2009-05-13 YCD 외래 수술 기록도 가능하도록 처리
- model.makeValue("/root/send/pid" , model.getValue("/root/temp/paminfo/list/pid") ); // 등록번호
- model.makeValue("/root/send/cretno" , model.getValue("/root/temp/paminfo/list/cretno") ); // 생성번호
- model.makeValue("/root/send/ioflag" , model.getValue("/root/temp/paminfo/list/ioflag")); // I/O 구분
- if("O" == model.getValue("/root/temp/paminfo/list/ioflag")){
- model.makeValue("/root/send/orddd" , model.getValue("/root/temp/paminfo/list/orddd") ); // 진료일자
- }else{
- model.makeValue("/root/send/indd" , model.getValue("/root/temp/paminfo/list/indd") ); // 입원일자
- }
- model.makeValue("/root/send/dnarflag" , "%" ); // dnar 구분
- model.makeValue("/root/send/sortseq" , "A" ); // 정렬순서(A:오름차순, D:내림차순)
- model.makeValue("/root/send/recflag" , "P" ); // 기록구분
- model.makeValue("/root/send/reclnkkey", model.getValue("/root/init/HideData/oprsrvno")+","+model.getValue("/root/init/HideData/instcd")); // 기록연계키
- model.makeValue("/root/send/instcd" , model.getValue("/root/init/HideData/instcd")); // 기관코드
- model.makeValue("/root/send/prestdt" , getCurrentDate() + getCurrentTime() ); // 현재일시
- submit("TRMNP00308", false);
- btn_carerec.disabled = false;
- /*
- if (model.getValue(xPathData+"/carerecuseyn") == "X"){
- model.removenodeset(xPathSheetData3+"/CareRecLists/carereclist");
- btn_carerec.disabled = true;
- }else{
- model.removenode("/root/send");
- model.makeValue("/root/send/pid" , model.getValue("/root/init/HideData/pid")); // 등록번호
- model.makeValue("/root/send/indd" , model.getValue(xPathData+"/inpt_indd" )); // 입원일자
- model.makeValue("/root/send/cretno" , model.getValue(xPathData+"/inpt_cretno" )); // 생성번호
- model.makeValue("/root/send/ioflag" , "I" ); // I/O 구분
- model.makeValue("/root/send/dnarflag" , "%" ); // dnar 구분
- model.makeValue("/root/send/sortseq" , "A" ); // 정렬순서(A:오름차순, D:내림차순)
- model.makeValue("/root/send/recflag" , "P" ); // 기록구분
- model.makeValue("/root/send/reclnkkey",model.getValue("/root/init/HideData/oprsrvno")+","+model.getValue("/root/init/HideData/instcd")); // 기록연계키
- model.makeValue("/root/send/instcd" , model.getValue("/root/init/HideData/instcd")); // 기관코드
- model.makeValue("/root/send/prestdt" , getCurrentDate() + getCurrentTime() ); // 현재일시
- submit("TRMNP00308", false);
- btn_carerec.disabled = false;
- }
- */
- grd_carereclist.rebuild();
- }
- // 소요시간계산
- function fTimeInterval(pFrDate, pToDate, pFrTime, pToTime, pFlag){
- var HH=0, MM=0, tHH=0;
- var sInHospTMs, sInHospTM;
- var rTime = "";
- //
- if (pFrDate =="" || pFrDate.replace(' ', '').length < 8 ){
- //messageBox("시작 일자를", "C001");
- return rTime;
- }
- //
- if (pToDate =="" || pToDate.replace(' ', '').length < 8 ){
- //messageBox("종료 일자를", "C001");
- return rTime;
- }
- //
- if (pFrTime == "" || pFrTime.replace(' ', '').length < 4 ){
- //messageBox("시작 시간을", "C001");
- return rTime;
- }
- //
- if (pToTime == "" || pToTime.replace(' ', '').length < 4 ){
- // messageBox("종료 시간을", "C001");
- return rTime;
- }
- //
- if (pFrDate > pToDate){
- messageBox("시작 일자가 종료일자보다 크므로 처리할 수", "I004");
- return rTime;
- }
- //
- if (pFrDate >= pToDate){
- if (pFrTime > pToTime){
- messageBox("시작시간("+ pFrTime +") 이 종료시간("+pToTime +") 보다 큽니다.\n입력한 시간을 확인하시기 바랍니다.", "I000");
- return rTime;
- }
- }
- var sDateInterval = getDateInterval(pFrDate , pToDate ); // 두 일자사이의 차(일단위)
- // alert("sTimeInterval = getTimeInterval("+pFrTime+"00, "+pToTime+"00 )" ); // 두 시간사이의 차(초단위)
- var sTimeInterval = getTimeInterval(pFrTime+"00", pToTime+"00" ); // 두 시간사이의 차(초단위)
- tHH = Number(sDateInterval * 24 )
- + Number(sTimeInterval / 3600);
- HH = Math.floor(tHH);
- MM = (HH == 0) ? Math.round(tHH * 60) : Math.round((tHH % HH) * 60);
- HH = lpad(HH, 2, "0");
- MM = lpad(MM, 2, "0");
- if (pFlag =="1") {
- rTime = HH+":"+MM;
- } else {
- rTime = HH+"시간 "+MM+"분";
- }
- // alert(rTime);
- return rTime;
- }
- // 소요시간계산
- function fTimeSplit(pData){
- //2009-02-03 ycd 변경
- /*
- var hTime = pData.split("시간 ");
- if (hTime[0] == "") return 0;
- var wHH = Number(hTime[0]);
- var mTime = hTime[1].split("분");
- return Number(hTime[0]) + (Number(mTime[0])/60);
- */
- var hTime = pData.substr(0,2);
- if (hTime == "") return 0;
- var wHH = Number(hTime);
- var mTime = pData.substr(3,2);
- return Number(hTime) + (Number(mTime)/60);
- }
- function fTotalTimeSet(){
- var TotTime = 0.0;
- var wTime = "";
- var sRowCnt = grd_opposture.rows - grd_opposture.fixedrows;
- for (var i=1; i<= sRowCnt; i++){
- wTime = model.getValue(xPathData +"/opposturespec/opposture/opposturelist["+i+"]/oppostureterm");
- if (wTime != "") {
- TotTime += fTimeSplit(wTime);
- if (i > 1) {
- HH = Math.floor(TotTime);
- MM = (HH == 0) ? Math.round(TotTime * 60) : Math.round((TotTime % HH) * 60);
- model.setValue(xPathData +"/opposturespec/opposture/opposturelist["+i+"]/opposturetot", HH+"시간 "+MM+"분");
- }
- }
- }
- grd_opposture.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : 마취시작,종료시간 입력제한 처리 */
- /* param : 마취종류가 국소인경우는 직접입력한다 */
- /* -------------------------------------------------- */
- function fAnstTimeControl(pAnst) {
- var sDisab = (pAnst == "") ? true : false ;
- var sVisib = (pAnst == "") ? "hidden" : "visible";
- if(pAnst != ""){
- var sTmpOpcnfmdd = model.getValue(xPathData+"/opcnfmdd");
- //model.setValue("/root/init/workinst/datetimedata/anstsrtdd", sTmpOpcnfmdd);
- model.setValue("/root/init/workinst/datetimedata/anstsrtdd", "");
- model.setValue("/root/init/workinst/datetimedata/anstsrthh", "");
- //model.setValue("/root/init/workinst/datetimedata/anstenddd", sTmpOpcnfmdd);
- model.setValue("/root/init/workinst/datetimedata/anstenddd", "");
- model.setValue("/root/init/workinst/datetimedata/anstendhh", "");
- model.setValue("/root/init/workinst/datetimedata/opfromdd", sTmpOpcnfmdd);
- model.setValue("/root/init/workinst/datetimedata/opfromhh", "");
- model.setValue("/root/init/workinst/datetimedata/optodd", sTmpOpcnfmdd);
- model.setValue("/root/init/workinst/datetimedata/optohh", "");
- inp_anstsrtdd.disabled = true;
- inp_anstsrthh.disabled = true;
- bbt_anstsrthh.attribute("visibility")= "hidden";
- inp_anstenddd.disabled = true;
- inp_anstendhh.disabled = true;
- bbt_anstendhh.attribute("visibility")= "hidden";
- }
- inp_opfromdd.disabled = sDisab;
- inp_opfromhh.disabled = sDisab;
- bbt_opfromhh.attribute("visibility")= sVisib;
- inp_optodd.disabled = sDisab;
- inp_optohh.disabled = sDisab;
- bbt_optohh.attribute("visibility") = sVisib;
- inp_anstsrtdd.refresh();
- inp_anstsrthh.refresh();
- bbt_anstsrthh.refresh();
- inp_anstenddd.refresh();
- inp_anstendhh.refresh();
- bbt_anstendhh.refresh();
- inp_opfromdd.refresh();
- inp_opfromhh.refresh();
- inp_optodd.refresh();
- inp_optohh.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : 수술시작,수술시간 입력제한 처리 */
- /* param : 마취종류가 국소인경우는 직접입력한다 */
- /* -------------------------------------------------- */
- function fOpTimeControl(pAnst) {
- var sCheck = 0;
- // 2009-02-04 ycd 마취종류 선택 변경에 의해 삭제 처리
- //var sTmpAntkindCheck01 = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck01");
- //var sTmpAntkindCheck02 = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck02");
- //var sTmpAntkindCheck09 = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck09");
- var sTmpAnstkindcheck03 = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck03");
- var sTmpAnstcprchk = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstcprchk");
- var sTmpAnstkindcheck99 = model.getValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstkindcheck99");
- //var sAnstmthdcd = model.getValue(xPathData+"/anstmthdcd" );
- var sAnstmthdname = model.getValue(xPathData+"/anstmthdname" );
- var sAnstmthdnamesub = model.getValue(xPathData+"/anstmthdsubname" );
- if( getUserInfo("dutplceinstcd") == "017" ) {//빈센트만 2010.05.27 K. J. M
- var openddd = model.getValue(xPathDispDT+"/optodd");
- var opendhh = model.getValue(xPathDispDT+"/optohh");
- if( (model.getValue(xPathDispDT+"/patoutroomdd") == "")||(model.getValue(xPathDispDT+"/patoutroomdd") != ""&&model.getValue(xPathDispDT+"/patoutroomhh") == "") ) {
- if( (openddd != "")&&(opendhh != "")&&(sTmpAnstkindcheck03 == "S") ){//국소마취일경우 수술종료시간 셋팅
- model.setValue(xPathDispDT+"/patoutroomdd", openddd);
- model.setValue(xPathDispDT+"/patoutroomhh", opendhh);
- }
- }
- }
- // 2009-02-04 ycd 마취종류 선택 변경에 의해 삭제 처리
- //if (sTmpAntkindCheck01 != "") sCheck++; // 전신
- //if (sTmpAntkindCheck02 != "") sCheck++; // 부위
- //2009-02-04 이미 삭제된 부분
- //if (sTmpAntkindCheck09 != "") sCheck++; // 기타
- /*
- //2008-08-28 오후 2:33:08 taebum 국소마취일 경우 주석처리함.
- if (sCheck == 0) {
- if (sTmpAntkindCheck02 == "") sCheck++; // 국소
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdname", "");
- //ipt_anstmthdname.value = "";
- }
- */
- // 2009-02-04 ycd 마취종류 선택 변경에 의해 삭제 처리
- /*
- if (sCheck != 0) {
- model.setValue(xPathDispDT+"/anstsrtdd", model.getValue(xPathData+"/anstanstsrtdt").substr(0,8) ); // 마취시작일자
- model.setValue(xPathDispDT+"/anstsrthh", model.getValue(xPathData+"/anstanstsrtdt").substr(8,4) ); // 마취시작시간
- model.setValue(xPathDispDT+"/anstenddd", model.getValue(xPathData+"/anstanstenddt").substr(0,8) ); // 마취종료일자
- model.setValue(xPathDispDT+"/anstendhh", model.getValue(xPathData+"/anstanstenddt").substr(8,4) ); // 마취종료시간
- //2008-09-03 오전 10:55:49 taebum 협진관련 추가
- if((model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno")) || (model.getValue(xPathData+"/mainoprsrvno") == "-") ){
- model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/anstopfromdt" ).substr(0,8)); // 수술시작일자
- model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/anstopfromdt" ).substr(8,4)); // 수술시작시간
- model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/anstoptodt" ).substr(0,8)); // 수술종료일자
- model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/anstoptodt" ).substr(8,4)); // 수술종료시간
- }else{
- //부수술일 경우
- model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/opfromdt" ).substr(0,8)); // 수술시작일자
- model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/opfromdt" ).substr(8,4)); // 수술시작시간
- model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/optodt" ).substr(0,8)); // 수술종료일자
- model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/optodt" ).substr(8,4)); // 수술종료시간
- }
- if (sTmpAntkindCheck01 == "G"){ // 전신
- if(sAnstmthdcd == "G"){
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdname",sAnstmthdname);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdnamesub",sAnstmthdnamesub);
- }
- }
- if (sTmpAntkindCheck02 == "P"){ // 부위
- if(sAnstmthdcd == "P"){
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdname", sAnstmthdname);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdnamesub",sAnstmthdnamesub);
- }
- }
- if (sTmpAntkindCheck09 == "E"){ // 기타
- if(sAnstmthdcd == "E"){
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdname", sAnstmthdname);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdnamesub",sAnstmthdnamesub);
- }
- }
- }
- */
- // 2009-02-04 ycd 마취종류 선택 변경 부분
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdname", sAnstmthdname);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/anstkindspec/anstkind/anstmthdnamesub",sAnstmthdnamesub);
- model.setValue(xPathDispDT+"/anstsrtdd", model.getValue(xPathData+"/anstanstsrtdt").substr(0,8) ); // 마취시작일자
- model.setValue(xPathDispDT+"/anstsrthh", model.getValue(xPathData+"/anstanstsrtdt").substr(8,4) ); // 마취시작시간
- model.setValue(xPathDispDT+"/anstenddd", model.getValue(xPathData+"/anstanstenddt").substr(0,8) ); // 마취종료일자
- model.setValue(xPathDispDT+"/anstendhh", model.getValue(xPathData+"/anstanstenddt").substr(8,4) ); // 마취종료시간
- sOpCnfmDD = model.getValue(xPathData+"/opcnfmdd");
- if(sTmpAnstkindcheck03 == "" && sTmpAnstcprchk == "" && sTmpAnstkindcheck99 == ""){
- //if((model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno")) || (model.getValue(xPathData+"/mainoprsrvno") == "-") ){
- // model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/opfromdt" ).substr(0,8)); // 수술시작일자
- // model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/opfromdt" ).substr(8,4)); // 수술시작시간
- // model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/optodt" ).substr(0,8)); // 수술종료일자
- // model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/optodt" ).substr(8,4)); // 수술종료시간
- //}else{
- //부수술일 경우
- if(model.getValue(xPathDispDT+"/opfromdd") == "" ) model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/anstopfromdt" ).substr(0,8)); // 수술시작일자
- if(model.getValue(xPathDispDT+"/opfromhh") == "" ) model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/anstopfromdt" ).substr(8,4)); // 수술시작시간
- if(model.getValue(xPathDispDT+"/optodd") == "" ) model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/anstoptodt" ).substr(0,8)); // 수술종료일자
- if(model.getValue(xPathDispDT+"/optohh") == "" ) model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/anstoptodt" ).substr(8,4)); // 수술종료시간
- //2009-04-16 YCD 무조건 주수술의 정보를 가저옴
- //model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/anstopfromdt" ).substr(0,8)); // 수술시작일자
- //model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/anstopfromdt" ).substr(8,4)); // 수술시작시간
- //model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/anstoptodt" ).substr(0,8)); // 수술종료일자
- //model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/anstoptodt" ).substr(8,4)); // 수술종료시간
- //}
- sCheck++;
- }else{
- //if((model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno")) || (model.getValue(xPathData+"/mainoprsrvno") == "-") ){
- // model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/opfromdt" ).substr(0,8)); // 수술시작일자
- // model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/opfromdt" ).substr(8,4)); // 수술시작시간
- // model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/optodt" ).substr(0,8)); // 수술종료일자
- // model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/optodt" ).substr(8,4)); // 수술종료시간
- //}else{
- //부수술일 경우
- // model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/anstopfromdt" ).substr(0,8)); // 수술시작일자
- // model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/anstopfromdt" ).substr(8,4)); // 수술시작시간
- // model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/anstoptodt" ).substr(0,8)); // 수술종료일자
- // model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/anstoptodt" ).substr(8,4)); // 수술종료시간
- //}
- if(model.getValue(xPathDispDT+"/opfromdd") == "" ) model.setValue(xPathDispDT+"/opfromdd" , model.getValue(xPathData+"/anstopfromdt" ).substr(0,8)); // 수술시작일자
- if(model.getValue(xPathDispDT+"/opfromhh") == "" ) model.setValue(xPathDispDT+"/opfromhh" , model.getValue(xPathData+"/anstopfromdt" ).substr(8,4)); // 수술시작시간
- if(model.getValue(xPathDispDT+"/optodd") == "" ) model.setValue(xPathDispDT+"/optodd" , model.getValue(xPathData+"/anstoptodt" ).substr(0,8)); // 수술종료일자
- if(model.getValue(xPathDispDT+"/optohh") == "" ) model.setValue(xPathDispDT+"/optohh" , model.getValue(xPathData+"/anstoptodt" ).substr(8,4)); // 수술종료시간
- }
- //if (model.getValue(xPathDispDT+"/anstsrtdd" ) == "") model.setValue(xPathDispDT+"/anstsrtdd" , sOpCnfmDD);
- //if (model.getValue(xPathDispDT+"/anstenddd" ) == "") model.setValue(xPathDispDT+"/anstenddd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/perfidarvdd") == "") model.setValue(xPathDispDT+"/perfidarvdd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/perfidoutdd") == "") model.setValue(xPathDispDT+"/perfidoutdd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/opfromdd" ) == "") model.setValue(xPathDispDT+"/opfromdd" , sOpCnfmDD);
- if (model.getValue(xPathDispDT+"/optodd" ) == "") model.setValue(xPathDispDT+"/optodd" , sOpCnfmDD);
- var sDisab = (sCheck != 0) ? true : false ;
- var sVisib = (sCheck != 0) ? "hidden" : "visible";
- if ((model.getValue(xPathData+"/oprsrvno") == model.getValue(xPathData+"/mainoprsrvno")) ||
- (model.getValue(xPathData+"/mainoprsrvno") == "-" ) ){ //주수술일 경우 처리
- inp_opfromdd.disabled = sDisab;
- inp_opfromhh.disabled = sDisab;
- bbt_opfromhh.attribute("visibility")= sVisib;
- inp_optodd.disabled = sDisab;
- inp_optohh.disabled = sDisab;
- bbt_optohh.attribute("visibility") = sVisib;
- }else{ //부수술일 경우 처리
- inp_opfromdd.disabled = false;
- inp_opfromhh.disabled = false;
- bbt_opfromhh.attribute("visibility")= "visible";
- inp_optodd.disabled = false;
- inp_optohh.disabled = false;
- bbt_optohh.attribute("visibility") = "visible";
- }
- /*2008-08-28 오전 10:39:43 전신, 부위일 경우에 국소, 기타 disable 처리
- 2009-02-03 ycd 기록 항목에서 삭제되어 주석처리
- if(sAnstmthdcd == "G" || sAnstmthdcd == "P"){
- chk_anstkindcheck03.disabled = true;
- chk_anstkindcheck09.disabled = true;
- chk_anstkindcheck99.disabled = true;
- ipt_anstkindothertext.disabled = true;
- input3.disabled = true;
- }
- */
- // inp_opfromdd.refresh();
- // inp_opfromhh.refresh();
- // bbt_opfromhh.refresh();
- // inp_optodd.refresh();
- // inp_optohh.refresh();
- // bbt_optohh.refresh();
- grp_time.refresh();
- //ipt_anstmthdname.refresh();
- }
- /* ------------------------------------------------- */
- /* desc : 총수술시간 가져오기 */
- /* -------------------------------------------------- */
- function fOpTotalTime() {
- var opScalecd = model.getValue("/root/init/opscale/codelist/cdid");
- var sAnstmthdcd = model.getValue(xPathData+"/anstmthdcd" ); // 마취구분
- // var sOpscale = model.getValue(xPathData+"/opscale");
- var sFromdd = model.getValue(xPathDispDT+"/patinroomdd" ); // 입실일자
- var sFromhh = model.getValue(xPathDispDT+"/patinroomhh" ); // 입실시간
- var sTodd = model.getValue(xPathDispDT+"/patoutroomdd"); // 퇴실일자
- var sTohh = model.getValue(xPathDispDT+"/patoutroomhh"); // 퇴실시간
- if (sFromhh !="" && sFromhh != null && sTohh !="" && sTohh != null
- && sFromhh != "undefined" && sTohh != "undefined") {
- var rTime = fTimeInterval(sFromdd, sTodd, sFromhh, sTohh);
- model.setValue("/root/init/workinst/OpOtherData/OpTotalTime", rTime );
- opt_OpTotalTime.refresh();
- if (opScalecd =="A") { // 2009. 10. 26 han19 : 이영선선생님 요청사항 : 변경요청번호 : 8861 , Task No : 37761
- // 수술스케일을 입실일시와 퇴실일시를 가지고 계산해서 자동으로 셋티해주도록 하는 로직 추가
- // 기존에 저장된 수술스케일 값이 있더라도 계산된 값에 의해 자동으로 변환하게 셋팅함
- if (sFromdd != sTodd) {
- var sTimeInterval1 = getTimeInterval(sFromhh+"00", "240000" ); // 두 시간사이의 차(초단위)
- var sTimeInterval2 = getTimeInterval("000000", sTohh+"00" ); // 두 시간사이의 차(초단위) )
- } else {
- var sTimeInterval1 = getTimeInterval(sFromhh+"00", sTohh+"00" ); // 두 시간사이의 차(초단위)
- var sTimeInterval2 = "000000"; // 두 시간사이의 차(초단위)
- }
- var opUseTime = (parseInt(sTimeInterval1) + parseInt(sTimeInterval2)) / 60;
- var sTime1 = model.getValue("/root/init/opscaletm/codelist[sortseq= 1]/cdid");
- var sTime2 = model.getValue("/root/init/opscaletm/codelist[sortseq= 2]/cdid");
- var sTime3 = model.getValue("/root/init/opscaletm/codelist[sortseq= 3]/cdid");
- if (opUseTime < parseInt(sTime1)) {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "S");
- } else if (opUseTime >= parseInt(sTime1) && opUseTime < parseInt(sTime2) ) {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "M");
- } else if (opUseTime >= parseInt(sTime2) && opUseTime < parseInt(sTime3)) {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "L");
- } else if (opUseTime >= parseInt(sTime3)) {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "X");
- }
- } else if(opScalecd =="B") { // 여의도 성모병원 요청사항: by 박영우 20100122
- // 성모병원은 기존에 저장된 수술스케일 값이 있다면 계산된 값이 아닌 스케일 값으로 대체
- if(sOpscaleChgFlag == true || sOpscaleOrg == "") { // 기존 값이 없거나 변화한 값이 있다면..
- if (sFromdd != sTodd) {
- var sTimeInterval1 = getTimeInterval(sFromhh+"00", "240000" ); // 두 시간사이의 차(초단위)
- var sTimeInterval2 = getTimeInterval("000000", sTohh+"00" ); // 두 시간사이의 차(초단위) )
- } else {
- var sTimeInterval1 = getTimeInterval(sFromhh+"00", sTohh+"00" ); // 두 시간사이의 차(초단위)
- var sTimeInterval2 = "000000"; // 두 시간사이의 차(초단위)
- }
- var opUseTime = (parseInt(sTimeInterval1) + parseInt(sTimeInterval2)) / 60;
- var sGTime1 = 0;
- var sGTime2 = 0;
- var sETime1 = 0;
- var sETime2 = 0;
- if(sAnstmthdcd == "G" || sAnstmthdcd == "P" || sAnstmthdcd == "X" ) { // 전신 or 부위 or Others 2010.03.02 K.J.M
- sGTime1 = model.getValue("/root/init/opscaletm/codelist[sortseq= 2]/cdid");
- sGTime2 = model.getValue("/root/init/opscaletm/codelist[sortseq= 3]/cdid");
- if (opUseTime < parseInt(sGTime1) && sOpscaleOrg != "M") {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "M");
- } else if (opUseTime >= parseInt(sGTime1) && opUseTime < parseInt(sGTime2) && sOpscaleOrg != "L" ) {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "L");
- } else if (opUseTime >= parseInt(sGTime2) && sOpscaleOrg != "X") {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "X");
- }
- } else if(sAnstmthdcd == "S") { //국소
- sETime1 = model.getValue("/root/init/opscaletm/codelist[sortseq= 1]/cdid");
- sETime2 = model.getValue("/root/init/opscaletm/codelist[sortseq= 3]/cdid");
- if (opUseTime < parseInt(sETime1) && sOpscaleOrg != "S") {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "S");
- } else if (opUseTime >= parseInt(sETime1) && opUseTime < parseInt(sETime2) && sOpscaleOrg != "M" ) {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "M");
- } else if (opUseTime >= parseInt(sETime2) && sOpscaleOrg != "L") {
- model.setValue("/root/main/MnphopcrData/MnphopcrList/opscale", "L");
- }
- }
- sOpscaleOrg = model.getValue("/root/main/MnphopcrData/MnphopcrList/opscale");
- }
- }
- model.refresh();
- }
- }
- /* ------------------------------------------------- */
- /* desc : 총마취시간 가져오기 */
- /* -------------------------------------------------- */
- function fAnTotalTime() {
- var sFromdd = model.getValue(xPathDispDT+"/anstsrtdd" );; // 입실일자
- var sFromhh = model.getValue(xPathDispDT+"/anstsrthh" );; // 입실시간
- var sTodd = model.getValue(xPathDispDT+"/anstenddd" );; // 퇴실일자
- var sTohh = model.getValue(xPathDispDT+"/anstendhh" );; // 퇴실시간
- //if( sFromhh!="" ) {
- // if( sFromhh.length < 4 ) {
- // messageBox("입실시간을 잘못 입력하셨습니다.!", "E000");
- // return;
- // }
- //}
- //if( sTohh!="" ) {
- // if( sTohh.length < 4 ) {
- // messageBox("퇴실시간을 잘못 입력하셨습니다.!", "E000");
- // return;
- // }
- //}
- if( sFromhh!="" && sTohh !="" ) {
- var rTime = fTimeInterval(sFromdd, sTodd, sFromhh, sTohh);
- model.setValue("/root/init/workinst/OpOtherData/AnTotalTime", rTime );
- opt_AnTotalTime.refresh();
- }
- }
- //Timeout User Check
- function fTimeoutUserEnter(pIdx) {
- var sPath = "/timeoutspec/timeout/";
- var sData = "perfdr*perfdrnm*pertdrdeptcd*pertdrdeptnm*011" +"#"
- + "apprtcdr*apprtcdrnm*apprtcdrdeptcd*apprtcdrdeptnm*011" +"#"
- + "anstdr*anstdrnm*anstdrdeptcd*anstdrdeptnm*012" +"#"
- + "nurse1*nurse1nm*nurse1deptcd*nurse1deptnm*015" +"#"
- + "nurse2*nurse2nm*nurse2deptcd*nurse2deptnm*017"
- var tNode = sData.split("#");
- var wNode = tNode[pIdx].split("*");
- var wDoc = eval("inp_"+wNode[1]);
- model.setValue(xPathData+sPath+wNode[0], "");
- model.setValue(xPathData+sPath+wNode[2], "");
- model.setValue(xPathData+sPath+wNode[3], "");
- if (wDoc.currentText == "") {
- wDoc.attribute("color") = "";
- wDoc.refresh();
- return;
- }
- fUserEnter(xPathData,sPath+wNode[0], sPath+wNode[1], sPath+wNode[2], sPath+wNode[3], wDoc.currentText, wDoc,"all",wNode[4]);
- model.removeNodeset("/root/UserData/list");
- if (model.getValue(xPathData+sPath+wNode[0]) =="") {
- wDoc.attribute("color") = "#D22D2D";
- } else {
- wDoc.attribute("color") = "";
- }
- wDoc.refresh();
- }
- // Grid 선택 / 취소
- function fGridCheckToggle(pGrid, pGridNode, pCheck, pValue){
- var wValue = "";
- // 그리드 이벤트가 발생하면 그리드에서 선택된 로우들의 index를 받아옴
- var iRow = pGrid.row; // Grid의 첫 선택 Row
- var sRow = pGrid.selectedRows; // 선택 Grid 수
- var eRow = pGrid.selectedRow(0); // Grid의 첫 선택 Row
- var tRow = pGrid.rows; // Grid의 전체수
- if (instance1.selectSingleNode(pGridNode).childNodes.length == 0) return;
- if (event.ctrlKey == 1) { // ctrlKey 를 누르고 row 선택시 각 그리드의 상태값 변경
- wValue = model.getValue(pGridNode+"/MnpmcartList["+pGrid.row+"]/"+pCheck );
- model.setValue(pGridNode+"/MnpmcartList["+pGrid.row+"]/"+pCheck,((wValue == pValue) ? "" : pValue));
- }
- else if (event.shiftKey == 1) { // shiftKey를 누르고 처음위치와 마지막 위치를 선택하면 선택된 row의 상태값이 변경
- fGridCheckClear(pGridNode,tRow, pCheck);
- if (iRow == eRow){
- fGridCheckSetting(pGridNode, iRow, iRow+sRow,pCheck, pValue);
- } else{
- fGridCheckSetting(pGridNode, eRow, iRow ,pCheck, pValue);
- }
- } else { // 마우스를 클릭한 상태에서 드래하면 처음 위치부터 마지막 위치까지 선택된 row의 상태값이 변경
- fGridCheckClear(pGridNode,tRow, pCheck);
- if (sRow == "1"){
- wValue = model.getValue(pGridNode+"/MnpmcartList["+pGrid.row+"]/"+pCheck );
- model.setValue(pGridNode+"/MnpmcartList["+pGrid.row+"]/"+pCheck ,((wValue == pValue) ? "" : pValue));
- } else {
- if (iRow == eRow){
- fGridCheckSetting(pGridNode, iRow, iRow+sRow-1, pCheck, pValue);
- }else{
- fGridCheckSetting(pGridNode, eRow, iRow , pCheck, pValue);
- }
- }
- }
- pGrid.refresh();
- }
- // // Grid 전 선택값을 Clear 한다.
- // function fGridCheckClear(pGNode, pRow, pCheck){
- //
- // // alert( pGNode);
- //
- // for(ii=1 ; ii < pRow ; ii++){
- // model.setValue(pGNode+"/MnpmcartList["+ii+"]/"+pCheck , "");
- // }
- // }
- //
- // // Grid 전선택값을 Settting 한다.
- // function fGridCheckSetting(pGNode, pSRow, pERow, pCheck, pVal){
- //
- // for (j = pSRow ; j <= pERow ; j++) {
- // model.setValue(pGNode+"/MnpmcartList["+j+"]/"+pCheck , pVal);
- // }
- // }
- // datagrid 에서 선택되어 있는 셀들의 collection 을 반환한다.
- function fSelectedCells(pGrid){
- if (pGrid.row < 2) return;
- var selectedCells = pGrid.selectedCells;
- var sCell = selectedCells.item(0);
- var eCell = selectedCells.item(selectedCells.length-1);
- if (sCell.col < grd_count.colRef("nursnm11") || sCell.col > pGrid.colRef("nursnm42") || sCell.row == eCell.row && sCell.col == eCell.col) return ;
- var cPath = "/root/main/MnphopcoLists/mnphopcolist";
- var tTail = "11 12 21 22 31 32 41 42";
- var sTail = tTail.split(" ");
- var sPosId =(sCell.col % pGrid.colRef("nursnm11"));
- var sInPos =(sCell.col % 2);
- var sNursnm = model.getValue(cPath + "[" +(sCell.row - 1)+"]/nursnm" + sTail[sPosId]);
- var sNursid = model.getValue(cPath + "[" +(sCell.row - 1)+"]/nursid" + sTail[sPosId]);
- var sDeptcd = model.getValue(cPath + "[" +(sCell.row - 1)+"]/deptcd" + sTail[sPosId]);
- var sDeptnm = model.getValue(cPath + "[" +(sCell.row - 1)+"]/deptnm" + sTail[sPosId]);
- if (sNursid == "") {
- if (sNursnm != "") {
- alert("선택 카운터를 확인 하십시요!!!");
- return;
- }
- }
- for (var i=1; i < selectedCells.length; i++) {
- eCell = selectedCells.item(i);
- if (eCell) {
- if (sInPos == (eCell.col % 2) && eval(eCell.col) < pGrid.colRef("samey") && eval(eCell.col) > pGrid.colRef("packqty")) {
- if (model.getValue(cPath + "[" +(eCell.row - 1)+"]/nacls") == "false") {
- sPosId = (eCell.col % pGrid.colRef("nursnm11"));
- model.setValue(cPath + "[" +(eCell.row - 1)+"]/nursnm" + sTail[sPosId], sNursnm);
- model.setValue(cPath + "[" +(eCell.row - 1)+"]/nursid" + sTail[sPosId], sNursid);
- model.setValue(cPath + "[" +(eCell.row - 1)+"]/deptcd" + sTail[sPosId], sDeptcd);
- model.setValue(cPath + "[" +(eCell.row - 1)+"]/deptnm" + sTail[sPosId], sDeptnm);
- }
- }
- }
- }
- }
- //Catheter User Check
- function fCatheterUserEnter(pDoc, pPath1, pPath2, pIdx) {
- var sPath = "/warmcoldregmspec/warmcoldregm/"+pPath1+"/"+pPath2 ;
- var sPath2 = "/warmcoldregmspec/warmcoldregm/"+pPath1+"/"+pPath2+"id";
- var qCls = "D"; // 의사
- if (pIdx != 1) qCls = (pIdx == 2) ? "N" : "A";
- model.setValue(xPathData + sPath2, "");
- if (pDoc.currentText == "") {
- pDoc.attribute("color") = "";
- pDoc.refresh();
- return;
- }
- fUserEnter(xPathData,sPath2, sPath, "", "", pDoc.currentText, pDoc, "all", qCls);
- if (model.getValue(xPathData + sPath2) =="") {
- pDoc.attribute("color") = "#D22D2D";
- } else {
- pDoc.attribute("color") = "";
- }
- pDoc.refresh();
- }
- //
- function fCatheterCheck(pData){
- if (fCheckBoxValueCheck(eval("chk_"+pData+"check").value, 'X') ) {
- fClearGroup(eval("grp_warmcoldregm_"+pData), 4);
- eval("chk_"+pData+"check").value = "X" ;
- eval("grp_"+pData).disabled = "true";
- eval("chk_"+pData+"preop" ).disabled = "true";
- eval("chk_"+pData+"intraop").disabled = "true";
- eval("chk_"+pData+"postop" ).disabled = "true";
- }
- else {
- eval("grp_"+pData).disabled = "false";
- eval("chk_"+pData+"preop" ).disabled = "false";
- eval("chk_"+pData+"intraop").disabled = "false";
- eval("chk_"+pData+"postop" ).disabled = "false";
- }
- }
- // ※ 전자서명 호출
- function fSignProcessSet(pIdx) {
- //2008-07-28 오후 12:28:31 인증시 수술 후 진단명 정보(진료에서 조회한 내역은 삭제 후 저장시킴. taebum
- model.removeNodeset("/root/main/MnphopcrData/MnphopcrList/oprddata");
- certkind = "1";
- var updtdata = getGridUpdateData(grd_skinsurveylist);
- if (Sign.signprocess() == true){ // ▶ 전자인증 관련 환자 인적 정보를 보내줌.
- var wSigninfo = "pid" +"▦" // 01 등록번호
- + "orddd" +"▦" // 02 입원일자(입원,응급)/진료일자(외래)
- + "cretno" +"▦" // 03 생성번호
- + "signno" +"▦" // 04 서명번호(인증번호)
- + "recdd" +"▦" // 05 실제 기록이 이루어진 기록일자
- + "rectm" +"▦" // 06 실제 기록이 이루어진 기록시간
- + "recsaveflag" +"▦" // 07 전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- + "signflag" +"▦" // 08 서명자료구분(01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- + "signgenrflag" +"▦" // 09 외래/입원구분(코드정의서 M0010 참조)
- + "formcd" +"▦" // 10 각 기록지별 서식코드 0000002473 N57 간호 수술간호기록
- + "orddeptcd" +"▦" // 11 진료부서코드
- + "orddrid" +"▦" // 12 진료의사ID (집도의)
- + "signbfcnts" +"▦" // 13 ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- + "signaftcnts" +"▩" // 14 ▶ 공인인증 처리후 데이터
- + sPid +"▦" // 01 등록번호
- + sIndd +"▦" // 02 입원일자(입원,응급)/진료일자(외래)
- + sCretno +"▦" // 03 생성번호
- + model.getValue(xPathData+"/certno" )+"▦" // 04 서명번호(인증번호)
- + getCurrentDate() +"▦" // 05 실제 기록이 이루어진 기록일자
- + getCurrentTime() +"▦" // 06 실제 기록이 이루어진 기록시간
- + "N" +"▦" // 07 전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- + "02" +"▦" // 08 서명자료구분(01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- + sSignGernalFlag +"▦" // 09 외래/입원구분(코드정의서 M0010 참조) 2008-05-27 오후 3:32:35 김태범 null 값 넘어오는 부분 수정
- + "0000002473" +"▦" // 10 각 기록지별 서식코드 0000002473 N57 간호 수술간호기록
- + model.getValue(xPathData+"/orddeptcd" )+"▦" // 11 진료부서코드
- + model.getValue(xPathData+"/perfdrid" )+"▦" // 12 진료의사ID (집도의)
- + Sign.signedInfos[1] +"▦" // 13 ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- + Sign.signedInfos[2] +"▩"; // 14 ▶ 공인인증 처리후 데이터
- model.makeValue("/root/send/signinfo" , wSigninfo);
- model.makeNode("/root/send/signinfo2");
- if(updtdata != "" && updtdata != null) {
- certkind = "2"
- Sign.certreload = false;
- if(Sign.signprocess()) {
- var vSignData = "pid" +"▦" // 01 등록번호
- + "orddd" +"▦" // 02 입원일자(입원,응급)/진료일자(외래)
- + "cretno" +"▦" // 03 생성번호
- + "signno" +"▦" // 04 서명번호(인증번호)
- + "recdd" +"▦" // 05 실제 기록이 이루어진 기록일자
- + "rectm" +"▦" // 06 실제 기록이 이루어진 기록시간
- + "recsaveflag" +"▦" // 07 전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- + "signflag" +"▦" // 08 서명자료구분(01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- + "signgenrflag" +"▦" // 09 외래/입원구분(코드정의서 M0010 참조)
- + "formcd" +"▦" // 10 각 기록지별 서식코드 0000002473 N57 간호 수술간호기록
- + "orddeptcd" +"▦" // 11 진료부서코드
- + "orddrid" +"▦" // 12 진료의사ID (집도의)
- + "signbfcnts" +"▦" // 13 ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- + "signaftcnts" +"▩" // 14 ▶ 공인인증 처리후 데이터
- + sPid +"▦" // 01 등록번호
- + sIndd +"▦" // 02 입원일자(입원,응급)/진료일자(외래)
- + sCretno +"▦" // 03 생성번호
- + sSignNo +"▦" // 04 서명번호(인증번호)
- + getCurrentDate() +"▦" // 05 실제 기록이 이루어진 기록일자
- + getCurrentTime() +"▦" // 06 실제 기록이 이루어진 기록시간
- + "N" +"▦" // 07 전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- + "02" +"▦" // 08 서명자료구분(01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- + sSignGernalFlag +"▦" // 09 외래/입원구분(코드정의서 M0010 참조) 2008-05-27 오후 3:32:35 김태범 null 값 넘어오는 부분 수정
- + "0900006329" +"▦" // 10 각 기록지별 서식코드 0000002473 N57 간호 수술간호기록
- + model.getValue(xPathData+"/orddeptcd" )+"▦" // 11 진료부서코드
- + model.getValue(xPathData+"/perfdrid" )+"▦" // 12 진료의사ID (집도의)
- + Sign.signedInfos[1] +"▦" // 13 ▶ 인증할 데이터 정보(미기록 노드 제거된 정보)
- + Sign.signedInfos[2] +"▩"; // 14 ▶ 공인인증 처리후 데이터
- model.makeValue("/root/send/signinfo2" , vSignData);
- model.makeValue("/root/send/recsavedata" , updtdata);
- }
- }
- }else{
- return false;
- }
- }
- // ※ 인증데이터 생성함수 만들기
- function fMake_SignData(){
- // ▶ 기록 관련 인스턴스 전체를 copy, 인증에 저장할 모든 Instance AddNode한다.
- if(certkind == "1") {
- model.setValue(xPathData+"/opeudata", "");
- Sign.addnode("/root/main/MnphopcrData" );
- Sign.addnode("/root/main/MnphopcoLists" );
- Sign.addnode("/root/main/SheetData3" );
- Sign.addnode("/root/init/workinst/OpcdData" );
- Sign.addnode("/root/init/workinst/OpeuLists" );
- Sign.addnode("/root/init/workinst/OpOtherData" );
- Sign.addnode("/root/exotinfo/signotlists" );
- Sign.addnode("/root/exotinfo/signexlists" );
- // --------------------------
- var wOprsPath = Sign.XPATH_SIGNINFO + "/MnphopcrData/MnphopcrList";
- //-----------(20110314) 경북대
- //count list의 비고란 추가
- model.setValue(wOprsPath+"/opcntlistremark", model.getValue("/root/main/MnphopcrData/MnphopcrList/opcntlistremark"));
- //implant/prosthesis 비고란 추가
- model.setValue(wOprsPath+"/implantcmt", model.getValue("/root/main/MnphopcrData/MnphopcrList/implantcmt"));
- //수술중 사용한 약품 비고란 추가
- model.setValue(wOprsPath+"/drugcmt", model.getValue("/root/main/MnphopcrData/MnphopcrList/drugcmt"));
- //-----------(20110314) 경북대
- // 수술구분
- var oFlag = model.getValue(wOprsPath+"/optrustflag");
- if (oFlag =="1") model.setValue(wOprsPath+"/optrustflag", "정규");
- if (oFlag =="2") model.setValue(wOprsPath+"/optrustflag", "응급");
- if (oFlag =="3") model.setValue(wOprsPath+"/optrustflag", "추가");
- // Time Out
- var TimeCheck = model.getValue(wOprsPath + "/opbfpatcnfmspec/opbfpatcnfm/opcnfcheck");
- // 수술부위
- var TimeCheck2 = model.getValue(wOprsPath + "/oppart");
- var TimeData = " ";
- if (TimeCheck == "") {
- TimeData += "환자명 등록번호 집도의 수술부위";
- } else {
- TimeData += (TimeCheck.indexOf("1") != -1) ? "v 환자명 " :"";
- TimeData += (TimeCheck.indexOf("2") != -1) ? "v 등록번호 " :"";
- TimeData += (TimeCheck.indexOf("3") != -1) ? "v 집도의 " :"";
- TimeData += (TimeCheck.indexOf("4") != -1) ? "v 수술부위" :"";
- }
- if (TimeCheck2 !="") TimeData += TimeCheck2;
- model.setValue(wOprsPath + "/oppart" , TimeData);
- // 피부 소독제
- var Skindinfkind = model.getValue(wOprsPath + "/skindinfspec/skindinf/Skindinfkind");
- var tempSkindinfkind = Skindinfkind.split(" ");
- var tmpLabel;
- var skindLabel1 = "", skindLabel2= "", skindLabel3= "", skindLabel4= "", skindLabel5= "", skindLabel6= "", skindLabel7= "", skindLabel8 = "", skindLabel9 = "", skindLabel10 = "";
- for( var j = 0; j < tempSkindinfkind.length; j++ ) {
- tmpLabel = tempSkindinfkind[j];
- if( tmpLabel == "BetadineSoap" ) {
- skindLabel1 = "Betadine Soap ";
- }else if( tmpLabel == "BetadineSolution" ) {
- skindLabel2 = "Betadine Solution ";
- }else if( tmpLabel == "Alcohol" ) {
- skindLabel3 = "Alcohol ";
- }else if( tmpLabel == "H2O2" ) {
- skindLabel4 = "H2O2 ";
- }else if( tmpLabel == "Chlorhexidine4%+Alcohol" ) {
- skindLabel5 = "Chlorhexidine4%+Alcohol ";
- }else if( tmpLabel == "Chlorhexidine0.5%" ) {
- skindLabel6 = "Chlorhexidine0.5% ";
- }else if( tmpLabel == "SalineIrrigation" ) {
- skindLabel7 = "SalineIrrigation ";
- }else if( tmpLabel == "기타" ) {
- skindLabel8 = "기타 ";
- }else if( tmpLabel == "ChlorhexidineSoap" ) {
- skindLabel9 = "Chlorhexidine Soap ";
- }else if( tmpLabel == "IodineTincture1%" ) {
- skindLabel10 = "Iodine Tincture 1% ";
- }
- }
- /*var sKind = (Skindinfkind.indexOf("BetadineSoap" ) != -1) ? "Betadine Soap " : ""
- + (Skindinfkind.indexOf("BetadineSolution" ) != -1) ? "Betadine Solution " : ""
- + (Skindinfkind.indexOf("Alcohol" ) != -1) ? "Alcohol " : ""
- + (Skindinfkind.indexOf("H2O2" ) != -1) ? "H2O2 " : ""
- + (Skindinfkind.indexOf("Chlorhexidine4%+Alcohol") != -1) ? "Chlorhexidine4%+Alcohol " : ""
- + (Skindinfkind.indexOf("Chlorhexidine0.05%" ) != -1) ? "Chlorhexidine0.05% " : ""
- + (Skindinfkind.indexOf("SalineIrrigation" ) != -1) ? "SalineIrrigation " : ""
- + (Skindinfkind.indexOf("기타" ) != -1) ? "기타 " : ""
- + model.getValue(wOprsPath + "/skindinfspec/skindinf/SkindOther") ;*/
- var sKind = skindLabel1
- + skindLabel2
- + skindLabel3
- + skindLabel4
- + skindLabel5
- + skindLabel6
- + skindLabel7
- + skindLabel9
- + skindLabel10
- + skindLabel8 ; // 기타가 마지막으로..
- // -- SkindOther 정보는 XSL 파일에서 조합된다.
- //+ model.getValue(wOprsPath + "/skindinfspec/skindinf/SkindOther");
- //2010.02.22 K. J. M 피부소독제 선택한 모든 데이터 저장되도록 수정
- model.setValue(wOprsPath + "/skindinfspec/skindinf/Skindinfkind", sKind);
- //--------(20110512)
- model.setValue(wOprsPath + "/opdiscordspec/opdiscord", opdiscordspec);
- //alert(instance1.selectSingleNode(xPathData+"/opdiscordspec").xml);
- //--------(20110512)
- model.setValue(wOprsPath + "/implantcmt", model.getValue(wOprsPath+"/implantcmt"));
- model.setValue(wOprsPath + "/spccmt", model.getValue(wOprsPath+"/spccmt"));
- var wKind = "";
- var wKindNm = "";
- var sRowCnt = grd_opposture.rows - grd_opposture.fixedrows;
- //인증 내역 코드를 명칭으로 바꾸는 부분 taebum
- for (var i=1; i <= sRowCnt; i++){
- wKind = model.getValue(wOprsPath + "/opposturespec/opposture/opposturelist["+i+"]/opposturekind");
- wKindNm = model.getValue("/root/init/M0016list/M0016[cdid ='"+wKind+"']/cdnm");
- model.setValue(wOprsPath + "/opposturespec/opposture/opposturelist["+i+"]/opposturekind", wKindNm);
- }
- //2008-08-01 오전 9:55:41 add taebum
- //1. 삭모
- var wCuthairflag = model.getValue(wOprsPath + "/cuthairflag");
- var wCuthairflagNm = "";
- if(wCuthairflag != "" && wCuthairflag != "undefined" && wCuthairflag != null){
- if(wCuthairflag == "Y"){
- wCuthairflagNm = "예";
- }else if(wCuthairflag == "Y"){
- wCuthairflagNm = "아니오";
- }
- if(wCuthairflagNm != ""){
- model.setValue(wOprsPath + "/cuthairflag", wCuthairflagNm);
- }
- }
- //2. X-ray List
- var wXrayflag = model.getValue(wOprsPath + "/xrayflag");
- var wXrayArr = wXrayflag.split(" ");
- var wXrayflagNm = "";
- if(wXrayflag != "" && wXrayflag != "undefined" && wXrayflag != null){
- for(var k = 0; k < wXrayArr.length; k++){
- if(wXrayArr[k] != "" && wXrayArr[k] != null && wXrayArr[k] != "undefined"){
- switch (wXrayArr[k]) {
- case "0" :
- wXrayflagNm = wXrayflagNm + "해당없음 ";
- break;
- case "1" :
- wXrayflagNm = wXrayflagNm + "Portable ";
- break;
- case "2" :
- wXrayflagNm = wXrayflagNm + "C-arm ";
- break;
- case "3" :
- wXrayflagNm = wXrayflagNm + "조영제 사용 ";
- //var wXraydrugspec = model.getValue(wOprsPath + "/xraydrugspec");
- //if(wXraydrugspec != "" && wXraydrugspec != "undefined" && wXraydrugspec != null){
- // wXrayflagNm = wXrayflagNm + " : " + wXraydrugspec;
- //}
- break;
- default :
- break;
- }
- }
- }
- if(wXrayflagNm != ""){
- model.setValue(wOprsPath + "/xrayflag", wXrayflagNm);
- }
- }
- //3. Dressing
- var wDrsflagflag = model.getValue(wOprsPath + "/drsflag");
- var wDrsflagflagNm = "";
- if(wDrsflagflag != "" && wDrsflagflag != "undefined" && wDrsflagflag != null){
- switch (wDrsflagflag) {
- case "0" :
- wDrsflagflagNm = "해당없음";
- break;
- case "1" :
- wDrsflagflagNm = "Sterile dressing";
- break;
- case "2" :
- wDrsflagflagNm = "Cast";
- break;
- case "3" :
- wDrsflagflagNm = "Splint";
- break;
- case "9" :
- wDrsflagflagNm = "기타 ";
- var wDrsetc = model.getValue(wOprsPath + "/drsetc");
- if(wDrsetc != "" && wDrsetc != "undefined" && wDrsetc != null){
- wDrsflagflagNm = wDrsflagflagNm + " : " + wDrsetc;
- }
- break;
- default :
- break;
- }
- if(wDrsflagflagNm != ""){
- model.setValue(wOprsPath + "/drsflag", wDrsflagflagNm);
- model.removeNodeSet(wOprsPath + "/drsetc");
- }
- }
- //4. 삽관기록
- sRowCnt = grd_inscath.rows - grd_inscath.fixedrows;
- for (var i=1; i <= sRowCnt; i++){
- wKindNm = grd_inscath.labelmatrix(i, 4);
- model.setValue(wOprsPath + "/warmcoldregmspec/lists/cathlist/inscath["+i+"]/actflag", wKindNm);
- wKindNm = grd_inscath.labelmatrix(i, 5);
- model.setValue(wOprsPath + "/warmcoldregmspec/lists/cathlist/inscath["+i+"]/method", wKindNm);
- }
- // 2009-02-04 ycd 기록화면 수정 작업 (체위에 따른 피부변화 기록 항목 삭제)
- //5. 체위에 따른 피부변화
- /*
- sRowCnt = datagrid2.rows - datagrid2.fixedrows;
- for (var i=1; i <= sRowCnt; i++){
- wKindNm = datagrid2.labelmatrix(i, 0);
- model.setValue(wOprsPath + "/postureskinupdtspec/lists/skinlist["+i+"]/apflag", wKindNm);
- wKindNm = datagrid2.labelmatrix(i, 1);
- model.setValue(wOprsPath + "/postureskinupdtspec/lists/skinlist["+i+"]/rlflag", wKindNm);
- wKindNm = datagrid2.labelmatrix(i, 2);
- model.setValue(wOprsPath + "/postureskinupdtspec/lists/skinlist["+i+"]/partcd", wKindNm);
- wKindNm = datagrid2.labelmatrix(i, 3);
- model.setValue(wOprsPath + "/postureskinupdtspec/lists/skinlist["+i+"]/opbstat", wKindNm);
- wKindNm = datagrid2.labelmatrix(i, 7);
- model.setValue(wOprsPath + "/postureskinupdtspec/lists/skinlist["+i+"]/opaftstat", wKindNm);
- }
- */
- // 2009-02-04 ycd 기록화면 수정 작업 (온냉요법 항목 삭제)
- //6. 온냉요법
- /*
- sRowCnt = datagrid3.rows - datagrid3.fixedrows;
- for (var i=1; i <= sRowCnt; i++){
- wKindNm = datagrid3.labelmatrix(i, 0);
- model.setValue(wOprsPath + "/warmcoldregmspec/lists/warmlist/warmcoldregm["+i+"]/partcd", wKindNm);
- wKindNm = datagrid3.labelmatrix(i, 1);
- model.setValue(wOprsPath + "/warmcoldregmspec/lists/warmlist/warmcoldregm["+i+"]/kindflag", wKindNm);
- wKindNm = datagrid3.labelmatrix(i, 2);
- model.setValue(wOprsPath + "/warmcoldregmspec/lists/warmlist/warmcoldregm["+i+"]/apppart", wKindNm);
- wKindNm = datagrid3.labelmatrix(i, 3);
- model.setValue(wOprsPath + "/warmcoldregmspec/lists/warmlist/warmcoldregm["+i+"]/appkind", wKindNm);
- }
- */
- //7. 적출물기록
- //Grid 정보 - 감염정보가 중복되어 있으므로 속도개선을 위하여 1번째 컬럼명만 한글로 대체함 2번째 줄부터는 코드로 인증
- var wInfectyn = model.getValue(Sign.XPATH_SIGNINFO + "/signexlists/eolist/infectyn");
- var wInfectynNm = "";
- if(wInfectyn != "" && wInfectyn != null && wInfectyn != "undefined"){
- switch (wInfectyn) {
- case "Y" :
- wInfectynNm = "예";
- break;
- case "N" :
- wInfectynNm = "아니오";
- break;
- default :
- break;
- }
- model.setValue(Sign.XPATH_SIGNINFO + "/signexlists/eolist/infectyn", wInfectynNm);
- }
- var wInfectflag = model.getValue(Sign.XPATH_SIGNINFO + "/signexlists/eolist/infectflag");
- var wInfectflagNm = "";
- var wInfectetc = "";
- if(wInfectflag != "" && wInfectflag != null && wInfectflag != "undefined"){
- var wInfectflagArr = wInfectflag.split(" ");
- if(wInfectflagArr.length > 0){
- for(var k = 0; k < wInfectflagArr.length; k++){
- switch (wInfectflagArr[k]) {
- case "01" :
- wInfectflagNm = wInfectflagNm + "* HBs Ag ";
- break;
- case "02" :
- wInfectflagNm = wInfectflagNm + "* HCV Ab ";
- break;
- case "03" :
- wInfectflagNm = wInfectflagNm + "* VDRL ";
- break;
- case "04" :
- wInfectflagNm = wInfectflagNm + "* HIV ";
- break;
- case "05" :
- wInfectflagNm = wInfectflagNm + "* active TB ";
- break;
- //case "06" :
- // wInfectflagNm = "* 기타";
- // wInfectetc = model.getValue(Sign.XPATH_SIGNINFO + "/signexlists/eolist/infectetc");
- // if(wInfectetc != "" && wInfectetc != null && wInfectetc != "undefined"){
- // wInfectflagNm = wInfectflagNm+ " : "+wInfectetc+" ";
- // }
- // break;
- default :
- break;
- }
- }
- model.setValue(Sign.XPATH_SIGNINFO + "/signexlists/eolist/infectflag", wInfectflagNm);
- }
- }
- //8. 장기이식 기록
- sRowCnt = getNodesetCount(Sign.XPATH_SIGNINFO+"/signotlists/organlist");
- var wOtflag = "";
- var wOtsendrecvflag = "";
- var wOtkind = "";
- var wChargspecimenflag = "";
- var wTempNm = "";
- for (var k=1; k <= sRowCnt; k++){
- wOtflag = model.getValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/otflag");
- wOtsendrecvflag = model.getValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/otsendrecvflag");
- wOtkind = model.getValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/otkind");
- wChargspecimenflag = model.getValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/chargspecimenflag");
- wTempNm = "";
- switch (wOtflag) {
- case "L" :
- wTempNm = "생체 ";
- break;
- case "C" :
- wTempNm = "뇌사 ";
- break;
- default :
- break;
- }
- model.setValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/otflag", wTempNm);
- wTempNm = "";
- switch (wOtsendrecvflag) {
- case "D" :
- wTempNm = "Donor ";
- break;
- case "R" :
- wTempNm = "Recipient ";
- break;
- default :
- break;
- }
- model.setValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/otsendrecvflag", wTempNm);
- wTempNm = "";
- switch (wOtkind) {
- case "01" :
- wTempNm = "간";
- break;
- case "02" :
- wTempNm = "각막";
- break;
- case "03" :
- wTempNm = "골수";
- break;
- case "04" :
- wTempNm = "소장";
- break;
- case "06" :
- wTempNm = "심장";
- break;
- case "07" :
- wTempNm = "췌장";
- break;
- case "08" :
- wTempNm = "폐";
- break;
- case "09" :
- wTempNm = "뼈";
- break;
- case "10" :
- wTempNm = "판막";
- break;
- default :
- break;
- }
- model.setValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/otkind", wTempNm);
- wTempNm = "";
- switch (wChargspecimenflag) {
- case "Y" :
- wTempNm = "예";
- break;
- case "N" :
- wTempNm = "아니오";
- break;
- default :
- break;
- }
- model.setValue(Sign.XPATH_SIGNINFO+"/signotlists/organlist["+k+"]/chargspecimenflag", wTempNm);
- }
- } else {
- model.removeNodeSet(Sign.XPATH_SIGNINFO);
- model.makeNode(Sign.XPATH_SIGNINFO);
- Sign.addnode("/root/main/SheetData3/skinserveyinfo");
- var SignPath = Sign.XPATH_SIGNINFO + "/skinserveyinfo/skinserveylist";
- for(var i = 0 ; i <= getNodesetCount(SignPath) ; i++){
- var sSurveyPriod = model.getValue(SignPath + "["+i+"]/surveypriod");
- var sSurveyPlace = model.getValue(SignPath + "["+i+"]/surveyplace");
- var sSkinStat = model.getValue(SignPath + "["+i+"]/skinstat");
- if( sSurveyPriod != "-" && sSurveyPriod != "" ){
- model.setValue(SignPath + "["+ i +"]/surveypriod", model.getValue("/root/init/M0559list/M0559[cdid = '" + sSurveyPriod +"' ]/cdnm"));
- }
- if( sSurveyPlace != "-" && sSurveyPlace != "" ){
- model.setValue(SignPath + "["+ i +"]/surveyplace", model.getValue("/root/init/M0560list/M0560[cdid = '" + sSurveyPlace +"' ]/cdnm"));
- }
- if(sSkinStat != "" ){
- model.setValue(SignPath + "["+ i +"]/skinstat", model.getValue("/root/code/codeinfo/codelist[cdgrupid = '137' and cdid = '" + sSkinStat +"' ]/cdnm"));
- }
- }
- }
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* 인증 저장 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2008-07-27 오후 3:18:21 */
- /* by : 김태범 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 수술간호기록 */
- /* 인증저장 시 적출물, 장기이식정보 저장 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fGetExtcOtRecord(){
- model.setValue("/root/exotinfo/searchinfo/oprsrvno", sOprsrvno);
- submit("TRMNP00319", false);
- //2008-07-29 오전 1:48:22 인증 내역에 장기이식, 적출물을 포함하기 위한 선처리 작업
- var sExOtListXpath = "/root/exotinfo/extotlists/datalists";
- var NodeCnt = getNodesetCnt(model, sExOtListXpath+"/organlist"); //장기이식
- if (NodeCnt > 0){
- for (var i =1; i <= NodeCnt; i++){
- model.makeNode("/root/exotinfo/signotlists/organlist["+i+"]");
- model.copyNode("/root/exotinfo/signotlists/organlist["+i+"]", sExOtListXpath+"/organlist["+i+"]");
- }
- }
- NodeCnt = getNodesetCnt(model, sExOtListXpath+"/eolist"); //적출물
- if (NodeCnt > 0){
- for (var i =1; i <= NodeCnt; i++){
- model.makeNode("/root/exotinfo/signexlists/eolist["+i+"]");
- model.copyNode("/root/exotinfo/signexlists/eolist["+i+"]", sExOtListXpath+"/eolist["+i+"]");
- }
- }
- // 진정기록(관찰기록) 데이타_ 손성훈.
- NodeCnt = getNodesetCnt(model, sExOtListXpath+"/oblists"); //관찰기록 _ 손성훈.
- model.removeNode("/root/exotinfo/signexlists/oblists"); // 현재 저장 되어 있는 관찰기록정보를 인증저장하기위해.
- if (NodeCnt > 0){
- for (var i =1; i <= NodeCnt; i++){
- model.makeNode("/root/exotinfo/signexlists/oblists["+i+"]");
- model.copyNode("/root/exotinfo/signexlists/oblists["+i+"]", sExOtListXpath+"/oblists["+i+"]");
- }
- }
- }
- /* ------------------------------------------------- */
- /* SMMNP00300_수술기록 */
- /* On Load 시 Call */
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2008.05.15 */
- /* by : 김태범 */
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 수술간호기록1 */
- /* 진료진(수술실,회복실-의사,간호사) 조회 */
- /* param : */
- /* return : */
- /* --------------------------------------------------*/
- function fSheet1TimeOutAddInfo() {
- model.removenode("/root/send");
- //parameter info(group구분) : 011▦015▦012▦017▦(집도의, 수술간호사, 마취의, 마취간호사)
- model.makeValue("root/send/data1","011▦015▦012▦017▦");//마지막 데이터는 집도의의 로그인 부서정보
- var sUserDeptcd = getUserInfo("dutplcecd");
- var sDeptcd = model.getValue("/root/main/operation/list/perfdeptcd");//opinfo의 perfdeptcd
- var sOpcnfmdd = model.getValue("/root/main/operation/list/opcnfmdd");//opinfo의 수술확정일자
- model.makeValue("root/send/data2", sUserDeptcd);//log in한 부서코드
- model.makeValue("root/send/data3", sDeptcd); //집도과 부서코드
- model.makeValue("root/send/data4", sOpcnfmdd); //수술확정일자
- // 2009-02-02 ycd 기록 항목 제거하여 별도 처리
- submit("TRMNP00309", false);
- // 2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- if(submit("TRMNP00309", false)){
- //각 콤보 박스에 빈row 추가.
- addComboItem( "cmb_perfdr", " ", "", "above" );
- addComboItem( "cmb_nurse1", " ", "", "above" );
- addComboItem( "cmb_anstdr", " ", "", "above" );
- addComboItem( "cmb_nurse2", " ", "", "above" );
- addComboItem( "combo2" , " ", "", "above" );
- }
- */
- //협진 수술일 경우 주수술기록의 TimeOut 정보를 가져온다.
- if((model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){
- //2009-02-02 ycd 기록 항목 제거로 인하여 주석 처리
- /*
- if(model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdr") == "" ||
- model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdr") == null ||
- model.getValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdr") == "undefined"){
- var sMainoptimeoutinfo = model.getValue("/root/main/MnphopcrData/MnphopcrList/mainoptimeoutinfo");
- if(sMainoptimeoutinfo != "" && sMainoptimeoutinfo != null && sMainoptimeoutinfo != "undefined"){
- var sRowArr = sMainoptimeoutinfo.split("▤");
- if(sRowArr.length > 0){
- var sPerInfodArr = sRowArr[0].split("▥");
- var sAnstInfoArr = sRowArr[1].split("▥");
- var sNur1Arr = sRowArr[2].split("▥");
- var sNur2Arr = sRowArr[3].split("▥");
- var sTimeoutcheck = sRowArr[4];
- if(sPerInfodArr[0] != "" && sPerInfodArr[0] != null && sPerInfodArr[0] != "undefined" &&
- sPerInfodArr[1] != "" && sPerInfodArr[1] != null && sPerInfodArr[1] != "undefined"){
- addComboItem( "cmb_perfdr", sPerInfodArr[1] , sPerInfodArr[0], "above" );
- }
- model.setValue("/root/init/HideData/timeOutDisplayInfo/perfdr", sPerInfodArr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdr", sPerInfodArr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdrnm", sPerInfodArr[1]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/pertdrdeptcd", sPerInfodArr[2]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/pertdrdeptnm", sPerInfodArr[3]);
- model.setValue("/root/init/HideData/timeOutDisplayInfo/anstdr", sAnstInfoArr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdr", sAnstInfoArr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdrnm", sAnstInfoArr[1]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdrdeptcd", sAnstInfoArr[2]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdrdeptnm", sAnstInfoArr[3]);
- model.setValue("/root/init/HideData/timeOutDisplayInfo/nurse1", sNur1Arr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1", sNur1Arr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1nm", sNur1Arr[1]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1deptcd", sNur1Arr[2]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1deptnm", sNur1Arr[3]);
- model.setValue("/root/init/HideData/timeOutDisplayInfo/nurse2", sNur2Arr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2", sNur2Arr[0]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2nm", sNur2Arr[1]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2deptcd", sNur2Arr[2]);
- model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2deptnm", sNur2Arr[3]);
- //model.setValue("/root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/timeoutcheck", sTimeoutcheck);
- }
- }
- }
- */
- }
- }
- /* -------------------------------------------------------------*/
- /* SMMNP00300_수술기록 */
- /* TimeOut 의료진 Combo value changed시 */
- /* -------------------------------------------------------------*/
- /* group : EMR 간호 수술마취 */
- /* ver : 2008.05.19 */
- /* by : 김태범 */
- /* -------------------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 수술간호기록1 */
- /* 해당 의료진의 이름,부서,부서코드 mapping */
- /* param : */
- /* return : */
- /* desc : 2009-02-02 ycd 기록 항목 제거로 인하여 사용 안함 */
- /* -------------------------------------------------------------*/
- function fTimeOutComboValueChanged(pFlag){
- var sUseridXpath = ""; //의료진 id
- var sUsernmXpath = ""; //의료진 이름
- var sDeptcdXpath = ""; //의료진 부서코드
- var sDeptnmXpath = ""; //의료진 부서명
- var sOrinalXpath = ""; //서버에서 조회한 의료진 리스트 xPath
- var sDisplayIdXpath = "root/init/HideData/timeOutDisplayInfo"; //사용자 ID Display용 xPath
- var sDisplayCtrlId = "";
- switch(pFlag){
- case "perfdr" : //수술의(집도의)
- sOrinalXpath = "root/init/HideData/timeOutAddInfo/opdoctlist";
- sUseridXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdr";
- sUsernmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/perfdrnm";
- sDeptcdXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/pertdrdeptcd";
- sDeptnmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/pertdrdeptnm";
- sDisplayCtrlId = "out_perfdr";
- break;
- case "nurse1" : //수술 간호사
- sOrinalXpath = "root/init/HideData/timeOutAddInfo/opnurlist";
- sUseridXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1";
- sUsernmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1nm";
- sDeptcdXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1deptcd";
- sDeptnmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse1deptnm";
- sDisplayCtrlId = "out_nurse1";
- break;
- case "anstdr" : //마취의
- sOrinalXpath = "root/init/HideData/timeOutAddInfo/anstdoclist";
- sUseridXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdr";
- sUsernmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdrnm";
- sDeptcdXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdrdeptcd";
- sDeptnmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/anstdrdeptnm";
- sDisplayCtrlId = "out_anstdr";
- break;
- case "nurse2" : //마취간호사
- sOrinalXpath = "root/init/HideData/timeOutAddInfo/anstnurlist";
- sUseridXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2";
- sUsernmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2nm";
- sDeptcdXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2deptcd";
- sDeptnmXpath = "root/main/MnphopcrData/MnphopcrList/timeoutspec/timeout/nurse2deptnm";
- sDisplayCtrlId = "out_nurse2";
- break;
- default :
- break;
- }
- if(sUsernmXpath !="" && sUsernmXpath != null && sDeptcdXpath != "" && sDeptcdXpath != null &&
- sDeptnmXpath != "" && sDeptnmXpath != null){
- var userid = model.getValue(sUseridXpath);
- model.setValue(sUsernmXpath, model.getValue(sOrinalXpath+"["+"userid='"+userid+"'"+"]/usernm"));
- model.setValue(sDeptcdXpath, model.getValue(sOrinalXpath+"["+"userid='"+userid+"'"+"]/posdeptcd"));
- model.setValue(sDeptnmXpath, model.getValue(sOrinalXpath+"["+"userid='"+userid+"'"+"]/posdeptnm"));
- //사용자 ID Display용 Setting
- model.setValue(sDisplayIdXpath+"/"+pFlag, model.getValue(sUseridXpath));
- switch(sDisplayCtrlId){
- case "out_perfdr" :
- out_perfdr.refresh();
- break;
- case "out_nurse1" :
- out_nurse1.refresh();
- break;
- case "out_anstdr" :
- out_anstdr.refresh();
- break;
- case "out_nurse2" :
- out_nurse2.refresh();
- break;
- }
- }
- }
- /* ------------------------------------------------- */
- /* group : EMR 간호 수술마취 */
- /* ver : 2008.05.19 */
- /* 2009.09.14 그리드로 제어하도록 변경 */
- /* by : 김태범 */
- /* -------------------------------------------------- */
- /* type : function */
- /* access : public */
- /* desc : 수술간호기록2 */
- /* Count List 조회 팝업 버튼 클릭 시 이벤트 */
- /* param : */
- /* return : */
- /* -------------------------------------------------- */
- function fClickCountListPopUpBtn(pRow){
- var xpos = event.screenX;
- var ypos = event.screenY-300;
- var sCodeList = "";
- var sCodeList = "";
- var sCodeRecNo = grd_count.valueMatrix(pRow, grd_count.colRef("recno"));
- var iLength = getNodesetCount("/root/main/MnphopcoLists/mnphopcolist");
- if(iLength > 0){
- //sql query in () 안에 들어갈 쿼리 생성
- for(var i = 1; i <= iLength; i++){
- if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/recno") != sCodeRecNo) continue ;
- if(sCodeList == ""){
- if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd") == "" ||
- model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd") == null ||
- model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd") == "undefined"){
- //
- }else{
- sCodeList = "'"+model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd")+"'";
- }
- }else{
- if(model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd") == "" ||
- model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd") == null ||
- model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd") == "undefined"){
- //
- }else{
- sCodeList = sCodeList + ", '" + model.getValue("/root/main/MnphopcoLists/mnphopcolist["+i+"]/kindcd")+"'";
- }
- }
- }
- }
- setParameter("SendData_codeQuery", sCodeList+"▦"+model.getValue("/root/init/HideData/oprsrvno")+"▦"+sCodeRecNo);
- modal("SPMNP00304");
- var sResultArr = getParameter("codeQuery_result_data");
- setParameter("SendData_codeQuery", "");
- var tempSeq = "";
- var iInsertCnt = 0;
- var sRebuildFlag = "false";
- if(sResultArr != "" && sResultArr != "undefined" && sResultArr != null){
- /*
- if(grd_count.fixedcellcheckbox(0, grd_count.colRef("nacls")) == false){
- grd_count.fixedcellcheckbox(0, grd_count.colRef("nacls")) = true;
- grd_count.fixedcellcheckbox(1, grd_count.colRef("nacls")) = true;
- grd_count.fixedcellcheckbox(1, grd_count.colRef("samey")) = true;
- grd_count.fixedcellcheckbox(1, grd_count.colRef("samen")) = true;
- }
- */
- //fPackingMergeFalse();
- var sDisplayRowArr = sResultArr.split("▨");
- if(sDisplayRowArr.length > 0){
- for(var i = 1; i < sDisplayRowArr.length; i++){
- iLength = grd_count.Rows - grd_count.fixedRows + 1;
- var iCnt = 0;
- var rCnt = 0;
- var sTempSeq = 0;
- var sDisplayColArr = sDisplayRowArr[i-1].split("▥");
- if(sDisplayColArr == null || sDisplayColArr == "" || sDisplayColArr == "undefined"){
- break;
- }
- if(iLength > 0){
- for(var j = grd_count.fixedRows; j <= iLength; j++){
- sTempSeq = grd_count.valueMatrix(j, grd_count.colRef("refseq" ));
- sTempRecNo = grd_count.valueMatrix(j, grd_count.colRef("recno" ));
- sTempRecFlag = grd_count.valueMatrix(j, grd_count.colRef("recflag"));
- if( sCodeRecNo == sTempRecNo && parseInt(sTempSeq) < parseInt(sDisplayColArr[5]) ){
- rCnt = j;
- }
- }
- iCnt = rCnt + 1;
- grd_count.insertRow(rCnt, "below", false);
- sRebuildFlag = "true";
- grd_count.valueMatrix(iCnt, grd_count.colRef("codenm1" )) = sDisplayColArr[1] ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("codenm2" )) = sDisplayColArr[2] ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("codenm3" )) = sDisplayColArr[3] ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nacls" )) = "false" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("naclsinucd" )) = "-" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("initqty" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("addqty" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("totqty" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("packqty" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm11" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm12" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm21" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm22" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm31" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm32" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm41" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursnm42" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("samey" )) = "true" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("samen" )) = "false" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid11" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid12" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid21" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid22" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid31" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid32" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid41" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("nursid42" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd11" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd12" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd21" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd22" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd31" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd32" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd41" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptcd42" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm11" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm12" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm21" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm22" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm31" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm32" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm41" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("deptnm42" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid11" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid12" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid21" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid22" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid31" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid32" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid41" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("checkid42" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("packspec" )) = "" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("kindcd" )) = sDisplayColArr[4] ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("refseq" )) = sDisplayColArr[5] ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("recflag" )) = "I" ;
- grd_count.valueMatrix(iCnt, grd_count.colRef("recno" )) = sCodeRecNo ;
- }
- }
- }
- if(sRebuildFlag == "true"){
- grd_count.rebuild();
- fSetStyle();
- //fPackingMergeFalse();
- }
- //추가건에 대하여 해당없음 Check 여부에 따른 사유 입력 콤보 ReadOnly처리
- for(var i = grd_count.fixedRows ; i <= grd_count.Rows ; i++){
- if(grd_count.valueMatrix(i, grd_count.colRef("nacls")) == 'false'){
- grd_count.isReadOnly(i, grd_count.colRef("naclsinucd"), i, grd_count.colRef("naclsinucd")) = true;
- }
- }
- }
- }
- /**
- * Catheter 삽관기록 항목 추가 버튼 클릭 시 이벤트
- *
- */
- function fOpAddEqmtPopup(){
- var sTempXpath = "/root/main/MnphopcrData/MnphopcrList/warmcoldregmspec/lists/cathlist/inscath";//삽관 정보 xPath
- setParameter("SMMNP00300_searchFlag", "true");
- var xpos = 1;
- var ypos = 1;
- var sGridRefreshFlag = "false";
- modal("SPMNP00340", 1, xpos, ypos,"SPMNP00340", "", "");
- var sResult = getParameter("SMMNP00300_result_data");
- if(sResult != null && sResult != ""){
- setParameter("SMMNP00300_result_data", "");
- var sResultArr = sResult.split("▧");
- if(sResultArr.length > 0){
- var sGoodcd = ""; //삽관 종류
- var sGoodName = ""; //명칭
- var iAddRowCnt= grd_inscath.rows-grd_inscath.fixedRows;
- for(var i = 0; i < sResultArr.length; i++){
- var sResultDetailArr = sResultArr[i].split("▥");
- if(sResultDetailArr.length > 0){
- //팝업에서 넘어온 정보중 겹치는 정보는 제외하고 데이터를 insert한다.
- sGoodcd = sResultDetailArr[0]; //code
- sGoodName = sResultDetailArr[1]; //codename
- var sExsist = "false";
- var iTempGridCnt = getNodesetCount(sTempXpath);//삽관 정보 입력된 건수
- var sTempCode = ""; //기존 삽관기록 정보에 등록된 item코드
- for(var k = 1; k < iTempGridCnt+1; k++){
- //sTempCode = datagrid3.TextMatrix(k, 1);//현재 등록된 삽관 item코드
- sTempCode = grd_inscath.TextMatrix(k, 1);//현재 등록된 삽관 item코드
- //alert("sTempCode : " + sTempCode);
- if(sTempCode == sGoodcd){
- sExsist = "true";
- break;
- }
- }
- if(sExsist == "false"){
- //datagrid3.addRow(true, true);
- iAddRowCnt++;
- sGridRefreshFlag = "true";
- model.makeValue(sTempXpath+"["+iAddRowCnt+"]/itemcd", sGoodcd);
- model.makeValue(sTempXpath+"["+iAddRowCnt+"]/cathflag", "추가");
- model.makeValue(sTempXpath+"["+iAddRowCnt+"]/itemnm", sGoodName);
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/spec");
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/qty");
- model.makeValue(sTempXpath+"["+iAddRowCnt+"]/actflag", "P");
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/method");
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/partinfo");
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/actnm");
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/actid");
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/actdd");
- model.makeNode(sTempXpath+"["+iAddRowCnt+"]/acttm");
- }
- }
- }
- grd_inscath.rebuild();
- }
- }
- }
- /**
- * 집도의 요청에 의한 계수확인 안함 버튼 클릭 시 이벤트
- *
- */
- function fOnClickNoCountDoctClearBtn(){
- model.setValue("/root/main/MnphopcrData/MnphopcrList/nocountdoctid","");
- combo1.refresh();
- }
- /**
- * 적출물 기록 버튼 클릭 시 이벤트
- *
- */
- function fOnClickExtractObjectFormBtn(){
- var sSendData = "";
- setParameter("SMMNP00300_searchFlag", "true");
- var sSendPinfo1 = model.getValue("/root/main/MnphopcrData/MnphopcrList/opcnfmdd");//수술확정일자
- var sSendPinfo2 = model.getValue("/root/init/HideData/patinfo");
- var sSendPinfo3 = model.getValue("/root/init/HideData/patinfo2");
- //------------(20100915) 경북대
- //원본
- //var sSendDoctinfo = model.getValue(xPathData+"/perfdridnm" ) +"▥"+ // 집도의
- // + model.getValue(xPathData+"/perfdrid" ); // 집도의ID
- // 집도의 사번이 0으로시작하면 앞의 0이 짤린다.
- // 예: 02048 --> 2048
- var sPerfdrid = model.getValue(xPathData+"/perfdrid" );
- var sSendDoctinfo = model.getValue(xPathData+"/perfdridnm" ) +"▥"; // 집도의
- sSendDoctinfo = sSendDoctinfo.concat(sPerfdrid.toString()); // 집도의ID
- //------------(20100915) 경북대
- sPid = model.getValue("/root/init/HideData/pid" ); // 01 환자번호
- sOprsrvno = model.getValue("/root/init/HideData/oprsrvno"); // 02 수술예약(의뢰)번호(년도+일련번호)
- sOphistno = model.getValue("/root/init/HideData/ophistno"); // 03 예약번호에따른이력번호
- sInstcd = model.getValue("/root/init/HideData/instcd" ); // 04 기관코드
- var tempOproomcd = model.getValue(xPathData+"/oproomcd"); // 05 수술방코드
- sSendData = sPid+"▥"+ sOprsrvno +"▥"+ sOphistno +"▥"+ sInstcd +"▥"+ sOpfromdt +"▥"+tempOproomcd+"▨"+ sSendPinfo1+"▥"+sSendPinfo2+"▥"+sSendPinfo3+"▨"+sSendDoctinfo;
- setParameter("SMMNP00300_SearchCondition", sSendData);
- var xpos = 1;
- var ypos = 1;
- var sGridRefreshFlag = "false";
- modal("SPMNP00310", 1, xpos, ypos,"SPMNP00310", "", "");
- }
- /**
- * 관찰기록 버튼 클릭 시 이벤트
- *
- */
- function fOnClickObservationRecordFormBtn(){
- var sSendData = "";
- setParameter("SMMNP00300_searchFlag", "true");
- var sSendPinfo1 = model.getValue("/root/main/MnphopcrData/MnphopcrList/opcnfmdd");//수술확정일자
- var sSendPinfo2 = model.getValue("/root/init/HideData/patinfo");
- var sSendPinfo3 = model.getValue("/root/init/HideData/patinfo2");
- //------------(20100915) 경북대
- //원본
- //var sSendDoctinfo = model.getValue(xPathData+"/perfdridnm" ) +"▥"+ // 집도의
- // + model.getValue(xPathData+"/perfdrid" ); // 집도의ID
- // 집도의 사번이 0으로시작하면 앞의 0이 짤린다.
- // 예: 02048 --> 2048
- var sPerfdrid = model.getValue(xPathData+"/perfdrid" );
- var sSendDoctinfo = model.getValue(xPathData+"/perfdridnm" ) +"▥"; // 집도의
- sSendDoctinfo = sSendDoctinfo.concat(sPerfdrid.toString()); // 집도의ID
- //------------(20100915) 경북대
- sPid = model.getValue("/root/init/HideData/pid" ); // 01 환자번호
- sOprsrvno = model.getValue("/root/init/HideData/oprsrvno"); // 02 수술예약(의뢰)번호(년도+일련번호)
- sOphistno = model.getValue("/root/init/HideData/ophistno"); // 03 예약번호에따른이력번호
- sInstcd = model.getValue("/root/init/HideData/instcd" ); // 04 기관코드
- var tempOproomcd = model.getValue(xPathData+"/oproomcd"); // 05 수술방코드
- sSendData = sPid+"▥"+ sOprsrvno +"▥"+ sOphistno +"▥"+ sInstcd +"▥"+ sOpfromdt +"▥"+tempOproomcd+"▨"+ sSendPinfo1+"▥"+sSendPinfo2+"▥"+sSendPinfo3+"▨"+sSendDoctinfo;
- setParameter("SMMNP00300_SearchCondition", sSendData);
- var xpos = 1;
- var ypos = 1;
- var sGridRefreshFlag = "false";
- modal("SPMNP00315", 1, xpos, ypos,"SPMNP00315", "", "");
- }
- /**
- * 분만정보 조회 버튼 클릭 시 이벤트
- *
- */
- function fOnClickDRinfoBtn(){
- var sSendData = "";
- setParameter("SMMNP00300_DRsearchFlag", "true");
- var sSendPinfo1 = model.getValue("/root/main/MnphopcrData/MnphopcrList/opcnfmdd");
- var sSendPinfo2 = model.getValue("/root/init/HideData/patinfo");
- var sSendPinfo3 = model.getValue("/root/init/HideData/patinfo2");
- sPid = model.getValue("/root/init/HideData/pid" );
- sSendData = sPid +"▥"+ sIndd +"▥"+ sCretno +"▨"+ sSendPinfo1+"▥"+sSendPinfo2+"▥"+sSendPinfo3;
- setParameter("SMMNP00300_DrSearchCondition", sSendData);
- var xpos = 1;
- var ypos = 1;
- modal("SPMNP00320", 1, xpos, ypos,"SPMNP00320", "", "");
- }
- /**
- * 장기이식 버튼 클릭 시 이벤트
- *
- */
- function fOnClickOgInfoBtn(){
- var sSendData = "";
- setParameter("SMMNP00300_OrSearchFlag", "true");
- var sSendPinfo1 = model.getValue("/root/main/MnphopcrData/MnphopcrList/opcnfmdd");
- var sSendPinfo2 = model.getValue("/root/init/HideData/patinfo");
- var sSendPinfo3 = model.getValue("/root/init/HideData/patinfo2");
- sOprsrvno = model.getValue("/root/init/HideData/oprsrvno"); // 01 수술예약(의뢰)번호(년도+일련번호)
- sSendData = sOprsrvno +"▨"+ sSendPinfo1+"▥"+sSendPinfo2+"▥"+sSendPinfo3;
- setParameter("SMMNP00300_OrSearchCondition", sSendData);
- var xpos = 1;
- var ypos = 1;
- modal("SPMNP00330", 1, xpos, ypos,"SPMNP00330", "", "");
- }
- /**
- * 환자 입실일시 값 변경 시 이벤트
- *
- */
- function fValueChangedPatOpRoomIn(){
- var sArriTime = model.getValue("/root/init/workinst/datetimedata/patinroomhh");
- //시간에 입력된 자릿수가 4이상일 경우 바코드에서 넘어온 데이터 이므로 현재 시/분을 넣는다.
- if(sArriTime.length != null && sArriTime.length > 4){
- //alert("sArriTime.length : "+sArriTime.length);
- sArriTime = getCurrentTime().substr(0, 4);
- model.setValue("/root/init/workinst/datetimedata/patinroomhh", sArriTime);
- inp_patinroomhh.refresh();
- fInOutRoomSave("1");
- }
- }
- /**
- * 수술기록 Close시 Event
- *
- */
- function fCloseSuSulRec(){
- //alert("수술기록을 Close 하기전 Cache 정보 oprsrvno : "+model.getAttribute("susulrec_oprsrvno"));
- model.setAttribute("susulrec_oprsrvno", "");
- model.setAttribute("susulrec_pid" , "");
- model.setAttribute("susulrec_hngnm" , "");
- }
- /**
- * BarCode Scan시 이벤트
- *
- */
- function fGetBarCodeScan(){
- //input4.value = input4.currentText;
- var sBarCodeCd = input4.currentText; //model.getValue("/root/init/barcode/value");
- var sPid = model.getValue("/root/main/MnphopcrData/MnphopcrList/pid");
- if(sBarCodeCd == sPid){
- if( (model.getValue(xPathData+"/oprsrvno") != model.getValue(xPathData+"/mainoprsrvno")) &&
- (model.getValue(xPathData+"/mainoprsrvno") != "-" ) ){ //협진 수술일 경우 시간정보가 있을경우에만.
- return;
- if(model.getValue("/root/init/workinst/datetimedata/patinroomhh") != ""){
- fInOutRoomSave("1");
- model.setValue("/root/init/barcode/value", "");
- input4.refresh();
- }
- }else{
- model.setValue("/root/init/workinst/datetimedata/patinroomdd", getCurrentDate());
- model.setValue("/root/init/workinst/datetimedata/patinroomhh", getCurrentTime().substr(0, 4));
- fSettingOPdate("Opfromdt");
- fOpTotalTime();
- fInOutRoomSave("1");
- model.setValue("/root/init/barcode/value", "");
- input4.refresh();
- }
- }else{
- //messageBox("환자 정보가 일치하지 않습니다.", "E000");
- return;
- }
- }
- /**
- * 검체정보 그리드 색, 입력 제어 함수
- *
- */
- function fChangGridSetting(pFlag){
- switch(pFlag){
- case "grd_spclist" :
- grd_spclist.rebuild();
- if(model.getValue(xPathData+"/spcuseyn") == "X"){
- for (var iRow = grd_spclist.fixedrows; iRow <= grd_spclist.rows; iRow++){
- if(grd_spclist.valueMatrix(iRow, grd_spclist.colRef("qty")) == "0"){
- grd_spclist.valueMatrix(iRow, 2) ="";
- grd_spclist.valueMatrix(iRow, 3) ="";
- grd_spclist.valueMatrix(iRow, 4) ="";
- //--(20101015) 경북대
- //grd_spclist.isReadOnly(iRow, grd_spclist.colRef("qty"), iRow, 5) = true;
- //grd_spclist.cellstyle("background-color", iRow, 2, iRow, 5) = "#eaeaea";
- grd_spclist.valueMatrix(iRow, 6) ="";
- grd_spclist.isReadOnly(iRow, grd_spclist.colRef("qty"), iRow, 6) = true;
- grd_spclist.cellstyle("background-color", iRow, 2, iRow, 6) = "#eaeaea";
- //--(20101015) 경북대
- }
- }
- }else{
- for (var iRow = grd_spclist.fixedrows; iRow <= grd_spclist.rows; iRow++){
- if(grd_spclist.valueMatrix(iRow, grd_spclist.colRef("qty")) == "0"){
- grd_spclist.valueMatrix(iRow, 2) ="";
- grd_spclist.valueMatrix(iRow, 3) ="";
- grd_spclist.valueMatrix(iRow, 4) ="";
- grd_spclist.isReadOnly(iRow, grd_spclist.colRef("qty"), iRow, grd_spclist.colRef("qty")) = false;
- //--(20101015) 경북대
- //grd_spclist.isReadOnly(iRow, 3, iRow, 5) = true;
- //grd_spclist.cellstyle("background-color", iRow, 2, iRow, 5) = "#eaeaea";
- grd_spclist.valueMatrix(iRow, 6) ="";
- grd_spclist.isReadOnly(iRow, 3, iRow, 6) = true;
- grd_spclist.cellstyle("background-color", iRow, 2, iRow, 6) = "#eaeaea";
- //--(20101015) 경북대
- }else{
- grd_spclist.isReadOnly(iRow, 2, iRow, 5 )= false;
- grd_spclist.cellstyle("background-color", iRow, 2, iRow, 5) = "#ffffff";
- }
- }
- }
- break;
- case "grd_spclistnew" :
- grd_spclistnew.rebuild();
- if(model.getValue(xPathData+"/spcuseyn") == "X"){
- for (var iRow = grd_spclistnew.fixedrows; iRow <= grd_spclistnew.rows; iRow++){
- if(grd_spclistnew.valueMatrix(iRow, grd_spclistnew.colRef("qty")) == "0"){
- grd_spclistnew.valueMatrix(iRow, 2) ="";
- grd_spclistnew.valueMatrix(iRow, 3) ="";
- grd_spclistnew.valueMatrix(iRow, 4) ="";
- //--(20101015) 경북대
- //grd_spclist.isReadOnly(iRow, grd_spclist.colRef("qty"), iRow, 5) = true;
- //grd_spclist.cellstyle("background-color", iRow, 2, iRow, 5) = "#eaeaea";
- grd_spclistnew.valueMatrix(iRow, 6) ="";
- grd_spclistnew.isReadOnly(iRow, grd_spclistnew.colRef("qty"), iRow, 6) = true;
- grd_spclistnew.cellstyle("background-color", iRow, 2, iRow, 6) = "#eaeaea";
- //--(20101015) 경북대
- }
- }
- }else{
- for (var iRow = grd_spclistnew.fixedrows; iRow <= grd_spclistnew.rows; iRow++){
- grd_spclistnew.isReadOnly(iRow, 2, iRow, 5 )= false;
- grd_spclistnew.cellstyle("background-color", iRow, 2, iRow, 5) = "#ffffff";
- }
- }
- break;
- }
- }
- /**
- * 수술관련 시간 참여자 정보에 자동 세팅 처리(집도의입실, 수술시작)
- * 2009-02-20 ycd 추가
- */
- function fSettingOPdate(pFlag){
- switch(pFlag){
- case "all" :
- if(model.getValue("/root/init/workinst/datetimedata/perfidarvhh") != ""){
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrid1") != ""){
- model.setValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrtm1", model.getValue("/root/init/workinst/datetimedata/perfidarvhh"));
- }
- }
- if(model.getValue("/root/init/workinst/datetimedata/patinroomhh") != ""){
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrid2") != "" && model.getValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrtm2") == "" ){
- model.setValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrtm2", model.getValue("/root/init/workinst/datetimedata/patinroomhh"));
- }
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrid1") != "" && model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm1") == "" ){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm1", model.getValue("/root/init/workinst/datetimedata/patinroomhh") );
- }
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrid2") != "" && model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm2") == "" ){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm2", model.getValue("/root/init/workinst/datetimedata/patinroomhh"));
- }
- }
- break;
- case "Perfidarvdt" :
- if(model.getValue("/root/init/workinst/datetimedata/perfidarvhh") != ""){
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrid1") != ""){
- model.setValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrtm1", model.getValue("/root/init/workinst/datetimedata/perfidarvhh"));
- }
- }
- break;
- case "Opfromdt" :
- if(model.getValue("/root/init/workinst/datetimedata/patinroomhh") != ""){
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrid2") != "" && model.getValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrtm2") == "" ){
- model.setValue("/root/init/workinst/OpeuLists/opeulist1[1]/entrtm2", model.getValue("/root/init/workinst/datetimedata/patinroomhh"));
- }
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrid1") != "" && model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm1") == "" ){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm1", model.getValue("/root/init/workinst/datetimedata/patinroomhh"));
- }
- if(model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrid2") != "" && model.getValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm2") == "" ){
- model.setValue("/root/init/workinst/OpeuLists/opeulist2[1]/entrtm2", model.getValue("/root/init/workinst/datetimedata/patinroomhh"));
- }
- }
- break;
- }
- grd_opeu1.refresh();
- grd_opeu2.refresh();
- }
- /**
- * 수술지연시간 계산 로직
- * 2009-03-27 ycd 추가
- */
- function fCalcDelyTime(){
- var sDelyTm1 = ""; //수술실 퇴실 - 수술실 입실
- var sDelyTm2 = ""; //수술실 입실 - 마취시작
- var sDelyTm3 = ""; //수술실 입실 - 집도의 입실
- var sDelyTm4 = ""; //마취시작 - 집도의 입실
- var sPrePatOutdd = "";
- var sPrePatOuthh = "";
- //퇴실 - 입실 시간계산 2009.08.21 K.J.M
- var sDelyTmPath = "/root/main/MnphopcrData/MnphopcrList/opnursrectimeremark/delyresnlist/";
- var sPrePatOuttm = model.getValue("/root/main/MnphopcrData/MnphopcrList/prepatouttm");
- if( sPrePatOuttm != "" ) {
- sPrePatOutdd = sPrePatOuttm.substr(0, 8);
- sPrePatOuthh = sPrePatOuttm.substr(8, 4);
- }
- if(inp_patinroomdd.value != "" && inp_patinroomhh.value != "" && sPrePatOutdd != "" && sPrePatOuthh != "" ) {
- sDelyTm1 = fTimeInterval(sPrePatOutdd, inp_patinroomdd.value, sPrePatOuthh, inp_patinroomhh.value, "1");
- }
- if(inp_patinroomdd.value != "" && inp_patinroomhh.value != "" && inp_anstsrtdd.value != "" && inp_anstsrthh.value != ""){
- sDelyTm2 = fTimeInterval(inp_patinroomdd.value, inp_anstsrtdd.value, inp_patinroomhh.value, inp_anstsrthh.value, "1");
- }
- if(inp_patinroomdd.value != "" && inp_patinroomhh.value != "" && inp_perfidarvdd.value != "" && inp_perfidarvhh.value != ""){
- sDelyTm3 = fTimeInterval(inp_patinroomdd.value, inp_perfidarvdd.value, inp_patinroomhh.value, inp_perfidarvhh.value, "1");
- }
- if(inp_anstsrtdd.value != "" && inp_anstsrthh.value != "" && inp_perfidarvdd.value != "" && inp_perfidarvhh.value != ""){
- sDelyTm4 = fTimeInterval(inp_anstsrtdd.value, inp_perfidarvdd.value, inp_anstsrthh.value, inp_perfidarvhh.value, "1");
- }
- model.setValue(sDelyTmPath+"delytime1", sDelyTm1.replace(':' , ''));
- model.setValue(sDelyTmPath+"delytime2", sDelyTm2.replace(':' , ''));
- model.setValue(sDelyTmPath+"delytime3", sDelyTm3.replace(':' , ''));
- model.setValue(sDelyTmPath+"delytime4", sDelyTm4.replace(':' , ''));
- model.refresh();
- /*
- ipt_delytime2.value = sDelyTm2.replace(':' , '');
- ipt_delytime3.value = sDelyTm3.replace(':' , '');
- ipt_delytime4.value = sDelyTm4.replace(':' , '');
- */
- }
- //----------(20110512)
- // 불일치 조치사항 명칭저장
- function fopdicordnmcreate(){
- // 불일치 조치사항의 코드에 대한 명칭저장하기
- // 기존것 제거
- var tempXPath1 = xPathData+"/opdiscordspec/opdiscord/opdiscordnm";
- var iRow = getNodesetCount(tempXPath1);
- for (var i = iRow; i > 0; i--){
- model.removeNodeset(tempXPath1+"["+ i +"]");
- }
- // 불일치조치사항 기준자료(체크컨트롤) 새로 생성
- var tempXPath2 = "/root/init/HideData/OpBasicCdList/opdiscordlist";
- var tempV = "";
- iRow = getNodesetCount(tempXPath2);
- for (var i = 1; i <= iRow; i++){
- //alert("i:"+ i + "/" + model.getValue(tempXPath2 + "[" + i + "]/cdnm"));
- var schkflag = fopdicordnmfind(i);
- tempV = model.getValue(tempXPath2 + "[" + i + "]/cdnm");
- if (i == iRow) {
- tempV = tempV + "(" +
- model.getValue("/root/main/MnphopcrData/MnphopcrList/opdiscordspec/opdiscord/opdiscordetc") +
- ")";
- }
- model.makeNode(tempXPath1 + "[" + i + "]"); //명칭정보
- model.makeNode(tempXPath1 + "[" + i + "]/chk"); //체크여부
- model.makeNode(tempXPath1 + "[" + i + "]/nm"); //명칭정보
- model.setValue(tempXPath1 + "[" + i + "]/chk",schkflag); //체크여부
- model.setValue(tempXPath1 + "[" + i + "]/nm",tempV); //명칭정보
-
- }
- chkopdicord.refresh();
- // 변수에 저장
- opdiscordspec = instance1.selectSingleNode(xPathData+"/opdiscordspec/opdiscord").xml;
- //alert(opdiscordspec);
- }
- // 불일치 조치사항에서 체크사항 찾기
- function fopdicordnmfind(sIdx){
- var i =0;
- var item;
- var rtnflag="";
- for(i=0; i<chkopdicord.length; i++)
- {
- item = chkopdicord.item(i);
- if( i == (sIdx-1) && item.selected == "1" ) {
- rtnflag = "체크";
- return rtnflag;
- }
- }
- return rtnflag;
- }
- function fInstchk(){ // 본원 칠곡 제어_손성훈.(제거.12.05.22)
- /* var sInstcd = getUserInfo("dutplceinstcd") ;
- if (sInstcd == "032"){
- button5.visible = false;
- opt_opocr2chkexec.visible = true;
- }
- */
- }
- function fCheckMedrList() {
- model.makeValue("/root/send/reqdata/pid", model.getValue("root/main/paminfo/list/pid"));
- model.makeValue("/root/send/reqdata/indd", model.getValue("root/main/paminfo/list/indd"));
- model.makeValue("/root/send/reqdata/cretno", model.getValue("root/main/paminfo/list/cretno"));
- submit("TRMNP00327");
- }
- function fGridOnButtonClickEvent(){
- var iRow = grd_skinsurveylist.row;
- var iCol = grd_skinsurveylist.col;
- if (iRow < 2 ){
- return;
- }
- if( iCol == grd_skinsurveylist.colRef("trobpart")) {
- //부위 표시 POPUP 호출
- fPopupBedSoreImg();
- }
- if( iCol == grd_skinsurveylist.colRef("surveynm")) {
- var iRow = iRow - 1;
- var sGridXpath = "/root/main/SheetData3/skinserveyinfo/skinserveylist";
- var sSearchdd = model.getValue("/root/main/operation/list/opcnfmdd");
- var sChargerNm = "";
- fUseridPopup("", sGridXpath+"["+iRow+"]/surveyid", sGridXpath+"["+iRow+"]/surveynm", "" , "", grd_skinsurveylist, "", sSearchdd);
-
- if(grd_skinsurveylist.rowStatus(grd_skinsurveylist.row) == "0") {
- grd_skinsurveylist.rowStatus(grd_skinsurveylist.row) = "2";
- }
-
- return;
- }
- if( iCol == grd_skinsurveylist.colRef("cnfmrnm")) {
- var iRow = iRow - 1;
- var sGridXpath = "/root/main/SheetData3/skinserveyinfo/skinserveylist";
- var sSearchdd = model.getValue("/root/main/operation/list/opcnfmdd");
- var sChargerNm = "";
- fUseridPopup("", sGridXpath+"["+iRow+"]/cnfmrid", sGridXpath+"["+iRow+"]/cnfmrnm", "" , "", grd_skinsurveylist, "", sSearchdd);
-
- if(grd_skinsurveylist.rowStatus(grd_skinsurveylist.row) == "0") {
- grd_skinsurveylist.rowStatus(grd_skinsurveylist.row) = "2";
- }
-
- return;
- }
- }
- //이상부위 선택 popup화면 호출
- function fPopupBedSoreImg(){
- var iRow = grd_skinsurveylist.row;
- var iCol = grd_skinsurveylist.col;
- //팝업창에 부위 값이 있으면 기존값 셋팅
- //이미저장되어있으면 수정하지 못하도록 확인버튼을 막아주는 flag를 set한다.
- var PartTail = grd_skinsurveylist.textmatrix(iRow,grd_skinsurveylist.colRef("trobpart"));
- if(isSearchString(PartTail, "(R)") == true){
- PartTail = PartTail.replace("(R)", ",(R),");
- }
- if(isSearchString(PartTail, "(L)") == true){
- PartTail = PartTail.replace("(L)", ",(L),");
- }
- WordLen = getStringLength(PartTail);
- if( PartTail.substr(WordLen -1, WordLen) ==","){
- PartTail = PartTail.substr(0, WordLen -1);
- }
- setParameter("partall", PartTail);
- setParameter('editable', 't');
- modal("SPMNP06800",1, event.screenX-200, event.screenY+50); //이미지호출
- //팝업에서 아무것도 선택하지 않고 close를 눌렀을때..
- if( getParameter("returnnull") == "close" ){
- return ;
- } else {
- //욕창발생부위 값을 grid에 set
- var retStr = getParameter('retStr');
- grd_skinsurveylist.valueMatrix(iRow, grd_skinsurveylist.colRef("trobpart")) = retStr;
- //그리드 상태값 변경
- if(grd_skinsurveylist.rowStatus(iRow) == 0){
- grd_skinsurveylist.rowStatus(iRow) = 2;
- }
- }
- }
- //관찰자, 확인의 이름 및 사용자 번호 입력값에 대한 정보 조회
- function fUserSelect(pRow, pCol){
- var nRow = pRow - 1;
- var rPath = "/root/main/SheetData3/skinserveyinfo/skinserveylist["+ nRow + "]/"
- var rUserNmColnm = "";
- var rUserIdColnm = "";
- if(pCol == grd_skinsurveylist.colRef("surveynm")){
- rUserNmColnm = "surveynm";
- rUserIdColnm = "surveyid";
- rDeptNmColnm = "surveydeptnm";
- rDeptCdColnm = "surveydeptcd";
- var wNode = "020";
- }else{
- rUserNmColnm = "cnfmrnm";
- rUserIdColnm = "cnfmrid";
- rDeptNmColnm = "cnfmrdeptnm";
- rDeptCdColnm = "cnfmrdeptcd";
- var wNode = "011";
- }
- var rUserInfo = model.getValue(rPath+rUserNmColnm).replace(/(^\s*)|(\s*$)/g, "");
- model.setValue(rPath+rUserNmColnm, "");
- if (rUserInfo == "") {
- grd_skinsurveylist.cellStyle("color", pRow, pCol, pRow, pCol) = "";
- grd_skinsurveylist.refresh();
- return;
- }
- //var wNode = "011";
- var sSearchdd = model.getValue("/root/main/operation/list/opcnfmdd");
- //특정일자에 근무했던 정보를 가져오도록 수정
- fUserEnter(rPath, rUserIdColnm , rUserNmColnm, rDeptNmColnm, rDeptCdColnm, rUserInfo, grd_skinsurveylist, "all", wNode, sSearchdd);
- //정보가 없을 경우에는 빈칸으로 들어가서 edit 모드로 변경함.
- if (model.getValue(rPath+rUserIdColnm) =="") {
- grd_skinsurveylist.valueMatrix(pRow, pCol) = "";
- grd_skinsurveylist.refresh();
- grd_skinsurveylist.editCell();
- } else {
- grd_skinsurveylist.cellStyle("color", pRow, pCol, pRow, pCol) = "";
- }
- }
- function fChngTrobYn(pRow){
- if(grd_skinsurveylist.valueMatrix(pRow, grd_skinsurveylist.colRef("trobyn")) == "N"){
- grd_skinsurveylist.isReadOnly(pRow, grd_skinsurveylist.colRef("recstat"), pRow, grd_skinsurveylist.colRef("recstat")) = true;
- grd_skinsurveylist.isReadOnly(pRow, grd_skinsurveylist.colRef("trobpart"), pRow, grd_skinsurveylist.colRef("skinstat")) = true;
- grd_skinsurveylist.valueMatrix(pRow, grd_skinsurveylist.colRef("trobpart")) = "";
- grd_skinsurveylist.valueMatrix(pRow, grd_skinsurveylist.colRef("trobwidth")) = "";
- grd_skinsurveylist.valueMatrix(pRow, grd_skinsurveylist.colRef("trobheight")) = "";
- grd_skinsurveylist.valueMatrix(pRow, grd_skinsurveylist.colRef("troblength")) = "";
- grd_skinsurveylist.valueMatrix(pRow, grd_skinsurveylist.colRef("skinstat")) = "";
- }else{
- grd_skinsurveylist.isReadOnly(pRow, grd_skinsurveylist.colRef("recstat"), pRow, grd_skinsurveylist.colRef("skinstat")) = false;
- grd_skinsurveylist.isReadOnly(pRow, grd_skinsurveylist.colRef("recstat"), pRow, grd_skinsurveylist.colRef("recstat")) = true;
- }
- }
- function fOpRecovRec(){
-
- model.resetInstanceNode("/root/rectemp/reqdata");
- model.resetInstanceNode("/root/rectemp/opanstform");
-
- var nPid = model.getValue("/root/main/paminfo/list/pid");
- var nOrddd = model.getValue("/root/main/paminfo/list/indd");
- var nCretno = model.getValue("/root/main/paminfo/list/cretno");
- var sHngnm = model.getValue("/root/main/paminfo/list/hngnm");
- var sSex = model.getValue("/root/main/paminfo/list/sex");
- var sAge = model.getValue("/root/main/paminfo/list/age");
- var sOrddeptnm = model.getValue("/root/main/paminfo/list/orddeptnm");
- var nRoomcd = model.getValue("/root/main/paminfo/list/roomcd");
- var nOprsrvno = model.getValue(hPath+"/oprsrvno");
- var nOpcnfmdd = model.getValue(hPath+"/opcnfmdd");
- var nInstcd = model.getValue("/root/init/HideData/instcd");
-
- var nFormcd = "1500016350";
-
- if( sAge < 12 ){
- nFormcd = "1500016351";
- }
-
-
- model.setValue("/root/rectemp/reqdata/oprsrvno", nOprsrvno);
- model.setValue("/root/rectemp/reqdata/formcd", nFormcd);
- model.setValue("/root/rectemp/reqdata/instcd", nInstcd);
- model.setValue("/root/rectemp/reqdata/pid", nPid);
- model.setValue("/root/rectemp/reqdata/orddd", nOrddd);
- model.setValue("/root/rectemp/reqdata/cretno", nCretno);
- model.setValue("/root/rectemp/reqdata/opcnfmdd", nOpcnfmdd);
-
-
- submit("TRMNP00328", false);
-
-
- var nFormrecseq = model.getValue("/root/rectemp/opanstform/formseqno"); // 기록키
- var nEspiseq = model.getValue("/root/rectemp/opanstform/espiseq"); //인증키
-
- if (nFormrecseq == "" || nFormrecseq == "0")
- {
- messageBox("진정, 회복 기록지 작성 내역이 없습니다.", "I");
- return;
- }
- //setParameter("SSMMR01100_getTopYn", "N");
- var sDisparam = nPid +"▦" + sHngnm +"▦" + sSex+ "/" + sAge + "▦" + sOrddeptnm +"▦" + nRoomcd + "▦";
-
- setParameter("disppatinfo", sDisparam); //등록번호▦환자명▦성별/나이▦진료과▦병실▦
- setParameter("oprsrvno", nOprsrvno);
- setParameter("opcnfmdd", nOpcnfmdd);
- //setParameter("topyn", "N");
- setParameter("formrecseq", nFormrecseq);
- setParameter("openmode", "recform");
-
- modal("SSMMR01100", 1, 0, 0 ,"", "", "");
-
- }
- //----------(20110512)
- /* ------------------------------------------------- */
- /* ------End Of List ------------------------------- */
- /* -------------------------------------------------- */
- /*
- //2008-07-09 오전 11:24:44 수술기록II packing 부위 관련 Backup Data
- <packlist>
- <packchk>false</packchk>
- <packnm>Abdominal </packnm>
- <packcnt>0</packcnt>
- </packlist>
- <packlist>
- <packchk>false</packchk>
- <packnm>Anal </packnm>
- <packcnt>0</packcnt>
- </packlist>
- <packlist>
- <packchk>false</packchk>
- <packnm>Vaginal </packnm>
- <packcnt>0</packcnt>
- </packlist>
- <packlist>
- <packchk>false</packchk>
- <packnm>Ear(Lt.) </packnm>
- <packcnt>0</packcnt>
- </packlist>
- <packlist>
- <packchk>false</packchk>
- <packnm>Ear(Rt.) </packnm>
- <packcnt>0</packcnt>
-
- </packlist>
- <packlist>
- <packchk>false</packchk>
- <packnm>Nasal(Lt.)</packnm>
- <packcnt>0</packcnt>
- </packlist>
- <packlist>
- <packchk>false</packchk>
- <packnm>Nasal(Rt.)</packnm>
- <packcnt>0</packcnt>
- </packlist>
- <packlist>
- <packchk>false</packchk>
- <packnm>기타 </packnm>
- <packcnt>0</packcnt>
- </packlist>
- */
|