12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960 |
- /**
- * @(#) SMPIJ00700.js
- * 외래일일심사관리
- * 수정이력
- * - 2008. 07. 15 / 최초작성자 / 박지욱 (xrw 화면단에서 분리)
- */
- /*
- 화면 초기화 : fInitialize
- 등록번호 + 엔터 시 대상자 조회 : fGetOutDayJudgTrgtManPidSrch
- 종료 : fClear
- 심사버튼 초기화 : fSetJudgStatBtnAuth
- 화면권한 초기화 : fCheckAuth
- 등록번호, 접수일자 변경시 화면 초기화 : fInitSrchData
- 등록번호 + 엔터 시 화면 초기화 : fInitSrchData2
- 진료달력 초기화 : initCalendar
- 심사대상자 정보 조회 : fGetOutDayJudgMngt
- 상병위로이동 : fDiagSeqUp
- 상병아래로이동 : fDiagSeqDown
- 상병 소트 : fSortDiagNo
- 상병 행추가 : fDiagGridInsertRow
- 특정 소트 : fSortSpclNo
- 특정 행추가 : fSpclGridInsertRow
- 사용자 환경저장 조회 : setOrderInfoOfCol
- 처방 필터링 : fGetSelectedOrderData
- 처방 항별 색상구분 : fSetOrderColorByEdiitem
-
- 2009.07.16 JHP
- 심사화면 환자 메세지 여부확인: fGetPatMsgYn
- 환자기준 전송메세지작성 : fPatJudgPatMsgTrsm
- 처방기준 전송메세지작성 : fOrderJudgPatMsgTrsm
- 해당건 환자 전체 메세지 보기 : fJudgPatMsgTrsmRef
- */
-
- /* 화면 초기화 */
- function fInitialize() {
-
- // 1. 데이터 초기화
- model.removeNodeset("/root/main/list1/diag");
- model.removeNodeset("/root/main/list2/oscl");
- model.removeNodeset("/root/main/list3/clcj");
- model.removeNodeset("/root/main/list4/otpt");
- model.removeNodeset("/root/main/list5/oscl");
- model.removeNodeset("/root/main/list6/delclod");
- model.removeNodeset("/root/main/list7/clop");
- model.removeNodeset("/root/hidden/list4/otpt");
-
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoPay", "-");
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoItem", "-");
- model.setValue("/root/hidden/list7/clop/selectedRdoPay", "-");
- model.setValue("/root/send/unitflag", "-");
- /*
- // 2. 컨트롤 초기화
- // 처방, 원외처방 그리드
- grd_clodhist.frozenCols = grd_clodhist.colRef("basecd");
- grd_clsphist.frozenCols = grd_clsphist.colRef("edicd");
- grd_oprcphist.mergecol(grd_oprcphist.colRef("snglcalcscorcd")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("edicd")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("hngnm")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("calcpayflag")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("drugqty")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("drugtims")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("drugdayno")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("spclspecyn")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("efcyclscd")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("efcyclsnm")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("ordnm")) = false;
- grd_oprcphist.mergecol(grd_oprcphist.colRef("edicdflag")) = false;
- grd_oprcphist.mergecells = "bycol";
- */
-
- // 트리뷰
- trv_histref.expandDepth = 3;
- trv_patinfo.expandDepth = 3;
- trv_qualinfo.expandDepth = 3;
- trv_prcpref.expandDepth = 3;
- trv_mediinfo.expandDepth = 3;
- trv_ordamt.expandDepth = 3;
- trv_etcref.expandDepth = 3;
- trv_emr.expandDepth = 3;
- trv_erroomref.expandDepth = 3;
- trv_trnptinforef.expandDepth = 3;
-
- // 히든 컨트롤
- cap_grptemp.visible = false;
- grp_predoculist.visible = false;
- grp_delclodlist.visible = false;
- grp_delorderlist.visible = false;
- case_spclspec.selected = false;
- case_judgrmemo.selected = false;
- case_ediclammemo.selected = false;
- // 완료 ~ 삭제 Btn
- btn_end.attribute("color") = "#cc3333";
- btn_unjudg.attribute("color") = "#cc3333";
- btn_rete.attribute("color") = "#cc3333";
- btn_save.attribute("font-weight") = "bold";
- btn_end.attribute("font-weight") = "bold";
- btn_unjudg.attribute("font-weight") = "bold";
- btn_rete.attribute("font-weight") = "bold";
- // 특정내역 탭
- btn_spclspec.selected = true;
- model.toggle("case_spclspec");
-
- //3. 사용자 환경설정 로딩
- /* 불완전한 동작으로 인하여 주석처리
- model.setValue("/root/send/listval/uuee/scrnid","SMPIJ00700");
-
- if ( submit("TRPIJ00407") ) {
- var grd_name = model.getValue("/root/hidden/listval/uuee/compsnm");
- var refdata = model.getValue("/root/hidden/listval/uuee/compscnts");
- var sizedata = model.getValue("/root/hidden/listval/uuee/compssizecnts");
-
- if (grd_name != "") {
- setOrderInfoOfCol("grd_clodhist",refdata,sizedata);
- }
-
-
- }
- */
- }
- /* 등록번호, 접수일자 변경시 화면 초기화 */
- function fInitSrchData() {
- // 기존 조회 내역 중 수정 사항이 있는 경우 저장할 것인지를 물어본다.
- var rslt = fCheckChangeSave();
- if (rslt == false) { // 저장이 완료되지 않아 초기화할 수 없는 경우
- return false;
- }
- // 상병, 특정내역, 처방 Group의 컨트롤 크기를 초기화한다.
- fInitUIControlSize();
-
- // 대상자 화면과 이전명세서 화면을 제외한 자식창을 닫는다.
- var judgWindow1 = getChildWindow("SMPIJ00600"); // SMPIJ00600_외래일일심사대상자조회.xrw
- var judgWindow2 = getChildWindow("SMPIJ00700"); // SMPIJ00700_외래일일심사관리.xrw
- if (judgWindow1 == null && judgWindow2 == null) {
- var childCnt = window.children.length;
- for( var i = childCnt; i > 0; i-- ) {
- var child = window.children.item(i-1);
- if (window.children.item(i-1).window.type != "modal") {
- window.children.item(i-1).close();
- }
- }
- } else {
- var childCnt = window.children.length;
- for( var i = childCnt; i > 0; i-- ) {
- var isClose = "true";
- var child = window.children.item(i-1);
- var curWinID = child.model.getValue("/root/properties/uid/myself");
- if (judgWindow1 != null) {
- var judgWinID = judgWindow1.model.getValue("/root/properties/uid/myself");
- if (curWinID == judgWinID) {
- isClose = "false";
- }
- }
- if (judgWindow2 != null) {
- var judgWinID = judgWindow2.model.getValue("/root/properties/uid/myself");
- if (curWinID == judgWinID) {
- isClose = "false";
- }
- }
- if (isClose != "false") {
- if (window.children.item(i-1).window.type != "modal") {
- window.children.item(i-1).close();
- }
- }
- }
- }
- model.resetInstanceNode("/root/main/item1/otpt");
- model.resetInstanceNode("/root/main/item1/memo");
- model.resetInstanceNode("/root/main/item2/incd");
- model.removeNodeset("/root/main/item3/supp");
- model.removeNodeset("/root/main/list1/diag");
- model.removeNodeset("/root/main/list2/oscl");
- model.removeNodeset("/root/main/list3/clcj");
- model.resetInstanceNode("/root/main/item5/mech");
- model.removeNodeset("/root/main/list4/otpt");
- model.removeNodeset("/root/main/list5/oscl");
- model.removeNodeset("/root/main/list6/delclod");
- model.removeNodeset("/root/main/list7/clop");
- model.removeNodeset("/root/main/ordddlist/list");
- fSetJudgStatBtnAuth(); // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- // 수술(유) Btn
- btn_opyn.attribute("class") = "btn2_letter4";
- btn_opyn.visible = true;
-
- model.resetInstanceNode("/root/send");
- model.resetInstanceNode("/root/hidden/item1/otpt"); // hidden을 모두 초기화하면 children의 wid 삭제됨
- model.resetInstanceNode("/root/hidden/item1/initotpt/otpt");
- model.resetInstanceNode("/root/hidden/item1/initmemo/memo");
- model.resetInstanceNode("/root/hidden/list1");
- model.resetInstanceNode("/root/hidden/list2/osclsrch");
- model.resetInstanceNode("/root/hidden/list2/osclitem1");
- model.resetInstanceNode("/root/hidden/list2/osclcond");
- model.resetInstanceNode("/root/hidden/list3");
- model.resetInstanceNode("/root/hidden/item5/oscl");
- model.removeNodeset("/root/hidden/list4/otpt");
- model.resetInstanceNode("/root/hidden/list7/clop");
- model.resetInstanceNode("/root/hidden/smpic00200/judgsrch"); // SMPIC00200_수가조회
- model.resetInstanceNode("/root/hidden/smpic00200/rslt");
- model.resetInstanceNode("/root/hidden/smpij00600/cond"); // SMPIJ00600_외래일일심사대상자조회
- model.resetInstanceNode("/root/hidden/smpij00600/rslt");
- model.resetInstanceNode("/root/hidden/smpij00700/cond"); // SMPIJ00700_외래일일심사관리
- model.resetInstanceNode("/root/hidden/sppid21300/cond"); // SPPID21300_심사전후차액조회
- model.resetInstanceNode("/root/hidden/sppid21400/cond"); // SPPID21400_외래미시행처방조회
- model.resetInstanceNode("/root/hidden/sppid21600/cond"); // SPPID21600_세부계산내역조회
-
- model.resetInstanceNode("/root/hidden/smpiz00100/cond"); // SMPIZ00100_외래입원상병이력조회
- model.resetInstanceNode("/root/hidden/smpiz00100/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00200/cond/clsp"); // SPPIZ00200_첨부물자료관리
- model.resetInstanceNode("/root/hidden/sppiz00200/rslt/clsp");
- model.resetInstanceNode("/root/hidden/sppiz00300/rslt"); // SPPIZ00300_메모이력조회
- model.resetInstanceNode("/root/hidden/sppiz00400/cond"); // SPPIZ00400_상병코드조회
- model.resetInstanceNode("/root/hidden/sppiz00400/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00500/cond"); // SPPIZ00500_특정내역상세관리
- model.resetInstanceNode("/root/hidden/sppiz00500/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00600/cond"); // SPPIZ00600_상병및처방별치식
- model.resetInstanceNode("/root/hidden/sppiz00600/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00700/cond"); // SPPIZ00700_심사Comment조회
- model.resetInstanceNode("/root/hidden/sppiz00700/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00800/cond"); // SPPIZ00800_산정코드조회
- model.resetInstanceNode("/root/hidden/sppiz00800/rslt");
- model.resetInstanceNode("/root/hidden/sppiz01000/cond"); // SPPIZ01000_심사수정사유관리
- model.resetInstanceNode("/root/hidden/sppiz01000/rslt");
- model.resetInstanceNode("/root/hidden/sppmc02500/cond"); // SPPMC02500_환자조회
-
- // 조회 조건의 초기값을 설정한다.
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoPay", "-"); // 급여구분
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoItem", "-"); // 항목구분
- // 처방 조회부 항목구분 Radio item의 굵은 표시를 취소한다.
- var itemRadioList = instance1.selectSingleNode("/root/hidden/list2/osclitem1");
- var itemNode = itemRadioList.childNodes;
- for (var i = 0; i < itemNode.length; i++) {
- rdo_item1.item(i).attribute("font-weight") = "normal";
- }
- // 원외처방 - 항목구분 (기본값 : 급여)
- model.setValue("/root/hidden/list7/clop/selectedRdoPay", "-"); // 전체
- // 진료달력 배경색과 굵은 표시를 취소한다.
- grd_calendar.rebuildStyle();
- return true;
- }
- /* 등록번호 입력후 엔터 처리시에만 동작 (fInitSrchData + 이전심사되돌리기) 기능 */
- function fInitSrchData2() {
- // 기존 조회 내역 중 수정 사항이 있는 경우 저장할 것인지를 물어본다.
- var rslt = fCheckChangeSave();
- if (rslt == false) { // 저장이 완료되지 않아 초기화할 수 없는 경우
- return false;
- }
-
- // 1. 심사상태를 이전으로 되돌린다. (2008.03.11 박지욱 추가)
- // 심사해제 시작(심사중일 경우 미심사상태로)
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- var dschjudgprcsstat = model.getValue( "/root/main/item1/otpt/dschjudgprcsstat");
- if (cretno != "" && dschjudgprcsstat == "B") {
- // 이전 row 의 심사상태 되돌리기 시작
- var oldpid = model.getValue("/root/hidden/list8/pid");
- var oldorddd = model.getValue("/root/hidden/list8/orddd");
- var oldcretno = model.getValue("/root/hidden/list8/cretno");
- var oldacptseqno = model.getValue("/root/hidden/list8/acptseqno");
- var olddschjudgprcsstat = model.getValue("/root/hidden/list8/dschjudgprcsstat");
- var oldjudgmdlid = model.getValue("/root/hidden/list8/judgmdlid");
- var oldlastjudgdt = model.getValue("/root/hidden/list8/lastjudgdt");
- if (olddschjudgprcsstat == "A" || olddschjudgprcsstat == "" || olddschjudgprcsstat == "D" || olddschjudgprcsstat == "E") {
-
- model.removeNodeset("/root/send/list8");
- model.makeValue("/root/send/list8/pid", oldpid);
- model.makeValue("/root/send/list8/orddd", oldorddd);
- model.makeValue("/root/send/list8/cretno", oldcretno);
- model.makeValue("/root/send/list8/acptseqno", oldacptseqno);
- model.makeValue("/root/send/list8/dschjudgprcsstat", olddschjudgprcsstat);
- model.makeValue("/root/send/list8/judgmdlid", oldjudgmdlid);
- model.makeValue("/root/send/list8/lastjudgdt", oldlastjudgdt);
- submit("TXPIJ00604", false);
- }
- // 이전 row 의 심사상태 되돌리기 끝
- }
- // 심사해제 끝
-
- // 상병, 특정내역, 처방 Group의 컨트롤 크기를 초기화한다.
- fInitUIControlSize();
-
- // 대상자 화면과 이전명세서 화면을 제외한 자식창을 닫는다.
- var judgWindow1 = getChildWindow("SMPIJ00600"); // SMPIJ00600_외래일일심사대상자조회.xrw
- var judgWindow2 = getChildWindow("SMPIJ00700"); // SMPIJ00700_외래일일심사관리.xrw
- if (judgWindow1 == null && judgWindow2 == null) {
- var childCnt = window.children.length;
- for( var i = childCnt; i > 0; i-- ) {
- var child = window.children.item(i-1);
- if (window.children.item(i-1).window.type != "modal") {
- window.children.item(i-1).close();
- }
- }
- } else {
- var childCnt = window.children.length;
- for( var i = childCnt; i > 0; i-- ) {
- var isClose = "true";
- var child = window.children.item(i-1);
- var curWinID = child.model.getValue("/root/properties/uid/myself");
- if (judgWindow1 != null) {
- var judgWinID = judgWindow1.model.getValue("/root/properties/uid/myself");
- if (curWinID == judgWinID) {
- isClose = "false";
- }
- }
- if (judgWindow2 != null) {
- var judgWinID = judgWindow2.model.getValue("/root/properties/uid/myself");
- if (curWinID == judgWinID) {
- isClose = "false";
- }
- }
- if (isClose != "false") {
- if (window.children.item(i-1).window.type != "modal") {
- window.children.item(i-1).close();
- }
- }
- }
- }
- model.resetInstanceNode("/root/main/item1/otpt");
- model.resetInstanceNode("/root/main/item1/memo");
- model.resetInstanceNode("/root/main/item2/incd");
- model.removeNodeset("/root/main/item3/supp");
- model.removeNodeset("/root/main/list1/diag");
- model.removeNodeset("/root/main/list2/oscl");
- model.removeNodeset("/root/main/list3/clcj");
- model.resetInstanceNode("/root/main/item5/mech");
- model.removeNodeset("/root/main/list4/otpt");
- model.removeNodeset("/root/main/list5/oscl");
- model.removeNodeset("/root/main/list6/delclod");
- model.removeNodeset("/root/main/list7/clop");
- model.removeNodeset("/root/main/ordddlist/list");
- fSetJudgStatBtnAuth(); // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- // 수술(유) Btn
- btn_opyn.attribute("class") = "btn2_letter4";
- btn_opyn.visible = true;
-
- model.resetInstanceNode("/root/send");
- model.resetInstanceNode("/root/hidden/item1/otpt"); // hidden을 모두 초기화하면 children의 wid 삭제됨
- model.resetInstanceNode("/root/hidden/item1/initotpt/otpt");
- model.resetInstanceNode("/root/hidden/item1/initmemo/memo");
- model.resetInstanceNode("/root/hidden/list1");
- model.resetInstanceNode("/root/hidden/list2/osclsrch");
- model.resetInstanceNode("/root/hidden/list2/osclitem1");
- model.resetInstanceNode("/root/hidden/list2/osclcond");
- model.resetInstanceNode("/root/hidden/list3");
- model.resetInstanceNode("/root/hidden/item5/oscl");
- model.removeNodeset("/root/hidden/list4/otpt");
- model.resetInstanceNode("/root/hidden/list7/clop");
- model.resetInstanceNode("/root/hidden/smpic00200/judgsrch"); // SMPIC00200_수가조회
- model.resetInstanceNode("/root/hidden/smpic00200/rslt");
- model.resetInstanceNode("/root/hidden/smpij00600/cond"); // SMPIJ00600_외래일일심사대상자조회
- model.resetInstanceNode("/root/hidden/smpij00600/rslt");
- model.resetInstanceNode("/root/hidden/smpij00700/cond"); // SMPIJ00700_외래일일심사관리
- model.resetInstanceNode("/root/hidden/sppid21300/cond"); // SPPID21300_심사전후차액조회
- model.resetInstanceNode("/root/hidden/sppid21400/cond"); // SPPID21400_외래미시행처방조회
- model.resetInstanceNode("/root/hidden/sppid21600/cond"); // SPPID21600_세부계산내역조회
-
- model.resetInstanceNode("/root/hidden/smpiz00100/cond"); // SMPIZ00100_외래입원상병이력조회
- model.resetInstanceNode("/root/hidden/smpiz00100/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00200/cond/clsp"); // SPPIZ00200_첨부물자료관리
- model.resetInstanceNode("/root/hidden/sppiz00200/rslt/clsp");
- model.resetInstanceNode("/root/hidden/sppiz00300/rslt"); // SPPIZ00300_메모이력조회
- model.resetInstanceNode("/root/hidden/sppiz00400/cond"); // SPPIZ00400_상병코드조회
- model.resetInstanceNode("/root/hidden/sppiz00400/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00500/cond"); // SPPIZ00500_특정내역상세관리
- model.resetInstanceNode("/root/hidden/sppiz00500/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00600/cond"); // SPPIZ00600_상병및처방별치식
- model.resetInstanceNode("/root/hidden/sppiz00600/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00700/cond"); // SPPIZ00700_심사Comment조회
- model.resetInstanceNode("/root/hidden/sppiz00700/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00800/cond"); // SPPIZ00800_산정코드조회
- model.resetInstanceNode("/root/hidden/sppiz00800/rslt");
- model.resetInstanceNode("/root/hidden/sppiz01000/cond"); // SPPIZ01000_심사수정사유관리
- model.resetInstanceNode("/root/hidden/sppiz01000/rslt");
- model.resetInstanceNode("/root/hidden/sppmc02500/cond"); // SPPMC02500_환자조회
-
- // 조회 조건의 초기값을 설정한다.
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoPay", "-"); // 급여구분
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoItem", "-"); // 항목구분
- // 처방 조회부 항목구분 Radio item의 굵은 표시를 취소한다.
- var itemRadioList = instance1.selectSingleNode("/root/hidden/list2/osclitem1");
- var itemNode = itemRadioList.childNodes;
- for (var i = 0; i < itemNode.length; i++) {
- rdo_item1.item(i).attribute("font-weight") = "normal";
- }
- // 원외처방 - 항목구분 (기본값 : 급여)
- model.setValue("/root/hidden/list7/clop/selectedRdoPay", "-"); // 전체
- // 진료달력 배경색과 굵은 표시를 취소한다.
- grd_calendar.rebuildStyle();
- return true;
- }
- /* 종료 */
- function fClear() {
-
- // 1. 심사상태 변경
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- var dschjudgprcsstat = model.getValue( "/root/main/item1/otpt/dschjudgprcsstat");
- // 이전 row 의 심사상태 되돌리기 시작
- var oldpid = model.getValue("/root/hidden/list8/pid");
- var oldorddd = model.getValue("/root/hidden/list8/orddd");
- var oldcretno = model.getValue("/root/hidden/list8/cretno");
- var oldacptseqno = model.getValue("/root/hidden/list8/acptseqno");
- var olddschjudgprcsstat = model.getValue("/root/hidden/list8/dschjudgprcsstat");
- var oldjudgmdlid = model.getValue("/root/hidden/list8/judgmdlid");
- var oldlastjudgdt = model.getValue("/root/hidden/list8/lastjudgdt");
- if (cretno != "" && dschjudgprcsstat == "B") {
- if (olddschjudgprcsstat == "A" || olddschjudgprcsstat == "" || olddschjudgprcsstat == "D" || olddschjudgprcsstat == "E") {
-
- model.removeNodeset("/root/send/list8");
- model.makeValue("/root/send/list8/pid", oldpid);
- model.makeValue("/root/send/list8/orddd", oldorddd);
- model.makeValue("/root/send/list8/cretno", oldcretno);
- model.makeValue("/root/send/list8/acptseqno", oldacptseqno);
- model.makeValue("/root/send/list8/dschjudgprcsstat", olddschjudgprcsstat);
- model.makeValue("/root/send/list8/judgmdlid", oldjudgmdlid);
- model.makeValue("/root/send/list8/lastjudgdt", oldlastjudgdt);
- submit("TXPIJ00604", false);
- }
- // 이전 row 의 심사상태 되돌리기 끝
- }
-
- // 2. 대상자 조회화면에서 심사상태 이전값으로 보여주도록 함
- var trgtManWindow = getChildWindow("SMPIJ00600");
- if (trgtManWindow != null) {
- var selectedRow = model.getValue("/root/hidden/smpij00600/rslt/selectedRow");
- if (selectedRow) {
- // 대상자조회 화면에 심사상태 변경
- var prevRow = parseInt(selectedRow, 10);
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/dschjudgprcsstat", olddschjudgprcsstat);
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/judgnm", trgtManWindow.model.getValue("/root/hidden/oldotpt/oldjudgnm"));
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/lastupdtdt", oldlastjudgdt);
- }
- // 대상자조회화면에서 갖고 있는 이전row 정보를 삭제해 준다. (같은행 더블클릭시 이미 조회된 심사대상자임이 아니어야 하므로)
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldrow", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldpid", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldorddd", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldcretno", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldacptseqno", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/olddschjudgprcsstat", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldjudgmdlid", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldjudgnm", "");
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldlastjudgdt", "");
- }
-
- // 3. 화면 초기화
- fInitialize();
- model.resetInstanceNode("/root/main/item1/otpt");
- model.resetInstanceNode("/root/main/item1/memo");
- model.resetInstanceNode("/root/main/item2/incd");
- model.resetInstanceNode("/root/main/item3/supp");
- model.resetInstanceNode("/root/hidden/item1/initotpt/otpt");
- model.resetInstanceNode("/root/hidden/item1/otpt");
-
- // 그리드 확대 축소에 따른
- cap_message.attribute("left") = "5";
- opt_msgspclformat.attribute("left") = "95";
- opt_msgspclformat.attribute("width") = "1099";
- grp_cldihist.attribute("height") = "170";
- grd_cldihist.attribute("height") = "145";
- grp_clop.attribute("top") = "541";
- grp_clop.attribute("height") = "96";
- grd_oprcphist.attribute("top") = "25";
- grd_oprcphist.attribute("height") = "71";
-
- // 처방조회부, 처방 Grid용 Group의 컨트롤 크기를 초기화한다.
- var otherGrp = true;
-
- cap_clod.attribute("top") = "266";
- // 상병 Grid 크기를 초기화한다.
- grp_cldihist.attribute("height") = "170";
- grd_cldihist.attribute("height") = "145";
- grd_clodhist.attribute("height") = "255";
- grp_clop.attribute("top") = 541;
- grp_clop.attribute("height") = 96;
- grd_oprcphist.attribute("height") = parseInt(grp_clop.attribute("height")) - 25;
- grp_cldihist.visible = otherGrp;
- grp_clsphist.visible = otherGrp;
- grp_calendar.visible = otherGrp; // 외래의 경우, 그리드달력 그룹이 추가됨
- var icap_top = parseInt(cap_clod.attribute("top"));
- ln_clodhist.attribute("y1") = icap_top + 15;
- ln_clodhist.attribute("y2") = icap_top + 15;
- grd_clodhist.attribute("top") = icap_top + 20;
- btn_delordlist.attribute("top") = icap_top - 5;
- btn_delordsrch.attribute("top") = icap_top - 5;
- grp_ordsrch.attribute("top") = icap_top - 45; // 조회부 그룹
- cap_message.attribute("top") = icap_top + 45;
- opt_msgspclformat.attribute("top") = icap_top + 39;
-
- // 이전명세서, 처방휴지통, 삭제처방 Group의 컨트롤 크기를 설정한다.
- fSetDelOrdPreDocuSize();
-
- // 4. 버튼 초기화
- fSetJudgStatBtnAuth();
-
- // 5. 진료달력 초기화
- for (var i = 1; i <= 42; i++) {
- grd_calendar.cellStyle("background-color", 1, i) = "white";
- }
- //grd_calendar.rebuildStyle();
-
- // 상단에 환자정보 초기화하고 기입하기
- delPatientInfos();
- }
- /* 진료달력 초기화 */
- function initCalendar() {
- var curDate = getCurrentDate().toDate();
- model.setValue("/root/hidden/calendar/year", curDate.getDateFormat("YYYY"));
- model.setValue("/root/hidden/calendar/month", curDate.getDateFormat("MM"));
- setCalendar(curDate);
- }
- // 이전월/년, 다음월/년에 해당하는 일자를 표시한다.
- function setCalendar(dateObj) {
- var firstDay = dateObj.getDateFormat("YYYY") + dateObj.getDateFormat("MM") +"01";
- dateObj = firstDay.toDate();
-
- // 그리드 초기화
- /*
- model.removeNodeset("/root/hidden/calendar/weeklist/list");
- grd_calendar.addRow(false);
- grd_calendar.rebuild();
- */
-
- model.resetInstanceNode("/root/hidden/calendar/weeklist/list");
- grd_calendar.rowhidden(0) = true;
- var startDay = dateObj.getDay(); // 요일
- var days = dateObj.getMonthDay(); // 마지막 일
- var colIndex = startDay;
- for( var i = 1; i <= days; i++ ) {
- grd_calendar.valueMatrix(1, colIndex) = i;
- colIndex++;
- }
-
- for (var j = 0; j <42; j++) {
- grd_calendar.colHidden(j) = false;
- if (grd_calendar.valueMatrix(1, j) == "") {
- grd_calendar.colHidden(j) = true;
- }
- }
- }
- /* 대상자에 대한 진료기록을 달력에 표기 */
- function fSetOrdCalendar() {
- var isDate = model.getValue("/root/main/item1/otpt/orddd").toDate();
- var YYYY = isDate.getDateFormat("YYYY");
- var MM = isDate.getDateFormat("MM");
- model.setValue("/root/hidden/calendar/year", YYYY);
- model.setValue("/root/hidden/calendar/month", MM);
- // 이전 명세서 팝업의 경우, 바뀐 날짜의 시작일자가 적용되지 않으므로 설정함
- model.setValue("/root/hidden/calendar/ordddlist/fromdd", YYYY + MM +"01");
- model.setValue("/root/hidden/calendar/ordddlist/todd", YYYY + MM + isDate.getMonthDay());
- fSetOrdSrchCalendar();
- }
- /* 이전월/년, 다음월/년에 해당하는 일자와 해당년월에 진료한 일자를 표시 */
- function fSetOrdSrchCalendar() {
- // 진료달력을 표시한다.
- var isDate = model.getValue("/root/main/item1/otpt/orddd").toDate();
- var isDay = isDate.getDateFormat("DD");
-
- // 이전명세서 팝업의 경우 fromdd 로 계산시 바뀐 날짜가 아님
- var dateObj = model.getValue("/root/hidden/calendar/ordddlist/fromdd").toDate();
- // 그리드 초기화
- model.removeNodeset("/root/hidden/calendar/weeklist/list");
- grd_calendar.addRow(false);
- grd_calendar.rebuild();
-
- //model.resetInstanceNode("/root/hidden/calendar/weeklist/list");
- //grd_calendar.rebuild();
- grd_calendar.rowhidden(0) = true;
-
- var startDay = dateObj.getDay(); // 요일
- var days = dateObj.getMonthDay(); // 마지막 일
- var colIndex = startDay;
- for( var i = 1; i <= days; i++ ) {
- grd_calendar.valueMatrix(1, colIndex) = i;
- colIndex++;
- }
- //grd_calendar.gridToInstance();
-
- //grd_calendar.rebuildStyle();
-
- var ordddList = instance1.selectSingleNode("/root/main/ordddlist/list");
- if (ordddList != null) {
- ordddList = instance1.selectSingleNode("/root/main/ordddlist");
- var ordddNode = ordddList.childNodes;
- for (var i = 1; i <= ordddNode.length; i++) {
- var dd = parseInt(model.getValue("/root/main/ordddlist/list["+ i +"]/orddd").substr(6, 2), 10);
- colIndex = dd+startDay-1;
- if (grd_calendar.cellStyle("background-color", 1, colIndex) == "white") {
- grd_calendar.cellStyle("background-color", 1, colIndex) = "#fcd2c1";
- }
- /*
- else if (grd_calendar.cellStyle("background-color", 1, colIndex) == "#fcd2c1") {
- grd_calendar.cellStyle("background-color", 1, colIndex) = "#ffe79d";
- }
- else if (grd_calendar.cellStyle("background-color", 1, colIndex) == "#ffe79d") {
- grd_calendar.cellStyle("background-color", 1, colIndex) = "#7be6b7";
- }
- else if (grd_calendar.cellStyle("background-color", 1, colIndex) == "#7be6b7") {
- grd_calendar.cellStyle("background-color", 1, colIndex) = "#b9e5fb";
- }
- else if (grd_calendar.cellStyle("background-color", 1, colIndex) == "#b9e5fb") {
- grd_calendar.cellStyle("background-color", 1, colIndex) = "#c8e67b";
- }
- else if (grd_calendar.cellStyle("background-color", 1, colIndex) == "#c8e67b") {
- grd_calendar.cellStyle("background-color", 1, colIndex) = "#43c8f5";
- }
- */
- grd_calendar.cellStyle("border-color", 1, colIndex) = "#b0b0b0"; // "#8ebcff";
- }
- }
-
- var YYYY = model.getValue("/root/hidden/calendar/year");
- var MM = model.getValue("/root/hidden/calendar/month");
- var isCurMon = false;
- if (isDate.getDateFormat("YYYYMM") == (YYYY+MM)) {
- isCurMon = true; // 이전,이후 년월로 이동한 경우에는 일자에 굵은색 표시를 없애기 위해 체크함
- }
-
- for (var j = 0; j <42; j++) {
- grd_calendar.colHidden(j) = false;
- grd_calendar.cellStyle("font-weight", 1, j) = "normal";
- if (grd_calendar.valueMatrix(1, j) == "") {
- grd_calendar.colHidden(j) = true;
- }
- var dd = grd_calendar.valueMatrix(1, j);
- if (isCurMon && dd) { // 현재 명세서와 동일한 년월인 경우에만 해당 일자에 굵은색으로 표시하도록 함
- if (parseInt(dd, 10) == parseInt(isDay, 10)) { // indd (실제 진료일 표시)
- grd_calendar.cellStyle("font-weight", 1, j) = "bold";
- }
- }
- }
- }
- /* 상병 행 추가 */
- function fDiagGridInsertRow() {
- var clsprow = grd_cldihist.rows - 1;
- grd_cldihist.insertRow(clsprow++, true);
- model.setValue("/root/main/list1/diag["+ clsprow +"]/diagkindcd", "C");
- var seq = 0;
- for (var i = 1; i < grd_cldihist.rows; i++) {
- if (model.getValue("/root/main/list1/diag["+ i +"]/rowstat") == "D") seq++;
- }
- var diagseq = clsprow - seq;
- model.setValue("/root/main/list1/diag["+ clsprow +"]/diagseq", diagseq);
- // 청구과, 진료개시일은 주상병을 기준으로 부여한다.
- var diagorddeptcd = model.getValue("/root/main/list1/diag/diagorddeptcd");
- if (diagorddeptcd == "") { // 주상병의 진료과가 입력되지 않은 경우 인적사항의 진료과를 입력한다.
- diagorddeptcd = model.getValue("/root/main/item1/otpt/orddeptcd");
- }
- model.setValue("/root/main/list1/diag["+ clsprow +"]/diagorddeptcd", diagorddeptcd);
- model.setValue("/root/main/list1/diag["+ clsprow +"]/ordfromdd", model.getValue("/root/main/list1/diag/ordfromdd"));
- model.setValue("/root/main/list1/diag["+ clsprow +"]/toot", "-");
- model.setValue("/root/main/list1/diag["+ clsprow +"]/toot1", "-");
- // 추가구분, 의사입력여부
- model.setValue("/root/main/list1/diag["+ clsprow +"]/addflag", "Y");
- model.setValue("/root/main/list1/diag["+ clsprow +"]/drinptyn", "N");
- model.setValue("/root/main/list1/diag["+ clsprow +"]/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.setValue("/root/main/list1/diag["+ clsprow +"]/orddd", model.getValue("/root/main/item1/otpt/orddd"));
- model.setValue("/root/main/list1/diag["+ clsprow +"]/cretno", model.getValue("/root/main/item1/otpt/cretno"));
- }
- /* 상병 행 삭제 */
- function fDiagGridDeleteRow() {
-
- // 1. 선택된 행의 rowstat = 'D' 로 만든다.
- var rtnval = false;
- for (var i = 0; i < grd_cldihist.selectedRows; i++) {
-
- var row = grd_cldihist.selectedrow(i);
- var rowstatus = grd_cldihist.rowstatus(row);
- var diagcd = model.getValue("/root/main/list1/diag["+ row +"]/diagcd");
- var diagnm = model.getValue("/root/main/list1/diag["+ row +"]/diagnm");
- var diagseq = model.getValue("/root/main/list1/diag["+ row +"]/diagseq");
-
- if (rowstatus != 4 && diagcd == "" && diagnm == "") {
-
- } else {
-
- if (rowstatus == 1 || rowstatus == 3) {
- grd_cldihist.valueMatrix(row, grd_cldihist.colRef("rowstat")) = "D";
- model.setValue("/root/main/list1/diag["+ row +"]/rowstat", "D");
- } else {
- grd_cldihist.rowstatus(row) = 4;
- grd_cldihist.valueMatrix(row, grd_cldihist.colRef("rowstat")) = "D";
- model.setValue("/root/main/list1/diag["+ row +"]/rowstat", "D");
- grd_cldihist.valueMatrix(row, grd_cldihist.colRef("diagseq")) = "D" + diagseq;
- model.setValue("/root/main/list1/diag["+ row +"]/diagseq", "D" + diagseq);
- }
- rtnval = true;
- }
- }
-
- if (rtnval == true) {
-
- // 2. 그리드의 row가 'I' 모드이고, rowstat가 'D'이면 그리드에서 삭제시켜버린다.
- for (var s = grd_cldihist.rows-1; s >= 1 ; s--) {
- var rowstatus = grd_cldihist.rowstatus(s);
- var rowtext = model.getValue("/root/main/list1/diag["+ s +"]/rowstat");
- if (rowstatus == 1 || rowstatus == 3) {
- if (rowtext == "D") grd_cldihist.deleteRow(s, false);
- }
- }
-
- model.refreshpart("/root/main/list1");
-
- // 3. 정렬한다. (삭제된 row는 맨 밑으로)
- fSortDiagNo();
- // 4 seq를 다시 매긴다.
- var seq = 1;
- for (var j = 1; j < grd_cldihist.rows; j++) {
- var diagseq = model.getValue("/root/main/list1/diag["+ j +"]/diagseq");
- if (diagseq > "D0") {
- } else {
- if (diagseq != seq) {
- model.setValue("/root/main/list1/diag[" + j + "]/diagseq", seq);
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("diagseq")) = seq;
- grd_cldihist.rowstatus(j) = 2;
- model.setValue("/root/main/list1/diag["+ j +"]/rowstat", "U");
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("rowstat")) = "U";
- }
- seq++;
- }
- }
- // 5. 빈줄을 추가한다.
- fDiagGridInsertRow();
- }
- }
- /* 상병 삭제 취소 */
- function fDiagGridDeleteCancel() {
- for (var i = 0; i < grd_cldihist.selectedRows; i++) {
- var row = grd_cldihist.selectedrow(i);
- var rowstatus = grd_cldihist.rowstatus(row);
- if (rowstatus == 4) {
- grd_cldihist.rowstatus(row) = 2;
- var no = model.getValue("/root/main/list1/diag["+ row +"]/diagseq");
- no = no.replace("D", "");
- model.setValue("/root/main/list1/diag["+ row +"]/diagseq", no);
- model.setValue("/root/main/list1/diag["+ row +"]/rowstat", "U");
- grd_cldihist.valueMatrix(row, grd_cldihist.colRef("rowstat")) = "U";
- }
- }
- // 3. 정렬한다. (삭제된 row는 맨 밑으로)
- fSortDiagNo();
- // 4 seq를 다시 매긴다.
- var seq = 1;
- for (var j = 1; j < grd_cldihist.rows; j++) {
- var diagseq = model.getValue("/root/main/list1/diag["+ j +"]/diagseq");
- if (diagseq > "D0") {
- } else {
- model.setValue("/root/main/list1/diag[" + j + "]/diagseq", seq);
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("diagseq")) = seq;
- seq++;
- }
- }
- // 5. 빈줄을 추가한다.
- fDiagGridInsertRow();
- }
- /* 상병코드 입력 후, 해당 상병코드에 해당되는 정보 조회 */
- function fSearchDiageCode() {
- var row = grd_cldihist.row;
- var diagcd = model.getValue("/root/main/list1/diag["+ row +"]/diagcd");
- if (diagcd) {
- model.removeNodeset("/root/hidden/sppiz00400/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00400/cond");
- model.makeValue("/root/hidden/sppiz00400/cond/basedd", model.getValue("/root/main/item1/otpt/orddd"));
- model.makeValue("/root/hidden/sppiz00400/cond/diagcd", diagcd);
- model.makeNode("/root/hidden/sppiz00400/cond/diagnm");
- model.makeValue("/root/hidden/sppiz00400/cond/selectedrdodiagkind","1");
-
- // 1. 입력된 상병코드로 emr.mrtmicd10 테이블을 조회한다.
- submit("TRPIJ00706", false);
-
- var rsltList = instance1.selectSingleNode("/root/hidden/sppiz00400");
- if (rsltList != null && rsltList.childNodes.length == 1) {
- // 1-1. 조회된 결과가 1건이면
- fSetDiagCdNm();
- //fSortDiagNo();
- } else {
- // 1-2. 조회된 결과가 없거나 여러 건이면 상병코드 조회를 위해 SPPIZ00400_상병코드조회.xrw 를 호출한다.
- fSearchSPPIZ00400();
- if (model.getValue("/root/main/list1/diag["+ row +"]/diagnm") == "" && model.getValue("/root/main/list1/diag["+ row +"]/diagengnm") == "") {
- model.setValue("/root/main/list1/diag["+ row +"]/diagcd", model.getValue("/root/hidden/list1/diag/olddiagcd"));
- model.setValue("/root/main/list1/diag["+ row +"]/diagnm", model.getValue("/root/hidden/list1/diag/olddiagnm"));
- model.setValue("/root/main/list1/diag["+ row +"]/diagengnm", model.getValue("/root/hidden/list1/diag/oldengnm"));
- grd_cldihist.rowstatus(row) = model.getValue("/root/hidden/list1/diag/oldrowstat");
-
- // 원복시키기
- grd_cldihist.refresh();
- fSetDiagRowStatus();
-
- return;
- }
- //fSortDiagNo();
- }
- }
- }
- /* 상병코드 조회 팝업 호출 */
- function fSearchSPPIZ00400() {
- model.removeNodeset("/root/hidden/sppiz00400/rslt");
- model.makeNode("/root/hidden/sppiz00400/rslt/diagcd");
- model.makeNode("/root/hidden/sppiz00400/rslt/diaghngnm");
- model.makeNode("/root/hidden/sppiz00400/rslt/diagengnm");
-
- model.resetInstanceNode("/root/hidden/sppiz00400/cond");
- model.makeValue("/root/hidden/sppiz00400/cond/basedd", model.getValue("/root/main/item1/otpt/orddd"));
- model.makeValue("/root/hidden/sppiz00400/cond/diagcd", model.getValue("/root/main/list1/diag["+ grd_cldihist.row +"]/diagcd"));
- model.makeNode("/root/hidden/sppiz00400/cond/diagnm");
- model.makeValue("/root/hidden/sppiz00400/cond/selectedrdodiagkind","3");
- modal("SPPIZ00400" ,"", "10", "10", "SPPIZ00400", "/root/hidden/sppiz00400/cond", "/root/init", "", "");
- }
- /* 상병코드 조회에서 넘어온 상병을 입력 */
- function fSetDiagCdNm() {
- var row = grd_cldihist.row;
- if (row > 0) {
-
- // 1. 상병코드, 상병명(한글), 상병명(영문)을 입력한다.
- var diagcd = model.getValue("/root/hidden/sppiz00400/rslt/diagcd");
- var diaghngnm = model.getValue("/root/hidden/sppiz00400/rslt/diaghngnm");
- var diagengnm = model.getValue("/root/hidden/sppiz00400/rslt/diagengnm");
- model.setValue("/root/main/list1/diag["+ row +"]/diagcd", diagcd);
- model.setValue("/root/main/list1/diag["+ row +"]/diagnm", diaghngnm);
- model.setValue("/root/main/list1/diag["+ row +"]/diagengnm", diagengnm);
-
- // 2. 해당 상병의 한글상병명과 영문상병명이 Message 용 output 컨트롤에 표시된다.
- model.setValue("/root/hidden/list3/msgspclformat", "상병코드 - "+ diagcd +" / "+ diaghngnm +" / "+ diagengnm);
- opt_msgspclformat.refresh();
-
- var addval1 = model.getValue("/root/main/list1/diag["+ row +"]/rowstat");
- var addval2 = grd_cldihist.rowstatus(row);
-
- // 3. 그리드 row 상태를 준다.
- var rowstatus = grd_cldihist.rowstatus(row);
- if (rowstatus != 4) {
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list1/diag["+ row +"]/rowstat", "I");
- } else {
- model.setValue("/root/main/list1/diag["+ row +"]/rowstat", "U");
- grd_cldihist.rowstatus(row) = 2;
- }
- }
- grd_cldihist.refresh();
- fSetDiagRowStatus();
-
- // 4. 빈 row에 대한 입력은 행 추가를 발생시킨다. (그외에는 행추가가 일어나지 않는다.)
- if (addval1 == "" && (addval2 == 1 || addval2 == 3)) fDiagGridInsertRow();
- }
- }
- /* 상병순서 부여 */
- function fChangeDiagNo() {
-
- var row = grd_cldihist.row;
- var newseq = model.getValue("/root/main/list1/diag["+ row +"]/diagseq");
- var oldseq = model.getValue("/root/hidden/list1/diag/oldseq");
-
-
- if (newseq) {
-
- // 1. seq번호를 매긴다.
- if (grd_cldihist.rowstatus(row) != 1 && grd_cldihist.rowstatus(row) != 3) {
- grd_cldihist.rowstatus(row) = 2;
- grd_cldihist.valueMatrix(row, grd_cldihist.colRef("rowstat")) = "U";
- model.setValue("/root/main/list1/diag["+ row +"]/rowstat", "U");
- }
-
- // 2. '09' 와 같은 형식으로 입력한 경우 -> 9로 처리
- newseq = parseInt(model.getValue("/root/main/list1/diag["+ row +"]/diagseq"), 10);
-
- // 3. 삭제상태가 아닌 중복된 번호가 있는지 체크한다.
- var sameRow = 0;
- for (var i = 1; i < grd_cldihist.rows; i++) {
- var diagseq = model.getValue("/root/main/list1/diag["+ i +"]/diagseq");
- if (row != i && diagseq == newseq) {
- sameRow = i;
- i = grd_cldihist.rows;
- }
- }
-
- // 3-1. seq번호 중복
- if (sameRow > 0) {
-
- // 이전보다 앞번호를 입력한 경우
- if (newseq < oldseq) {
- for (var j = sameRow; j < row; j++) {
- var rowstatus = grd_cldihist.rowstatus(j);
- if (rowstatus != 4) {
- var curseq = parseInt(model.getValue("/root/main/list1/diag["+ j +"]/diagseq"), 10);
- if (rowstatus != 1 && rowstatus != 3) {
- if (model.getValue("/root/main/list1/diag["+ j +"]/diagseq") != (curseq+1)) {
- grd_cldihist.rowstatus(j) = 2;
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("rowstat")) = "U";
- model.setValue("/root/main/list1/diag["+ j +"]/rowstat", "U");
- }
- }
- model.setValue("/root/main/list1/diag["+ j +"]/diagseq", curseq+1);
- }
- }
- }
-
- // 이전보다 뒷번호를 입력한 경우
- else {
- for (var j = row+1; j <= sameRow; j++) {
- var rowstatus = grd_cldihist.rowstatus(j);
- if (rowstatus != 4) {
- var curseq = parseInt(model.getValue("/root/main/list1/diag["+ j +"]/diagseq"), 10);
- if (rowstatus != 1 && rowstatus != 3) {
- if (model.getValue("/root/main/list1/diag["+ j +"]/diagseq") != (curseq-1)) {
- grd_cldihist.rowstatus(j) = 2;
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("rowstat")) = "U";
- model.setValue("/root/main/list1/diag["+ j +"]/rowstat", "U");
- }
- }
- model.setValue("/root/main/list1/diag["+ j +"]/diagseq", curseq-1);
- }
- }
- }
-
- // 정렬한다. (삭제된 row는 맨 밑으로)
- fSortDiagNo();
- // seq를 다시 매긴다.
- var seq = 1;
- for (var j = 1; j < grd_cldihist.rows; j++) {
- var diagseq = model.getValue("/root/main/list1/diag["+ j +"]/diagseq");
- if (diagseq > "D0") {
- } else {
- model.setValue("/root/main/list1/diag[" + j + "]/diagseq", seq);
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("diagseq")) = seq;
- seq++;
- }
- }
- // 빈줄을 추가한다.
- fDiagGridInsertRow();
-
- // 3-2. seq번호 중복안됨
- } else {
-
- // 정렬한다. (삭제된 row는 맨 밑으로)
- fSortDiagNo();
- // seq를 다시 매긴다.
- var seq = 1;
- for (var j = 1; j < grd_cldihist.rows; j++) {
- var diagseq = model.getValue("/root/main/list1/diag["+ j +"]/diagseq");
- if (diagseq > "D0") {
- } else {
- model.setValue("/root/main/list1/diag[" + j + "]/diagseq", seq);
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("diagseq")) = seq;
- seq++;
- }
- }
- // 빈줄을 추가한다.
- fDiagGridInsertRow();
- }
-
- } else {
- model.setValue("/root/main/list1/diag["+ row +"]/diagseq", oldseq);
- grd_cldihist.rowstatus(row) = model.getValue("/root/hidden/list1/diag/oldrowstat");
- }
- }
- function fRepeatSpclSpec() {
- alert("[특정내역 반복] 구현 예정입니다.");
- }
- /* 특정내역 행추가 */
- function fSpclGridInsertRow() {
-
- var clsprow = grd_clsphist.rows - 1;
- grd_clsphist.insertRow(clsprow++, true);
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "M");
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/edicd", "-");
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "1");
- grd_clsphist.row = clsprow;
-
- /*
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "M");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", "-");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "1");
- grd_clsphist.refresh();
- fSetClcjRowStatus();
- */
- }
- /* 특정내역 행삭제 */
- function fSpclGridDeleteRow() {
- // 여러 row를 동시에 선택하고 삭제하는 기능을 부여한다.
- for (var r = 0; r < grd_clsphist.selectedRows; r++) {
-
- var row = grd_clsphist.selectedRow(r);
-
- // 빈줄일 경우는 삭제하지 않는다.
- var rowstatus = grd_clsphist.rowstatus(row);
- var spclcd = model.getValue("/root/main/list3/clcj["+ row +"]/spclcd");
- var spclspec = model.getValue("/root/main/list3/clcj["+ row +"]/spclspec");
- if (rowstatus != 4 && spclcd == "" && spclspec == "") {
- } else {
-
- // 줄번호가 부여된 줄단위 특정내역이 삭제된 경우, 처방Grid의 'T' 컬럼의 "*" 를 삭제한다.
- var unitflag = model.getValue("/root/main/list3/clcj["+ row +"]/unitflag");
- if (unitflag == "J") {
- var basecd = model.getValue("/root/main/list3/clcj["+ row +"]/edicd");
- var spclcd = model.getValue("/root/main/list3/clcj["+ row +"]/spclcd");
- if (spclcd == "JT001") { // 확인코드를 삭제한 경우
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ j +"]/cnfmcd", "");
- }
- }
- } else {
- var cnt = 0;
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- if (basecd == spclEdicd && model.getValue("/root/main/list3/clcj["+ j +"]/unitflag") == "J") {
- if (model.getValue("/root/main/list3/clcj["+ j +"]/spclcd") != "JT001" && grd_clsphist.rowstatus(j) != 4) {
- cnt++;
- }
- }
- }
- if (cnt > 1) {
- } else { // 특정내역이 한건도 없게 된 경우
- for (var k = 1; k < grd_clodhist.rows; k++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ k +"]/basecd");
- if (basecd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ k +"]/lnunitspclspecyn", "");
- }
- }
- }
- }
- } else if (unitflag == "O") {
- var basecd = model.getValue("/root/main/list3/clcj["+ row +"]/edicd");
- var spclcd = model.getValue("/root/main/list3/clcj["+ row +"]/spclcd");
-
- var cnt = 0;
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- if (basecd == spclEdicd && model.getValue("/root/main/list3/clcj["+ j +"]/unitflag") == "O") {
- if (model.getValue("/root/main/list3/clcj["+ j +"]/spclcd") != "JT001" && grd_clsphist.rowstatus(j) != 4) {
- cnt++;
- }
- }
- }
-
- if (cnt > 1) {
- } else { // 특정내역이 한건도 없게 된 경우
- for (var k = 1; k < grd_oprcphist.rows; k++) {
- var clopEdicd = model.getValue("/root/main/list7/clop["+ k +"]/edicd");
- if (basecd == clopEdicd) {
- model.setValue("/root/main/list7/clop["+ k +"]/spclspecyn", "");
- }
- }
- }
- }
-
- // 줄을 삭제한다.
- var rowstatus = grd_clsphist.rowstatus(row);
- if (rowstatus == 1 || rowstatus == 3) {
- grd_clsphist.valueMatrix(row, grd_clsphist.colRef("rowstat")) = "D";
- model.setValue("/root/main/list3/clcj["+ row +"]/rowstat", "D");
- } else {
- grd_clsphist.rowstatus(row) = 4;
- grd_clsphist.valueMatrix(row, grd_clsphist.colRef("rowstat")) = "D";
- model.setValue("/root/main/list3/clcj["+ row +"]/rowstat", "D");
- }
-
- model.setValue("/root/hidden/list3/msgspclformat", "");
- opt_msgspclformat.refresh();
- }
- }
- for (var s = grd_clsphist.rows-1; s >= 1 ; s--) {
- var rowstatus = grd_clsphist.rowstatus(s);
- var rowtext = grd_clsphist.valueMatrix(s, grd_clsphist.colRef("rowstat"));
- if (rowstatus == 1 || rowstatus == 3) {
- if (rowtext == "D") grd_clsphist.deleteRow(s, false);
- }
- }
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- fCheckSpclSpecData();
-
- model.refresh();
- }
- /* 처방주석입력 */
- function fOrderGridInsertCmt() {
- model.removeNodeset("/root/hidden/sppiz00500/rslt");
- model.removeNodeset("/root/hidden/sppiz00500/cond");
-
- // 1. 특정내역 입력을 위한 팝업을 띄운다.
- var row = grd_clodhist.row;
- var basecd = model.getValue("/root/main/list2/oscl["+ row +"]/basecd");
- var edicdflag = model.getValue("/root/main/list2/oscl["+ row +"]/edicdflag");
- if (basecd) {
- var lnunitspclspecyn = model.getValue("/root/main/list2/oscl["+ row +"]/lnunitspclspecyn");
- // 1-1. 신규 특정내역 입력
- if (lnunitspclspecyn == "") {
- model.makeValue("/root/hidden/sppiz00500/cond/flag", "I");
- model.makeValue("/root/hidden/sppiz00500/cond/snglcalcscorcd", basecd);
- model.makeValue("/root/hidden/sppiz00500/cond/edilnno", "-");
- model.makeValue("/root/hidden/sppiz00500/cond/spclcd", "JX999");
- model.makeValue("/root/hidden/sppiz00500/cond/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.makeNode("/root/hidden/sppiz00500/cond/spclspec");
- model.makeValue("/root/hidden/sppiz00500/cond/spclformat", "X(700)");
- model.makeNode("/root/hidden/sppiz00500/cond/rownum");
- model.makeValue("/root/hidden/sppiz00500/cond/cdnm", "기타내역");
- model.makeValue("/root/hidden/sppiz00500/cond/unitflag", "J");
- // 1-2. 기존 특정내역 수정
- } else {
- var rowcnt = 1;
- var setrow = 0;
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ i +"]/edicd");
- if (basecd == spclEdicd && model.getValue("/root/main/list3/clcj["+ i +"]/unitflag") == "J") {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- // 확인코드가 아닌 경우
- if (spclcd != "JT001" && grd_clsphist.rowstatus(i) != 4) {
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/flag", "");
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/rownum", i);
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/snglcalcscorcd", spclEdicd);
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/edilnno", "-");
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclformat", model.getValue("/root/main/list3/clcj["+ i +"]/spclformat"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/cdnm", model.getValue("/root/main/list3/clcj["+ i +"]/cdnm"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/detldesc", model.getValue("/root/main/list3/clcj["+ i +"]/detldesc"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/oldspclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/oldspclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- setrow = i;
- rowcnt = rowcnt+1;
- }
- }
- }
- // 특정내역 상세관리에 띄워줄 특정내역 담기
- if (model.getValue("/root/main/list3/clcj["+ setrow +"]/spclcd") == "JX999") {
- model.makevalue("/root/hidden/sppiz00500/cond/flag", "");
- model.makevalue("/root/hidden/sppiz00500/cond/snglcalcscorcd", basecd);
- model.makevalue("/root/hidden/sppiz00500/cond/edilnno", "-");
- model.makevalue("/root/hidden/sppiz00500/cond/spclcd", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclcd"));
- model.makevalue("/root/hidden/sppiz00500/cond/detldesc", model.getValue("/root/main/list3/clcj["+ setrow +"]/detldesc"));
- model.makevalue("/root/hidden/sppiz00500/cond/spclspec", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclspec"));
- model.makevalue("/root/hidden/sppiz00500/cond/spclformat", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclformat"));
- model.makevalue("/root/hidden/sppiz00500/cond/rownum", setrow);
- model.makevalue("/root/hidden/sppiz00500/cond/cdnm", model.getValue("/root/main/list3/clcj["+ setrow +"]/cdnm"));
- model.makevalue("/root/hidden/sppiz00500/cond/unitflag", "J");
- } else {
- model.makeValue("/root/hidden/sppiz00500/cond/flag", "I");
- model.makeValue("/root/hidden/sppiz00500/cond/snglcalcscorcd", basecd);
- model.makeValue("/root/hidden/sppiz00500/cond/edilnno", "-");
- model.makeValue("/root/hidden/sppiz00500/cond/spclcd", "JX999");
- model.makeValue("/root/hidden/sppiz00500/cond/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.makeNode("/root/hidden/sppiz00500/cond/spclspec");
- model.makeValue("/root/hidden/sppiz00500/cond/spclformat", "X(700)");
- model.makeNode("/root/hidden/sppiz00500/cond/rownum");
- model.makeValue("/root/hidden/sppiz00500/cond/cdnm", "기타내역");
- model.makeValue("/root/hidden/sppiz00500/cond/unitflag", "J");
- }
- }
- modal("SPPIZ00500" ,"", "10", "10", "SPPIZ00500", "/root/hidden/sppiz00500", "/root/hidden/clsp", "", ""); // SPPIZ00500_특정내역상세관리.xrw
-
- // 2. 특정내역 결과를 화면에 보여준다.
- var rsltcnt = getNodesetCount("/root/hidden/sppiz00500/rslt/list");
- if (rsltcnt > 0) {
- var clsprow = grd_clsphist.rows - 1;
- var addcnt = 0;
- for (var i = rsltcnt; i > 0; i--) {
- var flag = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/flag");
- var rownum = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/rownum");
- var newspclcd = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclcd");
- var newcdnm = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/cdnm");
- var newspclspec = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclspec");
- var newspclformat = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclformat ");
- var newdetldesc = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/detldesc");
-
- // 2-1. 특정내역 추가
- if (flag == "I") {
-
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "J");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", newcdnm);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", newspclspec);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", newspclformat);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", newdetldesc);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ row +"]/prcpdd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list2/oscl["+ row +"]/prcpno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ row +"]/prcphistno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ row +"]/execprcpseqno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicdflag", model.getValue("/root/main/list2/oscl["+ row +"]/edicdflag"));
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
- addcnt++;
-
- // 2-2. 특정내역 수정
- } else if (flag == "U") {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- model.setValue("/root/main/list3/clcj["+ rownum +"]/edicd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclcd", newspclcd);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/cdnm", newcdnm);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclspec", newspclspec);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclformat", newspclformat);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/detldesc", newdetldesc);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/oldspclcd", newspclcd);
-
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "I");
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- }
-
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/oldspclcd");
- var oldspclspec = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/oldspclspec");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
-
- // 2-3. 특정내역 삭제
- } else if (flag == "D" && rownum != "" ) {
-
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- grd_clsphist.deleteRow(rownum, false);
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "D");
- }
- model.setValue("/root/hidden/list3/msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- opt_msgspclformat.refresh();
- }
- }
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- var cnt = 0;
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- if (basecd == spclEdicd && model.getValue("/root/main/list3/clcj["+ j +"]/unitflag") == "J") {
- if (model.getValue("/root/main/list3/clcj["+ j +"]/spclcd") != "JT001" && grd_clsphist.rowstatus(j) != 4) {
- cnt++;
- }
- }
- }
- if (cnt > 0) {
- if (lnunitspclspecyn == "") { // 기존에는 입력된 내역이 없다가 추가된 경우임
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ j +"]/lnunitspclspecyn", "*");
- }
- }
- }
- } else { // 특정내역이 한건도 없게 된 경우
- if (lnunitspclspecyn) { // 기존에는 입력된 내역이 있다가 삭제된 경우임
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.resetInstanceNode("/root/main/list2/oscl["+ j +"]/lnunitspclspecyn");
- }
- }
- }
- }
- } // 처리 건수 if end
-
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- fSortSpclNo();
- fSpclGridInsertRow();
- }
- } else {
- messageBox("EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이", "I004"); ///EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- /* 사용안함 */
- function fSetLnUnitMemoRefresh(){
-
- }
- /* 확인코드 입력 */
- function fOrderGridInsertCnfmCd() {
- var row = grd_clodhist.row;
- var basecd = model.getValue("/root/main/list2/oscl["+ row +"]/basecd");
- if (basecd) {
- // 1. 확인코드 조회 팝업을 호출한다.
- model.removeNodeset("root/hidden/sppiz01100/rslt");
- model.makeValue("/root/hidden/sppiz01100/cond/code", model.getValue("/root/main/list2/oscl["+ row +"]/cnfmcd"));
- modal("SPPIZ01100" ,"", "10", "10", "SPPIZ01100", "/root/hidden/sppiz01100", "/root/init/sppiz01100", "", "");
-
- // 2. 확인코드 조회 결과를 처리한다.
- if (instance1.selectSingleNode("root/hidden/sppiz01100/rslt")) {
- var cnfmcd = model.getValue("root/hidden/sppiz01100/rslt/code");
-
- if (cnfmcd) {
-
- // 2-1. 처방그리드 확인코드 값을 넣는다.
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ j +"]/cnfmcd", cnfmcd);
- }
- }
-
- // 2-2. 기존에 특정내역에 존재하는 확인코드일 경우, 확인코드를 수정한다.
- var isFind = false;
- for (var j = 1; j < grd_clsphist.rows && isFind != true; j++) {
- var unitflag = model.getValue("/root/main/list3/clcj["+ j +"]/unitflag");
- if (unitflag == "J") {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- var spclSpclcd = model.getValue("/root/main/list3/clcj["+ j +"]/spclcd");
- if (spclEdicd == basecd && spclSpclcd == "JT001") {
- model.setValue("/root/main/list3/clcj["+ j +"]/rowstat", "U");
- model.setValue("/root/main/list3/clcj["+ j +"]/edicd", basecd);
- model.setValue("/root/main/list3/clcj["+ j +"]/spclcd", "JT001");
- model.setValue("/root/main/list3/clcj["+ j +"]/cdnm", "확인코드");
- model.setValue("/root/main/list3/clcj["+ j +"]/spclspec", cnfmcd);
- model.setValue("/root/main/list3/clcj["+ j +"]/spclformat", "X(5)");
- model.setValue("/root/main/list3/clcj["+ j +"]/detldesc", "진료행위에 대한 추가기술 사항을 구분하는 코드로서 확인코드가 여러개 발생할 경우 '/'로 구분하여 기재");
- model.setValue("/root/main/list3/clcj["+ j +"]/oldspclcd", "JT001");
- model.setValue("/root/main/list3/clcj["+ j +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ row +"]/prcpdd"));
- model.setValue("/root/main/list3/clcj["+ j +"]/prcpno", model.getValue("/root/main/list2/oscl["+ row +"]/prcpno"));
- model.setValue("/root/main/list3/clcj["+ j +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ row +"]/prcphistno"));
- model.setValue("/root/main/list3/clcj["+ j +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ row +"]/execprcpseqno"));
- var rowstatus = grd_clsphist.rowstatus(j);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ j +"]/rowstat", "I");
- } else {
- grd_clsphist.rowstatus(j) = 2;
- model.setValue("/root/main/list3/clcj["+ j +"]/rowstat", "U");
- }
- isFind = true;
- }
- }
- }
-
- // 2-3. 신규 입력 확인코드일 경우, 확인코드를 추가한다.
- if (isFind == false) {
- var clsprow = grd_clsphist.rows;
-
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "J");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", basecd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", "JT001");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "확인코드");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", cnfmcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "X(5)");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "진료행위에 대한 추가기술 사항을 구분하는 코드로서 확인코드가 여러개 발생할 경우 '/'로 구분하여 기재");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", basecd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", "JT001");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ row +"]/prcpdd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list2/oscl["+ row +"]/prcpno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ row +"]/prcphistno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ row +"]/execprcpseqno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- grd_clsphist.refresh();
-
- // refresh로 인한 rowstatus 초기화 되므로 원상태로 만들어줌
- fSetClcjRowStatus();
-
- fSortSpclNo();
- fSpclGridInsertRow();
- }
- model.setValue("/root/hidden/list3/msgspclformat", "확인코드 - JT001 / 입력코드내역 : "+ cnfmcd +" / 기재형식 : X(5)");
- opt_msgspclformat.refresh();
-
- } else {
- }
- }
- }
- }
- /* 특정내역 rowstatus 세팅 */
- function fSetClcjRowStatus() {
- for (var k = grd_clsphist.rows - 1; k >= 1; k--) {
- var rowstatus = model.getValue("/root/main/list3/clcj["+ k +"]/rowstat");
-
- if (rowstatus == "I") grd_clsphist.rowstatus(k) = 1;
- else if (rowstatus == "U") grd_clsphist.rowstatus(k) = 2;
- else if (rowstatus == "D") grd_clsphist.rowstatus(k) = 4;
- else if (rowstatus == "R") grd_clsphist.deleteRow(k, true);
- }
- }
- /* 상병내역 rowstatus 세팅 */
- function fSetDiagRowStatus() {
- for (var k = grd_cldihist.rows - 1; k >= 1; k--) {
- var rowstatus = model.getValue("/root/main/list1/diag["+ k +"]/rowstat");
-
- if (rowstatus == "I") grd_cldihist.rowstatus(k) = 1;
- else if (rowstatus == "U") grd_cldihist.rowstatus(k) = 2;
- else if (rowstatus == "D") grd_cldihist.rowstatus(k) = 4;
- else if (rowstatus == "R") grd_cldihist.deleteRow(k, true);
- }
- }
- /* 특정내역상세관리화면에서 '결과조회' 팝업 띄움 */
- function fOrderRsltSrch() {
- var pid = model.getValue("/root/main/item1/otpt/pid");
- var orddd = model.getValue("/root/main/item1/otpt/orddd");
- if (pid != "") {
- model.makevalue("/root/hidden/smaer00800/cond/srchdate1", orddd);
- model.makevalue("/root/hidden/smaer00800/cond/srchdate2", getCurrentDate());
- model.makevalue("/root/hidden/smaer00800/cond/srchpid", pid);
- model.makevalue("/root/hidden/smaer00800/cond/wardcd", "");
- model.makevalue("/root/hidden/smaer00800/cond/roomcd", "");
- model.makevalue("/root/hidden/smaer00800/cond/listflag", "P");
- model.makevalue("/root/hidden/smaer00800/cond/deptcd", "");
- model.makevalue("/root/hidden/smaer00800/cond/drid", "");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck", "");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck1", "A");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck2", "B");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck3", "C");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck4", "D");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck5", "E");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck6", "F");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck7", "G");
- model.makevalue("/root/hidden/smaer00800/cond/chkcheck8", "");
- model.makevalue("/root/hidden/smaer00800/cond/tabflag", "");
- model.makevalue("/root/hidden/smaer00800/cond/mdlcd", "");
- model.makevalue("/root/hidden/smaer00800/cond/examgubun", "");
- open("SMAER00800" ,"", "10", "10", "SMAER00800", "/root/hidden/smaer00800/cond", "/root/send/data/singdata", "", "");
- }
- }
- /* 보험인정기준조회 */
- function fOrderInsuRcogBase() {
- var calcscorcd = grd_clodhist.valueMatrix(grd_clodhist.row, grd_clodhist.colRef("snglcalcscorcd"));
- model.setValue("root/hidden/sppiz01600/cond/calcscorcd", calcscorcd);
- // SPPIZ01600_보험인정기준조회 팝업 연결 (선택된 row의 처방코드를 넘겨준다.)
- modal("SPPIZ01600", 1,150, 150, "SPPIZ01600", "root/hidden/sppiz01600/cond/calcscorcd", "/root/send/item3/calcscorcd", "", "");
- }
- /* 수가조회 */
- function fOrderCalcScorSrch(isAll) {
-
- // 수가조회창이 아닌 수가관리창으로 교체 2008.01.29 박지욱 수정 (calcscorcd : 수가코드, judgflag : 수가관리에서 자보,일반,국제를 보여주도록 하기 위함)
- model.setValue("/root/hidden/smpic00100/cond/calcscorcd", grd_clodhist.valueMatrix(grd_clodhist.row, grd_clodhist.colRef("snglcalcscorcd")));
- model.setValue("/root/hidden/smpic00100/cond/judgflag", "Y");
- modal("SMPIC00100", 1,150, 150, "SMPIC00100", "/root/hidden/smpic00100/cond", "/root/temp/item6", "", "");
- }
- /* 약품편람 */
- function fOrderDrugHBook() {
- model.setValue("/root/hidden/smadb01900/cond/calcscorcd", grd_clodhist.valueMatrix(grd_clodhist.row, grd_clodhist.colRef("snglcalcscorcd")));
- modal("SMADB01900", 1,150, 150, "SMADB01900", "/root/hidden/smadb01900/cond/calcscorcd", "/root/hidden/receivedata/srchdrugcd", "", "");
- }
- /* 상세계산내역 - 사용안함 */
- function fOrderCalcDetail(isAll) {
- model.resetInstanceNode("/root/hidden/sppid21600/cond");
- model.setValue("/root/hidden/sppid21600/cond/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.setValue("/root/hidden/sppid21600/cond/indd", model.getValue("/root/main/item1/otpt/orddd"));
- model.setValue("/root/hidden/sppid21600/cond/fromdd", model.getValue("/root/main/item1/otpt/ordfromdd"));
- model.setValue("/root/hidden/sppid21600/cond/todd", model.getValue("/root/main/item1/otpt/dschdd"));
- if (isAll == false) { // 처방Grid 더블클릭 시
- model.setValue("/root/hidden/sppid21600/cond/calcscorcd", model.getValue("/root/main/list2/oscl["+ grd_clodhist.row +"]/snglcalcscorcd"));
- }
- model.setValue("/root/hidden/sppid21600/cond/insukindcd", model.getValue("/root/main/item1/otpt/insukindcd"));
- model.setValue("/root/hidden/sppid21600/cond/insukind", model.getValue("/root/main/item1/otpt/insukindnm"));
- model.setValue("/root/hidden/sppid21600/cond/suppkindcd", model.getValue("/root/main/item1/otpt/suppkindcd"));
- model.setValue("/root/hidden/sppid21600/cond/suppkind", cmb_supprate.label);
- model.setValue("/root/hidden/sppid21600/cond/ownbrate", model.getValue("/root/main/item1/otpt/payownbrate"));
-
- var calcDetailWindow = getChildWindow("SPPID21600"); // SPPID21600_세부계산내역.xrw
- if (calcDetailWindow == null) {
- open("SPPID21600" ,"", "10", "10", "SPPID21600", "", "", "", "");
- } else {
- calcDetailWindow.javascript.fGetMainInfo();
- activateChild("SPPID21600");
- }
- }
- /* 환자단위 메시지 전송 */
- function fSendMsgPat() {
- model.makeValue("/root/temp/opentab", "receivemsg");
- zmifOpenMessagePopup("/root/temp"); // root/temp/opentab 에 receivemsg (받은메세지함) 값을 주고 오픈한다.
- }
- /* 처방단위 메시지 전송 */
- function fSendMsgOrder() {
- model.makeValue("/root/temp/opentab", "pmsg");
- zmifOpenMessagePopup("/root/temp"); // root/temp/opentab 에 pmsg (환자메세지작성창) 값을 주고 오픈한다.
- }
- /* 대상자조회에서 대상자 선택하여 넘어올때 메세지 여부 확인, JHP. 2009.07.23 */
- function fGetPatMsgYn(pid, orddd, cretno){
- //var pid = model.getValue("/root/hidden/smpij00600/rslt/pid");
- //var orddd = model.getValue("/root/hidden/smpij00600/rslt/orddd");
- //var cretno = model.getValue("/root/hidden/smpij00600/rslt/cretno");
- //var selectedRow = model.getValue("/root/hidden/smpij00600/rslt/selectedRow");
-
- // 1. 환자의 작성된 메세지를 조회한다.
- if (pid && orddd && cretno) {
- model.removeNodeset("/root/send/msg01");
- model.makeValue("/root/send/msg01/pid" , pid);
- model.makeValue("/root/send/msg01/orddd" , orddd);
- model.makeValue("/root/send/msg01/cretno" , cretno);
- model.makeValue("/root/send/msg01/mskind" , "M");
- model.makeValue("/root/send/msg01/ordtype" , "O");
-
- model.makeNode("/root/main/msglist/list");
-
- if(submit("TRPIZ01903")){
- var cnt = getNodesetCount("/root/main/msglist/list");
- if(cnt > 0){
- img_msg.visible = true;
- }else{
- img_msg.visible = false;
- }
- }else{
- messageBox("환자 메세지 조회건수가 ","I011");
- }
- }
-
- }
- /* 환자기준 전송메세지작성, JHP. 2009.07.16 */
- function fPatJudgPatMsgTrsm() {
- if (!isNull(model.getvalue("/root/main/item1/otpt/pid"))) {
-
- // 인스턴스생성
- model.makeNode("/root/tmp/msgtrsm/info/instcd");
- model.makeNode("/root/tmp/msgtrsm/info/msgwrtedd");
- model.makeNode("/root/tmp/msgtrsm/info/msgwrteno");
- model.makeNode("/root/tmp/msgtrsm/info/msgwrtehistno");
- model.makeNode("/root/tmp/msgtrsm/info/histstat");
- model.makeNode("/root/tmp/msgtrsm/info/pid");
- model.makeNode("/root/tmp/msgtrsm/info/orddd");
- model.makeNode("/root/tmp/msgtrsm/info/cretno");
- model.makeNode("/root/tmp/msgtrsm/info/mskind");
- model.makeNode("/root/tmp/msgtrsm/info/orddeptcd");
- model.makeNode("/root/tmp/msgtrsm/info/orddrid");
- model.makeNode("/root/tmp/msgtrsm/info/orddrnm");
-
- model.makeNode("/root/tmp/msgtrsm/info/ordtype");
- model.makeNode("/root/tmp/msgtrsm/info/kindflag");
- model.makeNode("/root/tmp/msgtrsm/info/grupcalcscorcd");
- model.makeNode("/root/tmp/msgtrsm/info/snglcalcscorcd");
- model.makeNode("/root/tmp/msgtrsm/info/ordqty");
- model.makeNode("/root/tmp/msgtrsm/info/ordtims");
- model.makeNode("/root/tmp/msgtrsm/info/orddays");
- model.makeNode("/root/tmp/msgtrsm/info/prcpdd");
- model.makeNode("/root/tmp/msgtrsm/info/prcpno");
- model.makeNode("/root/tmp/msgtrsm/info/prcppayflag");
-
- model.makeNode("/root/tmp/msgtrsm/info/rgstrid");
- model.makeNode("/root/tmp/msgtrsm/info/rgstdd");
- model.makeNode("/root/tmp/msgtrsm/info/rgsttm");
- model.makeNode("/root/tmp/msgtrsm/info/sendphone");
- model.makeNode("/root/tmp/msgtrsm/info/anybodyyn");
-
- model.makeNode("/root/tmp/msgtrsm/info/sendflag");
- model.makeNode("/root/tmp/msgtrsm/info/senddate");
- model.makeNode("/root/tmp/msgtrsm/info/sendid");
- model.makeNode("/root/tmp/msgtrsm/info/deliveid");
- model.makeNode("/root/tmp/msgtrsm/info/recvdate");
- model.makeNode("/root/tmp/msgtrsm/info/recvid");
- model.makeNode("/root/tmp/msgtrsm/info/recvcnfmyn");
-
- model.makeNode("/root/tmp/msgtrsm/info/recvcnfmid");
- model.makeNode("/root/tmp/msgtrsm/info/sendmsg");
- model.makeNode("/root/tmp/msgtrsm/info/recvmsg");
- model.makeNode("/root/tmp/msgtrsm/info/fstrgstrid");
- model.makeNode("/root/tmp/msgtrsm/info/fstrgstdt");
- model.makeNode("/root/tmp/msgtrsm/info/lastupdtrid");
- model.makeNode("/root/tmp/msgtrsm/info/lastupdtdt");
-
- // 값셋팅
- // 세션값 받기
- var sUserInfosS = getUserInfos();
- sUserInfosS = sUserInfosS + "|";
- var UserInfosS_Array = sUserInfosS.split("|");
- var userid = UserInfosS_Array[0]; //사용자번호
- var usernm = UserInfosS_Array[1]; //사용자이름
- var posinstcd = UserInfosS_Array[6]; //근무지기관코드 2009.04.15
- var posinstnm = UserInfosS_Array[7]; //근무지기관명 2009.04.15
- var posdeptcd = UserInfosS_Array[4]; //소속부서코드
- var posdeptnm = UserInfosS_Array[5]; //소속부서명
- if (userid == null || userid == "" || userid == " " || userid == "-") userid = "pam";
-
- model.setValue("/root/tmp/msgtrsm/info/instcd", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/msgwrtedd", getCurrentDate()); // chk
- model.setValue("/root/tmp/msgtrsm/info/msgwrteno", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/msgwrtehistno", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/histstat", "Y"); // chk
- model.setValue("/root/tmp/msgtrsm/info/pid", model.getValue("/root/main/item1/otpt/pid")); // chk
- model.setValue("/root/tmp/msgtrsm/info/orddd", model.getValue("/root/main/item1/otpt/orddd")); // chk
- model.setValue("/root/tmp/msgtrsm/info/cretno", model.getValue("/root/main/item1/otpt/cretno")); // chk
- model.setValue("/root/tmp/msgtrsm/info/mskind", "M"); // 외래기본 주유형, chk
- model.setValue("/root/tmp/msgtrsm/info/orddeptcd", model.getValue("/root/main/item1/otpt/orddeptcd")); // chk
-
- var drid = model.getValue("/root/main/item1/otpt/orddrid")
- var drnm = model.getValue("/root/init/orddrid/orddridlist[cd = '" + drid + "']/nm");
- model.setValue("/root/tmp/msgtrsm/info/orddrid", model.getValue("/root/main/item1/otpt/orddrid")); // chk, TABLE에 적용안함.(값만확인)
- model.setValue("/root/tmp/msgtrsm/info/orddrnm", drnm); // chk, TABLE에 적용안함.(값만확인)
-
- model.setValue("/root/tmp/msgtrsm/info/ordtype", "O"); // 외래기본 'O', chk
- model.setValue("/root/tmp/msgtrsm/info/kindflag", "P"); // 환자기준 'P', chk
- model.setValue("/root/tmp/msgtrsm/info/grupcalcscorcd", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/grupcalcscorcd")); chk
- model.setValue("/root/tmp/msgtrsm/info/snglcalcscorcd", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/snglcalcscorcd")); chk
- model.setValue("/root/tmp/msgtrsm/info/ordqty", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/ordqty")); chk
- model.setValue("/root/tmp/msgtrsm/info/ordtims", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/ordtims")); chk
- model.setValue("/root/tmp/msgtrsm/info/orddays", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/orddays")); chk
- model.setValue("/root/tmp/msgtrsm/info/prcpdd", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcpdd")); chk
- model.setValue("/root/tmp/msgtrsm/info/prcpno", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcpno")); chk
- model.setValue("/root/tmp/msgtrsm/info/prcppayflag", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcppayflag")); chk
-
- model.setValue("/root/tmp/msgtrsm/info/rgstrid", "-"); // 서버단에서 조회하여 가져와야함. chk
- model.setValue("/root/tmp/msgtrsm/info/rgstdd", "-"); // 서버단에서 조회하여 가져와야함. chk
- model.setValue("/root/tmp/msgtrsm/info/rgsttm", "-"); // 서버단에서 조회하여 가져와야함. chk
-
- model.setValue("/root/tmp/msgtrsm/info/sendphone", ""); // 서버단에서 조회하여 가져와야함. chk
- model.setValue("/root/tmp/msgtrsm/info/anybodyyn", "N"); // 누구나 기본 'N', chk
-
- model.setValue("/root/tmp/msgtrsm/info/sendflag", "O"); // 진료기본 'O', chk
- model.setValue("/root/tmp/msgtrsm/info/senddate", ""); //쿼리에서 timestamp chk
- model.setValue("/root/tmp/msgtrsm/info/sendid", userid); //chk
-
- model.setValue("/root/tmp/msgtrsm/info/deliveid", "-"); // 화면에서선택. chk
- model.setValue("/root/tmp/msgtrsm/info/recvdate", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/recvid", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/recvcnfmyn", "N"); // 기본 비연속 'N', chk
-
- model.setValue("/root/tmp/msgtrsm/info/recvcnfmid", userid); //chk
-
- //var sendmsgvalue1 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/snglcalcscorcd");
- //var sendmsgvalue2 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/hngnm");
- //var sendmsgvalue = sendmsgvalue1 + ', ' + sendmsgvalue2;
- model.setValue("/root/tmp/msgtrsm/info/sendmsg", ""); //sendmsgvalue); // 기본 처방코드, 처방명값가지고 시작. chk
- model.setValue("/root/tmp/msgtrsm/info/recvmsg", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/fstrgstrid", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/fstrgstdt", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/lastupdtrid", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/lastupdtdt", ""); // chk
-
- } else {
- messageBox("기본정보가 ", "I004");
- }
- model.refresh();
- modal("SPPIZ01900_심사환자메세지작성", "", "400", "300", "", "/root/tmp/msgtrsm/info", "/root/main/patinfo");
- model.removenode("/root/tmp/msgtrsm");
- }
- /* 처방기준 전송메세지작성, JHP. 2009.07.16 */
- function fOrderJudgPatMsgTrsm() {
- if (!isNull(model.getvalue("/root/main/item1/otpt/pid"))) {
-
- // 인스턴스생성
- model.makeNode("/root/tmp/msgtrsm/info/instcd");
- model.makeNode("/root/tmp/msgtrsm/info/msgwrtedd");
- model.makeNode("/root/tmp/msgtrsm/info/msgwrteno");
- model.makeNode("/root/tmp/msgtrsm/info/msgwrtehistno");
- model.makeNode("/root/tmp/msgtrsm/info/histstat");
- model.makeNode("/root/tmp/msgtrsm/info/pid");
- model.makeNode("/root/tmp/msgtrsm/info/orddd");
- model.makeNode("/root/tmp/msgtrsm/info/cretno");
- model.makeNode("/root/tmp/msgtrsm/info/mskind");
- model.makeNode("/root/tmp/msgtrsm/info/orddeptcd");
- model.makeNode("/root/tmp/msgtrsm/info/orddrid");
- model.makeNode("/root/tmp/msgtrsm/info/orddrnm");
-
- model.makeNode("/root/tmp/msgtrsm/info/ordtype");
- model.makeNode("/root/tmp/msgtrsm/info/kindflag");
- model.makeNode("/root/tmp/msgtrsm/info/grupcalcscorcd");
- model.makeNode("/root/tmp/msgtrsm/info/snglcalcscorcd");
- model.makeNode("/root/tmp/msgtrsm/info/ordqty");
- model.makeNode("/root/tmp/msgtrsm/info/ordtims");
- model.makeNode("/root/tmp/msgtrsm/info/orddays");
- model.makeNode("/root/tmp/msgtrsm/info/prcpdd");
- model.makeNode("/root/tmp/msgtrsm/info/prcpno");
- model.makeNode("/root/tmp/msgtrsm/info/prcppayflag");
-
- model.makeNode("/root/tmp/msgtrsm/info/rgstrid");
- model.makeNode("/root/tmp/msgtrsm/info/rgstdd");
- model.makeNode("/root/tmp/msgtrsm/info/rgsttm");
-
- model.makeNode("/root/tmp/msgtrsm/info/sendphone");
- model.makeNode("/root/tmp/msgtrsm/info/anybodyyn");
-
- model.makeNode("/root/tmp/msgtrsm/info/sendflag");
- model.makeNode("/root/tmp/msgtrsm/info/senddate");
- model.makeNode("/root/tmp/msgtrsm/info/sendid");
- model.makeNode("/root/tmp/msgtrsm/info/deliveid");
- model.makeNode("/root/tmp/msgtrsm/info/recvdate");
- model.makeNode("/root/tmp/msgtrsm/info/recvid");
- model.makeNode("/root/tmp/msgtrsm/info/recvcnfmyn");
-
- model.makeNode("/root/tmp/msgtrsm/info/recvcnfmid");
- model.makeNode("/root/tmp/msgtrsm/info/sendmsg");
- model.makeNode("/root/tmp/msgtrsm/info/recvmsg");
- model.makeNode("/root/tmp/msgtrsm/info/fstrgstrid");
- model.makeNode("/root/tmp/msgtrsm/info/fstrgstdt");
- model.makeNode("/root/tmp/msgtrsm/info/lastupdtrid");
- model.makeNode("/root/tmp/msgtrsm/info/lastupdtdt");
-
- // 값셋팅
- // 처방이므로 처방row선택여부 확인
- if(grd_clodhist.row <= 0){
- return;
- }
- // 세션값 받기
- var sUserInfosS = getUserInfos();
- sUserInfosS = sUserInfosS + "|";
- var UserInfosS_Array = sUserInfosS.split("|");
- var userid = UserInfosS_Array[0]; //사용자번호
- var usernm = UserInfosS_Array[1]; //사용자이름
- var posinstcd = UserInfosS_Array[6]; //근무지기관코드 2009.04.15
- var posinstnm = UserInfosS_Array[7]; //근무지기관명 2009.04.15
- var posdeptcd = UserInfosS_Array[4]; //소속부서코드
- var posdeptnm = UserInfosS_Array[5]; //소속부서명
- if (userid == null || userid == "" || userid == " " || userid == "-") userid = "pam";
-
- model.setValue("/root/tmp/msgtrsm/info/instcd", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/msgwrtedd", getCurrentDate()); // chk
- model.setValue("/root/tmp/msgtrsm/info/msgwrteno", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/msgwrtehistno", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/histstat", "Y"); // chk
- model.setValue("/root/tmp/msgtrsm/info/pid", model.getValue("/root/main/item1/otpt/pid")); // chk
- model.setValue("/root/tmp/msgtrsm/info/orddd", model.getValue("/root/main/item1/otpt/orddd")); // chk
- model.setValue("/root/tmp/msgtrsm/info/cretno", model.getValue("/root/main/item1/otpt/cretno")); // chk
- model.setValue("/root/tmp/msgtrsm/info/mskind", "M"); // 외래기본 주유형, chk
- model.setValue("/root/tmp/msgtrsm/info/orddeptcd", model.getValue("/root/main/item1/otpt/orddeptcd")); // chk
-
- var drid = model.getValue("/root/main/item1/otpt/orddrid")
- var drnm = model.getValue("/root/init/orddrid/orddridlist[cd = '" + drid + "']/nm");
- model.setValue("/root/tmp/msgtrsm/info/orddrid", model.getValue("/root/main/item1/otpt/orddrid")); // chk, TABLE에 적용안함.(값만확인)
- model.setValue("/root/tmp/msgtrsm/info/orddrnm", drnm); // chk, TABLE에 적용안함.(값만확인)
-
- model.setValue("/root/tmp/msgtrsm/info/ordtype", "O"); // 외래기본 'O', chk
- model.setValue("/root/tmp/msgtrsm/info/kindflag", "O"); // 처방기준 'O', chk
- model.setValue("/root/tmp/msgtrsm/info/grupcalcscorcd", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/grupcalcscorcd")); //chk
- model.setValue("/root/tmp/msgtrsm/info/snglcalcscorcd", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/snglcalcscorcd")); //chk
- model.setValue("/root/tmp/msgtrsm/info/ordqty", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/ordqty")); //chk
- model.setValue("/root/tmp/msgtrsm/info/ordtims", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/ordtims")); //chk
- model.setValue("/root/tmp/msgtrsm/info/orddays", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/orddays")); //chk
- model.setValue("/root/tmp/msgtrsm/info/prcpdd", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcpdd")); //chk
- model.setValue("/root/tmp/msgtrsm/info/prcpno", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcpno")); //chk
- model.setValue("/root/tmp/msgtrsm/info/prcppayflag", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcppayflag")); //chk
-
- model.setValue("/root/tmp/msgtrsm/info/rgstrid", "-"); // 서버단에서 조회하여 가져와야함. chk
- model.setValue("/root/tmp/msgtrsm/info/rgstdd", "-"); // 서버단에서 조회하여 가져와야함. chk
- model.setValue("/root/tmp/msgtrsm/info/rgsttm", "-"); // 서버단에서 조회하여 가져와야함. chk
-
- model.setValue("/root/tmp/msgtrsm/info/sendphone", ""); // 서버단에서 조회하여 가져와야함. chk
- model.setValue("/root/tmp/msgtrsm/info/anybodyyn", "N"); // 누구나 기본 'N', chk
-
- model.setValue("/root/tmp/msgtrsm/info/sendflag", "O"); // 진료기본 'O', chk
- model.setValue("/root/tmp/msgtrsm/info/senddate", ""); //쿼리에서 timestamp chk
- model.setValue("/root/tmp/msgtrsm/info/sendid", userid); //chk
-
- model.setValue("/root/tmp/msgtrsm/info/deliveid", "-"); // 화면에서선택. chk
- model.setValue("/root/tmp/msgtrsm/info/recvdate", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/recvid", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/recvcnfmyn", "N"); // 기본 비연속 'N', chk
-
- model.setValue("/root/tmp/msgtrsm/info/recvcnfmid", userid); //chk
-
- //var sendmsgvalue1 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/snglcalcscorcd");
- //var sendmsgvalue2 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/hngnm");
- //var sendmsgvalue = sendmsgvalue1 + ', ' + sendmsgvalue2;
-
- model.setValue("/root/tmp/msgtrsm/info/sendmsg", ""); // 기본 처방코드, 처방명값가지고 시작. chk -> 변경 화면에서 그룹코드 명 조회하여 넣어줌. chk
- model.setValue("/root/tmp/msgtrsm/info/recvmsg", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/fstrgstrid", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/fstrgstdt", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/lastupdtrid", ""); // chk
- model.setValue("/root/tmp/msgtrsm/info/lastupdtdt", ""); // chk
-
- } else {
- messageBox("기본정보가 ", "I004");
- }
- model.refresh();
- modal("SPPIZ01900_심사환자메세지작성", "", "400", "300", "", "/root/tmp/msgtrsm/info", "/root/main/patinfo");
- model.removenode("/root/tmp/msgtrsm");
- }
- // 환자 전체 메세지 내용 조회하여 하나씩 보기.
- function fJudgPatMsgTrsmRef(){
- model.makeNode("/root/tmp/msgtrsm/info/refyn");
- model.makeNode("/root/tmp/msgtrsm/info/pid");
- model.makeNode("/root/tmp/msgtrsm/info/orddd");
- model.makeNode("/root/tmp/msgtrsm/info/cretno");
- model.makeNode("/root/tmp/msgtrsm/info/mskind");
- model.makeNode("/root/tmp/msgtrsm/info/orddeptcd");
- model.makeNode("/root/tmp/msgtrsm/info/orddrid");
- model.makeNode("/root/tmp/msgtrsm/info/ordtype");
- model.setValue("/root/tmp/msgtrsm/info/refyn","Y");
- model.setValue("/root/tmp/msgtrsm/info/pid", model.getValue("/root/main/item1/otpt/pid")); // chk
- model.setValue("/root/tmp/msgtrsm/info/orddd", model.getValue("/root/main/item1/otpt/orddd")); // chk
- model.setValue("/root/tmp/msgtrsm/info/cretno", model.getValue("/root/main/item1/otpt/cretno")); // chk
- model.setValue("/root/tmp/msgtrsm/info/mskind", "M"); // 외래기본 주유형, chk
- model.setValue("/root/tmp/msgtrsm/info/orddeptcd", model.getValue("/root/main/item1/otpt/orddeptcd")); // chk
- model.setValue("/root/tmp/msgtrsm/info/orddrid", model.getValue("/root/main/item1/otpt/orddrid")); // chk, TABLE에 적용안함.(값만확인)
- model.setValue("/root/tmp/msgtrsm/info/ordtype", "O"); // 외래기본 'O', chk
-
- modal("SMPIJ02600_메세지현황", "", "100", "100", "", "/root/tmp/msgtrsm/info", "/root/init/openchk");
- model.removeNode("/root/tmp/msgtrsm");
- }
- /* 산정코드조회 */
- function fSrchEstmCd() {
- model.removeNodeset("/root/hidden/sppiz00800/rslt");
- model.makeNode("/root/hidden/sppiz00800/rslt/clcd");
- model.resetInstanceNode("/root/hidden/sppiz00800/cond");
-
- var row = grd_clodhist.row;
- var estmcls = model.getValue("/root/main/list2/oscl["+ row +"]/estmcls");
- var insukindcd = model.getValue("/root/main/item1/otpt/insukindcd");
- if (insukindcd == "") {
- messageBox("심사대상자의 보험유형이", "I004"); ///심사대상자의 보험유형이 없습니다
- return false;
- }
- model.setValue("/root/hidden/sppiz00800/cond/insukind", insukindcd);
- model.setValue("/root/hidden/sppiz00800/cond/estmcls", estmcls);
- model.setValue("/root/hidden/sppiz00800/cond/todd", model.getValue("/root/main/list2/oscl["+ row +"]/ordtodd"));
- modal("SPPIZ00800" ,"", "10", "10", "SPPIZ00800", "/root/hidden/sppiz00800/cond", "/root/hidden/cond", "", ""); // SPPIZ00800_산정코드조회.xrw
- return true;
- }
- /* 특정내역 소트 */
- function fSortSpclNo() {
-
- if (grd_clsphist.rows > 1) {
-
- for (var j = 1; j < grd_clsphist.rows; j++) {
-
- // row 모두 hidden 상태 초기화
- grd_clsphist.rowHidden(j) = false;
-
- // 삭제시킨 특정내역은 소트 시 맨 뒤로 위치하도록 설정
- var rowstatus = grd_clsphist.rowstatus(j);
- if (rowstatus > 3) { // 삭제상태
- model.makeValue("/root/main/list3/clcj["+ j +"]/currowstat", parseInt(rowstatus, 10 ) + 10);
- } else if (rowstatus != 0) {
- model.makeValue("/root/main/list3/clcj["+ j +"]/currowstat", rowstatus);
- }
-
- // 특정코드, 특정내역 없는 줄 삭제
- var spclcd = model.getValue("/root/main/list3/clcj["+ j +"]/spclcd");
- var spclspec = model.getValue("/root/main/list3/clcj["+ j +"]/spclspec");
- if (rowstatus != 4 && spclcd == "" && spclspec == "") {
- grd_clsphist.deleteRow(j, false);
- i--;
- }
- }
-
- // 소트 수행
- grd_clsphist.colsort(grd_clsphist.colRef("unitflag")) = "desc";
- grd_clsphist.colsort(grd_clsphist.colRef("edicd")) = "asc";
- grd_clsphist.colsort(grd_clsphist.colRef("spclcd")) = "asc";
- grd_clsphist.colsort(grd_clsphist.colRef("currowstat")) = "desc";
- var maxRow = parseInt(grd_clsphist.rows) - 1;
- var maxCol = parseInt(grd_clsphist.cols) - 1;
- grd_clsphist.sort(grd_clsphist.fixedRows, grd_clsphist.fixedCols, maxRow, maxCol) = "usersort";
- grd_clsphist.gridToInstance();
- }
- }
- /* 수가코드가 없으며 DB에 저장된 내용이 아닌 경우 해당 줄을 삭제한다. 사용안함 */
- function fDelEmptyGridOrderData() {
- for (var i = grd_clodhist.fixedRows; i < grd_clodhist.rows; i++) { // 첫 줄부터
- var rowstatus = grd_clodhist.rowstatus(i);
- var snglcalcscorcd = model.getValue("/root/main/list2/oscl["+ i +"]/snglcalcscorcd");
- if (rowstatus != 4 && snglcalcscorcd) { // 4 : delete 삭제 상태가 아니면서 수가코드가 입력된 상태임
- }
- else if (rowstatus == 1 || rowstatus == 3) { // 수가코드 없으며 DB에 저장된 내용이 아닌 경우
- alert("fDelEmptyGridOrderData");
- grd_clodhist.deleteRow(i, true); // 줄을 삭제한다.
- i--;
- }
- }
- }
- /* 처방의 수정된 row 상태를 표시 */
- function fSetOrderChangeRowStat(row) {
- var clodstatus = grd_clodhist.rowstatus(row);
- if (clodstatus == 0 || clodstatus == 2) {
- grd_clodhist.rowstatus(row) = 2;
- }
- }
- /* 상병 위로 이동 */
- function fDiagSeqUp() {
- // 1. 삭제된 row의 경우 이동 불가
- var rowstatus = grd_cldihist.rowstatus(grd_cldihist.row);
- if (rowstatus == 4) return;
-
- // 2. 빈 row의 경우 이동 불가
- var diagnm = model.getValue("/root/main/list1/diag["+ grd_cldihist.row +"]/diagnm");
- if (diagnm == "") return;
-
- // 3. row 위로 이동
- var diagseq = parseInt(model.getValue("/root/main/list1/diag["+ grd_cldihist.row +"]/diagseq"));
- if (diagseq > 1) {
- model.setValue("/root/main/list1/diag["+ grd_cldihist.row +"]/diagseq", --diagseq);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_cldihist.rowstatus(grd_cldihist.row) = 2;
- model.setValue("/root/main/list1/diag[" + grd_cldihist.row + "]", "U");
- grd_cldihist.valueMatrix(grd_cldihist.row, grd_cldihist.colRef("rowstat")) = "U";
- }
- // 바로 위 상병순서와 중복되는 경우
- var nextrow = grd_cldihist.row - 1;
- var nextdiagseq = model.getValue("/root/main/list1/diag["+ nextrow +"]/diagseq");
- if (diagseq == nextdiagseq) {
- model.setValue("/root/main/list1/diag["+ nextrow +"]/diagseq", ++diagseq);
- rowstatus = grd_cldihist.rowstatus(nextrow);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_cldihist.rowstatus(nextrow) = 2;
- model.setValue("/root/main/list1/diag[" + nextrow + "]", "U");
- grd_cldihist.valueMatrix(nextrow, grd_cldihist.colRef("rowstat")) = "U";
- }
- }
- fSortDiagNo();
- fDiagGridInsertRow();
- }
- }
- /* 상병 아래로 이동 */
- function fDiagSeqDown() {
-
- // 1. 삭제된 row의 경우 이동 불가
- var rowstatus = grd_cldihist.rowstatus(grd_cldihist.row);
- if (rowstatus == 4) return;
-
- // 2. 빈 row의 경우 이동 불가
- var diagnm = model.getValue("/root/main/list1/diag["+ grd_cldihist.row +"]/diagnm");
- if (diagnm =="") return;
-
- // 삭제 상태가 아닌 마지막 줄을 찾는다.
- var lastRow = 0;
- for (var i = grd_cldihist.rows - 2; i >= 1; i--) {
- if (grd_cldihist.rowstatus(i) != 4) {
-
- lastRow = i;
- i = 1;
- }
- }
- var diagseq = parseInt(model.getValue("/root/main/list1/diag["+ grd_cldihist.row +"]/diagseq")); // 선택된 줄의 NO
- if (diagseq < lastRow) {
- model.setValue("/root/main/list1/diag["+ grd_cldihist.row +"]/diagseq", ++diagseq);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_cldihist.rowstatus(grd_cldihist.row) = 2;
- model.setValue("/root/main/list1/diag[" + grd_cldihist.row + "]", "U");
- grd_cldihist.valueMatrix(grd_cldihist.row, grd_cldihist.colRef("rowstat")) = "U";
- }
- // 바로 아래 상병순서와 중복되는 경우
- var nextrow = grd_cldihist.row + 1;
- var nextdiagseq = model.getValue("/root/main/list1/diag["+ nextrow +"]/diagseq");
- if (diagseq == nextdiagseq) {
- model.setValue("/root/main/list1/diag["+ nextrow +"]/diagseq", --diagseq);
-
- rowstatus = grd_cldihist.rowstatus(nextrow);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_cldihist.rowstatus(nextrow) = 2;
- model.setValue("/root/main/list1/diag[" + nextrow + "]", "U");
- grd_cldihist.valueMatrix(nextrow, grd_cldihist.colRef("rowstat")) = "U";
- }
- }
- fSortDiagNo();
- fDiagGridInsertRow();
- }
- }
- /* 상병내역 소트 */
- function fSortDiagNo() {
-
- if (grd_cldihist.rows > 1) {
-
- for (var j = grd_cldihist.rows - 1; j >= 1; j--) {
-
- // row 모두 hidden 상태 초기화
- grd_cldihist.rowHidden(j) = false;
-
- // 상병코드, 상병명 없는 줄 삭제
- var rowstatus = grd_cldihist.rowstatus(j);
- var diagcd = model.getValue("/root/main/list1/diag["+ j +"]/diagcd");
- var diagnm = model.getValue("/root/main/list1/diag["+ j +"]/diagnm");
- if (rowstatus != 4 && diagcd == "" && diagnm == "") {
- grd_cldihist.deleteRow(j, false);
- }
- }
-
- // 소트 수행
- var maxRow = parseInt(grd_cldihist.rows) - 1; // rows는 타이틀부분 부터 개수를 센다
- grd_cldihist.sort(1, grd_cldihist.colRef("diagseq"), maxRow, grd_cldihist.colRef("diagseq")) = "asc"; // 타이틀을 제외한 data 부분의 첫 줄의 row = 1 / col = 3 : no
-
- grd_cldihist.gridToInstance();
- }
- }
- /* 이전명세서 목록에서 선택한 청구키의 명세서를 이미 열려있는 Popup 화면으로 조회시에 호출 */
- function fActivatePreDocuWindow() {
- var rslt = fInitSrchData(); // 화면을 초기화한다.
- if (rslt == false) { // 수정사항 저장이 완료되지 않아 초기화할 수 없는 경우
- return false;
- }
-
- var pid = opener.model.getValue("/root/hidden/smpij00700/cond/pid");
- var orddd = opener.model.getValue("/root/hidden/smpij00700/cond/orddd");
- var cretno = opener.model.getValue("/root/hidden/smpij00700/cond/cretno");
- var acptseqno = opener.model.getValue("/root/hidden/smpij00700/cond/acptseqno");
- var insukindcd = opener.model.getValue("/root/hidden/smpij00700/cond/insukindcd");
- if (pid && orddd && cretno && acptseqno && insukindcd) {
- model.setValue("/root/send/item1/otpt/pid", pid);
- model.setValue("/root/send/item1/otpt/orddd", orddd);
- model.setValue("/root/send/item1/otpt/cretno", cretno);
- model.setValue("/root/send/item1/otpt/acptseqno", acptseqno);
- model.setValue("/root/send/item1/otpt/insukindcd", insukindcd);
- //document.title = "이전 명세서 상병/처방 조회";
- submit("TRPIJ00701");
-
- // submit("TRPIJ00701") 일일 심사 대상자를 조회한 이후의 처리를 한다.
- fSetDayJudgTrgtManSrchData();
-
- } else {
- fCheckAuth(); // 화면 권한을 설정한다.
- }
- }
- // 화면 권한을 설정한다.
- function fCheckAuth() {
- var judgendyn = model.getValue("/root/main/item1/otpt/dschjudgprcsstat");
- if (judgendyn == "E" || judgendyn == "D") {
- // 외래사전심사상태 (P0379) - A: 미심사, B: 심사중, D: 보류, E: 통합심사완료
- model.setValue("properties/auth", "10100000"); // 송신된 경우 처리권한을 부여하지 않는다.
- } else {
- model.setValue("properties/auth", "11100000");
- }
-
- var xAuth = !checkAuth("X"); // 처리권한(입력, 수정, 삭제 등)
- btn_save.disabled = xAuth; // 저장
-
- var pAuth = !checkAuth("P"); // 출력권한(보고서 출력, 엑셀 내려받기 등)
- btn_excelsave.disabled = pAuth;
- btn_print.disabled = pAuth;
- }
- // grid 타이틀 컬럼 정보
- function getOrderInfoOfCol(grdid){
-
- var refdata = ""; // ref
- var sizedata = ""; // size
- var grdobj = document.controls.item(grdid);
- var totcol = grdobj.cols;
-
- for(var i = 0; i < totcol; i++){
- var refval = grdobj.colAttribute(i, "ref");
- refdata += refval + "^";
-
- var sizeval = grdobj.colWidth(i);
- sizedata += sizeval + "^";
- }
-
- refdata = refdata.substring(0 , refdata.length-1);
- sizedata = sizedata.substring(0, sizedata.length-1);
-
- var scrnid = model.getValue("/root/hidden/listval/uuee/scrnid");
- var compscnts = model.getValue("/root/hidden/listval/uuee/compscnts");
-
- if (scrnid == "") {
- model.setValue("/root/send/listval/uuee/flag","I");
- } else {
- model.setValue("/root/send/listval/uuee/flag","U");
- }
- model.setValue("/root/send/listval/uuee/scrnid","SMPIJ00700");
- model.setValue("/root/send/listval/uuee/compsnm","grd_clodhist");
- model.setValue("/root/send/listval/uuee/compscnts",refdata);
- model.setValue("/root/send/listval/uuee/compsrefcnts","-");
- model.setValue("/root/send/listval/uuee/compssizecnts",sizedata);
-
- if ( submit("TXPIJ00402", false) ) {
- messageBox("사용자 환경 저장이","I002");
- }
- }
- // 사용자별 grid 타이틀 컬럼 설정
- function setOrderInfoOfCol(grdid, refdata, sizedata){
-
- var grdobj = document.controls.item(grdid);
- var refarr = refdata.split("^");
- var sizearr = sizedata.split("^");
-
- for(var i = 0; i < refarr.length; i++){
-
- var colcnt = grdobj.colref("" + refarr[i] + "");
- grdobj.colMove(i, colcnt, "before",false);
- var size = sizearr[i];
- grdobj.colWidth(i) = eval(size);
- }
- grdobj.refresh();
- }
- // 기존 조회 내역 중 수정 사항이 있는 경우 저장할 것인지를 물어본다.
- function fCheckChangeSave() {
- var initclbs = model.getValue("/root/hidden/item1/initotpt/otpt/pid");
- var isChange = false;
- if (initclbs) {
- var clbsupdatadata = false;
- if (model.getValue("/root/hidden/item1/initotpt/otpt/suppkindcd") != model.getValue("/root/main/item1/otpt/suppkindcd")) {
- clbsupdatadata = true;
- }
- else if (model.getValue("/root/hidden/item1/initotpt/otpt/ordfildcd") != model.getValue("/root/main/item1/otpt/ordfildcd")) {
- clbsupdatadata = true;
- }
- else if (model.getValue("/root/hidden/item1/initotpt/otpt/orddeptcd") != model.getValue("/root/main/item1/otpt/orddeptcd")) {
- clbsupdatadata = true;
- }
- else if (model.getValue("/root/hidden/item1/initotpt/otpt/orddrid") != model.getValue("/root/main/item1/otpt/orddrid")) {
- clbsupdatadata = true;
- }
- else if (model.getValue("/root/hidden/item1/initotpt/otpt/ordrsltcd") != model.getValue("/root/main/item1/otpt/ordrsltcd")) {
- clbsupdatadata = true;
- }
- else if (model.getValue("/root/hidden/item1/initotpt/otpt/insuno") != model.getValue("/root/main/item1/otpt/insuno")) {
- clbsupdatadata = true;
- }
- else if (model.getValue("/root/hidden/item1/initotpt/otpt/certno") != model.getValue("/root/main/item1/otpt/certno")) {
- clbsupdatadata = true;
- }
- if (clbsupdatadata == false) {
- var clspupdtdata = getGridUpdateData(grd_clsphist); // (tfHelper.js) 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환
- var clodupdtdata = getGridUpdateData(grd_clodhist);
- var clopupdtdata = getGridUpdateData(grd_oprcphist);
- if (clodupdtdata || clopupdtdata) {
- isChange = true;
- } else { // 처방, 원외처방의 수정사항이 없는 경우
- for (var i = 1; i < grd_cldihist.rows; i++) {
- var rowstatus = grd_cldihist.rowstatus(i);
- var diagcd = model.getValue("/root/main/list1/diag["+ i +"]/diagcd");
- // 상병코드와 진료개시일이 입력되지 않은 경우
- if (rowstatus == 1 || rowstatus == 3) {
- if (diagcd == "") {
- // 줄을 삭제한다.
- grd_cldihist.deleteRow(i, true);
- i--;
- delcldiCheck = true;
- }
- }
- }
- // 상병의 경우 기본적으로 추가된 줄을 삭제한 후 체크한다.
- var cldiupdtdata = getGridUpdateData(grd_cldihist);
- if (cldiupdtdata) {
- isChange = true;
- }
-
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var rowstatus = grd_clsphist.rowstatus(i);
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- // 구분코드가 입력되지 않은 경우
- if (rowstatus == 1 || rowstatus == 3) { // 1 : insert, 3 : insert & new
- if (spclcd == "") {
- // 줄을 삭제한다.
- grd_clsphist.deleteRow(i, true);
- i--;
- delclcjCheck = true;
- }
- }
- }
- // 특정내역의 경우 기본적으로 추가된 줄을 삭제한 후 체크한다.
- var clspupdtdata = getGridUpdateData(grd_clsphist);
- if (clspupdtdata) {
- isChange = true;
- }
- }
- } else {
- isChange = true;
- }
- }
- if (isChange) {
- var ans = messageBox("수정사항이 있습니다. 저장", "S001"); ///수정사항이 있습니다. 저장하시려면 예(Yes)\n아니면 아니오(No)
- if (ans == 6) { // 6: yes
- var rslt = fSaveOutDayJudg("B"); // 저장
- if (rslt != "true") {
- return false;
- }
- }
- else if (ans == 2) { // 6: yes, 7:no, 2:cancel
- return false;
- }
- }
- return true;
- }
- // 상병, 특정내역, 처방 Group의 컨트롤 크기를 초기화한다.
- function fInitUIControlSize() {
- cap_grptemp.visible = false;
- grp_predoculist.visible = false; // 이전 명세서 목록용 Group
- grp_delclodlist.visible = false; // 삭제처방목록 Group
- grp_delorderlist.visible = false; // 처방 휴지통 Group
- case_spclspec.selected = false;
- case_judgrmemo.selected = false;
- case_ediclammemo.selected = false;
- fCutSwitchSize();
- }
- // 처방조회부, 처방 Grid용 Group의 컨트롤 크기를 설정한다.
- function fSetOrderControlSize() {
- var otherGrp = true;
- if (cap_clod.attribute("top") == "266") { // 초기상태이므로 확대시킴
- otherGrp = false;
- cap_clod.attribute("top") = "65";
- // Message용 Output 크기를 초기화한다.
- cap_message.attribute("left") = "5";
- opt_msgspclformat.attribute("left") = "95";
- opt_msgspclformat.attribute("width") = "1099";
- } else { // 확대된 경우임
- otherGrp = true;
- cap_clod.attribute("top") = "266";
- // 상병 Grid 크기를 초기화한다.
- grp_cldihist.attribute("height") = "170";
- grd_cldihist.attribute("height") = "145";
- }
- if (grp_clop.attribute("top") == "541" || grp_clop.attribute("top") == "541px") { // 원외처방 Grid 축소된 초기 상태임
- if (cap_clod.attribute("top") == "266") { // 처방 title 초기상태
- grd_clodhist.attribute("height") = "255"; // 처방 Grid를 축소한다.
-
- } else {
- grd_clodhist.attribute("height") = "456"; // 처방 Grid를 확대한다.
- }
- } else {
- grd_clodhist.attribute("height") = "98"; // 처방Grid 타이틀 32 + data 2줄 23*2 + 스크롤 18 + 2 = 98
- grp_clop.attribute("top") = parseInt(cap_clod.attribute("top")) - 5 + 123; // 123 = 처방 Grid 98 + 처방 title 부분간격 25
- if (cap_clod.attribute("top") == "266") { // 처방 title 초기상태
- grp_clop.attribute("height") = 255 + 50 + 71 - 123;
- } else {
- grp_clop.attribute("height") = 456 + 50 + 71 - 123;
- }
- grd_oprcphist.attribute("height") = parseInt(grp_clop.attribute("height")) - 25;
- }
- grp_cldihist.visible = otherGrp;
- grp_clsphist.visible = otherGrp;
- grp_calendar.visible = otherGrp; // 외래의 경우, 그리드달력 그룹이 추가됨
- var icap_top = parseInt(cap_clod.attribute("top"));
-
- ln_clodhist.attribute("y1") = icap_top + 15;
- ln_clodhist.attribute("y2") = icap_top + 15;
- grd_clodhist.attribute("top") = icap_top + 20;
- btn_delordlist.attribute("top") = icap_top - 5;
- btn_delordsrch.attribute("top") = icap_top - 5;
- grp_ordsrch.attribute("top") = icap_top - 45; // 조회부 그룹
- cap_message.attribute("top") = icap_top + 45;
- opt_msgspclformat.attribute("top") = icap_top + 39;
- }
- // 이전명세서, 처방휴지통, 삭제처방 Group의 컨트롤 크기를 설정한다.
- function fSetDelOrdPreDocuSize() {
- var icap_top = parseInt(cap_clod.attribute("top"));
- var igrd_hei = parseInt(grd_clodhist.attribute("height"));
- cap_grptemp.attribute("top") = icap_top;
-
- // 이전 명세서 목록
- if (grp_predoculist.visible == true) {
- cap_grptemp.text = "이전 명세서 목록";
- cap_grptemp.visible = true;
- grd_clodhist.attribute("width") = "630";
- ln_clodhist.attribute("x2") = "630";
- grp_predoculist.attribute("top") = icap_top + 15;
- grp_predoculist.attribute("height") = igrd_hei + 5;
- grd_predocu.attribute("height") = igrd_hei - 23;
- btn_closepredoculist.attribute("top") = parseInt(grp_predoculist.attribute("height")) - 22;
- }
- // 처방 휴지통
- if (grp_delclodlist.visible == true) {
- cap_grptemp.text = "처방 휴지통";
- cap_grptemp.visible = true;
- grd_clodhist.attribute("width") = "630";
- ln_clodhist.attribute("x2") = "630";
- grp_delclodlist.attribute("top") = icap_top + 15;
- grp_delclodlist.attribute("height") = igrd_hei + 5;
- grd_delclod.attribute("height") = igrd_hei - 23;
- btn_closedelclodlist.attribute("top") = parseInt(grp_delclodlist.attribute("height")) - 22;
- }
- // 삭제처방목록
- if (grp_delorderlist.visible == true) {
- cap_grptemp.text = "삭제처방 목록";
- cap_grptemp.visible = true;
- grd_clodhist.attribute("width") = "630";
- ln_clodhist.attribute("x2") = "630";
- grp_delorderlist.attribute("top") = icap_top + 15;
- grp_delorderlist.attribute("height") = igrd_hei + 5;
- grd_delorder.attribute("height") = igrd_hei - 23;
- btn_closedelorderlist.attribute("top") = parseInt(grp_delorderlist.attribute("height")) - 22;
- }
- // 특정내역 / 심사자메모 / EDI메모 창이 확대된 경우 겹쳐져 보이므로 창을 작게 한다.
- fCutSwitchSize();
- }
- /* 등록번호 + 엔터 시 대상자화면 호출 */
- function fGetOutDayJudgTrgtManPidSrch() {
-
- // 대상자 조회화면을 띄운다.
- var trgtManWindow = getChildWindow("SMPIJ00600"); // SMPIJ00600_외래일일심사대상자조회.xrw
- var patunitsrch1 = model.getValue("/root/main/item1/otpt/pid");
- if (trgtManWindow == null) {
- // pid가 변경되었는데 조회창을 여는 경우 기존 조회된 data 초기화를 위해 저장해둔다.
- model.setValue("/root/hidden/smpij00600/cond/pid", patunitsrch1);
- model.setValue("/root/hidden/smpij00600/rslt/oldPid", patunitsrch1);
- open("SMPIJ00600" ,"", "10", "10", "SMPIJ00600", "/root/hidden/smpij00600/cond/pid", "/root/send/patunitsrch1", "", "");
- } else {
- // 대상자조회화면에 붙어있는 old 값 초기화
- trgtManWindow.model.resetInstanceNode("/root/hidden/oldotpt");
-
- var oldPid = model.getValue("/root/hidden/smpij00600/rslt/oldPid");
- model.setValue("/root/hidden/smpij00600/cond/pid", patunitsrch1);
- model.setValue("/root/hidden/smpij00600/rslt/oldPid", patunitsrch1);
- if (oldPid == "") {
- if (patunitsrch1 == "") { // 환자번호 입력 없이 대상자를 조회하는 경우
- trgtManWindow.grp_judgmemo.visible = false; // 대상자 Grid의 메모 필드의 Btn 클릭시 보여지는 메모 저장용 Group을 감춘다.
- activateChild("SMPIJ00600");
- } else { // 기존 심사대상자는 없는데 pid가 입력된 경우 또는 변경된 정보를 저장 후에 조회하는 경우
- trgtManWindow.javascript.fSetPatUnitSrch1pidSrch();
- }
- } else {
- if (patunitsrch1 != oldPid) { // 조회된 pid가 변경된 상태에서 조회하는 경우
- model.setValue("/root/main/item1/otpt/pid", patunitsrch1);
- model.setValue("/root/hidden/smpij00600/cond/pid", patunitsrch1);
- trgtManWindow.javascript.fSetPatUnitSrch1pidSrch();
- } else { // 기존 심사대상자는 있는데 pid가 변경되지 않은 경우
- trgtManWindow.grp_judgmemo.visible = false; // 대상자 Grid의 메모 필드의 Btn 클릭시 보여지는 메모 저장용 Group을 감춘다.
- activateChild("SMPIJ00600");
- }
- }
- model.refresh();
- }
- }
- /* 심사대상자 정보 조회 */
- function fGetOutDayJudgMngt() {
- var pid = model.getValue("/root/hidden/smpij00600/rslt/pid");
- var orddd = model.getValue("/root/hidden/smpij00600/rslt/orddd");
- var cretno = model.getValue("/root/hidden/smpij00600/rslt/cretno");
- var acptseqno = model.getValue("/root/hidden/smpij00600/rslt/acptseqno");
- var insukindcd = model.getValue("/root/hidden/smpij00600/rslt/insukindcd");
- var opyn = model.getValue("/root/hidden/smpij00600/rslt/opyn");
- var suppkindcd = model.getValue("/root/hidden/smpij00600/rslt/suppkindcd");
- var dschjudgprcsstat = model.getValue("/root/hidden/smpij00600/rslt/dschjudgprcsstat");
- var judgmdlid = model.getValue("/root/hidden/smpij00600/rslt/judgmdlid");
- var lastjudgdt = model.getValue("/root/hidden/smpij00600/rslt/lastjudgdt");
- var judgstatyn = model.getValue("/root/hidden/judgstatyn");
-
- // 0. 전환자료이므로 1회량 등 정보가 틀릴수 있습니다. 정확한 처방정보는 환자진료정보 조회를 참고하세요(오픈 임시 메세지 처리)
- if (orddd < "20081003") {
- messageBox("전환자료이므로 1회량 등 정보가 틀릴수 있습니다. 정확한 처방정보는 환자진료정보 조회를", "I007");
- }
-
- // 1. 기존에 조회된 대상자의 심사상태를 이전으로 되돌린다.
- if (judgstatyn != "N") {
- var cretno2 = model.getValue("/root/main/item1/otpt/cretno");
- var dschjudgprcsstat2 = model.getValue( "/root/main/item1/otpt/dschjudgprcsstat");
- if (cretno2 != "" && dschjudgprcsstat2 == "B") {
- // 1-1. 이전 row 의 심사상태 되돌리기 시작
- var oldpid = model.getValue("/root/hidden/list8/pid");
- var oldorddd = model.getValue("/root/hidden/list8/orddd");
- var oldcretno = model.getValue("/root/hidden/list8/cretno");
- var oldacptseqno = model.getValue("/root/hidden/list8/acptseqno");
- var olddschjudgprcsstat = model.getValue("/root/hidden/list8/dschjudgprcsstat");
- var oldjudgmdlid = model.getValue("/root/hidden/list8/judgmdlid");
- var oldlastjudgdt = model.getValue("/root/hidden/list8/lastjudgdt");
-
- if (olddschjudgprcsstat == "A" || olddschjudgprcsstat == "" || olddschjudgprcsstat == "D" || olddschjudgprcsstat == "E") {
-
- model.removeNodeset("/root/send/list8");
- model.makeValue("/root/send/list8/pid", oldpid);
- model.makeValue("/root/send/list8/orddd", oldorddd);
- model.makeValue("/root/send/list8/cretno", oldcretno);
- model.makeValue("/root/send/list8/acptseqno", oldacptseqno);
- model.makeValue("/root/send/list8/dschjudgprcsstat", olddschjudgprcsstat);
- model.makeValue("/root/send/list8/judgmdlid", oldjudgmdlid);
- model.makeValue("/root/send/list8/lastjudgdt", oldlastjudgdt);
- submit("TXPIJ00604", false);
- }
- }
- }
-
-
-
- // 1-2. 심사상태 자동 해제를 위한 데이터를 담아두기 시작
- model.removeNodeset("/root/hidden/list8");
- model.makeValue("/root/hidden/list8/pid", pid);
- model.makeValue("/root/hidden/list8/orddd", orddd);
- model.makeValue("/root/hidden/list8/cretno", cretno);
- model.makeValue("/root/hidden/list8/acptseqno", acptseqno);
- model.makeValue("/root/hidden/list8/dschjudgprcsstat", dschjudgprcsstat);
- model.makeValue("/root/hidden/list8/judgmdlid", judgmdlid);
- model.makeValue("/root/hidden/list8/lastjudgdt", lastjudgdt);
- model.setValue("/root/hidden/judgstatyn", "Y");
-
- // 2. 대상자 조회를 한다.
- var selectedRow = model.getValue("/root/hidden/smpij00600/rslt/selectedRow");
- if (pid && orddd && cretno && acptseqno && insukindcd) {
-
- // 2-1. 화면을 초기화한다.
- var rslt = fInitSrchData();
- if (rslt == false) {
- return false;
- }
- model.setValue("/root/send/item1/otpt/pid", pid);
- model.setValue("/root/send/item1/otpt/orddd", orddd);
- model.setValue("/root/send/item1/otpt/cretno", cretno);
- model.setValue("/root/send/item1/otpt/acptseqno", acptseqno);
- model.setValue("/root/send/item1/otpt/insukindcd", insukindcd);
- model.setValue("/root/send/item1/otpt/opyn", opyn); // 대상자화면에 표시된 수술여부를 전달한 경우, oscl 검색없이 수술여부를 구할 수 있다.
- model.setValue("/root/send/item1/otpt/suppkindcd", suppkindcd);
- model.setValue("/root/hidden/smpij00600/rslt/selectedRow", selectedRow);
-
- submit("TRPIJ00701");
-
- // 2-2. 조회 이후의 작업을 한다.
- fSetDayJudgTrgtManSrchData();
- model.setValue("/root/send/unitflag", "-");
-
- // 2-3. 중증, 산정특례 여부 체크
- //-------------------------------------------------
- // 2011-01-08 김상진 아무기능이 없어서 삭제한다
- //-------------------------------------------------
- //fCheckEssc();
- //-------------------------------------------------
-
- // 2-4. 상단에 환자정보 초기화하고 기입하기
- delPatientInfos();
- fSetOutPatPamInfo();
-
- //2-5. 환자 작성된 메세지 확인한다.
- //-------------------------------------------------
- // 2011-01-08 김상진 대상자조회할때로 옮기면서 삭제한다
- //-------------------------------------------------
- //fGetPatMsgYn(pid, orddd, cretno);
- //-------------------------------------------------
-
- model.refresh();
- }
- }
- // 상단에 환자정보 기입하기
- function fSetOutPatPamInfo() {
- var pid = model.getValue("root/main/item1/otpt/pid");
- var orddd = model.getValue("root/main/item1/otpt/orddd");
- var cretno = model.getValue("root/main/item1/otpt/cretno");
- var instcd = model.getValue("root/main/item1/otpt/instcd");
-
- // param 첫번째 붙는 값은 외래 : O, 입원 : I, 지원부서 : S, 수술 : T, 응급 : E, 의뢰 : C
- var param = "O" + "▦" + pid + "▦" + orddd + "▦" + cretno + "▦" + instcd;
- setParameter("condparam", param);
- setParameter("errflag", "Y");
- modal("SPMMO08900", 1, 0, 0, "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
- var useyn = getParameter("SPMMO08900_rtn_useyn");
- if(useyn == "Y") {
- setParameter("SPMMO08900_rtn_useyn", "");
- }else{
- }
- }
- // 중증, 산정특례 여부 체크
- function fCheckEssc(){
- var pid = model.getValue("/root/main/item1/otpt/pid");
- var orddd = model.getValue("/root/main/item1/otpt/orddd");
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- var acptseqno = model.getValue("/root/main/item1/otpt/acptseqno");
- var orddeptcd = model.getValue("/root/main/item1/otpt/orddeptcd");
- var insukind = model.getValue("/root/main/item1/otpt/insukindcd");
- var mskind = model.getValue("/root/main/item1/otpt/mskind");
- var insuflag = "";
-
- if(pid){
-
- var cNode = instance1.selectSingleNode("/root/hidden/chkessc/cond");
-
- if(cNode == null){
- model.makeValue("/root/hidden/chkessc/cond/pid",pid);
- model.makeValue("/root/hidden/chkessc/cond/orddd",orddd);
- model.makeValue("/root/hidden/chkessc/cond/cretno",cretno);
- model.makeValue("/root/hidden/chkessc/cond/acptseqno",acptseqno);
- model.makeValue("/root/hidden/chkessc/cond/orddeptcd",orddeptcd);
- model.makeValue("/root/hidden/chkessc/cond/insukind",insukind);
- model.makeValue("/root/hidden/chkessc/cond/mskind",mskind);
- }else{
- model.setValue("/root/hidden/chkessc/cond/pid",pid);
- model.setValue("/root/hidden/chkessc/cond/orddd",orddd);
- model.setValue("/root/hidden/chkessc/cond/cretno",cretno);
- model.setValue("/root/hidden/chkessc/cond/acptseqno",acptseqno);
- model.setValue("/root/hidden/chkessc/cond/orddeptcd",orddeptcd);
- model.setValue("/root/hidden/chkessc/cond/insukind",insukind);
- model.setValue("/root/hidden/chkessc/cond/mskind",mskind);
- }
- model.removenode("/root/hidden/chkessc/chkessc");
- if(submit("TRPIJ00710", false)){
- var isEsscV193 = false;
- var isEsscV191 = false;
-
- var isEsscVisible = true;
- var cEssc = instance1.selectSingleNode("/root/hidden/chkessc");
- if (cEssc == null) { // 특정내역이 없는 경우임
- return;
- }
- var cEsscChildNodeList = cEssc.childNodes;
- var msg
- msg = "";
- for (var i = 1; i <= cEsscChildNodeList.length; i++) {
- var spclcd = model.getValue("/root/hidden/chkessc/chkessc/rslt["+i+"]/vcode");
- var spclnm = model.getValue("/root/hidden/chkessc/chkessc/rslt["+i+"]/vcodenm");
-
- if (spclcd != "" && spclnm != "") {
- if (msg != "") {
- msg = msg + " | " + spclcd + " (" + spclnm + ") ";
- } else {
- msg = spclcd + " (" + spclnm + ") ";
- }
- }
- }
- if (msg != "") {
- //messageBox(msg+" 에 해당되는", "I005");
- }
- }
- }
- }
- /* 일일 심사 대상자를 조회한 이후의 처리를 한다. */
- function fSetDayJudgTrgtManSrchData() {
-
- // 화면 권한을 설정한다.
- fCheckAuth();
-
- // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- fSetJudgStatBtnAuth();
-
- // 조회된 심사대상자의 특이 인적사항, 보조/요율 등을 계산하여 보여준다.
- fGetPersonalData();
-
- // 조회된 심사대상자의 실제진료일과 그달의 진료일자를 진료달력에 표시한다.
- fSetOrdCalendar();
-
- // 특정코드 줄단위 였던 row가 명세서 단위 row로 바뀌는 경우, 특정코드 값이 표시되지 않으므로 다시 확인한다.
- for (var i = 1; i < grd_clsphist.rows; i++) {
- grd_clsphist.cellComboNodeset(i, grd_clsphist.colRef("spclcd")) = "/root/init/P0117list/P0117";
- // 특정내역 자동생성 처리 (자동생성되는 특정내역에 대해 stat 를 'I' 해주도록 한다.
- var stat = model.getValue("/root/main/list3/clcj[" + i + "]/currowstat");
- if (stat == "3") {
- grd_clsphist.rowstatus(i) = 1;
- }
- }
-
- // 특정내역 빈줄 추가
- fSpclGridInsertRow();
-
- // 상병내역 빈줄 추가
- fDiagGridInsertRow();
-
- // 처방 그리드 상태를 초기화 한다.
- //grd_clodhist.attribute("nodeset") = "/root/main/list2/oscl";
- //grd_clodhist.rebuild();
- //grd_clodhist.row = 0
- //grd_clodhist.refresh();
-
- // 원외처방 그리드 상태를 급여구분 기본값인 "급여"로 필터링한다.
- rdo_cloppayflag.dispatch("xforms-select");
-
- fSetOrderData();
-
- // "저장" Btn 클릭시에 인적사항이 변경되었는지 여부를 알기 위해 조회한 항목을 임시로 저장해두고 추후에 비교한다.
- model.copyNode("/root/hidden/item1/initotpt/otpt", "/root/main/item1/otpt");
- model.copyNode("/root/hidden/item1/initmemo/memo", "/root/main/item1/memo");
-
- // 진료과 의사 값에 따라 선택가능한 주치의 nodeset을 설정한다.
- cmb_orddrid.choices.itemset.attribute("nodeset") = "/root/init/orddrid/orddridlist[dp = '"+ model.getValue("/root/main/item1/otpt/orddeptcd") +"']";
- }
- // 원외처방 특정내역이 있으면 T필드에 * 처리
- function fSetSpclSpec() {
- var oprcrow = 1;
- var clcjrow = 1;
- var startclcj = 1;
- var startoprc = 1;
- for (var i = 1; i < grd_oprcphist.rows; i++) {
- var spclspec = model.getValue("/root/main/list7/clop["+ i +"]/spclspec");
- var fastprcpflag = model.getValue("/root/main/list7/clop["+ i +"]/fastprcpflag");
- var tootfact = model.getValue("/root/main/list7/clop["+ i +"]/tootfact");
-
- if ((spclspec != "" && spclspec != "-") || fastprcpflag != "") {
- model.setValue("/root/main/list7/clop["+ i +"]/spclspecyn", "*");
- }
- }
- }
- // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- function fSetJudgStatBtnAuth() {
-
- var judgendyn = model.getValue("/root/main/item1/otpt/dschjudgprcsstat"); // 심사상태
- var judgrid = model.getValue("/root/main/item1/otpt/judgmdlid"); // 심사중 심사자ID
- var judgnm = model.getValue("/root/main/item1/otpt/judgmdlnm"); // 심사중 심사자ID
- var userid = getUserId();
- if (judgendyn == "B" || judgendyn == "D") { // 심사상태 : 심사중, 보류
- if (judgrid == userid) {
- btn_save.disabled = false;
- btn_end.disabled = false;
- btn_unjudg.disabled = false;
- btn_rete.disabled = false;
- } else {
- if (judgnm != "") {
- messageBox(judgnm + "님이 심사 진행중입니다. 저장은", "E001");
- }
- btn_save.disabled = true;
- btn_end.disabled = true;
- btn_unjudg.disabled = true;
- btn_rete.disabled = true;
- }
- } else if (judgendyn == "E") { // 심사상태 : 심사완료
- if (judgrid == userid) {
- btn_save.disabled = true;
- btn_end.disabled = true;
- btn_unjudg.disabled = false;
- btn_rete.disabled = false;
- } else {
- if (judgnm != "") {
- messageBox(judgnm + "님이 심사 진행중입니다. 저장은", "E001");
- }
- btn_save.disabled = true;
- btn_end.disabled = true;
- btn_unjudg.disabled = true;
- btn_rete.disabled = true;
- }
- } else if (judgendyn == "A") { // 심사상태 : 미심사
- if (judgrid == userid) {
- btn_save.disabled = true;
- btn_end.disabled = true;
- btn_unjudg.disabled = false;
- btn_rete.disabled = false;
- } else {
- if (judgnm != "") {
- messageBox(judgnm + "님이 심사 진행중입니다. 저장은", "E001");
- }
- btn_save.disabled = true;
- btn_end.disabled = true;
- btn_unjudg.disabled = true;
- btn_rete.disabled = true;
- }
- } else {
- btn_save.disabled = false;
- btn_end.disabled = false;
- btn_unjudg.disabled = false;
- btn_rete.disabled = false;
- }
-
- // 보험유형이 자보 또는 산재일 경우
- var insukindcd = model.getValue("/root/main/item1/otpt/insukindcd");
- if (insukindcd == "31" || insukindcd == "41") {
- opt_insukindcd.attribute("background-color") = "#f7a08b";
- } else {
- opt_insukindcd.attribute("background-color") = "#f2f2f2"; // output_fix 클래스의 background-color
- }
-
- // 유형보조가 정상(00)이 아닐 경우
- var suppkindcd = model.getValue("/root/main/item1/otpt/suppkindcd");
- if (suppkindcd != "" && suppkindcd != "00") {
- opt_suppkind.attribute("background-color") = "#f7a08b";
- opt_payownbrate.attribute("background-color") = "#f7a08b";
- } else {
- opt_suppkind.attribute("background-color") = "#f2f2f2"; // output_fix 클래스의 background-color
- opt_payownbrate.attribute("background-color") = "#f2f2f2";
- }
-
- // 문제환자일 경우
- fSetProbJudgColor();
-
- // 수술환자의 경우 수술(유) 버튼을 설정한다.
- if (model.getValue("/root/main/item1/otpt/opyn") == "Y") {
- btn_opyn.visible = true;
- btn_opyn.attribute("class") = "btn5_letter4";
- btn_opyn.attribute("color") = "#cc3333"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- } else {
- btn_opyn.visible = false;
- btn_opyn.attribute("class") = "btn2_letter4"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 상병이력 버튼 설정
- if (model.getValue("/root/main/item1/otpt/diaghist") == "Y") {
- btn_diagHist.attribute("class") = "btn5_letter4";
- btn_diagHist.attribute("color") = "#cc3333"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- } else {
- btn_diagHist.attribute("class") = "btn2_letter4"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 메모이력 버튼 설정
- if (model.getValue("/root/main/item1/otpt/memohist") == "Y") {
- btn_memohist.attribute("class") = "btn5_letter4";
- btn_memohist.attribute("color") = "#cc3333"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- } else {
- btn_memohist.attribute("class") = "btn2_letter4"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 미시행처방 버튼 설정
- if (model.getValue("/root/main/item1/otpt/unexecord") == "Y") {
- btn_unexecord.attribute("class") = "btn5_letter5";
- btn_unexecord.attribute("color") = "#cc3333"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- } else {
- btn_unexecord.attribute("class") = "btn2_letter5"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- fCheckSpclSpecData();
- }
- // 문제환자일 경우, 색상표기 변경
- function fSetProbJudgColor() {
-
- var probjudgflag = model.getValue("/root/main/item1/otpt/probjudgflag");
- if (probjudgflag == "Y") {
- opt_probjudgflag.attribute("background-color") = "#f7a08b";
- } else {
- opt_probjudgflag.attribute("background-color") = "#f2f2f2"; // output_fix 클래스의 background-color
- }
- }
- // "심사완료"~"보류" 처리 후 다음 심사대상자를 조회한다.
- function fGetNextDayJudgTrgtMan(judgendyn) {
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- if (cretno) { // 조회된 심사대상자가 있으면
- var rslt = fSaveOutDayJudg(judgendyn);
- if (rslt == null || rslt == "") {
- return;
- }
- else {
- if (rslt == "false") { // 변경된 데이터가 없는 경우
- model.makeValue("/root/send/item4/endotpt/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.makeValue("/root/send/item4/endotpt/orddd", model.getValue("/root/main/item1/otpt/orddd"));
- model.makeValue("/root/send/item4/endotpt/cretno", model.getValue("/root/main/item1/otpt/cretno"));
- model.makeValue("/root/send/item4/endotpt/acptseqno", model.getValue("/root/main/item1/otpt/acptseqno"));
- model.makeValue("/root/send/item4/endotpt/dschjudgprcsstat", judgendyn);
- submit("TXPIJ00702", false);
- }
- model.setValue("/root/main/item1/otpt/dschjudgprcsstat", judgendyn);
- fGetPersonalData();
- fCheckAuth(); // 화면 권한을 설정한다.
- fSetJudgStatBtnAuth(); // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류" Btn 권한을 설정한다.
- }
- // 다음 심사대상자로 넘어간다.
- var trgtManWindow = getChildWindow("SMPIJ00600"); // SMPIJ00600_외래일일심사대상자조회.xrw
- if (trgtManWindow != null) {
- var selectedRow = model.getValue("/root/hidden/smpij00600/rslt/selectedRow");
- if (selectedRow) {
- var trgtmanlist = trgtManWindow.instance1.selectSingleNode("/root/main/list1");
- var maxRow = trgtmanlist.childNodes.length;
-
- if (selectedRow < maxRow) {
-
- // 1. 환자단위 대상자이동 시작
- if (trgtManWindow.grd_otptmast.visible == true) {
-
- prevRow = parseInt(selectedRow, 10);
- selectedRow = parseInt(selectedRow, 10) + 1;
-
- //var tmpdschjudgprcsstat = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + selectedRow + "]/dschjudgprcsstat");
-
- // 심사완료이면 다음대상자로 넘어간다.
- //if (!tmpdschjudgprcsstat == "E" ) {
- // selectedRow = parseInt(selectedRow, 10) + 1;
-
- model.setValue("/root/hidden/smpij00600/rslt/selectedRow", selectedRow);
-
- // 2008.01.27 박지욱 추가 (당일입원환자일 경우 메세지 처리)
- var tdayinflag = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/tdayinflag");
- if (tdayinflag != "N") {
- messageBox("입원등록한", "I005");
- }
- // 당일입원환자 메세지 처리 끝
-
- // 2008.10.04 박지욱 추가 (퇴원후 외래접수일 경우 메세지 처리)
- var dschrsrvyn = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/dschrsrvyn");
- if (dschrsrvyn == "Y") {
- messageBox("퇴원후 외래접수된", "I005");
- }
- // 퇴원후 외래접수 메세지 처리 끝
-
- var pid = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/pid");
- var orddd = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/orddd");
- var cretno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/cretno");
- var acptseqno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/acptseqno");
- var insukindcd = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/insukindcd");
- var dschjudgprcsstat = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + selectedRow + "]/dschjudgprcsstat");
- var judgmdlid = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + selectedRow + "]/judgmdlid");
- var judgnm = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + selectedRow + "]/judgnm");
- var lastjudgdt = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + selectedRow + "]/lastupdtdt");
-
- // 심사상태 변경 처리 (더블클릭한 row가 심사상태가 A, D이면 B로 변경처리)
- if (dschjudgprcsstat == "A" || dschjudgprcsstat == "" || dschjudgprcsstat == "D") {
- model.setValue("/root/send/item7/pid", pid);
- model.setValue("/root/send/item7/orddd", orddd);
- model.setValue("/root/send/item7/cretno", cretno);
- model.setValue("/root/send/item7/acptseqno", acptseqno);
- model.setValue("/root/send/item7/dschjudgprcsstat", "B");
-
- if(submit("TXPIJ00602", false)){
- var userid = getUserId();
- var usernm = getUserName();
- var currentdate = getCurrentDate();
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + selectedRow + "]/dschjudgprcsstat", "B");
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + selectedRow + "]/judgnm", usernm);
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + selectedRow + "]/judgmdlid", userid);
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + selectedRow + "]/lastupdtdt", currentdate);
-
- // old 값 기억 시작
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldrow", selectedRow);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldpid", pid);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldorddd", orddd);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldcretno", cretno);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldacptseqno", acptseqno);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/olddschjudgprcsstat", dschjudgprcsstat);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldjudgmdlid", judgmdlid);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldjudgnm", judgnm);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldlastjudgdt", lastjudgdt);
- // old 값 기억 끝
- }
- }
-
- // 대상자조회 화면에 심사상태 변경
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/dschjudgprcsstat", judgendyn);
- // 대상자조회화면에서 row 앞으로 이동
- trgtManWindow.grd_otptmast.row = selectedRow;
-
- // 미심사버튼이 클릭되면 대상자 조회화면에서 미심사로 바꾸고, 심사자, 심사일시를 삭제한다.
- if (judgendyn == "A") {
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/judgnm", "");
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/lastupdtdt", "");
- }
-
- if (pid && orddd && cretno && acptseqno && insukindcd) {
- model.setValue("/root/hidden/smpij00600/rslt/pid", pid);
- model.setValue("/root/hidden/smpij00600/rslt/orddd", orddd);
- model.setValue("/root/hidden/smpij00600/rslt/cretno", cretno);
- model.setValue("/root/hidden/smpij00600/rslt/acptseqno", acptseqno);
- model.setValue("/root/hidden/smpij00600/rslt/insukindcd", insukindcd);
- model.setValue("/root/hidden/smpij00600/rslt/opyn", trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/opyn"));
- model.setValue("/root/hidden/smpij00600/rslt/dschjudgprcsstat", trgtManWindow.model.getValue("/root/hidden/oldotpt/olddschjudgprcsstat"));
- model.setValue("/root/hidden/smpij00600/rslt/judgmdlid", trgtManWindow.model.getValue("/root/hidden/oldotpt/oldjudgmdlid"));
- model.setValue("/root/hidden/smpij00600/rslt/lastjudgdt", trgtManWindow.model.getValue("/root/hidden/oldotpt/oldlastjudgdt"));
- fGetOutDayJudgMngt();
- }
- else {
- messageBox("필수정보가 입력되지 않은", "I005"); ///필수정보가 입력되지 않은 환자입니다.
- }
- //}
-
- }
- // 1. 환자단위 대상자이동 끝
-
- // 2. 처방별 대상자이동 시작 - 다음행의 pid, orddd, cretno, acptseqno 가 같으면 넘어간다.
- else if (trgtManWindow.grd_specotpt.visible == true) {
-
- selectedRow = parseInt(selectedRow, 10);
- var curpid = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/pid");
- var curorddd = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/orddd");
- var curcretno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/cretno");
- var curacptseqno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ selectedRow +"]/acptseqno");
- var idx = selectedRow + 1;
-
- // 현재 선택된 row 의 다음행부터 loop 돌면서 다른 대상자를 찾는다.
- for (var i = idx; i < trgtManWindow.grd_specotpt.rows; i++) {
- var nextpid = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/pid");
- var nextorddd = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/orddd");
- var nextcretno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/cretno");
- var nextacptseqno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/acptseqno");
-
- if (curpid == nextpid && curorddd == nextorddd && curcretno == nextcretno && curacptseqno == nextacptseqno) {
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + i + "]/dschjudgprcsstat", judgendyn);
- } else {
- model.setValue("/root/hidden/smpij00600/rslt/selectedRow", i);
-
- // 2008.01.27 박지욱 추가 (당일입원환자일 경우 메세지 처리)
- var tdayinflag = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/tdayinflag");
- if (tdayinflag != "N") {
- messageBox("입원등록한", "I005");
- }
- // 당일입원환자 메세지 처리 끝
-
- // 2008.10.04 박지욱 추가 (퇴원후 외래접수일 경우 메세지 처리)
- var dschrsrvyn = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/dschrsrvyn");
- if (dschrsrvyn == "Y") {
- messageBox("퇴원후 외래접수된", "I005");
- }
- // 퇴원후 외래접수 메세지 처리 끝
-
- var pid = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/pid");
- var orddd = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/orddd");
- var cretno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/cretno");
- var acptseqno = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/acptseqno");
- var insukindcd = trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/insukindcd");
- var dschjudgprcsstat = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + i + "]/dschjudgprcsstat");
- var judgmdlid = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + i + "]/judgmdlid");
- var judgnm = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + i + "]/judgnm");
- var lastjudgdt = trgtManWindow.model.getValue( "/root/main/list1/otpt[" + i + "]/lastupdtdt");
-
- // 심사상태 변경 처리 (더블클릭한 row가 심사상태가 A, D이면 B로 변경처리)
- if (dschjudgprcsstat == "A" || dschjudgprcsstat == "" || dschjudgprcsstat == "D" || dschjudgprcsstat == "E") {
- model.setValue("/root/send/item7/pid", pid);
- model.setValue("/root/send/item7/orddd", orddd);
- model.setValue("/root/send/item7/cretno", cretno);
- model.setValue("/root/send/item7/acptseqno", acptseqno);
- model.setValue("/root/send/item7/dschjudgprcsstat", "B");
-
- if(submit("TXPIJ00602", false)){
- var userid = getUserId();
- var usernm = getUserName();
- var currentdate = getCurrentDate();
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + i + "]/dschjudgprcsstat", "B");
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + i + "]/judgnm", usernm);
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + i + "]/judgmdlid", userid);
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + i + "]/lastupdtdt", currentdate);
-
- // old 값 기억 시작
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldrow", i);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldpid", pid);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldorddd", orddd);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldcretno", cretno);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldacptseqno", acptseqno);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/olddschjudgprcsstat", dschjudgprcsstat);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldjudgmdlid", judgmdlid);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldjudgnm", judgnm);
- trgtManWindow.model.setValue("/root/hidden/oldotpt/oldlastjudgdt", lastjudgdt);
- // old 값 기억 끝
- }
- }
-
- // 대상자조회 화면에 심사상태 변경
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + selectedRow + "]/dschjudgprcsstat", judgendyn);
-
- // 대상자조회화면에서 row 앞으로 이동
- trgtManWindow.grd_specotpt.row = i;
-
- // 미심사버튼이 클릭되면 대상자 조회화면에서 미심사로 바꾸고, 심사자, 심사일시를 삭제한다.
- if (judgendyn == "A") {
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + selectedRow + "]/judgnm", "");
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + selectedRow + "]/lastupdtdt", "");
- }
-
- if (pid && orddd && cretno && acptseqno && insukindcd) {
- model.setValue("/root/hidden/smpij00600/rslt/pid", pid);
- model.setValue("/root/hidden/smpij00600/rslt/orddd", orddd);
- model.setValue("/root/hidden/smpij00600/rslt/cretno", cretno);
- model.setValue("/root/hidden/smpij00600/rslt/acptseqno", acptseqno);
- model.setValue("/root/hidden/smpij00600/rslt/insukindcd", insukindcd);
- model.setValue("/root/hidden/smpij00600/rslt/opyn", trgtManWindow.model.getValue("/root/main/list1/otpt["+ i +"]/opyn"));
- model.setValue("/root/hidden/smpij00600/rslt/dschjudgprcsstat", trgtManWindow.model.getValue("/root/hidden/oldotpt/olddschjudgprcsstat"));
- model.setValue("/root/hidden/smpij00600/rslt/judgmdlid", trgtManWindow.model.getValue("/root/hidden/oldotpt/oldjudgmdlid"));
- model.setValue("/root/hidden/smpij00600/rslt/lastjudgdt", trgtManWindow.model.getValue("/root/hidden/oldotpt/oldlastjudgdt"));
- fGetOutDayJudgMngt();
- }
- else {
- messageBox("필수정보가 입력되지 않은", "I005"); ///필수정보가 입력되지 않은 환자입니다.
- }
-
- i = trgtManWindow.grd_specotpt.rows;
- }
- }
- }
- // 2. 처방별 대상자이동 끝
-
- }
- else { // 마지막 줄인 경우 이후 대상자가 없다.
- messageBox("조회된 마지막 심사대상자 입니다. 이후 심사 대상자가", "I004"); ///조회된 마지막 심사대상자 입니다. 이후 심사 대상자가 없습니다.
- // 대상자 조회화면 심사상태 변경
- prevRow = parseInt(selectedRow, 10);
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/dschjudgprcsstat", judgendyn);
- // 미심사버튼이 클릭되면 대상자 조회화면에서 미심사로 바꾸고, 심사자, 심사일시를 삭제한다.
- if (judgendyn == "A") {
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/judgnm", "");
- trgtManWindow.model.setValue( "/root/main/list1/otpt[" + prevRow + "]/lastupdtdt", "");
- }
- }
- }
- else {
- messageBox("대상자조회 화면이 변경되었으므로 다음 대상자를 다시", "C002");
- }
- }
- }
- }
- /* 처방 항목 구분 및 선별심사 처방 색깔 구분 */
- function fSetOrderData() {
- model.resetInstanceNode("/root/hidden/list2/osclitem1");
-
- var clodList = instance1.selectSingleNode("/root/main/list2");
- if (clodList == null) {
- return;
- }
- var clodNode = clodList.childNodes;
- for (var i = 1; i <= clodNode.length; i++) {
-
- // 2008. 01. 27 박지욱 추가 (처방 색깔 항 구분에 따라 흰색-회색 구분되도록 처리)
- //fSetOrderColorByEdiitem();
-
- // 선별심사 처방 색깔 구분
- var spcljudgyn = model.getValue("/root/main/list2/oscl["+ i +"]/spcljudgyn");
- if (spcljudgyn == "Y") {
- grd_clodhist.rowStyle(i, "data", "color") = "#ff3333";
- } else {
- grd_clodhist.rowStyle(i, "data", "color") = "#000000";
- }
-
- // 항목구분 조회부 Radio에 해당하는 처방이 있는지 여부를 확인한다.
- if (ediitem1) {
- var path = "/root/hidden/list2/osclitem1/ediitem1_"+ ediitem1;
- var node = instance1.selectSingleNode(path);
- if (node != null) {
- model.setValue(path, ediitem1);
- }
- }
- }
- // 처방 조회부 항목구분 Radio에서 해당 처방이 있는 item을 굵게 표시한다.
- var itemRadioList = instance1.selectSingleNode("/root/hidden/list2/osclitem1");
- var itemNode = itemRadioList.childNodes;
- rdo_item1.item(0).attribute("font-weight") = "bold"; // "전체" 항목은 default 로 굵게 표시한다.
- for (var i = 1; i < itemNode.length; i++) {
- var ediitem1 = itemNode.item(i).value;
- if (ediitem1) {
- rdo_item1.item(i).attribute("font-weight") = "bold";
- } else {
- rdo_item1.item(i).attribute("font-weight") = "normal";
- }
- }
-
-
- // ****************************************************************************************************************
- // 항목별 소계 subtotal 김상진 20101122
- // ****************************************************************************************************************
- // #ffff0| 밝은노랑
- // #d9e3fe 옅은파랑
- // #eeddff 옅은보라
- // #b9fcf8 밝은하늘
- // #cefcfa 옅은하늘
- /*
- grd_clodhist.subtotalposition= "below";
- grd_clodhist.subtotal("sum", grd_clodhist.colRef("ediitem1"), grd_clodhist.colRef("edihospaddtotamt"),"format:(-)#,###; roundmode:round; roundposition:0", "background-color:#cefcfa; color:#0000ff;font-weight:bold; ", grd_clodhist.colRef("hngnm"), "", false); //종별가산sum
- grd_clodhist.subtotal("sum", grd_clodhist.colRef("ediitem1"), grd_clodhist.colRef("choiordtotamt"),"format:(-)#,###; roundmode:round; roundposition:0", "background-color:#cefcfa; color:#0000ff;font-weight:bold; ", grd_clodhist.colRef("hngnm"), "", false); //선택sum
- grd_clodhist.subtotal("sum", grd_clodhist.colRef("ediitem1"), grd_clodhist.colRef("totordamt"),"format:(-)#,###; roundmode:round; roundposition:0", "background-color:#cefcfa; color:#0000ff;font-weight:bold; ", grd_clodhist.colRef("hngnm"), "", false); //총진료비
- grd_clodhist.subtotal("sum", grd_clodhist.colRef("ediitem1"), grd_clodhist.colRef("calcamt"),"format:(-)#,###; roundmode:round; roundposition:0", "background-color:#cefcfa; color:#0000ff;font-weight:bold; ", grd_clodhist.colRef("hngnm"), "항목별소계", false); //금액
-
- //grd_clodhist.gridToInstance();
-
- var fild1 = "0";
- var fild2 = "0";
-
- for(var i = grd_clodhist.fixedRows; i <= grd_clodhist.rows; i++){
- fild1 = grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm"));
- if(fild1 == "항목별소계" && fild2 != ""){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("calcqty")) = "";
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("daydrugqty")) = "";
- if(fild2 == "01"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "진찰료 소계";
- }else if(fild2 == "02"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "입원료 소계";
- }else if(fild2 == "03"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "투약료 소계";
- }else if(fild2 == "04"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "주사료 소계";
- }else if(fild2 == "05"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "마취료 소계";
- }else if(fild2 == "06"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "이학료 소계";
- }else if(fild2 == "07"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "정신료 소계";
- }else if(fild2 == "08"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "수술료 소계";
- }else if(fild2 == "09"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "검사료 소계";
- }else if(fild2 == "10"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "방사선 소계";
- }else if(fild2 == "SS"){
- grd_clodhist.valueMatrix(i, grd_clodhist.colRef("hngnm")) = "특수 소계";
- }
- }
- fild2 = grd_clodhist.valueMatrix(i, grd_clodhist.colRef("ediitem1"));
- }
-
- */
- }
- /* 처방 필터링 */
- function fGetSelectedOrderData() {
- var selectedRdoPay = model.getValue("/root/hidden/list2/osclsrch/selectedRdoPay");
- var selectedRdoItem = model.getValue("/root/hidden/list2/osclsrch/selectedRdoItem");
- for (var i = grd_clodhist.fixedRows; i < grd_clodhist.rows; i ++ ) {
- grd_clodhist.rowHidden(i) = false;
- if (selectedRdoPay == "" || selectedRdoPay == "-") { // 전체
- }
- else if (selectedRdoPay == "1") { // 급여인 경우
- if (grd_clodhist.valueMatrix(i, grd_clodhist.colRef("calcpayflag")) != "0" ) { // 급여구분1(P0104 -:해당사항없음, 0:급여, 1:전액본인부담, 2:일반)
- grd_clodhist.rowHidden(i) = true;
- }
- }
- else if (selectedRdoPay == "2") { // 전액본인인 경우
- if (grd_clodhist.valueMatrix(i, grd_clodhist.colRef("calcpayflag")) != "1" ) {
- grd_clodhist.rowHidden(i) = true;
- }
- } else if (selectedRdoPay == "3") { // 비급여(일반)인 경우
- if (grd_clodhist.valueMatrix(i, grd_clodhist.colRef("calcpayflag")) != "2" ) {
- grd_clodhist.rowHidden(i) = true;
- }
- } else { // 0원인 경우
- if (grd_clodhist.valueMatrix(i, grd_clodhist.colRef("calcamt")) != "0" ) {
- grd_clodhist.rowHidden(i) = true;
- }
- }
-
- if (selectedRdoItem == "" || selectedRdoItem == "-") { // 전체
- } else {
- if (grd_clodhist.valueMatrix(i, grd_clodhist.colRef("ediitem1")) != model.getValue("/root/hidden/list2/osclsrch/selectedRdoItem")) {
- grd_clodhist.rowHidden(i) = true;
- }
- }
-
- // 2008. 01. 27 박지욱 추가 (처방 색깔 항 구분에 따라 흰색-회색 구분되도록 처리)
- //fSetOrderColorByEdiitem();
- }
- }
- /* 처방 항 별 색상 구분 */
- function fSetOrderColorByEdiitem() {
- /*
- var ediitem2 = "";
- var color = "#f4f4f4";
-
- for (var i = grd_clodhist.fixedRows; i < grd_clodhist.rows; i ++ ) {
- var status = grd_clodhist.rowHidden(i);
- if (status == false) {
- var ediitem1 = grd_clodhist.valueMatrix(i, grd_clodhist.colRef("ediitem1"));
- if (ediitem1 == ediitem2) {
- grd_clodhist.rowStyle(i,"data","background-color") = color;
- } else {
- ediitem2 = ediitem1;
- if (color == "#ffffff") {
- grd_clodhist.rowStyle(i,"data","background-color") = "#f4f4f4";
- color = "#f4f4f4";
- } else {
- grd_clodhist.rowStyle(i,"data","background-color") = "#ffffff";
- color = "#ffffff";
- }
- }
- }
- }
- */
- }
- /* 처방 Grid 필터용 조회조건을 초기화 */
- function fInitOrderFilter() {
- // 처방Grid용 조회부의 Radio 초기값을 "전체"로 설정한다.
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoPay", "-");
- model.setValue("/root/hidden/list2/osclsrch/selectedRdoItem", "-");
- model.resetInstanceNode("/root/hidden/list2/osclsrch/chkChoiOrdTotAmt");
- rdo_payflag.refresh();
- rdo_item1.refresh();
- chk_choiordtotamt.refresh();
- //model.refresh();
- for (var i = grd_clodhist.fixedRows; i < grd_clodhist.rows; i ++ ) {
- grd_clodhist.rowHidden(i) = false;
- }
-
- // 2008. 01. 27 박지욱 추가 (처방 색깔 항 구분에 따라 흰색-회색 구분되도록 처리)
- //fSetOrderColorByEdiitem();
- }
- /* 조회된 심사대상자의 특이 인적사항, 보조/요율 등을 계산하여 보여준다. */
- function fGetPersonalData() {
- var srchrslt = "";
- if (model.getValue("/root/main/item1/otpt/dethyn") == "Y") {
- srchrslt = " [사망환자입니다.]";
- }
-
- /*
- //희귀난치산정특례 신청번호 - 2009/07/02 김주희
- if (model.getValue("/root/main/item1/otpt/suppkindcd") == "06" || model.getValue("/root/main/item1/otpt/suppkindcd") == "11"){ //등록암 , 가정간호(등록암)
- srchrslt += model.getValue("/root/main/item1/otpt/sdoamsg"); // 중증등록정보
- }
- else if (model.getValue("/root/main/item1/otpt/suppkindcd") == "50"){ //희귀난치산정특례
- if(model.getValue("/root/main/item1/otpt/sdoamsg") != ""){
- srchrslt += model.getValue("/root/main/item1/otpt/sdoamsg");
- }
- else{
- srchrslt += model.getValue("/root/main/item1/otpt/rooamsg");} // 희귀난치신청번호
- }
- model.setValue("/root/hidden/item1/otpt/srchrslt", srchrslt);
- */
-
-
- //중증,희귀번호 동시 존재 시 추가 시작_2009/10/26
- var sdoamsg = model.getValue("/root/main/item1/otpt/sdoamsg"); //중증번호
- var rooamsg = model.getValue("/root/main/item1/otpt/rooamsg"); //희귀번호
-
- // 중증번호만 존재시..sdoamsg
- if(sdoamsg != "" && rooamsg == ""){
- opt_srchrslt.visible = true;
- roundrect1.visible = true;
- cmb_itemraremsg.visible = false;
- // 희귀번호만 존재시.. rooamsg
- }else if(sdoamsg == "" && rooamsg != ""){
- opt_srchrslt.visible = true;
- roundrect1.visible = true;
- cmb_itemraremsg.visible = false;
- // 희귀난치성 산정특례환자의 등록번호를 보여준다.
- var rooamsg = model.getValue("/root/main/item1/otpt/rooamsg");
- if (rooamsg != '-') {
- model.setValue("/root/main/item1/otpt/sdoamsg",rooamsg);
- model.refresh();
- }
- // 두번호 모두 존재시.. sdoamsg, rooamsg
- }else if(sdoamsg != "" && rooamsg != ""){
- opt_srchrslt.visible = false;
- roundrect1.visible = false;
- cmb_itemraremsg.visible = true;
-
- model.setValue("/root/hidden/itemraremsg/msg[" + 1 + "]/cd","sdoamsg");
- model.setValue("/root/hidden/itemraremsg/msg[" + 1 + "]/nm",sdoamsg);
- model.setValue("/root/hidden/itemraremsg/msg[" + 2 + "]/cd","rooamsg");
- model.setValue("/root/hidden/itemraremsg/msg[" + 2 + "]/nm",rooamsg);
-
- // 기본 중증 셋팅
- cmb_itemraremsg.value = "sdoamsg";
- }else{
- opt_srchrslt.visible = true;
- roundrect1.visible = true;
- cmb_itemraremsg.visible = false;
- }
- //중증,희귀번호 동시 존재 시 추가 끝_2009/10/26
-
-
- // 보조유형ID과 요율%로 combo 의 value
- var suppkindcd = model.getValue("/root/main/item1/otpt/suppkindcd");
- var payownbrate = model.getValue("/root/main/item1/otpt/payownbrate");
- var supprate = suppkindcd+"/"+payownbrate; // 보조유형ID과 요율%로 combo 의 value
- model.setValue("/root/hidden/item1/otpt/patsupprate", supprate);
- }
- /* 보조유형 및 요율 combo(cmb_supprate)의 선택 값이 변경된 경우 각각을 해당 output에 설정한다. 사용안함*/
- function fSetPatSuppRate() {
- // 보조유형ID과 요율%로 combo 의 value
- // 보조유형NM과 요율%로 combo 의 label
- var patsupprate = model.getValue("/root/hidden/item1/otpt/patsupprate");
- var suppkindcd = patsupprate.substr(0, 2);
- var payownbrate = patsupprate.substr(3, patsupprate.length);
- model.setValue("/root/main/item1/otpt/suppkindcd", suppkindcd);
- model.setValue("/root/main/item1/otpt/payownbrate", payownbrate);
- model.setValue("/root/main/item1/otpt/recalcyn", "Y"); // 저장 시에 재계산할지 여부를 설정함
- opt_suppkind.refresh();
- opt_payownbrate.refresh();
- //model.refresh();
- if (suppkindcd != "" && suppkindcd != "00") {
- opt_suppkind.attribute("background-color") = "#cece9c";
- opt_payownbrate.attribute("background-color") = "#cece9c";
- } else {
- opt_suppkind.attribute("background-color") = "#f2f2f2"; // output_fix 클래스의 background-color
- opt_payownbrate.attribute("background-color") = "#f2f2f2";
- }
- }
- /* 조합기호(ipt_insuno)를 입력하면 해당 조합명칭을 조회한다. */
- function fGetOutDayJudgTrgtManInsunm() {
- model.makeValue("/root/send/item2/incd/insucd", model.getValue("/root/main/item1/otpt/insuno"));
- model.makeValue("/root/send/item2/incd/ordfromdd", model.getValue("/root/main/item1/otpt/orddd"));
- submit("TRPIJ00702");
- var insucdnm = model.getValue("/root/main/item2/incd/insucdnm");
- if (insucdnm) {
- model.setValue("/root/main/item1/otpt/insunm", insucdnm);
- opt_insunm.refresh();
- //model.refresh();
- } else {
- model.resetInstanceNode("/root/main/item1/otpt/insunm");
- opt_insunm.refresh();
- //model.refresh();
- ipt_insuno.dispatch("onbuttonclick");
- }
- }
- // [2007.04.23] function 작성: (통합팀) 김선희 대리님
- // 주민번호를 이용한 나이 계산의 경우, 유효하지 않은 주민번호에 대해서는 -1 값만을 반환하므로,
- // 주민번호 앞자리를 이용해서 yyyymmdd 형태로 만든다.
- function getBirthDate(pResidentNo) {
- if (isNaN(pResidentNo)) return -1;
- gender = pResidentNo.substr(6, 1);
- if (gender == "3" || gender == "4" || gender == "7" || gender == "8") {
- regYY = "20";
- } else if(gender == "0" || gender == "9") {
- regYY = "18";
- } else {
- regYY = "19";
- }
- var rtn = regYY + pResidentNo.substr(0 , 6);
- return rtn;
- }
- /* 특정 환자에 대해 그동안 작성된 심사자메모, 청구메모 내역을 조회한다. */
- function fGetMemoHistList() {
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- if (cretno) {
-
- // 1. 메모이력조회 화면을 호출한다.
- model.removeNodeset("/root/hidden/sppiz00300/rslt");
- model.makevalue("/root/hidden/sppiz00300/cond/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.makevalue("/root/hidden/sppiz00300/cond/orddeptcd", model.getValue("/root/main/item1/otpt/orddeptcd"));
- model.makevalue("/root/hidden/sppiz00300/cond/ioflag", "O");
- model.makevalue("/root/hidden/sppiz00300/cond/refterm", "2");
- model.makevalue("/root/hidden/sppiz00300/cond/anofildinclyn", "Y");
- model.makevalue("/root/hidden/sppiz00300/cond/fromdd", "");
- model.makevalue("/root/hidden/sppiz00300/cond/todd", "");
- modal("SPPIZ00300" ,"", "10", "10", "SPPIZ00300", "/root/hidden/sppiz00300/cond", "/root/init", "", ""); // SPPIZ00300_메모이력조회.xrw
-
- // 2. 조회 후 작업을 처리한다.
- var SelectMemo = instance1.selectSingleNode("/root/hidden/sppiz00300/rslt");
- if (SelectMemo != null) {
- var choimemo = model.getValue("/root/hidden/sppiz00300/rslt/choimemo").getTrim();
- var choiedicd = model.getValue("/root/hidden/sppiz00300/rslt/edicd");
-
- if (choimemo) {
- model.setValue("/root/hidden/sppiz00300/rslt/choimemo", choimemo);
- var destRef = model.getValue("/root/hidden/sppiz00300/rslt/destRef");
-
- // 2-1. 심사메모로 전달한다.
- if (destRef == "judgmemo") {
- var judgmemo = model.getValue("/root/main/item1/memo/judgmemo");
- if (judgmemo) {
- model.setValue("/root/main/item1/memo/judgmemo", judgmemo +" \n"+ choimemo);
- } else {
- if (choiedicd) {
- // 동일한 EDI 코드가 있을 경우만 추가
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var oscledicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (choiedicd == oscledicd) {
- model.setValue("/root/main/item1/memo/judgmemo", choimemo);
- j = grd_clodhist.rows;
- }
- }
- } else {
- model.setValue("/root/main/item1/memo/judgmemo", choimemo);
- }
- }
- tar_judgrmemo.refresh();
- }
-
- // 2-2. 청구메모로 전달한다.
- else if (destRef == "edimemo") {
- var edimemo = model.getValue("/root/main/item1/memo/edimemo");
- if (edimemo) {
- model.setValue("/root/main/item1/memo/edimemo", edimemo +" \n"+ choimemo);
- } else {
- if (choiedicd) {
- // 동일한 EDI 코드가 있을 경우 * 표시
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var oscledicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (choiedicd == oscledicd) {
- model.setValue("/root/main/item1/memo/edimemo", choimemo);
- j = grd_clodhist.rows;
- }
- }
- } else {
- model.setValue("/root/main/item1/memo/edimemo", choimemo);
- }
- }
- tar_ediclammemo.refresh();
- }
-
- // 2-3. 처방별주석(JX999)으로 전달한다.
- else if (destRef == "prcpmemo") {
-
- var clsprow = grd_clsphist.rows - 1;
- var addcnt = 0;
-
- for (var i = 1; i < grd_clodhist.rows; i++) {
- var oscledicd = model.getValue("/root/main/list2/oscl["+ i +"]/basecd");
- if (choiedicd == oscledicd) {
- var lnunitspclspecyn = model.getValue("/root/main/list2/oscl["+ i +"]/lnunitspclspecyn");
- var rowNum = "";
- if (lnunitspclspecyn) {
-
- // 기존에 입력한 JX999가 존재하는지 확인
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var edicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- if (oscledicd == edicd) {
- if (model.getValue("/root/main/list3/clcj["+ j +"]/spclcd") == "JX999" && grd_clsphist.rowstatus(j) != 4) {
- rowNum = j;
- j = grd_clsphist.rows;
- }
- }
- }
-
- // 기존에 존재하는 경우
- if (rowNum) {
- var ans = messageBox(oscledicd + "(EDI코드) 에 등록된 메모가 있습니다. 기존 내역에 추가할 경우 예(Yes)\n 새로운 내역으로 변경하시려면 아니오(No)", "S003");
- if (ans == 6) { // 6: yes
- var spclspec = model.getValue("/root/main/list3/clcj["+ rowNum +"]/spclspec");
- model.setValue("/root/main/list3/clcj["+ rowNum +"]/spclspec", spclspec + "\n"+ choimemo);
- var rowstatus = grd_clsphist.rowstatus(rowNum);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ rowNum +"]/rowstat", "I");
- } else {
- grd_clsphist.rowstatus(rowNum) = 2;
- model.setValue("/root/main/list3/clcj["+ rowNum +"]/rowstat", "U");
- }
- }
- else if (ans == 7) { // 7:no
- model.setValue("/root/main/list3/clcj["+ rowNum +"]/spclspec", choimemo);
- var rowstatus = grd_clsphist.rowstatus(rowNum);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ rowNum +"]/rowstat", "I");
- } else {
- grd_clsphist.rowstatus(rowNum) = 2;
- model.setValue("/root/main/list3/clcj["+ rowNum +"]/rowstat", "U");
- }
- }
- else if (ans == 2) { // 2:cancel
- }
-
- // 기존에 존재하지 않는 경우
- } else {
- /*
- var clsprow = grd_clsphist.rows - 1;
- grd_clsphist.insertRow(clsprow++, true);
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "J");
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/edicd", oscledicd);
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", "JX999");
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "기타내역");
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", choimemo);
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "X(700)");
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", "JX999");
- // 처방 그리드에서 추가할 데이터를 불러온다.
- for (var i = 1; i < grd_clodhist.rows; i++) {
- var basecd = model.getValue("/root/main/list2/oscl["+ i +"]/basecd");
- if (choiedicd == basecd) {
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ i +"]/prcpdd"));
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list2/oscl["+ i +"]/prcpno"));
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ i +"]/prcphistno"));
- model.setValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ i +"]/execprcpseqno"));
- i = grd_clodhist.rows;
- }
- }
- grd_clsphist.row = clsprow;
- */
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "J");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", oscledicd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", "JX999");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "기타내역");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", choimemo);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "X(700)");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", oscledicd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", "JX999");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- // 처방 그리드에서 추가할 데이터를 불러온다.
- for (var i = 1; i < grd_clodhist.rows; i++) {
- var basecd = model.getValue("/root/main/list2/oscl["+ i +"]/basecd");
- if (choiedicd == basecd) {
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ i +"]/prcpdd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list2/oscl["+ i +"]/prcpno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ i +"]/prcphistno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ i +"]/execprcpseqno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicdflag", model.getValue("/root/main/list2/oscl["+ i +"]/edicdflag"));
- i = grd_clodhist.rows;
- }
- }
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ oscledicd +" / 특정내역명칭: "+ "기타내역" +" / 기재내역: "+ choimemo +" / 기재형식: "+ "X(700)");
- opt_msgspclformat.refresh();
- addcnt++;
- }
-
- // 기존에 JX999가 없는 경우
- } else {
- /*
- var clspgridrow = grd_clsphist.rows - 1;
- grd_clsphist.insertRow(clspgridrow++, true);
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/edicd", basecd);
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/spclcd", "JX999");
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/cdnm", "기타내역");
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/spclspec", choimemo);
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/spclformat", "X(700)");
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/oldspclcd", "JX999");
- // 처방 그리드에서 추가할 데이터를 불러온다.
- for (var i = 1; i < grd_clodhist.rows; i++) {
- var basecd = model.getValue("/root/main/list2/oscl["+ i +"]/basecd");
- if (choiedicd == basecd) {
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ i +"]/prcpdd"));
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/prcpno", model.getValue("/root/main/list2/oscl["+ i +"]/prcpno"));
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ i +"]/prcphistno"));
- model.setValue("/root/main/list3/clcj["+ clspgridrow +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ i +"]/execprcpseqno"));
- model.setValue("/root/main/list2/clcj["+ i +"]/lnunitspclspecyn", "*");
- }
- }
- grd_clsphist.row = clspgridrow;
- */
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "J");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", basecd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", "JX999");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "기타내역");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", choimemo);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "X(700)");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", basecd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", "JX999");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- // 처방 그리드에서 추가할 데이터를 불러온다.
- for (var i = 1; i < grd_clodhist.rows; i++) {
- var basecd = model.getValue("/root/main/list2/oscl["+ i +"]/basecd");
- if (choiedicd == basecd) {
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ i +"]/prcpdd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list2/oscl["+ i +"]/prcpno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ i +"]/prcphistno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ i +"]/execprcpseqno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicdflag", model.getValue("/root/main/list2/oscl["+ i +"]/edicdflag"));
- model.setValue("/root/main/list2/clcj["+ i +"]/lnunitspclspecyn", "*");
- }
- }
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ basecd +" / 특정내역명칭: "+ "기타내역" +" / 기재내역: "+ choimemo +" / 기재형식: "+ "X(700)");
- opt_msgspclformat.refresh();
- addcnt++;
- }
- }
- }
-
- // row 상태를 다시 맞추어준다.
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- // 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- fSortSpclNo();
- fSpclGridInsertRow();
- }
- }
- }
- }
- }
- }
- /* 심사자메모, EDI청구메모를 특정내역 형식에 맞춰 설정한다. */
- function fSetJudgEDIMemo(spclmemo, usermemoyn) {
- var delclspNode = instance1.selectSingleNode("/root/send/item3/delclsp");
- var max = 1;
- if (delclspNode != null) {
- max = delclspNode.childNodes.length + 1;
- }
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delunitflag", "M");
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delspclcd", "MX999");
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delspclmemoflag", usermemoyn);
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/deledicd", "MX999");
-
- var item3Path = "";
- var item3Node = "";
- if (usermemoyn == "U") {
- item3Path = "/root/send/item3/judgmemo[";
- item3Node = "judg";
- } else {
- item3Path = "/root/send/item3/edimemo[";
- item3Node = "edi";
- }
- var iSpclCdCnt = 0; // DB에 저장될 MX999 코드 개수
- var iSpclCdTotLength = getStringLength(spclmemo); // (stringHelper.js) 문자열의 길이를 구한다.
- var insCharTotCnt = 0; // 특정내역으로 잘라진 총 글자 수
- if (iSpclCdTotLength > 350) { // 새로 입력된 특정코드가 700byte를 넘는다.
- // 영문(700자), 한글(350자) 길이로 잘라서 n개의 특정코드를 만든다.
- var iLen = 0; // 특정내역 길이가 700 byte가 되었는지 계산
- var iStartInx = 0; // 특정내역 시작 index
- var iCharCnt = 0; // 몇글자로 구성되는지 계산
- for (var i=0; i < spclmemo.length; i++) {
- var sBit = spclmemo.charAt(i);
- iCharCnt++;
- if (escape(sBit).length > 4) {
- iLen = iLen + 2;
- } else {
- iLen = iLen + 1;
- }
- if (iLen == 350 || iLen > 350) { // 영문(700자), 한글(350자)
- iSpclCdCnt++;
- //model.makeValue(item3Path + iSpclCdCnt +"]/"+ item3Node +"usermemoyn", usermemoyn);
- if (iLen == 350) { // 700byte로 길이가 끝난 경우
- model.makeValue(item3Path + iSpclCdCnt +"]/"+ item3Node +"spclspec", spclmemo.substr(iStartInx, iCharCnt));
- iStartInx += iCharCnt;
- insCharTotCnt += 350;
- }
- else if (iLen > 350) { // 영문(700자), 한글(350자)를 넘는 경우
- model.makeValue(item3Path + iSpclCdCnt +"]/"+ item3Node +"spclspec", spclmemo.substr(iStartInx, iCharCnt - 1));
- iStartInx += (iCharCnt - 1);
- i--;
- insCharTotCnt += 349;
- }
- iCharCnt = 0;
- iLen = 0;
- }
- }
- if (iSpclCdTotLength != insCharTotCnt) {
- iSpclCdCnt++;
- model.makeValue(item3Path + iSpclCdCnt +"]/"+ item3Node +"spclspec", spclmemo.substring(iStartInx, spclmemo.length));
- }
- }
- else if (iSpclCdTotLength > 0) { // 새로 추가된 내용이 있다.
- iSpclCdCnt++;
- //model.makeValue(item3Path + iSpclCdCnt +"]/"+ item3Node +"usermemoyn", usermemoyn);
- model.makeValue(item3Path + iSpclCdCnt +"]/"+ item3Node +"spclspec", spclmemo);
- //}
- }
- }
- // 심사Comment 조회 Popup에서 선택한 심사자메모를 설정한다.
- function fSetJudgMemoRefresh(){
- var memo = model.getValue("/root/hidden/sppiz00700/rslt/memo");
- var judgmemo = model.getValue("/root/main/item1/memo/judgmemo");
- if (memo) {
- if (judgmemo) { // 기존 심사메모가 공백이 아닌 경우 선택된 메모를 심사화면 메모 뒤에 덧붙인다.
- model.setValue("/root/main/item1/memo/judgmemo", judgmemo +" \n"+ memo);
- } else {
- model.setValue("/root/main/item1/memo/judgmemo", memo);
- }
- tar_judgrmemo.refresh();
- }
- }
- // 심사Comment 조회 Popup에서 선택한 EDI메모를 설정한다.
- function fSetEdiMemoRefresh(){
- var memo = model.getValue("/root/hidden/sppiz00700/rslt/memo");
- var edimemo = model.getValue("/root/main/item1/memo/edimemo");
- if (memo) {
- if (edimemo) { // 기존 청구메모가 공백이 아닌 경우 선택된 메모를 심사화면 메모 뒤에 덧붙인다.
- model.setValue("/root/main/item1/memo/edimemo", edimemo +" \n"+ memo);
- } else {
- model.setValue("/root/main/item1/memo/edimemo", memo);
- }
- tar_ediclammemo.refresh();
- }
- }
- /* 상병이력 조회 및 전달 */
- function fGetDiagHistList() {
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- if (cretno) {
- // 1. 상병이력조회 화면을 호출한다.
- model.setValue("/root/hidden/smpiz00100/cond/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.setValue("/root/hidden/smpiz00100/cond/ordfromdd", model.getValue("/root/main/item1/otpt/orddd"));
- model.setValue("/root/hidden/smpiz00100/cond/ordtodd", "");
- modal("SMPIZ00100" ,"", "10", "10", "SMPIZ00100", "/root/hidden/smpiz00100/cond", "/root/init", "", ""); // SMPIZ00100_외래입원상병이력조회.xrw
- //model.refresh();
-
- // 2. 심사상병전달 처리한다.
- var rsltNode = instance1.selectSingleNode("/root/hidden/smpiz00100/rslt");
- if (rsltNode != null) {
-
- var insrow = grd_cldihist.rows - 1;
- var addcnt = 0;
- for (var i = 1; i <= rsltNode.childNodes.length; i++) {
-
- var diagcd = model.getValue("/root/hidden/smpiz00100/rslt/diag["+ i +"]/diagcd");
- var isSame = false;
-
- // 2-1. 동일 상병이 존재하면 입력하지 않는다.
- for (var j = 1; j < grd_cldihist.rows; j++) {
- if (diagcd == model.getValue("/root/main/list1/diag["+ j +"]/diagcd")) {
- // 동일한 상병이 존재하는 경우
- isSame = true;
- j = grd_cldihist.rows;
- }
- }
- // 2-2. 동일 상병이 존재하지 않으면 추가한다.
- if (isSame == false) {
-
- insrow++;
- model.makeValue("/root/main/list1/diag["+ insrow +"]/rowstat", "I");
- model.makeValue("/root/main/list1/diag["+ insrow +"]/diagkindcd", model.getValue("/root/hidden/smpiz00100/rslt/diag["+ i +"]/diagkindcd"));
- model.makeValue("/root/main/list1/diag["+ insrow +"]/diagseq", insrow);
- model.makeValue("/root/main/list1/diag["+ insrow +"]/diagcd", model.getValue("/root/hidden/smpiz00100/rslt/diag["+ i +"]/diagcd"));
- model.makeValue("/root/main/list1/diag["+ insrow +"]/diagnm", model.getValue("/root/hidden/smpiz00100/rslt/diag["+ i +"]/diaghngnm"));
- model.makeValue("/root/main/list1/diag["+ insrow +"]/diagengnm", model.getValue("/root/hidden/smpiz00100/rslt/diag["+ i +"]/diagengnm"));
- var diagorddeptcd = model.getValue("/root/main/list1/diag/diagorddeptcd");
- if (diagorddeptcd == "") {
- diagorddeptcd = model.getValue("/root/main/item1/otpt/orddeptcd");
- }
- model.makeValue("/root/main/list1/diag["+ insrow +"]/diagorddeptcd", diagorddeptcd);
- model.makeValue("/root/main/list1/diag["+ insrow +"]/ordfromdd", model.getValue("/root/main/list1/diag/ordfromdd"));
- model.makeValue("/root/main/list1/diag["+ insrow +"]/toot", "-");
- model.makeValue("/root/main/list1/diag["+ insrow +"]/toot1", "-");
- model.makeValue("/root/main/list1/diag["+ insrow +"]/seqno", "");
- model.makeValue("/root/main/list1/diag["+ insrow +"]/addflag", "Y");
- model.makeValue("/root/main/list1/diag["+ insrow +"]/drinptyn", "N");
- model.makeValue("/root/main/list1/diag["+ insrow +"]/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.makeValue("/root/main/list1/diag["+ insrow +"]/orddd", model.getValue("/root/main/item1/otpt/orddd"));
- model.makeValue("/root/main/list1/diag["+ insrow +"]/cretno", model.getValue("/root/main/item1/otpt/cretno"));
- addcnt++;
- }
- }
-
- // 3. 그리드에 데이터를 반영한다.
- grd_cldihist.refresh();
- fSetDiagRowStatus();
- // 4. 추가가 된 경우에만 소트한다.
- if (addcnt > 0) {
-
- // 4-1. 소트
- fSortDiagNo();
- // 4-2. 빈줄 추가
- fDiagGridInsertRow();
- // 4-3. seq 재부여
- var seq = 1;
- for (var j = 1; j < grd_cldihist.rows; j++) {
- var diagseq = model.getValue("/root/main/list1/diag["+ j +"]/diagseq");
- if (diagseq > "D0") {
- } else {
- model.setValue("/root/main/list1/diag[" + j + "]/diagseq", seq);
- grd_cldihist.valueMatrix(j, grd_cldihist.colRef("diagseq")) = seq;
- seq++;
- }
- }
- }
- }
- }
- }
- /* 줄단위 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다. */
- function fSetSpclSpecJX999() {
-
- var iTotSpclCdCnt = 0; // DB에 저장될 JX999 코드 개수
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var rowstatus = grd_clsphist.rowstatus(i);
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- var edicd = model.getValue("/root/main/list3/clcj["+ i +"]/edicd");
- var calcscorcd = model.getValue("/root/main/list3/clcj["+ i +"]/calcscorcd");
- var edicdflag = model.getValue("/root/main/list3/clcj["+ i +"]/edicdflag");
-
- if (rowstatus != 0 && spclcd == "JX999") {
- var delclspNode = instance1.selectSingleNode("/root/send/item3/delclsp");
- var max = 1;
- if (delclspNode != null) {
- max = delclspNode.childNodes.length + 1;
- }
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delunitflag", "J");
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delspclmemoflag", "E");
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/deledicd", edicd);
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delspclcd", "JX999");
- }
- // 해당 EDI코드의 JX999는 모두 삭제하고 새로 추가하므로 "삭제" 상태가 아닌 모든 경우를 전송한다.
- if (rowstatus != 0 && rowstatus != 4 && spclcd == "JX999") { // 0 : new, 4: delete
- var spclmemo = model.getValue("/root/main/list3/clcj["+ i +"]/spclspec");
- var iSpclCdCnt = 0;
-
- var iSpclCdTotLength = getStringLength(spclmemo); // (stringHelper.js) 문자열의 길이를 구한다.
- var insCharTotCnt = 0; // 특정내역으로 잘라진 총 글자 수
- if (iSpclCdTotLength > 350) { // 새로 입력된 특정코드가 700byte를 넘는다.
- // 영문(700자), 한글(350자) 길이로 잘라서 n개의 특정코드를 만든다.
- var iLen = 0; // 특정내역 길이가 700 byte가 되었는지 계산
- var iStartInx = 0; // 특정내역 시작 index
- var iCharCnt = 0; // 몇글자로 구성되는지 계산
- for (var j = 0; j < spclmemo.length; j++) {
- var sBit = spclmemo.charAt(j);
- iCharCnt++;
- if (escape(sBit).length > 4) {
- iLen = iLen + 2;
- } else {
- iLen = iLen + 1;
- }
- if (iLen == 350 || iLen > 350) { // 영문(700자), 한글(350자)
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- if (iLen == 350) { // 700byte로 길이가 끝난 경우
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo.substr(iStartInx, iCharCnt));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", model.getValue("/root/main/list3/clcj["+ i +"]/prcpdd"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", model.getValue("/root/main/list3/clcj["+ i +"]/prcpno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", model.getValue("/root/main/list3/clcj["+ i +"]/prcphistno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", model.getValue("/root/main/list3/clcj["+ i +"]/execprcpseqno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitcalcscorcd", calcscorcd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- iStartInx += iCharCnt;
- insCharTotCnt += 350;
- }
- else if (iLen > 350) { // 영문(700자), 한글(350자)를 넘는 경우
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo.substr(iStartInx, iCharCnt - 1));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", model.getValue("/root/main/list3/clcj["+ i +"]/prcpdd"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", model.getValue("/root/main/list3/clcj["+ i +"]/prcpno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", model.getValue("/root/main/list3/clcj["+ i +"]/prcphistno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", model.getValue("/root/main/list3/clcj["+ i +"]/execprcpseqno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitcalcscorcd", calcscorcd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- iStartInx += (iCharCnt - 1);
- j--;
- insCharTotCnt += 349;
- }
- iCharCnt = 0;
- iLen = 0;
- }
- }
- if (iSpclCdTotLength != insCharTotCnt) {
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo.substring(iStartInx, spclmemo.length));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", model.getValue("/root/main/list3/clcj["+ i +"]/prcpdd"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", model.getValue("/root/main/list3/clcj["+ i +"]/prcpno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", model.getValue("/root/main/list3/clcj["+ i +"]/prcphistno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", model.getValue("/root/main/list3/clcj["+ i +"]/execprcpseqno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitcalcscorcd", calcscorcd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- }
- }
- else if (iSpclCdTotLength > 0) { // 새로 추가된 내용이 있다.
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", model.getValue("/root/main/list3/clcj["+ i +"]/prcpdd"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", model.getValue("/root/main/list3/clcj["+ i +"]/prcpno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", model.getValue("/root/main/list3/clcj["+ i +"]/prcphistno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", model.getValue("/root/main/list3/clcj["+ i +"]/execprcpseqno"));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitcalcscorcd", calcscorcd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- }
- }
- }
- }
- /* 원외처방 특정내역 중 JX999를 특정내역 형식에 맞춰 설정한다. */
- function fSetOprcSpclSpecJX999() {
-
- var iTotSpclCdCnt = 0; // DB에 저장될 JX999 코드 개수
- for (var i = 1; i < grd_oprcphist.rows; i++) {
- var rowstatus = grd_oprcphist.rowstatus(i);
- var spclspec = model.getValue("/root/main/list7/clop["+ i +"]/spclspec");
- var edicd = model.getValue("/root/main/list7/clop["+ i +"]/edicd");
- var edicdflag = model.getValue("/root/main/list7/clop["+ i +"]/edicdflag");
-
- if (rowstatus != 0 && spclspec != "") {
- var delclspNode = instance1.selectSingleNode("/root/send/item3/delclsp");
- var max = 1;
- if (delclspNode != null) {
- max = delclspNode.childNodes.length + 1;
- }
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delunitflag", "O");
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delspclmemoflag", "E");
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/deledicd", edicd);
- model.makeValue("/root/send/item3/delclsp/delmemo["+ max +"]/delspclcd", "JX999");
- }
- // 해당 EDI코드의 JX999는 모두 삭제하고 새로 추가하므로 "삭제" 상태가 아닌 모든 경우를 전송한다.
- if (rowstatus != 0 && rowstatus != 4 && spclspec != "") { // 0 : new, 4: delete
- var spclmemo = model.getValue("/root/main/list7/clop["+ i +"]/spclspec");
- var prcpdd = model.getValue("/root/main/list7/clop["+ i +"]/prcpdd");
- var prcpno = model.getValue("/root/main/list7/clop["+ i +"]/prcpno");
- var prcphistno = model.getValue("/root/main/list7/clop["+ i +"]/prcphistno");
- var execprcpseqno = model.getValue("/root/main/list7/clop["+ i +"]/execprcpseqno");
- var iSpclCdCnt = 0;
-
- var iSpclCdTotLength = getStringLength(spclmemo); // (stringHelper.js) 문자열의 길이를 구한다.
- var insCharTotCnt = 0; // 특정내역으로 잘라진 총 글자 수
- if (iSpclCdTotLength > 350) { // 새로 입력된 특정코드가 700byte를 넘는다.
- // 영문(700자), 한글(350자) 길이로 잘라서 n개의 특정코드를 만든다.
- var iLen = 0; // 특정내역 길이가 700 byte가 되었는지 계산
- var iStartInx = 0; // 특정내역 시작 index
- var iCharCnt = 0; // 몇글자로 구성되는지 계산
- for (var j = 0; j < spclmemo.length; j++) {
- var sBit = spclmemo.charAt(j);
- iCharCnt++;
- if (escape(sBit).length > 4) {
- iLen = iLen + 2;
- } else {
- iLen = iLen + 1;
- }
- if (iLen == 350 || iLen > 350) { // 영문(700자), 한글(350자)
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- if (iLen == 350) { // 700byte로 길이가 끝난 경우
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo.substr(iStartInx, iCharCnt));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitunitflag", "O");
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", prcpdd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", prcpno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", prcphistno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", execprcpseqno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- iStartInx += iCharCnt;
- insCharTotCnt += 350;
- }
- else if (iLen > 350) { // 영문(700자), 한글(350자)를 넘는 경우
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo.substr(iStartInx, iCharCnt - 1));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitunitflag", "O");
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", prcpdd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", prcpno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", prcphistno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", execprcpseqno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- iStartInx += (iCharCnt - 1);
- j--;
- insCharTotCnt += 349;
- }
- iCharCnt = 0;
- iLen = 0;
- }
- }
- if (iSpclCdTotLength != insCharTotCnt) {
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo.substring(iStartInx, spclmemo.length));
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitunitflag", "O");
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", prcpdd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", prcpno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", prcphistno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", execprcpseqno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- }
- }
- else if (iSpclCdTotLength > 0) { // 새로 추가된 내용이 있다.
- iTotSpclCdCnt++;
- iSpclCdCnt++;
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitspclspec", spclmemo);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicd", edicd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitunitflag", "O");
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpdd", prcpdd);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcpno", prcpno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitprcphistno", prcphistno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitexecprcpseqno", execprcpseqno);
- model.makeValue("/root/send/item3/lnunitmemo["+ iTotSpclCdCnt +"]/lnunitedicdflag", edicdflag);
- }
- }
- }
- }
- /* 처방 T필드 더블클릭 (특정내역 입력) */
- function fSetLnUnitSpclSpec() {
-
- // 1. 특정내역 상세관리 화면으로 데이터를 전달한다.
- model.removeNodeset("/root/hidden/sppiz00500/rslt");
- model.removeNodeset("/root/hidden/sppiz00500/cond");
-
- var row = grd_clodhist.row;
- var basecd = model.getValue("/root/main/list2/oscl["+ row +"]/basecd");
- if (basecd) {
- var lnunitspclspecyn = model.getValue("/root/main/list2/oscl["+ row +"]/lnunitspclspecyn");
- if (lnunitspclspecyn == "") {
- model.makeValue("/root/hidden/sppiz00500/cond/flag", "I");
- model.makeValue("/root/hidden/sppiz00500/cond/snglcalcscorcd", basecd);
- model.makeValue("/root/hidden/sppiz00500/cond/edilnno", "-");
- model.makeNode("/root/hidden/sppiz00500/cond/spclcd");
- model.makeNode("/root/hidden/sppiz00500/cond/detldesc");
- model.makeNode("/root/hidden/sppiz00500/cond/spclspec");
- model.makeNode("/root/hidden/sppiz00500/cond/spclformat");
- model.makeNode("/root/hidden/sppiz00500/cond/rownum");
- model.makeNode("/root/hidden/sppiz00500/cond/cdnm");
- model.makeValue("/root/hidden/sppiz00500/cond/unitflag", "J");
- } else { // 기존에 입력된 줄단위 특정내역이 있는 경우
- var rowcnt = 1;
- var setrow = 0;
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ i +"]/edicd");
- if (basecd == spclEdicd && model.getValue("/root/main/list3/clcj["+ i +"]/unitflag") == "J") {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- if (spclcd != "JT001" && grd_clsphist.rowstatus(i) != 4) {
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/flag", "");
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/rownum", i);
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/snglcalcscorcd", spclEdicd);
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/edilnno", "-");
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclformat", model.getValue("/root/main/list3/clcj["+ i +"]/spclformat"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/cdnm", model.getValue("/root/main/list3/clcj["+ i +"]/cdnm"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/detldesc", model.getValue("/root/main/list3/clcj["+ i +"]/detldesc"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/oldspclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/oldspclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- setrow = i;
- rowcnt = rowcnt+1;
- }
- }
- }
- model.makevalue("/root/hidden/sppiz00500/cond/flag", "");
- model.makevalue("/root/hidden/sppiz00500/cond/snglcalcscorcd", basecd);
- model.makevalue("/root/hidden/sppiz00500/cond/edilnno", "-");
- model.makevalue("/root/hidden/sppiz00500/cond/spclcd", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclcd"));
- model.makevalue("/root/hidden/sppiz00500/cond/detldesc", model.getValue("/root/main/list3/clcj["+ setrow +"]/detldesc"));
- model.makevalue("/root/hidden/sppiz00500/cond/spclspec", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclspec"));
- model.makevalue("/root/hidden/sppiz00500/cond/spclformat", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclformat"));
- model.makevalue("/root/hidden/sppiz00500/cond/rownum", setrow);
- model.makevalue("/root/hidden/sppiz00500/cond/cdnm", model.getValue("/root/main/list3/clcj["+ setrow +"]/cdnm"));
- model.makevalue("/root/hidden/sppiz00500/cond/unitflag", "J");
- }
- modal("SPPIZ00500" ,"", "10", "10", "SPPIZ00500", "/root/hidden/sppiz00500", "/root/hidden/clsp", "", ""); // SPPIZ00500_특정내역상세관리.xrw
-
- // 2. 넘어온 특정내역 데이터를 처리한다.
- var rsltcnt = getNodesetCount("/root/hidden/sppiz00500/rslt/list");
- if (rsltcnt > 0) {
-
- var clsprow = grd_clsphist.rows - 1;
- var addcnt = 0;
- for (var i = rsltcnt; i > 0; i--) {
- var flag = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/flag");
- var rownum = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/rownum");
- var newspclcd = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclcd");
- var newcdnm = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/cdnm");
- var newspclspec = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclspec");
- var newspclformat = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclformat ");
- var newdetldesc = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/detldesc");
-
- // 2-1. 특정내역 추가
- if (flag == "I") {
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "J");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", newcdnm);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", newspclspec);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", newspclformat);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", newdetldesc);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list2/oscl["+ row +"]/prcpdd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list2/oscl["+ row +"]/prcpno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list2/oscl["+ row +"]/prcphistno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list2/oscl["+ row +"]/execprcpseqno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicdflag", model.getValue("/root/main/list2/oscl["+ row +"]/edicdflag"));
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
- addcnt++;
-
- // 2-2. 특정내역 수정
- } else if (flag == "U") {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- model.setValue("/root/main/list3/clcj["+ rownum +"]/edicd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclcd", newspclcd);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/cdnm", newcdnm);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclspec", newspclspec);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclformat", newspclformat);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/detldesc", newdetldesc);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/oldspclcd", newspclcd);
-
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "I");
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- }
-
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/oldspclcd");
- var oldspclspec = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/oldspclspec");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
-
- // 2-3. 특정내역 삭제
- } else if (flag == "D" && rownum != "" ) {
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- grd_clsphist.deleteRow(rownum, false);
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "D");
- }
- model.setValue("/root/hidden/list3/msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- opt_msgspclformat.refresh();
- }
- }
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- var cnt = 0;
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- if (basecd == spclEdicd && model.getValue("/root/main/list3/clcj["+ j +"]/unitflag") == "J") {
- if (model.getValue("/root/main/list3/clcj["+ j +"]/spclcd") != "JT001" && grd_clsphist.rowstatus(j) != 4) {
- cnt++;
- }
- }
- }
- if (cnt > 0) {
- if (lnunitspclspecyn == "") { // 기존에는 입력된 내역이 없다가 추가된 경우임
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ j +"]/lnunitspclspecyn", "*");
- }
- }
- }
- } else { // 특정내역이 한건도 없게 된 경우
- if (lnunitspclspecyn) { // 기존에는 입력된 내역이 있다가 삭제된 경우임
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.resetInstanceNode("/root/main/list2/oscl["+ j +"]/lnunitspclspecyn");
- }
- }
- }
- }
- }
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- fSortSpclNo();
- fSpclGridInsertRow();
- }
- } else {
- messageBox("EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이", "I004"); ///EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- /* 원외처방 T필드 더블클릭 (특정내역 입력) */
- function fSetOprcpSpclSpec() {
- // 1. 원외처방 특정내역 상세관리 화면을 호출한다.
- model.removenode("/root/hidden/sppiz01700/rslt");
- model.removenode("/root/hidden/sppiz01700/cond");
- model.makeNode("/root/hidden/sppiz01700/rslt");
- model.makeNode("/root/hidden/sppiz01700/cond");
-
- var row = grd_oprcphist.row;
- var edicd = model.getValue("/root/main/list7/clop["+ row +"]/edicd");
- var clopdd = model.getValue("/root/main/list7/clop["+ row +"]/clopdd");
- var clopno = model.getValue("/root/main/list7/clop["+ row +"]/clopno");
- if (edicd) {
- var spclspecyn = model.getValue("/root/main/list7/clop["+ row +"]/spclspecyn");
- if (spclspecyn == "") {
- model.makeValue("/root/hidden/sppiz01700/cond/flag", "I");
- model.makeValue("/root/hidden/sppiz01700/cond/snglcalcscorcd", edicd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopdd", clopdd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopno", clopno);
- model.makeValue("/root/hidden/sppiz01700/cond/edilnno", "-");
- model.makeNode("/root/hidden/sppiz01700/cond/spclcd");
- model.makeNode("/root/hidden/sppiz01700/cond/detldesc");
- model.makeNode("/root/hidden/sppiz01700/cond/spclspec");
- model.makeNode("/root/hidden/sppiz01700/cond/spclformat");
- model.makeNode("/root/hidden/sppiz01700/cond/rownum");
- model.makeNode("/root/hidden/sppiz01700/cond/cdnm");
- model.makeValue("/root/hidden/sppiz01700/cond/unitflag", "J");
- } else { // 기존에 입력된 줄단위 원외처방특정내역이 있는 경우
- var rowcnt = 1;
- var setrow = 0;
- for (var i = 1; i < grd_oprcphist.rows; i++) {
- var edicd2 = model.getValue("/root/main/list3/clcj["+ i +"]/edicd");
- if (edicd == edicd2 && model.getValue("/root/main/list3/clcj["+ i +"]/unitflag") == "O") {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- if (spclcd != "JT001" && grd_clsphist.rowstatus(i) != 4) {
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/flag", "");
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/rownum", i);
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/snglcalcscorcd", edicd2);
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/clopdd", clopdd);
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/clopno", clopno);
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/edilnno", "-");
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/spclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/spclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/spclformat", model.getValue("/root/main/list3/clcj["+ i +"]/spclformat"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/cdnm", model.getValue("/root/main/list3/clcj["+ i +"]/cdnm"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/detldesc", model.getValue("/root/main/list3/clcj["+ i +"]/detldesc"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/oldspclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz01700/cond/list["+ rowcnt +"]/oldspclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- setrow = i;
- rowcnt = rowcnt+1;
- }
- }
- }
- model.makevalue("/root/hidden/sppiz01700/cond/flag", "");
- model.makevalue("/root/hidden/sppiz01700/cond/snglcalcscorcd", edicd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopdd", clopdd);
- model.makeValue("/root/hidden/sppiz01700/cond/clopno", clopno);
- model.makevalue("/root/hidden/sppiz01700/cond/edilnno", "-");
- model.makevalue("/root/hidden/sppiz01700/cond/spclcd", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclcd"));
- model.makevalue("/root/hidden/sppiz01700/cond/detldesc", model.getValue("/root/main/list3/clcj["+ setrow +"]/detldesc"));
- model.makevalue("/root/hidden/sppiz01700/cond/spclspec", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclspec"));
- model.makevalue("/root/hidden/sppiz01700/cond/spclformat", model.getValue("/root/main/list3/clcj["+ setrow +"]/spclformat"));
- model.makevalue("/root/hidden/sppiz01700/cond/rownum", setrow);
- model.makevalue("/root/hidden/sppiz01700/cond/cdnm", model.getValue("/root/main/list3/clcj["+ setrow +"]/cdnm"));
- model.makevalue("/root/hidden/sppiz01700/cond/unitflag", "J");
- }
- modal("SPPIZ01700" ,"", "10", "10", "SPPIZ01700", "/root/hidden/sppiz01700", "/root/hidden/clsp", "", ""); // SPPIZ01700_원외처방특정내역상세관리.xrw
-
-
- // 2. 넘어온 원외처방 특정내역을 처리한다.
- var rsltcnt = getNodesetCount("/root/hidden/sppiz01700/rslt/list");
- if (rsltcnt > 0) {
- var clsprow = grd_clsphist.rows - 1;
- var addcnt = 0;
- for (var i = rsltcnt; i > 0; i--) {
- var flag = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/flag");
- var rownum = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/rownum");
- var newspclcd = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/spclcd");
- var newcdnm = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/cdnm");
- var newspclspec = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/spclspec");
- var newspclformat = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/spclformat ");
- var newdetldesc = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/detldesc");
-
- // 2-1. 특정내역 추가
- if (flag == "I") {
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "O");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", model.getValue("/root/hidden/sppiz01700/cond/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", newcdnm);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", newspclspec);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", newspclformat);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", newdetldesc);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", model.getValue("/root/main/list7/clop["+ row +"]/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list7/clop["+ row +"]/prcpdd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list7/clop["+ row +"]/prcpno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list7/clop["+ row +"]/prcphistno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list7/clop["+ row +"]/execprcpseqno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicdflag", model.getValue("/root/main/list7/clop["+ row +"]/edicdflag"));
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
- addcnt++;
-
- // 2-2. 특정내역 수정
- } else if (flag == "U") {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- model.setValue("/root/main/list3/clcj["+ rownum +"]/edicd", model.getValue("/root/hidden/sppiz01700/cond/snglcalcscorcd"));
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclcd", newspclcd);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/cdnm", newcdnm);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclspec", newspclspec);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclformat", newspclformat);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/detldesc", newdetldesc);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/oldspclcd", newspclcd);
-
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "I");
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- }
-
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/oldspclcd");
- var oldspclspec = model.getValue("/root/hidden/sppiz01700/rslt/list["+ i +"]/oldspclspec");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
-
- // 2-3. 특정내역 삭제
- } else if (flag == "D" && rownum != "" ) {
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- grd_clsphist.deleteRow(rownum, false);
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "D");
- }
- model.setValue("/root/hidden/list3/msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- opt_msgspclformat.refresh();
- }
- }
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- var cnt = 0;
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var clopEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- if (edicd == clopEdicd && model.getValue("/root/main/list3/clcj["+ j +"]/unitflag") == "O") {
- if (model.getValue("/root/main/list3/clcj["+ j +"]/spclcd") != "JT001" && grd_clsphist.rowstatus(j) != 4) {
- cnt++;
- }
- }
- }
- if (cnt > 0) {
- if (spclspecyn == "") { // 기존에는 입력된 내역이 없다가 추가된 경우임
- for (var j = 1; j < grd_oprcphist.rows; j++) {
- var clopEdicd = model.getValue("/root/main/list7/clop["+ j +"]/edicd");
- if (edicd == clopEdicd) {
- model.setValue("/root/main/list7/clop["+ j +"]/spclspecyn", "*");
- }
- }
- }
- } else { // 특정내역이 한건도 없게 된 경우
- if (spclspecyn) { // 기존에는 입력된 내역이 있다가 삭제된 경우임
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var clopEdicd = model.getValue("/root/main/list7/clop["+ j +"]/edicd");
- if (edicd == clopEdicd) {
- model.resetInstanceNode("/root/main/list7/clop["+ j +"]/spclspecyn");
- }
- }
- }
- }
- }
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- fSortSpclNo();
- fSpclGridInsertRow();
- }
- } else {
- messageBox("EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이", "I004"); ///EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- /* 특정내역 Grid 에서 선택한 줄단위 특정내역을 조회하고, 명세서단위 특정내역을 수정/입력한다. */
- function fSetDocRefLnSpclSpec(){
-
- // 1. 특정내역 상세관리 화면을 호출한다.
- model.removeNodeset("/root/hidden/sppiz00500/rslt");
- model.removeNodeset("/root/hidden/sppiz00500/cond");
- var row = grd_clsphist.row;
- var edicd = model.getValue("/root/main/list3/clcj["+ row +"]/edicd");
- var unitflag = model.getValue("/root/main/list3/clcj["+ row +"]/unitflag");
- if (unitflag == "J") {
- // 삭제상태인 경우 처방Grid에서 입력,수정은 가능하지만 특정내역Grid에서는 편집할 수 없다.
- var rowstatus = grd_clsphist.rowstatus(row);
- if (rowstatus == 4) { // 4 : delete
- messageBox("삭제된 특정내역은 수정할 수", "I004"); ///삭제된 특정내역은 수정할 수 없습니다.
- return;
- }
- }
-
- var rowcnt = 1;
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ i +"]/edicd");
- if (edicd == spclEdicd && model.getValue("/root/main/list3/clcj["+ i +"]/unitflag") == unitflag) {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- if (spclcd != "JT001" && grd_clsphist.rowstatus(i) != 4) { // 확인코드가 아닌 경우
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/flag", "");
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/rownum", i);
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/snglcalcscorcd", spclEdicd);
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/edilnno", "0");
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/spclformat", model.getValue("/root/main/list3/clcj["+ i +"]/spclformat"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/cdnm", model.getValue("/root/main/list3/clcj["+ i +"]/cdnm"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/detldesc", model.getValue("/root/main/list3/clcj["+ i +"]/detldesc"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/oldspclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz00500/cond/list["+ rowcnt +"]/oldspclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- rowcnt = rowcnt+1;
- }
- }
- }
- model.makevalue("/root/hidden/sppiz00500/cond/flag", "");
- model.makevalue("/root/hidden/sppiz00500/cond/snglcalcscorcd", edicd);
- model.makevalue("/root/hidden/sppiz00500/cond/edilnno", "0");
- model.makevalue("/root/hidden/sppiz00500/cond/spclcd", model.getValue("/root/main/list3/clcj["+ row +"]/spclcd"));
- model.makevalue("/root/hidden/sppiz00500/cond/detldesc", model.getValue("/root/main/list3/clcj["+ row +"]/detldesc"));
- model.makevalue("/root/hidden/sppiz00500/cond/spclspec", model.getValue("/root/main/list3/clcj["+ row +"]/spclspec"));
- model.makevalue("/root/hidden/sppiz00500/cond/spclformat", model.getValue("/root/main/list3/clcj["+ row +"]/spclformat"));
- model.makevalue("/root/hidden/sppiz00500/cond/rownum", row);
- model.makevalue("/root/hidden/sppiz00500/cond/cdnm", model.getValue("/root/main/list3/clcj["+ row +"]/cdnm"));
- model.makevalue("/root/hidden/sppiz00500/cond/unitflag", unitflag);
- modal("SPPIZ00500" ,"", "10", "10", "SPPIZ00500", "/root/hidden/sppiz00500", "/root/hidden/clsp", "", ""); // SPPIZ00500_특정내역상세관리.xrw
-
- // 2. 넘어온 데이터를 처리한다.
- var rsltcnt = getNodesetCount("/root/hidden/sppiz00500/rslt/list");
- if (rsltcnt > 0) {
-
- var clsprow = grd_clsphist.rows - 1;
- var addcnt = 0;
- for (var i = rsltcnt; i > 0; i--) {
- var flag = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/flag");
- var rownum = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/rownum");
- var newspclcd = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclcd");
- var newcdnm = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/cdnm");
- var newspclspec = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclspec");
- var newspclformat = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/spclformat ");
- var newdetldesc = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/detldesc");
-
- // 2-1. 특정내역을 추가한다.
- if (flag == "I") {
-
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", unitflag);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", newcdnm);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", newspclspec);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", newspclformat);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", newdetldesc);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", newspclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", model.getValue("/root/main/list3/clcj["+ row +"]/prcpdd"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", model.getValue("/root/main/list3/clcj["+ row +"]/prcpno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", model.getValue("/root/main/list3/clcj["+ row +"]/prcphistno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", model.getValue("/root/main/list3/clcj["+ row +"]/execprcpseqno"));
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
- addcnt++;
-
- // 2-2. 특정내역을 수정한다.
- } else if (flag == "U") {
-
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- model.setValue("/root/main/list3/clcj["+ rownum +"]/edicd", model.getValue("/root/hidden/sppiz00500/cond/snglcalcscorcd"));
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclcd", newspclcd);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/cdnm", newcdnm);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclspec", newspclspec);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/spclformat", newspclformat);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/detldesc", newdetldesc);
- model.setValue("/root/main/list3/clcj["+ rownum +"]/oldspclcd", newspclcd);
-
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "I");
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "U");
- }
-
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/oldspclcd");
- var oldspclspec = model.getValue("/root/hidden/sppiz00500/rslt/list["+ i +"]/oldspclspec");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- opt_msgspclformat.refresh();
-
- // 2-3. 특정내역을 삭제한다.
- } else if (flag == "D" && rownum != "" ) {
-
- var rowstatus = grd_clsphist.rowstatus(rownum);
- if (rowstatus == 1 || rowstatus == 3) {
- grd_clsphist.deleteRow(rownum, false);
- } else {
- model.setValue("/root/main/list3/clcj["+ rownum +"]/rowstat", "D");
- }
- model.setValue("/root/hidden/list3/msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- opt_msgspclformat.refresh();
-
- }
- }
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- if (unitflag == "M") { // 명세서 단위
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- fCheckSpclSpecData();
- } else { // 줄단위인 경우
- var cnt = 0;
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- if (edicd == spclEdicd && model.getValue("/root/main/list3/clcj["+ j +"]/unitflag") == "J") {
- if (model.getValue("/root/main/list3/clcj["+ j +"]/spclcd") != "JT001" && grd_clsphist.rowstatus(j) != 4) {
- cnt++;
- }
- }
- }
- if (cnt > 0) {
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (edicd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ j +"]/lnunitspclspecyn", "*");
- }
- }
- } else { // 특정내역이 한건도 없게 된 경우
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (edicd == osclEdicd) {
- model.resetInstanceNode("/root/main/list2/oscl["+ j +"]/lnunitspclspecyn");
- }
- }
- }
- }
-
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- fSortSpclNo();
- fSpclGridInsertRow();
- }
- }
- }
- /* 특정내역 Grid 에서 선택한 확인코드를 조회하고 줄단위 특정내역을 수정/입력한다. */
- function fSetCnfmCdSpclSpec() {
- var row = grd_clsphist.row;
-
- // 1. 확인코드 조회 화면을 호출한다.
- model.removeNodeset("root/hidden/sppiz01100/rslt");
- model.makeValue("/root/hidden/sppiz01100/cond/code", model.getValue("/root/main/list3/clcj["+ row +"]/spclspec"));
- modal("SPPIZ01100" ,"", "10", "10", "SPPIZ01100", "/root/hidden/sppiz01100", "/root/init/sppiz01100", "", "");
-
- // 2. 조회 결과를 처리한다.
- if (instance1.selectSingleNode("root/hidden/sppiz01100/rslt")) {
- var cnfmcd = model.getValue("root/hidden/sppiz01100/rslt/code");
- var basecd = model.getValue("/root/main/list3/clcj["+ row +"]/edicd");
-
- // 2-1. 처방그리드 확인코드를 수정한다.
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ j +"]/cnfmcd", cnfmcd);
- }
- }
-
- // 2-2. 특정내역 그리드 확인코드를 수정한다.
- var rowstatus = grd_clsphist.rowstatus(row);
- if (cnfmcd != "") {
- if (rowstatus != 4) {
- model.setValue("/root/main/list3/clcj["+ row +"]/spclspec", cnfmcd);
- if (rowstatus == 1 || rowstatus == 3) {
- } else {
- grd_clsphist.rowstatus(row) = 2;
- }
- model.setValue("/root/hidden/list3/msgspclformat", "확인코드 - JT001 / 입력코드내역 : "+ cnfmcd +" / 기재형식 : X(5)");
- opt_msgspclformat.refresh();
- }
- } else {
- if (rowstatus == 1 || rowstatus == 3) {
- grd_clsphist.deleteRow(row, true);
- } else {
- grd_clsphist.rowstatus(row) = 4;
- model.setValue("/root/main/list3/clcj["+ row +"]/rowstat", "D");
- model.setValue("/root/main/list3/clcj["+ row +"]/spclspec", cnfmcd);
-
- }
- model.setValue("/root/hidden/list3/msgspclformat", "입력된 확인코드 내역이 없습니다.");
- opt_msgspclformat.refresh();
- }
- }
- }
- /* 특정내역 / 심사자메모 / EDI메모 창을 작게 한다. */
- function fCutSwitchSize() {
- grp_clsphist.attribute("height") = "171";
- var igrd_hei = parseInt(grp_clsphist.attribute("height"));
- swt_spclmemo.attribute("height") = igrd_hei - 24;
- grd_clsphist.attribute("height") = igrd_hei - 71;
- tar_judgrmemo.attribute("height") = igrd_hei - 61;
- tar_ediclammemo.attribute("height") = igrd_hei - 61;
-
- if (grp_predoculist.visible == false && grp_delclodlist.visible == false && grp_delorderlist.visible == false) {
- grd_clodhist.attribute("width") = "1114";
- ln_clodhist.attribute("x2") = "1114";
- }
- }
- /* 특정내역 / 심사자메모 / EDI메모 창을 크게 한다. */
- function fExpandSwitchSize() {
- grp_clsphist.attribute("height") = "632";
- var igrd_hei = parseInt(grp_clsphist.attribute("height"));
- swt_spclmemo.attribute("height") = igrd_hei - 24;
- grd_clsphist.attribute("height") = igrd_hei - 71;
- tar_judgrmemo.attribute("height") = igrd_hei - 61;
- tar_ediclammemo.attribute("height") = igrd_hei - 61;
- // 처방 Grid 을 축소하고, Grid Group이 겹쳐져 보이므로 visible = false 처리한다.
- grd_clodhist.attribute("width") = "480";
- ln_clodhist.attribute("x2") = "480";
- }
- /* SPPIZ00700_심사Comment조회.xrw 호출(심사자메모,EDI메모) */
- function fGetJudgEdiComment(memoflag, memocls) {
- model.resetInstanceNode("/root/hidden/sppiz00700/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00700/cond");
- model.setValue("/root/hidden/sppiz00700/cond/memoflag", memoflag);
- model.setValue("/root/hidden/sppiz00700/cond/memocls", memocls);
- model.makeValue("/root/hidden/sppiz00700/cond/memo", "");
- modal("SPPIZ00700" ,"", "10", "10", "SPPIZ00700", "/root/hidden/sppiz00700", "/root/send/sppiz00700", "", "");
- }
- /* SPPIZ00700_심사Comment조회.xrw 호출(줄단위메모) */
- function fGetJudgEdiComment2(memoflag, ediitem1) {
- model.resetInstanceNode("/root/hidden/sppiz00700/rslt");
- model.resetInstanceNode("/root/hidden/sppiz00700/cond");
- model.setValue("/root/hidden/sppiz00700/cond/memoflag", memoflag);
- model.setValue("/root/hidden/sppiz00700/cond/ediitem1", ediitem1);
- modal("SPPIZ00700" ,"", "10", "10", "SPPIZ00700", "/root/hidden/sppiz00700", "/root/send/sppiz00700", "", "");
- }
- /* MT004 특정내역 한줄 추가 */
- function fSetSpclMT004() {
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- if (cretno) {
-
- // 1. 특정내역에 MT004가 존재하면 이를 삭제한다.
- if (btn_mt0004.attribute("class") == "btn5_letter4") {
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- var gridrowstatus = grd_clsphist.rowstatus(i);
- if (spclcd == "MT004" && gridrowstatus != 4) {
- if (gridrowstatus == 1 || gridrowstatus == 3) {
- grd_clsphist.deleteRow(i, true);
- } else {
- model.makeValue("/root/main/list3/clcj["+ i +"]/rowstat", "D");
- grd_clsphist.rowstatus(i) = 4;
- }
- }
- }
- btn_mt0004.attribute("class") = "btn2_letter4";
-
- // 2. 특정내역에 MT004가 없으면 이를 추가한다.
- } else {
-
- var clsprow = grd_clsphist.rows;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "M");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", "-");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", "MT004");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "소명자료 구분");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", "Y");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "X(1)");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "소명자료를 첨부하는 경우 'Y'를 기재");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", "-");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", "MT004");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "1");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicdflag", "-");
- model.setValue("/root/hidden/list3/msgspclformat", "");
- opt_msgspclformat.refresh();
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- fSortSpclNo();
- fSpclGridInsertRow();
-
- btn_mt0004.attribute("class") = "btn5_letter4";
- btn_mt0004.attribute("color") = "#cc3333";
- }
- }
- }
- /* 소명자료 특정내역 추가 */
- function fGetAttachedDataList() {
-
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- if (cretno) {
-
- // 1. 첨부물자료관리 팝업을 호출한다.
- model.removeNodeset("/root/hidden/sppiz00200/cond");
- var index = 0;
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- var gridrowstatus = grd_clsphist.rowstatus(i);
- if (spclcd == "MT015" || spclcd == "MT016") {
- index++;
- model.makeValue("/root/hidden/sppiz00200/cond/clsp["+ index +"]/spclcd", model.getValue("/root/main/list3/clcj["+ i +"]/spclcd"));
- model.makeValue("/root/hidden/sppiz00200/cond/clsp["+ index +"]/seqno", model.getValue("/root/main/list3/clcj["+ i +"]/seqno"));
- model.makeValue("/root/hidden/sppiz00200/cond/clsp["+ index +"]/spclspec", model.getValue("/root/main/list3/clcj["+ i +"]/spclspec"));
- // 특정내역 Grid에서 "행 삭제"한 경우 MT015 / MT016 자료를 표시하지 않도록 하도록 rowstatus를 전달함
- model.makeValue("/root/hidden/sppiz00200/cond/clsp["+ index +"]/rowstat", gridrowstatus);
- }
- }
- if (instance1.selectSingleNode("/root/hidden/sppiz00200/cond") == null) {
- model.makeNode("/root/hidden/sppiz00200/cond");
- }
- modal("SPPIZ00200" ,"", "10", "10", "SPPIZ00200", "", "", "", ""); // SPPIZ00200_첨부물자료관리.xrw
-
- // 2. 넘어온 데이터를 입력한다.
- fDisplayAttachedDataList();
- }
- }
- /* 소명자료 특정내역 추가 */
- function fDisplayAttachedDataList() {
-
- var cSrcNode = instance1.selectSingleNode("/root/hidden/sppiz00200/rslt/clsp");
- if (cSrcNode == null) {
- return;
- }
- if (model.getValue("/root/hidden/sppiz00200/rslt/clsp/unitflag") == "") { // "취소" 선택시에 버튼 색이 변경되지 않도록
- return;
- }
-
- var cSrcChildNodeList = cSrcNode.childNodes;
- var clsprow = grd_clsphist.rows - 1;
- var addcnt = 0;
-
- // 1. 소명자료를 추가,수정,삭제한다.
- for (var i = 1; i <= cSrcChildNodeList.length; i++) {
- var spclcd = model.getValue("/root/hidden/sppiz00200/rslt/clsp["+i+"]/spclcd");
- var spclspec = model.getValue("/root/hidden/sppiz00200/rslt/clsp["+i+"]/spclspec");
-
- if (spclcd == "MT015" || spclcd == "MT016") {
- var rowstat = model.getValue("/root/hidden/sppiz00200/rslt/clsp["+i+"]/rowstat")
-
- if (rowstat == "I") {
-
- clsprow++;
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/rowstat", "I");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/unitflag", "M");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicd", "-");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclcd", spclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclspec", spclspec);
- if (spclcd == "MT015") {
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "제출자료 목록표");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "X(2)");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "제출자료코드/제출자료코드/... 형태로 입력");
- } else {
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/cdnm", "제출자료 목록표(기타)");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/spclformat", "X(200)");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/detldesc", "영문(200자), 한글(100자)");
- }
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/calcscorcd", "-");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/oldspclcd", spclcd);
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/seqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpdd", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcpno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/prcphistno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/execprcpseqno", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/currowstat", "");
- model.makeValue("/root/main/list3/clcj["+ clsprow +"]/edicdflag", "-");
- addcnt++;
-
- } else if (rowstat == "U") {
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var gridspclcd = model.getValue("/root/main/list3/clcj["+ j +"]/spclcd");
- var gridspclspec = model.getValue("/root/main/list3/clcj["+ j +"]/spclspec");
- var gridrowstatus = grd_clsphist.rowstatus(j);
- if (gridspclcd == spclcd) {
- model.setValue("/root/main/list3/clcj["+ j +"]/spclspec", spclspec);
- if (gridrowstatus == 1 || gridrowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ j +"]/rowstat", "I");
- } else {
- model.setValue("/root/main/list3/clcj["+ j +"]/rowstat", "U");
- grd_clsphist.rowstatus(j) = 2;
- }
- }
- }
- // 1-3. 삭제한다.
- } else if (rowstat == "D") {
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var gridspclcd = model.getValue("/root/main/list3/clcj["+ j +"]/spclcd");
- var gridspclspec = model.getValue("/root/main/list3/clcj["+ j +"]/spclspec");
- var gridrowstatus = grd_clsphist.rowstatus(j);
- if (gridspclcd == spclcd) {
- if (gridrowstatus == 1 || gridrowstatus == 3) {
- model.setValue("/root/main/list3/clcj["+ j +"]/rowstat", "R");
- } else {
- grd_clsphist.rowstatus(j) = 4;
- model.setValue("/root/main/list3/clcj["+ j +"]/rowstat", "D");
- }
- }
- }
- }
- }
- }
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- // 2. 소명자료가 추가되었을 경우에만 특정내역을 소트한다.
- if (addcnt > 0) {
- grd_clsphist.refresh();
- fSetClcjRowStatus();
- fSortSpclNo();
- fSpclGridInsertRow();
- }
-
- // 3. 소명자료 버튼 색을 변경한다.
- var isAttachedDataList = false;
- for (var m = 1; m < grd_clsphist.rows && isAttachedDataList != true; m++) {
- var spclcd = model.getValue("/root/main/list3/clcj["+ m +"]/spclcd");
- if (spclcd == "MT015" || spclcd == "MT016") isAttachedDataList = true;
- }
- if (isAttachedDataList) {
- btn_attData.attribute("class") = "btn5_letter4";
- btn_attData.attribute("color") = "#cc3333";
- } else {
- btn_attData.attribute("class") = "btn2_letter4";
- }
- }
- /* MT004, 소명자료 버튼 색상 */
- function fCheckSpclSpecData() {
- // 삭제된 상태가 아닌 소명자료 내역이 있는지 파악하여 "소명자료" Btn 색을 설정한다.
- // 특정코드 MT004 가 있는지를 파악하여 "MT004" Btn 색을 설정한다.
- var isAttachedDataList = false;
- var isMT004DataList = false;
-
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- var spclspec = model.getValue("/root/main/list3/clcj["+ i +"]/spclspec");
- if (spclcd == "MT015" || spclcd == "MT016") {
- if (grd_clsphist.rowstatus(i) != 4) {
- isAttachedDataList = true;
- }
- }
- else if (spclcd == "MT004") {
- if (grd_clsphist.rowstatus(i) != 4) {
- isMT004DataList = true;
- }
- }
- }
- if (isAttachedDataList) {
- btn_attData.attribute("class") = "btn5_letter4";
- btn_attData.attribute("color") = "#cc3333";
- } else {
- // 소명자료 Btn
- btn_attData.attribute("class") = "btn2_letter4";
- }
-
- if (isMT004DataList) {
- btn_mt0004.attribute("class") = "btn5_letter4";
- btn_mt0004.attribute("color") = "#cc3333";
- } else {
- // MT004 Btn
- btn_mt0004.attribute("class") = "btn2_letter4";
- }
- }
- /* 상병 및 처방 치식 입력 호출 */
- function fDiagOrderToothInput(flag) {
- if (flag == "Diag") {
- var row = grd_cldihist.row;
- var diagcd = model.getValue("/root/main/list1/diag["+ row +"]/diagcd");
- if (diagcd) {
- model.setValue("/root/hidden/sppiz00600/cond/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.setValue("/root/hidden/sppiz00600/cond/toot", model.getValue("/root/main/list1/diag["+ row +"]/toot"));
- model.setValue("/root/hidden/sppiz00600/cond/clamym", "");
- model.setValue("/root/hidden/sppiz00600/cond/clamdg", "");
- model.setValue("/root/hidden/sppiz00600/cond/pidsn", "");
- fSetToothPop(row, "1");
- model.removenode("/root/hidden/sppiz00600/rslt"); // SPPIZ00600_상병및처방별치식 에서 선택된 결과가 copyNode되는 경로임
- modal("SPPIZ00600" ,"", "10", "10", "SPPIZ00600", "/root/hidden/sppiz00600/cond", "/root/hidden/cond", "", ""); // SPPIZ00600_상병및처방별치식.xrw
- fGetToothPop();
- }
- }
- else if (flag == "Order") {
- var row = grd_clodhist.row;
- var basecd = model.getValue("/root/main/list2/oscl["+ row +"]/basecd");
- if (basecd) {
- model.setValue("/root/hidden/sppiz00600/cond/pid", model.getValue("/root/main/item1/otpt/pid"));
- model.setValue("/root/hidden/sppiz00600/cond/toot", model.getValue("/root/main/list2/oscl["+ row +"]/tootfact"));
- model.setValue("/root/hidden/sppiz00600/cond/clamym", "");
- model.setValue("/root/hidden/sppiz00600/cond/clamdg", "");
- model.setValue("/root/hidden/sppiz00600/cond/pidsn", "");
- fSetToothPop(row, "2");
- model.removenode("/root/hidden/sppiz00600/rslt"); // SPPIZ00600_상병및처방별치식 에서 선택된 결과가 copyNode되는 경로임
- modal("SPPIZ00600" ,"", "10", "10", "SPPIZ00600", "/root/hidden/sppiz00600/cond", "/root/hidden/cond", "", ""); // SPPIZ00600_상병및처방별치식.xrw
- fGetToothPop();
- }
- }
- }
- // 현재 상병, 처방 Grid 상에서 입력상태의 치식을 팝업 화면에 전달하기 위해 리스트 형태로 만든다.
- function fSetToothPop(row, flag) {
- model.removeNodeset("/root/hidden/sppiz00600/cond/list");
- model.makeNode("/root/hidden/sppiz00600/cond/list");
- // 상병
- var cntcldi = getNodesetCount("/root/main/list1/diag");
- // 처방
- var cntclod = getNodesetCount("/root/main/list2/oscl");
- var cd = "";
- var cdnm = "";
- var orddd = "";
- var toot = "";
- var rowcnt = 1;
- for (i=1; i<=cntcldi; i++) {
- cd = model.getValue("/root/main/list1/diag["+ i + "]/diagcd");
- cdnm = model.getValue("/root/main/list1/diag["+ i + "]/diagnm");
- orddd = model.getValue("/root/main/list1/diag["+ i + "]/ordfromdd");
- toot = model.getValue("/root/main/list1/diag["+ i + "]/toot");
- if (toot != "-" && toot != "") {
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row");
-
- var milktoothstr = "ABCDE000";
- var subTootStr = "";
- for (var inx = 0; inx < 32; inx++) {
- var tootnum = toot.substr(inx,1);
- if (tootnum == "*") { // 선택된 영구치의 경우 1~8 사이 숫자로 표시한다.
- if (inx < 8) {
- subTootStr += (8 - inx);
- }
- else if (inx > 7 && inx < 16) {
- subTootStr += (inx - 7);
- }
- else if (inx > 15 && inx < 24) {
- subTootStr += (24 - inx);
- } else {
- subTootStr += (inx - 23);
- }
- } else if (tootnum == "#") { // 선택된 유치의 경우 A~E 사이 알파벳으로 표시한다.
- if (inx < 8) {
- subTootStr += milktoothstr.charAt(7 - inx);
- }
- else if (inx > 7 && inx < 16) {
- subTootStr += milktoothstr.charAt(inx - 8);
- }
- else if (inx > 15 && inx < 24) {
- subTootStr += milktoothstr.charAt(23 - inx);
- } else {
- subTootStr += milktoothstr.charAt(inx - 24);
- }
- } else { // if (tootnum == "0") 선택되지 않은 경우 공백으로 처리한다.
- subTootStr += " ";
- }
- }
-
- //치식 표기를 설정한다.
- if (row == i && flag == "1" ) {
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "true");
- } else {
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "false");
- }
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag", "상병");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd", cd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm", cdnm);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper", subTootStr.substr(0, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper", subTootStr.substr(8, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower", subTootStr.substr(16, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower", subTootStr.substr(24, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd", orddd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot", toot);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row", i);
- rowcnt = rowcnt+1;
- } else {
- if (row == i && flag == "1" ) {
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row");
-
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "true");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag", "상병");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd", cd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm", cdnm);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd", orddd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row", i);
- rowcnt = rowcnt+1;
- }
- }
- }
- for (i=1; i<=cntclod; i++) {
- cd = model.getValue("/root/main/list2/oscl["+ i + "]/snglcalcscorcd");
- cdnm = model.getValue("/root/main/list2/oscl["+ i + "]/hngnm");
- orddd = model.getValue("/root/main/list2/oscl["+ i + "]/orddd");
- toot = model.getValue("/root/main/list2/oscl["+ i + "]/tootfact");
- estmcls = model.getValue("/root/main/list2/oscl["+ i + "]/estmcls");
-
- if ((toot != "-" && toot != "") || estmcls == "U") {
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row");
-
- var milktoothstr = "ABCDE000";
- var subTootStr = "";
-
- var tmpStr = "";
- for (var inx = 0; inx < 32; inx++) {
- var tootnum = toot.substr(inx,1);
- if (tootnum == "*") { // 선택된 영구치의 경우 1~8 사이 숫자로 표시한다.
- if (inx < 8) {
- subTootStr += (8 - inx);
- }
- else if (inx > 7 && inx < 16) {
- subTootStr += (inx - 7);
- }
- else if (inx > 15 && inx < 24) {
- subTootStr += (24 - inx);
- } else {
- subTootStr += (inx - 23);
- }
- } else if (tootnum == "#") { // 선택된 유치의 경우 A~E 사이 알파벳으로 표시한다.
- if (inx < 8) {
- subTootStr += milktoothstr.charAt(7 - inx);
- }
- else if (inx > 7 && inx < 16) {
- subTootStr += milktoothstr.charAt(inx - 8);
- }
- else if (inx > 15 && inx < 24) {
- subTootStr += milktoothstr.charAt(23 - inx);
- } else {
- subTootStr += milktoothstr.charAt(inx - 24);
- }
- } else { // if (tootnum == "0") 선택되지 않은 경우 공백으로 처리한다.
- subTootStr += " ";
- }
- }
-
- //치식 표기를 설정한다.
- if (row == i && flag == "2" ) {
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "true");
- } else {
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "false");
- }
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag", "처방");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd", cd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm", cdnm);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper", subTootStr.substr(0, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper", subTootStr.substr(8, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower", subTootStr.substr(16, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower", subTootStr.substr(24, 8));
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd", orddd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot", toot);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row", i);
- rowcnt = rowcnt+1;
- } else {
- if (row == i && flag == "2" ) {
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot");
- model.makeNode("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row");
-
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "true");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag", "처방");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd", cd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm", cdnm);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd", orddd);
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot", "");
- model.setValue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row", i);
- rowcnt = rowcnt+1;
- }
- }
- }
- }
- /* 치식결과 반영 */
- function fGetToothPop() {
- var tootSelectcnt = getNodesetCount("/root/hidden/sppiz00600/rslt/list");
- var flag = "";
- var row = "";
- var toot = "";
- tootSelectcnt = eval(tootSelectcnt) + 1;
-
- for (var i=1; i<tootSelectcnt; i++) {
- flag = model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/flag");
- row = model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/row");
- var rlsttoot = model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/toot");
- var rlsttoot1 = model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/toot1");
-
- if (rlsttoot == "") {
- rlsttoot = "-";
- }
- if (rlsttoot1 == "") {
- rlsttoot1 = "-";
- }
-
- if (flag == "1") {
- toot = model.getValue("/root/main/list1/diag["+ row +"]/toot");
- model.setValue("/root/main/list1/diag["+ row +"]/toot", rlsttoot);
- model.setValue("/root/main/list1/diag["+ row +"]/toot1", rlsttoot1);
- if (rlsttoot != toot) { // 치식번호가 변경된 경우
- var cldistatus = grd_cldihist.rowstatus(row);
- if (cldistatus == 0 || cldistatus == 2) { // 0 : new, 2 : update
- grd_cldihist.rowstatus(row) = 2; // 2 : update
- }
- }
- } else if (flag == "2") {
- toot = model.getValue("/root/main/list2/oscl["+ row +"]/tootfact");
- model.setValue("/root/main/list2/oscl["+ row +"]/tootfact", rlsttoot);
- model.setValue("/root/main/list2/oscl["+ row +"]/tootfact1", rlsttoot1);
- if (rlsttoot != toot) { // 치식번호가 변경된 경우
- // 처방의 수정된 row 상태를 표시한다.
- fSetOrderChangeRowStat(row);
- }
- }
- }
- }
- /* 심사사유, 조정사유, 수정사유 입력. 사용안함 */
- function fSetAdjtResnCd() {
- var oldcd = model.getValue("/root/main/list2/oscl["+ grd_clodhist.row +"]/judgadjtresncd");
- model.resetInstanceNode("/root/hidden/sppiz01000");
- model.setValue("/root/hidden/sppiz01000/cond/cdid", oldcd);
- modal("SPPIZ01000", 1,150, 150, "SPPIZ01000", "/root/hidden/sppiz01000/cond/cdid", "/root/hidden/sppiz01000/cond/cdid", "", "");
- var newcd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
- if (newcd) {
- model.setValue("/root/main/list2/oscl["+ grd_clodhist.row +"]/judgadjtresncd", newcd);
- if (newcd != oldcd && grd_clodhist.rowStatus(grd_clodhist.row) == 0) { // 0 : new, 2 : update
- grd_clodhist.rowStatus(grd_clodhist.row) = 2;
- }
- }
- return newcd;
- }
- /* 특정내역 저장 */
- function fSaveClcjList() {
-
- var isValidCheck = true;
- var saveNoMsg = "";
- var saveOkMsg = "";
-
- model.removeNodeset("/root/send/item2");
- model.removeNodeset("/root/send/item3");
- model.removeNodeset("/root/send/item4");
- model.removeNodeset("/root/send/list1");
- model.removeNodeset("/root/send/list2");
- model.removeNodeset("/root/send/list3");
- model.removeNodeset("/root/send/item5");
- model.removeNodeset("/root/send/list7");
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- // 1.특정내역에 저장할 정보가 올바른지 확인한다.
- var rtn = fCheckSaveOutDayJudgInfoCLSP();
- if (rtn == "3") {
- var updtdata = getGridUpdateData(grd_clsphist);
- if (updtdata) {
- model.makeValue("/root/send/list3/clcj", updtdata);
- }
- if (updtdata != "" && grd_clsphist.rows > 1) {
- saveOkMsg += "[특정내역] ";
- } else {
- saveNoMsg += "[특정내역] ";
- }
- } else if (rtn == "1") {
- isValidCheck = false;
- } else if (rtn == "2") {
- fSpclGridInsertRow();
- return;
- }
-
- if (isValidCheck) {
- if (saveOkMsg) {
- if (model.getValue("/root/send/list3/clcj")) {
- // 줄단위 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- fSetSpclSpecJX999();
- }
-
- if (submit("TXPIJ00703", false)) {
- grd_clsphist.clearStatus();
- grd_clsphist.refresh();
- }
- }
- else if (saveNoMsg) {
- messageBox(saveNoMsg +"변경된 데이터가","I004"); ///변경된 데이터가 없습니다.
- }
- } else {
- messageBox("변경된 정보를 저장할 특정내역이", "I004");
- }
- fSpclGridInsertRow();
- }
- /* 특정내역 탭 특정코드 변경 */
- function fChangeSpclCd() {
- var row = grd_clsphist.row;
- var newspclcd = model.getValue("/root/main/list3/clcj["+ row +"]/spclcd");
- var newspclspec = model.getValue("/root/main/list3/clcj["+ row +"]/spclspec");
- var unitflag = model.getValue("/root/main/list3/clcj["+ row +"]/unitflag");
-
- // 1. 명세서단위 중복 특정코드가 있는지 확인한다.
- if (unitflag == "M" && newspclcd != "") {
- if (newspclcd == "MT004" || newspclcd == "MT015" || newspclcd == "MT016" || newspclcd == "MX999") {
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- if (row != i && newspclcd == spclcd) {
- if (grd_clsphist.rowstatus(i) != 4) {
- model.setValue("/root/main/list3/clcj["+ row +"]/spclcd", model.getValue("/root/main/list3/clcj["+ row +"]/oldspclcd"));
- model.setValue("/root/hidden/list3/msgspclformat", "명세서 단위 특정코드 '"+ newspclcd +"'가 중복되었습니다.");
- opt_msgspclformat.refresh();
- return;
- }
- }
- }
- }
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- fCheckSpclSpecData();
-
- // 2. 줄단위 중복 특정코드가 있는지 확인한다.
- } else {
- if (newspclcd == "JX999" || newspclcd == "JT001") {
- var basecd = model.getValue("/root/main/list3/clcj["+ row +"]/edicd");
- // 중복된 특정코드가 있는지를 확인한다.
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ i +"]/edicd");
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- if (row != i && basecd == spclEdicd && newspclcd == spclcd) {
- if (grd_clsphist.rowstatus(i) != 4) {
- model.setValue("/root/main/list3/clcj["+ row +"]/spclcd", model.getValue("/root/main/list3/clcj["+ row +"]/oldspclcd"));
- model.setValue("/root/hidden/list3/msgspclformat", "EDI코드 "+ basecd +"의 줄단위 특정코드 '"+ newspclcd +"'가 중복되었습니다.");
- opt_msgspclformat.refresh();
- return;
- }
- }
- }
- }
- }
-
- // 3. 특정코드에 맞는 특정코드명을 기입한다.
- var p0117list = instance1.selectSingleNode("/root/init/P0117list");
- if (p0117list != null) {
- var p0117 = p0117list.childNodes;
- for (var i = 1; i <= p0117.length; i++) {
- var cdid = model.getValue("/root/init/P0117list/P0117["+ i +"]/cdid");
- if (cdid == newspclcd) {
- model.setValue("/root/main/list3/clcj["+ row +"]/cdnm", model.getValue("/root/init/P0117list/P0117["+ i +"]/cdnm"));
- var format = model.getValue("/root/init/P0117list/P0117["+ i +"]/cdval");
- format = format.substring(0,50);
- model.setValue("/root/main/list3/clcj["+ row +"]/spclformat", format);
- model.setValue("/root/main/list3/clcj["+ row +"]/detldesc", model.getValue("/root/init/P0117list/P0117["+ i +"]/detldesc"));
- i = p0117.length + 1;
- }
- }
- }
-
- model.setValue("/root/main/list3/clcj["+ row +"]/rowstat", "I");
- model.setValue("/root/main/list3/clcj["+ row +"]/oldspclcd", newspclcd);
-
- // 4. 하단 Message 구성
- var cdnm = model.getValue("/root/main/list3/clcj["+ row +"]/cdnm");
- var spclformat = model.getValue("/root/main/list3/clcj["+ row +"]/spclformat");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ cdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ spclformat);
- opt_msgspclformat.refresh();
-
- // 5. 빈줄 추가
- fSpclGridInsertRow();
- }
- /* 특정내역 탭 특정코드 외 다른 필드 변경 */
- function fChangeOtherCd() {
- var row = grd_clsphist.row;
- var newspclcd = model.getValue("/root/main/list3/clcj["+ row +"]/spclcd");
- var newspclspec = model.getValue("/root/main/list3/clcj["+ row +"]/spclspec");
-
- // 1. 확인코드(jt001)의 경우, spclspec가 빈값이면 삭제
- var unitflag = model.getValue("/root/main/list3/clcj["+ row +"]/unitflag");
- if (unitflag == "J") {
- if (newspclcd == "JT001") {
-
- var basecd = model.getValue("/root/main/list3/clcj["+ row +"]/edicd");
- for (var j = 1; j < grd_clodhist.rows; j++) {
- var osclEdicd = model.getValue("/root/main/list2/oscl["+ j +"]/basecd");
- if (basecd == osclEdicd) {
- model.setValue("/root/main/list2/oscl["+ j +"]/cnfmcd", newspclspec);
- }
- }
- if (newspclspec == "") {
- for (var j = 1; j < grd_clsphist.rows; j++) {
- var unitflag = model.getValue("/root/main/list3/clcj["+ j +"]/unitflag");
- if (unitflag == "J") {
- var spclEdicd = model.getValue("/root/main/list3/clcj["+ j +"]/edicd");
- var spclSpclcd = model.getValue("/root/main/list3/clcj["+ j +"]/spclcd");
- if (spclEdicd == basecd && spclSpclcd == "JT001") {
- var rowstatus = grd_clsphist.rowstatus(j);
- if (rowstatus == 1 || rowstatus == 3) {
- grd_clsphist.valueMatrix(row, grd_clsphist.colRef("rowstat")) = "D";
- model.setValue("/root/main/list3/clcj["+ row +"]/rowstat", "D");
- } else {
- grd_clsphist.rowstatus(j) = 4;
- grd_clsphist.valueMatrix(row, grd_clsphist.colRef("rowstat")) = "D";
- model.setValue("/root/main/list3/clcj["+ row +"]/rowstat", "D");
- }
- }
- }
- }
- model.setValue("/root/hidden/list3/msgspclformat", "입력된 확인코드 내역이 없습니다.");
- opt_msgspclformat.refresh();
-
- // 행 삭제
- for (var s = grd_clsphist.rows-1; s >= 1 ; s--) {
- var rowstatus = grd_clsphist.rowstatus(s);
- var rowtext = grd_clsphist.valueMatrix(s, grd_clsphist.colRef("rowstat"));
- if (rowstatus == 1 || rowstatus == 3) {
- if (rowtext == "D") grd_clsphist.deleteRow(s, false);
- }
- }
-
- return;
- }
- }
- }
-
- // 2. row상태 update 처리
- var rowstat = model.getValue("/root/main/list3/clcj["+ row +"]/rowstat");
- if (rowstat == "") {
- model.setValue("/root/main/list3/clcj["+ row +"]/rowstat", "U");
- }
-
- /*
- var rowstatus = grd_clsphist.rowstatus(row);
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- if (rowstatus == 1 || rowstatus == 3) { // 1 : insert, 3 : insert & new
- } else {
- grd_clsphist.rowstatus(row) = 2; // 2 : update 상태로 stat를 변경한다.
- }
- var cdnm = model.getValue("/root/main/list3/clcj["+ row +"]/cdnm");
- var spclformat = model.getValue("/root/main/list3/clcj["+ row +"]/spclformat");
- model.setValue("/root/hidden/list3/msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ cdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ spclformat);
- model.refresh();
- // 처방 행 삭제 or 삭제취소 후에 특정내역 sorting 작업
- fSortSpclNo();
- */
- }
- /* 심사자메모, edi메모만 따로 저장. */
- function fSaveMemo() {
- var isValidCheck = true;
- var saveNoMsg = "";
- var saveOkMsg = "";
-
- model.removeNodeset("/root/send/item2");
- model.removeNodeset("/root/send/item3"); // 저장 오류가 난 경우 다시 "저장" Btn 누르면 새로 메모 내역이 생성되어야 하므로
- model.removeNodeset("/root/send/item4");
- model.removeNodeset("/root/send/list1");
- model.removeNodeset("/root/send/list2");
- model.removeNodeset("/root/send/list3");
- model.removeNodeset("/root/send/item5");
- model.removeNodeset("/root/send/list7");
-
- var initmemo = instance1.selectNodesXml("/root/hidden/item1/initmemo/memo");
- var currentmemo = instance1.selectNodesXml("/root/main/item1/memo");
- if (initmemo != currentmemo) {
- // 심사자메모, EDI청구메모를 특정내역 형식에 맞춰 설정한다.
- var judgmemo = model.getValue("/root/main/item1/memo/judgmemo");
- var edimemo = model.getValue("/root/main/item1/memo/edimemo");
- if (judgmemo != model.getValue("/root/hidden/item1/initmemo/memo/judgmemo")) {
- fSetJudgEDIMemo(judgmemo, "U");
- }
- if (edimemo != model.getValue("/root/hidden/item1/initmemo/memo/edimemo")) {
- fSetJudgEDIMemo(edimemo, "E");
- }
- saveOkMsg += "[심사메모] ";
- } else {
- saveNoMsg += "[심사메모] ";
- }
-
- if (isValidCheck) {
- if (saveOkMsg) {
-
- if (submit("TXPIJ00701", false)) {
- }
- }
- else if (saveNoMsg) {
- messageBox(saveNoMsg +"변경된 데이터가","I004"); ///변경된 데이터가 없습니다.
- }
- } else { // isValidCheck == false
- messageBox("변경된 정보를 저장할 심사메모가", "I004");
- }
- }
- /* 저장버튼 클릭 */
- function fSaveOutDayJudg(judgendyn) {
- model.removeNodeset("/root/send/item2");
- model.removeNodeset("/root/send/item3"); // 저장 오류가 난 경우 다시 "저장" Btn 누르면 새로 메모 내역이 생성되어야 하므로
- model.removeNodeset("/root/send/item4");
- model.removeNodeset("/root/send/list1");
- model.removeNodeset("/root/send/list2");
- model.removeNodeset("/root/send/list3");
- model.removeNodeset("/root/send/item5");
- model.removeNodeset("/root/send/list7");
-
- var selectedRow = model.getValue("/root/hidden/smpij00600/rslt/selectedRow"); // 대상자 화면에서 선택했던 줄
- var isValidCheck = true;
-
- var pid = model.getValue("/root/main/item1/otpt/pid");
- var orddd = model.getValue("/root/main/item1/otpt/orddd");
- var cretno = model.getValue("/root/main/item1/otpt/cretno");
- var acptseqno = model.getValue("/root/main/item1/otpt/acptseqno");
- var insukindcd = model.getValue("/root/main/item1/otpt/insukindcd");
- var opyn = model.getValue("/root/main/item1/otpt/opyn");
- if (pid && orddd && cretno && acptseqno && insukindcd) { // 조회된 심사대상자가 있으면
-
- // 처방 Grid 필터용 조회조건을 초기화한다.
- fInitOrderFilter();
-
- var saveNoMsg = "";
- var saveOkMsg = "";
- if (fCheckSaveOutDayJudgCLBS()) { // CLBS 테이블에 저장할 정보가 올바른지 확인한다.
- // 인적사항
- var recalcyn = model.getValue("/root/main/item1/otpt/recalcyn");
- var suppkindcd = model.getValue("/root/main/item1/otpt/suppkindcd");
- var patsupprate = model.getValue("/root/hidden/item1/otpt/patsupprate");
- var payownbrate = model.getValue("/root/main/item1/otpt/payownbrate");
- // 보조요율만 변경된 경우 재계산만 하고, 인적사항 수정은 안하기 위해 초기값과 같게 만든다.
- model.setValue("/root/main/item1/otpt/recalcyn", model.getValue("/root/hidden/item1/initotpt/otpt/recalcyn"));
- model.setValue("/root/main/item1/otpt/suppkindcd", model.getValue("/root/hidden/item1/initotpt/otpt/suppkindcd"));
- model.setValue("/root/hidden/item1/otpt/patsupprate", model.getValue("/root/hidden/item1/initotpt/otpt/patsupprate"));
- model.setValue("/root/main/item1/otpt/payownbrate", model.getValue("/root/hidden/item1/initotpt/otpt/payownbrate"));
- var initclbs = instance1.selectNodesXml("/root/hidden/item1/initotpt/otpt");
- var currentclbs = instance1.selectNodesXml("/root/main/item1/otpt");
- if (initclbs == currentclbs) {
- saveNoMsg = "[인적사항] ";
- // 인적사항 변경이 없는 경우에도 사용되는 진료과 / 진료의사 정보를 send data에 설정한다.
- model.makeValue("/root/send/item1/otpt/orddeptcd", model.getValue("/root/main/item1/otpt/orddeptcd"));
- model.makeValue("/root/send/item1/otpt/recalcyn", recalcyn);
-
- if (recalcyn == "Y") { // 보조유형, 요율 외에는 변경사항이 없는 경우임
- saveOkMsg = "[보조유형 및 요율] ";
- model.makeValue("/root/send/item1/otpt/suppkindcd", suppkindcd);
- }
- } else {
- saveOkMsg = "[인적사항] ";
- model.copyNode("/root/send/item1/otpt", "/root/main/item1/otpt");
- model.makeValue("/root/send/item1/otpt/payownbrate", payownbrate);
- model.makeValue("/root/send/item1/otpt/suppkindcd", suppkindcd);
- model.makeValue("/root/send/item1/otpt/recalcyn", recalcyn);
- }
- // 심사상태를 '저장' 또는 '심사완료' 상태로 저장한다.
- model.makeValue("/root/send/item1/otpt/dschjudgprcsstat", judgendyn); // 외래사전심사상태 (P0379) - A: 미심사, B: 심사중, D: 보류, E: 통합심사완료
- model.setValue("/root/main/item1/otpt/recalcyn", recalcyn);
- model.setValue("/root/main/item1/otpt/suppkindcd", suppkindcd);
- model.setValue("/root/hidden/item1/otpt/patsupprate", patsupprate);
- model.setValue("/root/main/item1/otpt/payownbrate", payownbrate);
- } else {
- isValidCheck = false;
- }
- // 심사메모
- var initmemo = instance1.selectNodesXml("/root/hidden/item1/initmemo/memo");
- var currentmemo = instance1.selectNodesXml("/root/main/item1/memo");
- if (initmemo != currentmemo) {
- // 심사자메모, EDI청구메모를 특정내역 형식에 맞춰 설정한다.
- var judgmemo = model.getValue("/root/main/item1/memo/judgmemo");
- var edimemo = model.getValue("/root/main/item1/memo/edimemo");
- if (judgmemo != model.getValue("/root/hidden/item1/initmemo/memo/judgmemo")) {
- fSetJudgEDIMemo(judgmemo, "U");
- }
- if (edimemo != model.getValue("/root/hidden/item1/initmemo/memo/edimemo")) {
- fSetJudgEDIMemo(edimemo, "E");
- }
- saveOkMsg += "[심사메모] ";
- } else {
- saveNoMsg += "[심사메모] ";
- }
-
- if (fCheckSaveOutDayJudgInfoCLDI()) { // CLDI 테이블에 저장할 정보가 올바른지 확인한다.
- // 상병은 기존의 데이터를 모두 삭제한 뒤, 새로 모두 저장하는 형태로 돌아감
- /*
- for (var j = grd_cldihist.fixedRows; j < grd_cldihist.rows; j++) {
- var status = grd_cldihist.rowstatus(j);
- if (status != 4) {
- grd_cldihist.rowstatus(j) = 1;
- }
- }
- */
-
- var updtdata = getGridUpdateData(grd_cldihist); // (tfHelper.js) 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환
-
- if (updtdata) {
- model.makeValue("/root/send/list1/diag", updtdata);
- }
- if (updtdata != "" && grd_cldihist.rows > 1) { // 타이틀 부분으로 인해 data가 없어도 rows = 1 임.
- // <table id="list1/diag" count_ref="cldi" min_count="1"> 로 인해 빈줄이 제거된 경우에도 delete 처리를 하므로
- // Grid 상에 데이터가 있는지를 확인한다.
- saveOkMsg += "[상병] ";
- } else {
- saveNoMsg += "[상병] ";
- }
- } else {
- isValidCheck = false;
- }
-
- grd_clsphist.refresh();
- fSetClcjRowStatus();
-
- // 1.특정내역에 저장할 정보가 올바른지 확인한다.
- var rtn = fCheckSaveOutDayJudgInfoCLSP();
- if (rtn == "3") {
- var updtdata = getGridUpdateData(grd_clsphist);
- if (updtdata) {
- model.makeValue("/root/send/list3/clcj", updtdata);
- }
- if (updtdata != "" && grd_clsphist.rows > 1) {
- saveOkMsg += "[특정내역] ";
- } else {
- saveNoMsg += "[특정내역] ";
- }
- } else if (rtn == "1") {
- isValidCheck = false;
- } else if (rtn == "2") {
- fSpclGridInsertRow();
- return;
- }
-
- if (fCheckSaveOutDayJudgInfoCLOD()) { // CLOD 테이블에 저장할 정보가 올바른지 확인한다.
- // 처방
- var updtdata = getGridUpdateData(grd_clodhist); // (tfHelper.js) 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환
- if (updtdata) {
- model.makeValue("/root/send/list2/oscl", updtdata);
- }
- if (updtdata != "" && (grd_clodhist.rows > 1 || grd_delclod.rows > 1)) {
- saveOkMsg += "[처방] ";
- } else {
- saveNoMsg += "[처방] ";
- }
- } else {
- isValidCheck = false;
- }
-
- if (fCheckSaveOutDayJudgInfoCLOP()) { // CLOP 테이블에 저장할 정보가 올바른지 확인한다.
- // 원외처방
- var updtdata = getGridUpdateData(grd_oprcphist); // (tfHelper.js) 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환
- if (updtdata) {
- model.makeValue("/root/send/list7/clop", updtdata);
- }
- if (updtdata != "" && grd_oprcphist.rows > 1) {
- saveOkMsg += "[원외처방] ";
- } else {
- saveNoMsg += "[원외처방] ";
- }
- } else {
- isValidCheck = false;
- }
-
- if (isValidCheck) {
- if (saveOkMsg) {
- if (model.getValue("/root/send/list3/clcj")) {
- // 줄단위 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- fSetSpclSpecJX999();
- }
-
- if (model.getValue("/root/send/list7/clop")) {
- // 원외처방 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- fSetOprcSpclSpecJX999();
- }
- if (submit("TXPIJ00701", false)) {
- model.resetInstanceNode("/root/hidden/item1/initotpt/otpt");
- grd_cldihist.clearStatus();
- grd_clodhist.clearStatus();
- grd_delclod.clearStatus();
- grd_oprcphist.clearStatus();
- grd_clsphist.clearStatus();
- grd_clsphist.refresh();
-
- if (judgendyn == "B") { // 외래사전심사상태 (P0379) - A: 미심사, B: 심사중, D: 보류, E: 통합심사완료
- model.resetInstanceNode("/root/hidden/smpij00600/rslt");
- model.setValue("/root/hidden/smpij00600/rslt/pid", pid);
- model.setValue("/root/hidden/smpij00600/rslt/orddd", orddd);
- model.setValue("/root/hidden/smpij00600/rslt/cretno", cretno);
- model.setValue("/root/hidden/smpij00600/rslt/acptseqno", acptseqno);
- model.setValue("/root/hidden/smpij00600/rslt/insukindcd", insukindcd);
- model.setValue("/root/hidden/smpij00600/rslt/opyn", opyn);
- // 대상자조회 화면에서 선택했던 환자의 Row를 기억해 두고, pre/next대상조회 버튼에서 이전, 이후 대상자를 조회한다.
- model.setValue("/root/hidden/smpij00600/rslt/selectedRow", selectedRow);
- // 저장은 저장일 뿐 심사자 이동이 없으므로, 심사상태 변경 관련 동작은 타지 않도록 구분한다.
- model.setValue("/root/hidden/judgstatyn", "N");
- fGetOutDayJudgMngt();
- model.resetInstanceNode("/root/hidden/smpij00600/rslt/oldPid"); // 내역이 변경되어 대상자 화면을 열때 다시 조회하도록 설정함
- }
- // E: 심사완료의 경우, 저장 후 결과를 다시 조회하기 위해
- return "true";
- }
- }
- else if (saveNoMsg) {
- if (judgendyn != "B") { // 외래사전심사상태 (P0379) - A: 미심사, B: 심사중, D: 보류, E: 통합심사완료
- return "false";
- } else {
- fDiagGridInsertRow();
- messageBox(saveNoMsg +"변경된 데이터가","I004"); ///변경된 데이터가 없습니다.
- }
- }
- } else { // isValidCheck == false
- // 상병
- for (var j = grd_cldihist.fixedRows; j < grd_cldihist.rows; j++) {
- if (grd_cldihist.rowstatus(j) == 4) {
- var diagseq = model.getValue("/root/main/list1/diag["+ j +"]/diagseq");
- model.setValue("/root/main/list1/diag["+ j +"]/diagseq", "D" + diagseq);
- }
- }
- fDiagGridInsertRow();
- }
- } else {
- messageBox("변경된 정보를 저장할 일일심사 대상자가", "I004"); ///변경된 정보를 저장할 일일심사 대상자가 없습니다.
- }
- }
- // CLBS 테이블에 저장할 정보가 올바른지 확인한다.
- function fCheckSaveOutDayJudgCLBS() {
- if (model.getValue("/root/main/item1/otpt/pid") == "") {
- messageBox("등록번호가", "I004"); ///등록번호가 없습니다
- return false;
- }
- if (model.getValue("/root/main/item1/otpt/orddd") == "") {
- messageBox("접수일자가", "I004"); ///접수일자가 없습니다
- return false;
- }
- if (model.getValue("/root/main/item1/otpt/suppkindcd") == "") {
- messageBox("보조유형이", "I004"); //보조유형이 없습니다
- return false;
- }
- if (model.getValue("/root/main/item1/otpt/payownbrate") =="") {
- messageBox("올바른 보조유형을", "C002"); ///올바른 보조유형을 선택하십시오.
- return false;
- }
- if (model.getValue("/root/main/item1/otpt/insuno") == "") {
- //messageBox("조합기호가", "I004"); ///조합기호가 없습니다
- //return false;
- }
- if (model.getValue("/root/main/item1/otpt/insunm") == "") {
- //messageBox("조합명칭이", "I004"); ///조합명칭이 없습니다
- //return false;
- }
- if (model.getValue("/root/main/item1/otpt/certno") == "") {
- //messageBox("증번호가", "I004"); ///증번호가 없습니다
- //return false;
- }
- return true;
- }
- // CLDI 테이블에 저장할 정보가 올바른지 확인한다.
- function fCheckSaveOutDayJudgInfoCLDI() {
- // 먼저 빈 줄을 삭제한다.
- var delcldiCheck = false;
- for (var i = 1; i < grd_cldihist.rows; i++) {
- var rowstatus = grd_cldihist.rowstatus(i);
- var diagcd = model.getValue("/root/main/list1/diag["+ i +"]/diagcd");
- // 상병코드와 진료개시일이 입력되지 않은 경우
- if (rowstatus == 1 || rowstatus == 3) { // 1 : insert, 3 : insert & new
- if (diagcd == "") {
- // 줄을 삭제한다.
- grd_cldihist.deleteRow(i, true);
- i--;
- delcldiCheck = true;
- }
- }
- }
- // 빈줄을 삭제한 경우 상병순서를 다시 부여한다.
- if (delcldiCheck) {
- var seq = 1;
- for (var i = 1; i < grd_cldihist.rows; i++) {
- var rowstatus = grd_cldihist.rowstatus(i);
- if (rowstatus != 4) {
- model.setValue("/root/main/list1/diag["+ i +"]/diagseq", seq++);
- }
- }
- }
- // 저장할 정보를 체크한다.
- var cldiList = instance1.selectSingleNode("/root/main/list1"); //root/main/list1
- if (cldiList == null) {
- return false;
- }
- var cldiNode = cldiList.childNodes; //root/main/list1/diag
- for (var i = 1; i <= cldiNode.length; i++) {
- var diagcd = model.getValue("/root/main/list1/diag["+ i +"]/diagcd");
- var ordfromdd = model.getValue("/root/main/list1/diag["+ i +"]/ordfromdd");
- if (diagcd == "" || ordfromdd == "") {
- messageBox("상병코드 또는 진료개시일이 입력되지", "E007"); ///상병코드 또는 진료개시일이 입력되지 않았습니다.
- return false;
- }
- var diagseq = model.getValue("/root/main/list1/diag["+ i +"]/diagseq");
- for (var j = 1; j < i; j++) {
- var prediagseq = model.getValue("/root/main/list1/diag["+ j +"]/diagseq");
- var prediagcd = model.getValue("/root/main/list1/diag["+ j +"]/diagcd");
- if (grd_cldihist.rowstatus(i) != 4) {
- // 중복된 상병 NO가 있는 경우
- if (diagseq == prediagseq) {
- messageBox("상병순서 '"+ diagseq +"'가", "E006"); ///상병순서 '***'가 중복되었습니다.
- return false;
- }
- // 중복된 상병코드가 있는 경우
- if (diagcd == prediagcd) {
- messageBox("상병코드 '"+ diagcd +"'가", "E006"); ///상병코드 '***'가 중복되었습니다.
- return false;
- }
- }
- }
- if (model.getValue("/root/main/list1/diag["+ i +"]/toot") == "") { // 치식이 입력되지 않은 경우
- model.setValue("/root/main/list1/diag["+ i +"]/toot", "-");
- }
- }
- return true;
- }
- /* 특정내역 데이터 검사 */
- function fCheckSaveOutDayJudgInfoCLSP() {
- // 먼저 빈 줄을 삭제한다.
- for (var i = 1; i < grd_clsphist.rows; i++) {
- var rowstatus = grd_clsphist.rowstatus(i);
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- var spclspec = model.getValue("/root/main/list3/clcj["+ i +"]/spclspec");
- // 특정코드과 특정내역이 입력되지 않은 경우
- if (rowstatus != 4 && spclcd == "" && spclspec == "") {
- // 줄을 삭제한다.
- grd_clsphist.deleteRow(i, true);
- i--;
- }
- }
-
- // 저장할 정보를 체크한다.
- var clspList = instance1.selectSingleNode("/root/main/list3"); //root/main/list3
- if (clspList == null) {
- return "1";
- }
- var clspNode = clspList.childNodes; //root/main/list3/clcj
- for (var i = 1; i <= clspNode.length; i++) {
- var spclcd = model.getValue("/root/main/list3/clcj["+ i +"]/spclcd");
- var spclspec = model.getValue("/root/main/list3/clcj["+ i +"]/spclspec");
- var rowstat = model.getValue("/root/main/list3/clcj["+ i +"]/rowstat");
- if (rowstat != "D") {
- if (spclcd == "" || spclspec == "") {
- messageBox("특정코드 또는 특정내역이 입력되지", "E007"); ///특정코드 또는 특정내역이 입력되지 않았습니다.
- return "2";
- }
- else if (spclcd == "MX999" || spclcd == "MT015" || spclcd == "MT016" || spclcd == "MT004") {
- for (var j = 1; j < i; j++) {
- var prespclcd = model.getValue("/root/main/list3/clcj["+ j +"]/spclcd");
- // 중복된 명세서 단위 특정코드가 있는 경우
- if (grd_clsphist.rowstatus(i) != 4 && spclcd == prespclcd) {
- messageBox("명세서 단위 특정코드 '"+ spclcd +"'가", "E006"); ///명세서 단위 특정코드 '***'가 중복되었습니다.
- return "2";
- }
- }
- }
- }
- }
- return "3";
- }
- // CLOD 테이블에 저장할 정보가 올바른지 확인한다.
- function fCheckSaveOutDayJudgInfoCLOD() {
- // 저장할 정보를 체크한다.
- // 처방 Grid
- var clodList = instance1.selectSingleNode("/root/main/list2"); //root/main/list2
- if (clodList == null) {
- return false;
- }
- var clodNode = clodList.childNodes; //root/main/list2/oscl
- for (var i = 1; i <= clodNode.length; i++) {
- var pid = model.getValue("/root/main/list2/oscl["+ i +"]/pid");
- var orddd = model.getValue("/root/main/list2/oscl["+ i +"]/orddd");
- var cretno = model.getValue("/root/main/list2/oscl["+ i +"]/cretno");
- var calcseqno = model.getValue("/root/main/list2/oscl["+ i +"]/calcseqno");
- var calcscorseqno = model.getValue("/root/main/list2/oscl["+ i +"]/calcscorseqno");
- //if (orddd == "" || cretno == "" || calcseqno == "" || calcscorseqno == "") {
- // messageBox("예외코드 저장을 위한 정보가 ", "I004"); ///수가코드 '***'의 처방일자 정보가 없습니다.
- // return false;
- //}
- if (model.getValue("/root/main/list2/oscl["+ i +"]/tootfact") == "") { // 치식이 입력되지 않은 경우
- model.setValue("/root/main/list2/oscl["+ i +"]/tootfact", "-");
- }
- }
- return true;
- }
- // CLOP 테이블에 저장할 정보가 올바른지 확인한다.
- function fCheckSaveOutDayJudgInfoCLOP() {
- // 저장할 정보를 체크한다.
- // 원외처방 Grid
- var clopList = instance1.selectSingleNode("/root/main/list7"); //root/main/list7
- if (clopList == null) {
- return false;
- }
- var clopNode = clopList.childNodes; //root/main/list7/clop
- for (var i = 1; i <= clopNode.length; i++) {
- var spclspec = model.getValue("/root/main/list7/clop["+ i +"]/spclspec");
- var stat = grd_oprcphist.rowStatus(i);
- if (spclspec == "" && stat != 0) {
- messageBox("원외처방 특정내역이", "I004"); // 원외처방 특정내역이 없습니다.
- return false;
- }
- }
- return true;
- }
- function fCheckSaveOutDayJudgInfoCLCJ() {
- // 저장할 정보를 체크한다.
- // 원외처방 특정내역 Grid
- var clcjList = instance1.selectSingleNode("/root/main/list8");
- if (clcjList == null) {
- return false;
- }
- var clcjNode = clcjList.childNodes;
- for (var i = 1; i <= clcjNode.length; i++) {
- var clopdd = model.getValue("/root/main/list7/clop["+ i +"]/clopdd");
- var clopno = model.getValue("/root/main/list7/clop["+ i +"]/clopno");
- if (isValidDateTime(clopdd)) { // (dateHelper.js) 유효한 날짜, 시간 인지 점검
- if (clopno == "") {
- messageBox("원외처방 교부일자 '"+ clopdd +"'의 교부번호가", "I004"); ///원외처방 교부일자 '***'의 교부번호가 없습니다.
- return false;
- }
- model.setValue("/root/main/list7/clop["+ i +"]/newmpsno", clopdd+clopno);
- } else {
- messageBox("올바른 형식의 원외처방 교부일자를", "C001"); ///올바른 형식의 원외처방 교부일자를 입력하십시오.
- return false;
- }
- }
- return true;
- }
- //2009.08.13 zzu - 계산처방시행조회(코드별 처방 hx.보기)
- function fOpenSMPIS00500Detail_O() {
- var irow = grd_clodhist.row;
-
- model.makeValue("/root/hidden/smpis00500/cond/patunitsrch", model.getValue("/root/main/item1/otpt/pid"));
- model.makeValue("/root/hidden/smpis00500/cond/code", model.getValue("/root/main/list2/oscl[" + irow + "]/snglcalcscorcd"));
- model.makeValue("/root/hidden/smpis00500/cond/datecond", "");
- model.makeValue("/root/hidden/smpis00500/cond/fromdd", model.getValue("/root/main/item1/otpt/orddd"));
- model.makeValue("/root/hidden/smpis00500/cond/todd", model.getValue("/root/main/item1/otpt/orddd"));
- model.makeValue("/root/hidden/smpis00500/cond/ioflag", "O");
- // model.makeValue("/root/hidden/smpis00500/cond/orddeptcd", model.getValue("/root/main/item1/iteminfo/orddeptcd"));
- // model.makeValue("/root/hidden/smpis00500/cond/orddrid", model.getValue("/root/main/item1/otpt/orddrid"));
- model.makeValue("/root/hidden/smpis00500/cond/orddeptcd", "");
- model.makeValue("/root/hidden/smpis00500/cond/orddrid", "");
- model.makeValue("/root/hidden/smpis00500/cond/codecond", "");
- model.makeValue("/root/hidden/smpis00500/cond/judgrid", "");
- model.makeValue("/root/hidden/smpis00500/cond/cancer", "");
- model.makeValue("/root/hidden/smpis00500/cond/large", "");
- model.makeValue("/root/hidden/smpis00500/cond/middle", "");
- model.makeValue("/root/hidden/smpis00500/cond/small", "");
- model.makeValue("/root/hidden/smpis00500/cond/edicd", "");
- modal("SMPIS00500", "1", "10", "10", "SMPIS00500", "/root/hidden/smpis00500/cond", "/root/send", "", ""); // SMPIS00500_????.xrw
- }
- //2009.08.13 zzu - 청구삭감조회(코드별 청구 hx.보기)
- function fOpenSMPIS00600Detail_O() {
- var irow = grd_clodhist.row;
-
- var today = getCurrentDate();
-
- var fromdd = today.toDate().getAddDate(-6,"M").getDateFormat("YYYYMM");
-
- model.makeValue("/root/hidden/smpis00600/cond/patunitsrch", model.getValue("/root/main/item1/otpt/pid"));
- model.makeValue("/root/hidden/smpis00600/cond/code", model.getValue("/root/main/list2/oscl[" + irow + "]/snglcalcscorcd"));
- model.makeValue("/root/hidden/smpis00600/cond/clamym", "");
- model.makeValue("/root/hidden/smpis00600/cond/clamymfrom", fromdd);
- model.makeValue("/root/hidden/smpis00600/cond/clamdgfrom", "");
- model.makeValue("/root/hidden/smpis00600/cond/clamymto", today);
- model.makeValue("/root/hidden/smpis00600/cond/clamdgto", "");
- model.makeValue("/root/hidden/smpis00600/cond/clamflag", "");
- model.makeValue("/root/hidden/smpis00600/cond/ioflag", "I");
- model.makeValue("/root/hidden/smpis00600/cond/insukind", model.getValue("/root/main/item1/otpt/insukindcd"));
- //model.makeValue("/root/hidden/smpis00600/cond/orddeptcd", model.getValue("/root/main/item1/otpt/orddeptcd"));
- //model.makeValue("/root/hidden/smpis00600/cond/orddrid", model.getValue("/root/main/item1/otpt/orddrid"));
- model.makeValue("/root/hidden/smpis00600/cond/orddeptcd", "");
- model.makeValue("/root/hidden/smpis00600/cond/orddrid", "");
- model.makeValue("/root/hidden/smpis00600/cond/cutonly", "false");
- modal("SMPIS00600", "1", "10", "10", "SMPIS00600", "/root/hidden/smpis00600/cond", "/root/send", "", ""); // SMPIS00600_????.xrw
- }
- // 처방사유조회
- // history.. 진료에 있는화면 기본조건으로 팝업사용..YS(윤샘)요청
- function fPrcpResnRef(){
- // 세션값 받기
- var sUserInfosS = getUserInfos();
- sUserInfosS = sUserInfosS + "|";
- var UserInfosS_Array = sUserInfosS.split("|");
- var userid = UserInfosS_Array[0]; //사용자번호
- var usernm = UserInfosS_Array[1]; //사용자이름
- var posinstcd = UserInfosS_Array[6]; //근무지기관코드
- var posinstnm = UserInfosS_Array[7]; //근무지기관명
- var posdeptcd = UserInfosS_Array[4]; //소속부서코드
- var posdeptnm = UserInfosS_Array[5]; //소속부서명
-
- model.makeValue("/root/tmp/prcpresnref/info/pid", model.getValue("/root/main/item1/otpt/pid")); // 등록번호
- model.makeValue("/root/tmp/prcpresnref/info/fromdd", model.getValue("/root/main/item1/otpt/orddd")); // 처방시작일 default orddd
- model.makeValue("/root/tmp/prcpresnref/info/todd", model.getValue("/root/main/item1/otpt/orddd")); // 처방종료일 default "99991231"
- // model.makeValue("/root/tmp/prcpresnref/info/orddeptcd", model.getValue("/root/main/item1/otpt/orddeptcd")); // 진료과 : 주진료과
- model.makeValue("/root/tmp/prcpresnref/info/orddeptcd", "-"); // 진료과 : 주진료과
- model.makeValue("/root/tmp/prcpresnref/info/orddrid","-"); // 주치의 : default "-"
- model.makeValue("/root/tmp/prcpresnref/info/mainjudgid", "-"); // 심사자 : 현재심사자
- model.makeValue("/root/tmp/prcpresnref/info/prcpcd", model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/grupcalcscorcd")); // 수가코드 : 그룹코드
- model.makeValue("/root/tmp/prcpresnref/info/insukind", model.getValue("/root/main/item1/otpt/insukindcd")); // 보험유형 : 환자보험유형
- model.makeValue("/root/tmp/prcpresnref/info/ioflag", "O"); // 내원유형 : default "-"
- model.makeValue("/root/tmp/prcpresnref/info/resncd", "FF"); // 사유구분 : default "FF" : 중복처방사유
- model.makeValue("/root/tmp/prcpresnref/info/popup", "judg"); // 팝업사용처구분 : judg(심사)
-
- modal("SPMMO19000_중복처방사유조회", "", "400", "300", "", "/root/tmp/prcpresnref/info", "/root/tmp/prcpresnref/info");
- model.removeNode("/root/tmp/prcpresnref");
-
- }
|