123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/*
- 화면 초기화 : lf_fInitialize
- 등록번호 + 엔터 시 대상자 조회 : lf_fGetOutDayJudgTrgtManPidSrch
- 종료 : lf_fClear
- 심사버튼 초기화 : lf_fSetJudgStatBtnAuth
- 화면권한 초기화 : lf_fCheckAuth
- 등록번호, 접수일자 변경시 화면 초기화 : lf_fInitSrchData
- 등록번호 + 엔터 시 화면 초기화 : lf_fInitSrchData2
- 진료달력 초기화 : lf_finitCalendar
- 심사대상자 정보 조회 : lf_fGetOutDayJudgMngt
- 상병위로이동 : lf_fDiagSeqUp
- 상병아래로이동 : lf_fDiagSeqDown
- 상병 소트 : lf_fSortDiagNo
- 상병 행추가 : lf_fDiagGridInsertRow
- ---------------------------
- UX Studio
- ---------------------------
- Cannot find the string 'n lf_fSaveOutDayJudg'.
- ---------------------------
- 확인
- ---------------------------
- 특정 소트 : lf_fSortSpclNo
- 특정 행추가 : lf_fSpclGridInsertRow
- 특정 행삭제 : lf_fSpclGridDeleteRow
- 사용자 환경저장 조회 : lf_fSetOrderInfoOfCol
- 처방 필터링 : lf_fGetSelectedOrderData
- 심사화면 환자 메세지 여부확인: lf_fGetPatMsgYn
- 환자기준 전송메세지작성 : lf_fPatJudgPatMsgTrsm
- 처방기준 전송메세지작성 : lf_fOrderJudgPatMsgTrsm
- 해당건 환자 전체 메세지 보기 : lf_fJudgPatMsgTrsmRef
- SPPIZ00700_심사Comment조회 : lf_fGetJudgEdiComment
- MT004 특정내역 한줄 추가 : lf_fSetSpclMT004
- 소명자료 특정내역 추가 : lf_fGetAttachedDataList
- 소명자료 특정내역 추가 : lf_fDisplayAttachedDataList
- 특정환자 심사자메모, 청구메모 내역 조회 : lf_fGetMemoHistList
- 특정내역 저장 : lf_fSaveClcjList
- 특정내역 및 메모 탭 색 변경 : lf_fSetTapListSetting
- 심사자메모 저장 : lf_fSaveMeMo
- 심사자메모 저장 : lf_fSaveMeMoList
- 상병이력 조회 및 전달 : lf_fGetDiagHistList
- 상병 및 처방 치식 입력 호출 : lf_fDiagOrderToothInput
- MT004, 소명자료 버튼 색상 : lf_fCheckSpclSpecData
- 특정내역 탭 특정코드 변경 : lf_fChangeSpclCd
- 확인코드 입력 : lf_fOrderGridInsertCnfmCd
- 처방 T필드 더블클릭 (특정내역 입력) : lf_fSetLnUnitSpclSpec
- 특정내역상세관리화면에서 '결과조회' 팝업 띄움 : lf_fOrderRsltSrch
- 보험인정기준조회 : lf_fOrderInsuRcogBase
- 수가조회 : lf_fOrderCalcScorSrch
- 약품편람 : lf_fOrderDrugHBook
- 산정코드조회 : lf_fSrchEstmCd
- 기존 조회 내역 중 수정 사항 저장 체크 : lf_fCheckChangeSave
- 일일심사대상자 조회 후 처리 : lf_fSetDayJudgTrgtManSrchData
- 심사대상자의 특이인적사항, 보조/요율 계산 : lf_fGetPersonalData
- 대상자에 대한진료기록을 달력에 표기 : lf_fSetOrdCalendar
- 이전ㆍ다음 월/년의 일자, 해당년월에 진료한 일자 : lf_fSetOrdSrchCalendar
- 상병 색 표시 : lf_fSetDiagGridColor
- 기타메모(JX999) 설정 : lf_fSetSpclSpecJX999
- 문자환자 색상표기 변경 : lf_fSetProbJudgColor
- "심사완료"~"보류" 처리 후 다음 심사대상자 조회 : lf_fGetNextDayJudgTrgtMan
- 처방 항목 구분 및 선별심사 처방 색깔 구분 : lf_fSetOrderData
- 선별심사 항목구분 색 표시 : lf_fSetItemBold
- 처방그리드 필터용 조회조건 초기화 : lf_fInitOrderFilter
- 심사자메모, EDI청구메모 설정 : lf_fSetJudgEDIMemo
- 원외처방 특정내역 JX999 설정 : lf_fSetOprcSpclSpecJX999
- 원외처방 T필드 더블클릭 : lf_fSetOprcpSpclSpec
- 명세서단위 특정내역 수정/입력 : lf_fSetDocRefLnSpclSpec
- 줄단위 특정내역 수정/입력 : lf_fSetCnfmCdSpclSpec
- 현자 상병, 치식을 리스트 형태로 만듬 : lf_fSetToothPop
- 치식결과 반영 : lf_fGetToothPop
- 특정내역 탭 특정코드 외 다른필드 변경 : lf_fChangeOtherCd
- 저장 버튼 클릭 : lf_fSaveOutDayJudg
- CLBS 테이블에 저장할 정보가 올바른지 확인 : lf_fCheckSaveOutDayJudgCLBS
- CLDI 테이블에 저장할 정보가 올바른지 확인 : lf_fCheckSaveOutDayJudgInfoCLDI
- CLOD 테이블에 저장할 정보가 올바른지 확인 : lf_fCheckSaveOutDayJudgInfoCLOD
- CLOP 테이블에 저장할 정보가 올바른지 확인 : lf_fCheckSaveOutDayJudgInfoCLOP
- 특정내역 검사 : lf_fCheckSaveOutDayJudgInfoCLSP
- 계산처방시행조회(코드별 처방 hx.보기) : lf_fOpenSMPIS00500Detail_O
- 청구삭감조회(코드별 청구 hx.보기) : lf_fOpenSMPIS00600Detail
- 처방사유조회 : lf_fPrcpResnRef
- 재행/급여/항목구분에 따라 처방내역 보여줌 : lf_fGetSelectedOrderData2
- 상병코드 조회 : lf_fSearchSPPIZ00400
- 상병순서 부여 : lf_fChangeDiagNo
- 상병코드에 해당하는 정보 조회 : lf_fSearchDiageCode
- 상병삭제 취소 : lf_fDiagGridDeleteCancel
- 상병 행 삭제 : lf_DiagGridDeleteRow
- 이전월/년, 다음월/년에 해당하는 일자를 표시 : lf_fSetCalendar
- 처방주석입력 : lf_fOrderGridInsertCmt
- */
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 심사대상자 정보 조회
- ****************************************************************************************/
- function lf_fGetOutDayJudgMngt()
- {
- var pid = ds_rslt_smpij00600.getColumn(0, "pid");
- var orddd = ds_rslt_smpij00600.getColumn(0, "orddd");
- var cretno = ds_rslt_smpij00600.getColumn(0, "cretno");
- var acptseqno = ds_rslt_smpij00600.getColumn(0, "acptseqno");
- var insukindcd = ds_rslt_smpij00600.getColumn(0, "insukindcd");
- var opyn = ds_rslt_smpij00600.getColumn(0, "opyn");
- var suppkindcd = ds_rslt_smpij00600.getColumn(0, "suppkindcd"); // 본인부담율 조회 구분에서 보조유형이 필요함
- var patage = ds_rslt_smpij00600.getColumn(0, "patage");
- var dschjudgprcsstat = ds_rslt_smpij00600.getColumn(0, "dschjudgprcsstat");
- var judgmdlid = ds_rslt_smpij00600.getColumn(0, "judgmdlid");
- var lastjudgdt = ds_rslt_smpij00600.getColumn(0, "lastjudgdt");
- var acptuniqno = ds_rslt_smpij00600.getColumn(0, "acptuniqno");
- var judgstatyn = ds_hidden.getColumn(0, "judgstatyn");
-
- // 0. 전환자료이므로 1회량 등 정보가 틀릴수 있습니다. 정확한 처방정보는 환자진료정보 조회를 참고하세요(오픈 임시 메세지 처리)
- if (orddd < "20081003") {
- sysf_messageBox("전환자료이므로 1회량 등 정보가 틀릴수 있습니다. 정확한 처방정보는 환자진료정보 조회를", "I007");
- }
-
- // 1. 기존에 조회된 대상자의 심사상태를 이전으로 되돌린다.
- if ( judgstatyn != "N" && utlf_isNull(judgstatyn) ) {
- var cretno2 = ds_item1_otpt.getColumn(0, "cretno");
- var dschjudgprcsstat2 = ds_item1_otpt.getColumn(0, "dschjudgprcsstat");
- if ( !utlf_isNull(cretno2) && dschjudgprcsstat2 == "B" ) {
- // 1-1. 이전 row 의 심사상태 되돌리기 시작
- var oldpid = ds_hidden_list8.getColumn(0, "pid");
- var oldorddd = ds_hidden_list8.getColumn(0, "orddd");
- var oldcretno = ds_hidden_list8.getColumn(0, "cretno");
- var oldacptseqno = ds_hidden_list8.getColumn(0, "acptseqno");
- var olddschjudgprcsstat = ds_hidden_list8.getColumn(0, "dschjudgprcsstat");
- var oldjudgmdlid = ds_hidden_list8.getColumn(0, "judgmdlid");
- var oldlastjudgdt = ds_hidden_list8.getColumn(0, "lastjudgdt");
- if ( olddschjudgprcsstat == "A" || utlf_isNull(olddschjudgprcsstat) || olddschjudgprcsstat == "D" || olddschjudgprcsstat == "E" ) {
- ds_send_list8.clearData();
- ds_send_list8.addRow();
- ds_send_list8.setColumn(0, "pid", oldpid);
- ds_send_list8.setColumn(0, "orddd", oldorddd);
- ds_send_list8.setColumn(0, "cretno", oldcretno);
- ds_send_list8.setColumn(0, "acptseqno", oldacptseqno);
- ds_send_list8.setColumn(0, "dschjudgprcsstat", olddschjudgprcsstat);
- ds_send_list8.setColumn(0, "judgmdlid", oldjudgmdlid);
- ds_send_list8.setColumn(0, "lastjudgdt", oldlastjudgdt);
- tranf_submit({
- id : "TXPIJ00604"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqBackDschJudgPrcsStat"
- , inds : "req=ds_send_list8"
- , async : false
- });
- }
- }
- }
- // 1-2. 심사상태 자동 해제를 위한 데이터를 담아두기 시작
- ds_hidden_list8.clearData();
- ds_hidden_list8.addRow();
- ds_hidden_list8.setColumn(0, "pid", pid);
- ds_hidden_list8.setColumn(0, "orddd", orddd);
- ds_hidden_list8.setColumn(0, "cretno", cretno);
- ds_hidden_list8.setColumn(0, "acptseqno", acptseqno);
- ds_hidden_list8.setColumn(0, "dschjudgprcsstat", dschjudgprcsstat);
- ds_hidden_list8.setColumn(0, "judgmdlid", judgmdlid);
- ds_hidden_list8.setColumn(0, "lastjudgdt", lastjudgdt);
- ds_hidden.setColumn(0, "judgstatyn", "Y");
- // 2. 대상자 조회를 한다.
- var selectedRow = ds_rslt_smpij00600.getColumn(0, "selectedRow");
- if ( !utlf_isNull(pid) && !utlf_isNull(orddd) && !utlf_isNull(cretno) && !utlf_isNull(acptseqno) && !utlf_isNull(insukindcd) ) {
- // 2-1. 화면을 초기화한다.
- var rslt = lf_fInitSrchData();
- if ( rslt == false ) {
- return false;
- }
- // ds_send_item1_otpt.clearData();
- // ds_send_item1_otpt.addRow();
- ds_send_item1_otpt.setColumn(0, "pid", pid);
- ds_send_item1_otpt.setColumn(0, "orddd", orddd);
- ds_send_item1_otpt.setColumn(0, "cretno", cretno);
- ds_send_item1_otpt.setColumn(0, "acptseqno", acptseqno);
- ds_send_item1_otpt.setColumn(0, "insukindcd", insukindcd);
- ds_send_item1_otpt.setColumn(0, "opyn", opyn); // 대상자화면에 표시된 수술여부를 전달한 경우, oscl 검색없이 수술여부를 구할 수 있다.
- ds_send_item1_otpt.setColumn(0, "suppkindcd", suppkindcd); // 본인부담율 조회 구분에서 보조유형이 필요함
- ds_send_item1_otpt.setColumn(0, "patage", patage);
- ds_send_item1_otpt.setColumn(0, "acptuniqno", acptuniqno);
-
- // 초기화
- ds_list1_diag.clearData();
- ds_list2_oscl.clearData();
- ds_list3_clcj.clearData();
- ds_list7_clop.clearData();
- ds_list8_judgmemo.clearData();
- ds_list9_edimemo.clearData();
-
- tranf_submit({
- id : "TRPIJ00701"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqGetOutDayJudgTrgtMan"
- , inds : "req=ds_send_item1_otpt"
- , outds : "ds_item1_otpt=otpt ds_item3_supp=supp ds_list1_diag=diag ds_list2_oscl=oscl ds_list3_clcj=clcj ds_list7_clop=clop ds_ordddlist=list ds_item7_kopg=kopg ds_item8_asrtjudg=asrtjudg ds_list8_judgmemo=judgmemo ds_list9_edimemo=edimemo"
- , async : false
- });
- if (utlf_isNull(ds_item1_otpt.getColumn(0, "pid") || utlf_isNull(ds_item1_otpt.getColumn(0, "cretno")))) {
- ds_item1_otpt.appendData(ds_rslt_smpij00600, true, true);
- }
- ds_item1_otpt.setColumn(0, "dschjudgprcsstat", dschjudgprcsstat);
- ds_list4_otpt.copyData(ds_item1_otpt);
- // 데이타셋 매핑
- ds_grid_grd_cldihist.copyData(ds_list1_diag); // 상병
- ds_grid_grd_cldihist.addColumn("status", "STRING");
-
- ds_grid_grd_clodhist.copyData(ds_list2_oscl); // 처방
- // TODO : 일시 '-' 일때 null 처리 추가
- ds_grid_grd_clsphist.copyData(ds_list3_clcj); // 특정내역
- ds_grid_grd_oprcphist.copyData(ds_list7_clop); // 원외처방
- ds_grid_grd_judgmemo.copyData(ds_list8_judgmemo); // 심사자메모
- if (ds_grid_grd_judgmemo.rowcount > 0) {
- ds_grid_grd_judgmemo.updatecontrol = false;
- for (var i=0; i<ds_grid_grd_judgmemo.rowcount; i++) { // 심사자 입력일시 수정
- ds_grid_grd_judgmemo.setColumn(i, "fstrgstdt", urlf_getStrDate(ds_grid_grd_judgmemo.getColumn(i, "fstrgstdt").substr(0,14)));
- }
- ds_grid_grd_judgmemo.updatecontrol = true;
- }
- ds_grid_grd_edimemo.copyData(ds_list9_edimemo); // edi메모
- // 체크박스 변환 설정
- lf_changecheck1(ds_grid_grd_cldihist, "diagkindcd", "C", 0);
- // 2-2. 조회 이후의 작업을 한다.
- lf_fSetDayJudgTrgtManSrchData();
- lf_fSetOrderData();
- // 상병
- if (ds_grid_grd_cldihist.rowcount > 0) {
- ds_grid_grd_cldihist.rowposition = 0;
- ds_grid_grd_cldihist.rowposition = -1;
- }
- // 처방
- if (ds_grid_grd_clodhist.rowcount > 0) {
- ds_grid_grd_clodhist.rowposition = 0;
- ds_grid_grd_clodhist.rowposition = -1;
- }
- // 특정내역
- if (ds_grid_grd_clsphist.rowcount > 0) {
- ds_grid_grd_clsphist.rowposition = 0;
- ds_grid_grd_clsphist.rowposition = -1;
- }
- // 원외처방
- if (ds_grid_grd_oprcphist.rowcount > 0) {
- ds_grid_grd_oprcphist.rowposition = 0;
- ds_grid_grd_oprcphist.rowposition = -1;
- }
- // edi메모
- if (ds_grid_grd_edimemo.rowcount > 0) {
- ds_grid_grd_edimemo.rowposition = 0;
- ds_grid_grd_edimemo.rowposition = -1;
- }
- ds_send.setColumn(0, "unitflag", "-");
- //lf_fGetPatMsgYn(pid, orddd, cretno);
- appf_delPatientInfos();
- fSetOutPatPamInfo();
-
- // open 화면 [통합결과조회,통합기록조회,통합처방조회] 리프레시
- var tot_rslt = frmf_findPopup("SMMMI00100");
- var tot_rec = frmf_findPopup("SMMRI00400");
- var tot_prcp = frmf_findPopup("SMMMO02500");
-
- // 통합결과조회 SMMMI00100
- if(tot_rslt != null){
- tot_rslt.ds_singdata.setColumn(0, "srchpid", ds_item1_otpt.getColumn(0, "pid"));
- tot_rslt.grp_sea.cp_patientInfo00.edt_pid.value = ds_item1_otpt.getColumn(0, "pid");
- tot_rslt.fReqGetPatComnInfo();
- tot_rslt.grp_sea_btn_sea_onclick();
- }
- // 통합기록조회 SMMRI00400
- if(tot_rec != null){
- tot_rec.cp_patientInfo00.edt_pid.value = ds_item1_otpt.getColumn(0, "pid");
- tot_rec.fPidKeyPress();
- }
- // 통합처방조회 SMMMO02500
- if(tot_prcp != null){
- tot_prcp.ds_cond.setColumn(0, "prcpall", "N");
- tot_prcp.grp_cond.edt_pid.value = ds_item1_otpt.getColumn(0, "pid");
- tot_prcp.tab_main.page_ord.cmb_bfprcpdd.value = utlf_getCurrentDate();
- tot_prcp.lf_reqGetPatComnInfo(ds_item1_otpt.getColumn(0, "pid"), utlf_getCurrentDate());
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 화면 초기화
- ****************************************************************************************/
- function lf_fInitialize()
- {
- // 1. 데이타셋 초기화
- ds_list1_diag.clearData();
- ds_list2_oscl.clearData();
- ds_list3_clcj.clearData();
- ds_list4_otpt.clearData();
- ds_list5_oscl.clearData();
- ds_list6_delclod.clearData();
- ds_list7_clop.clearData();
- ds_hidden_list4_otpt.clearData();
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoPay", "-");
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoItem", "-");
- ds_hidden_list2_osclsrch.setColumn(0, "actflag", "all");
- ds_hidden_list7_clop.setColumn(0, "selectedRdoPay", "-");
- ds_send.setColumn(0, "unitflag", "-");
- ds_send.setColumn(0, "clamfromdd", utlf_getCurrentDate());
- ds_send.setColumn(0, "clamtodd", utlf_getCurrentDate());
- // 히든 컨트롤
- cap_grptemp.visible = false; // 이전 명세서 목록
- grp_predoculist.visible = false;
- grp_delclodlist.visible = false;
- grp_delorderlist.visible = false;
- // 완료 ~ 삭제 Btn
- //btn_end.class = "btn7";
- btn_end.style.color = "#cc3333"; // 심사완료
- btn_end.style.font = "Dotum,9,bold";
- //btn_unjudg.class = "btn7";
- btn_unjudg.style.color = "#cc3333ff"; // 완료해제
- btn_unjudg.style.font = "Dotum,9,bold";
- //btn_clear.class = "btn7";
- btn_rete.style.color = "#cc3333"; // 보류 [F6]
- btn_rete.style.font = "Dotum,9,bold";
- //btn_save.class = "btn7";
- btn_save.style.font = "Dotum,9,bold"; // 저장 [F3]
- // 특정내역 탭
- grp_clsphist.swt_spclmemo.tabindex = 0; // case_spclspec
- // 특정내역 행추가 버튼
- grp_clsphist.swt_spclmemo.case_spclspec.btn_addspec.enable = false;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 등록번호, 접수일자 변경시 화면 초기화
- ****************************************************************************************/
- function lf_fInitSrchData()
- {
- // 기존 조회 내역 중 수정 사항이 있는 경우 저장할 것인지를 물어본다.
- var rslt = lf_fCheckChangeSave();
- if ( rslt == false ) { // 저장이 완료되지 않아 초기화할 수 없는 경우
- return false;
- }
- lf_fSetJudgStatBtnAuth(); // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- // 조회 조건의 초기값을 설정한다.
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoPay", "-"); // 급여구분
- grp_ordsrch.rdo_payflag.value = "-";
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoItem", "-"); // 항목구분
- grp_ordsrch.rdo_item1.value = "-";
- ds_hidden_list2_osclsrch.setColumn(0, "actflag", "all"); // 시행구분
- grp_ordsrch.rdo_actingflag.value = "all";
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoMatrAct", "-"); // 재료행위구분
- grp_ordsrch.rdo_actmatflag.value = "-";
- // 항목구분 Radio item의 굵은 표시를 취소한다.
- // 급여구분
- for (var i=0; i<ds_init_rdo_payflag.rowcount; i++ ) {
- ds_init_rdo_payflag.setColumn(i, "color", "");
- ds_init_rdo_payflag.setColumn(i, "font", "");
- }
- // 재료행위구분
- for (var i=0; i<ds_init_rdo_actmatflag.rowcount; i++ ) {
- ds_init_rdo_actmatflag.setColumn(i, "color", "");
- ds_init_rdo_actmatflag.setColumn(i, "font", "");
- }
- // 시행구분
- for (var i=0; i<ds_init_rdo_actingflag.rowcount; i++ ) {
- ds_init_rdo_actingflag.setColumn(i, "color", "");
- ds_init_rdo_actingflag.setColumn(i, "font", "");
- }
- // 항목구분
- for (var i=0; i<ds_init_rdo_item1.rowcount; i++ ) {
- ds_init_rdo_item1.setColumn(i, "color", "");
- ds_init_rdo_item1.setColumn(i, "font", "");
- }
- // 원외처방 - 항목구분 (기본값 : 급여)
- ds_hidden_list7_clop.setColumn(0, "selectedRdoPay", "-"); // 전체
- // 진료달력 배경색과 굵은 표시를 취소한다.(onload 위 전역변수 sFormats에 초기화 그리드 포맷 저장)
- // grd_calendar.formats = "<Formats>" + sFormats.replace('<Formats','').replace('</Formats','') + "</Formats>";
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 등록번호 입력후 엔터 처리시에만 동작 (lf_fInitSrchData + 이전심사되돌리기) 기능
- ****************************************************************************************/
- function lf_fInitSrchData2()
- {
- // 기존 조회 내역 중 수정 사항이 있는 경우 저장할 것인지를 물어본다.
- var rslt = lf_fCheckChangeSave();
- if ( rslt == false ) { // 저장이 완료되지 않아 초기화할 수 없는 경우
- return false;
- }
- // 1. 심사상태를 이전으로 되돌린다
- // 심사해제 시작(심사중일 경우 미심사상태로)
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- var dschjudgprcsstat = ds_item1_otpt.getColumn(0, "dschjudgprcsstat");
- if ( cretno != "" && dschjudgprcsstat == "A" ) {
- // 이전 row 의 심사상태 되돌리기 시작
- var oldpid = ds_hidden_list8.getColumn(0, "pid");
- var oldorddd = ds_hidden_list8.getColumn(0, "orddd");
- var oldcretno = ds_hidden_list8.getColumn(0, "cretno");
- var oldacptseqno = ds_hidden_list8.getColumn(0, "acptseqno");
- var olddschjudgprcsstat = ds_hidden_list8.getColumn(0, "dschjudgprcsstat");
- var oldjudgmdlid = ds_hidden_list8.getColumn(0, "judgmdlid");
- var oldlastjudgdt = ds_hidden_list8.getColumn(0, "lastjudgdt");
- if ( olddschjudgprcsstat == "A" || olddschjudgprcsstat == "" || olddschjudgprcsstat == "D" || olddschjudgprcsstat == "E" ) {
- ds_hidden_list8.clearData();
- ds_hidden_list8.addRow();
- ds_send_list8.setColumn(0, "pid", oldpid);
- ds_send_list8.setColumn(0, "orddd", oldorddd);
- ds_send_list8.setColumn(0, "cretno", oldcretno);
- ds_send_list8.setColumn(0, "acptseqno", oldacptseqno);
- ds_send_list8.setColumn(0, "dschjudgprcsstat", olddschjudgprcsstat);
- ds_send_list8.setColumn(0, "judgmdlid", oldjudgmdlid);
- ds_send_list8.setColumn(0, "lastjudgdt", oldlastjudgdt);
- tranf_submit({
- id: "TXPIJ00604"
- , service: "bfjudgapp.OutDayJudg"
- , method: "reqBackDschJudgPrcsStat"
- , inds : "req=ds_send_list8"
- , async: false
- });
- }
- // 이전 row 의 심사상태 되돌리기 끝
- }
- // 심사해제 끝
- var arrPopList = frmf_getChildPopList(this);
- for (var i in arrPopList ) {
- if ( arrPopList[i] != "SMPIJ00600" ) { // SMPIJ00600_외래일일심사대상자조회
- application.popupframes[arrPopList[i]].form.close();
- } else {
- }
- }
- lf_fSetJudgStatBtnAuth(); // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- // 조회 조건의 초기값을 설정한다.
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoPay", "-"); // 급여구분
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoItem", "-"); // 항목구분
- ds_hidden_list2_osclsrch.setColumn(0, "actflag", "all"); // 시행구분
- // 처방 항목구분 Radio item의 굵은 표시를 취소한다.
- for (var i=0; i<ds_init_rdo_item1.rowcount; i++ ) {
- ds_init_rdo_item1.setColumn(i, "font", "");
- }
- // 원외처방 - 항목구분 (기본값 : 급여)
- ds_hidden_list7_clop.setColumn(0, "selectedRdoPay", "-"); // 전체
- // 진료달력 배경색과 굵은 표시를 취소한다.
- // grd_calendar.formats = "<Formats>" + sFormats.replace('<Formats','').replace('</Formats','') + "</Formats>";
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 종료
- ****************************************************************************************/
- function lf_fClear()
- {
- // 1. 심사상태 변경
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- var dschjudgprcsstat = ds_item1_otpt.getColumn(0, "dschjudgprcsstat");
- // 이전 row 의 심사상태 되돌리기 시작
- var oldpid = ds_hidden_list8.getColumn(0, "pid");
- var oldorddd = ds_hidden_list8.getColumn(0, "orddd");
- var oldcretno = ds_hidden_list8.getColumn(0, "cretno");
- var oldacptseqno = ds_hidden_list8.getColumn(0, "acptseqno");
- var olddschjudgprcsstat = ds_hidden_list8.getColumn(0, "dschjudgprcsstat");
- var oldjudgmdlid = ds_hidden_list8.getColumn(0, "judgmdlid");
- var oldlastjudgdt = ds_hidden_list8.getColumn(0, "lastjudgdt");
- if ( !utlf_isNull(cretno) && dschjudgprcsstat == "A" ) {
- if ( olddschjudgprcsstat == "A" || utlf_isNull(olddschjudgprcsstat) || olddschjudgprcsstat == "D" || olddschjudgprcsstat == "E" ) {
- ds_send_list8.clearData();
- ds_send_list8.addRow();
- ds_send_list8.setColumn(0, "pid", oldpid);
- ds_send_list8.setColumn(0, "orddd", oldorddd);
- ds_send_list8.setColumn(0, "cretno", oldcretno);
- ds_send_list8.setColumn(0, "acptseqno", oldacptseqno);
- ds_send_list8.setColumn(0, "dschjudgprcsstat", olddschjudgprcsstat);
- ds_send_list8.setColumn(0, "judgmdlid", oldjudgmdlid);
- ds_send_list8.setColumn(0, "lastjudgdt", oldlastjudgdt);
- tranf_submit({
- id: "TXPIJ00604"
- , service: "bfjudgapp.OutDayJudg"
- , method: "reqBackDschJudgPrcsStat"
- , inds : "req=ds_send_list8"
- , async: false
- });
- }
- // 이전 row 의 심사상태 되돌리기 끝
- }
- // 2. 대상자 조회화면에서 심사상태 이전값으로 보여주도록 함
- var trgtManWindow = frmf_getChildWindow("SMPIJ00600");
- if ( !utlf_isNull(trgtManWindow) ) {
- var selectedRow = ds_rslt_smpij00600.getColumn(0, "selectedRow");
- if ( selectedRow ) {
- // 대상자조회 화면에 심사상태 변경
- var prevRow = parseInt(selectedRow, 10);
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "dschjudgprcsstat", olddschjudgprcsstat);
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "judgnm", trgtManWindow.ds_hidden_oldotpt.getColumn(0, "oldjudgnm"));
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "lastupdtdt", olddschjudgprcsstat);
- }
- // 대상자조회화면에서 갖고 있는 이전row 정보를 삭제해 준다. (같은행 더블클릭시 이미 조회된 심사대상자임이 아니어야 하므로)
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldrow", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldpid", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldorddd", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldcretno", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldacptseqno", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "olddschjudgprcsstat", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldjudgmdlid", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldjudgnm", "");
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldlastjudgdt", "");
- }
- // 3. 화면 초기화
- lf_fInitialize();
- ds_item1_otpt.clearData();
- ds_item1_otpt.addRow();
- ds_cond_smpij00700.clearData();
- ds_cond_smpij00700.addRow();
- ds_grid_grd_cldihist.clearData(); // 상병
- ds_grid_grd_clsphist.clearData(); // 특정내역
- ds_grid_grd_clodhist.clearData(); // 처방
- ds_grid_grd_oprcphist.clearData(); // 원외처방
- ds_hidden_item1_otpt.clearData();
- ds_hidden_item1_otpt.addRow();
- // 그리드 확대 축소에 따른
- grp_cldihist.position.height = 139;
- grd_cldihist.position.height = 114;
- grd_oprcphist.position.top = 660;
- cap_clop.position.top = 640;
- rdo_cloppayflag.position.top = 640;
- grd_oprcphist.position.height = 109
- cap_clop.position.height = 20;
- rdo_cloppayflag.position.height = 20;
- // 4. 버튼 초기화
- lf_fSetJudgStatBtnAuth();
- // 5. 진료달력 초기화
- // for (var i=1; i <= 42; i++ ) {
- // grd_calendar.setCellProperty("body", i, "background", "white");
- // grd_calendar.setCellProperty("body", i, "background2", "white");
- // }
- lf_finitCalendar();
- lf_fSetOrdSrchCalendar();
- // 상단에 환자정보 초기화하고 기입하기
- appf_delPatientInfos();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 진료달력 초기화
- ****************************************************************************************/
- function lf_finitCalendar()
- {
- var curDate = utlf_getCurrentDate();
- ds_hidden_calendar.setColumn(0, "year", utlf_getYear());
- ds_hidden_calendar.setColumn(0, "month", utlf_getMonth());
- //var isDate = (utlf_getYear() + utlf_getMonth()).toDate();
- var isDate = utlf_getCurrentDate();
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- if (!utlf_isNull(cretno)) { // 조회된 심사대상자가 있으면
- lf_fSetOrdSrchCalendar();
- }
- else {
- lf_fSetCalendar(isDate);
- }
- }
- // 이전월/년, 다음월/년에 해당하는 일자를 표시한다.
- function lf_fSetCalendar(dateObj)
- {
- //var firstDay = dateObj.getDateFormat("YYYY") + dateObj.getDateFormat("MM") +"01";
- var firstDay = utlf_getCurrentDate().substring(0, 6) + "01";
- dateObj = firstDay.toDate();
- ds_grid_grd_calendar.clearData();
- ds_grid_grd_calendar.addRow()
- var startDay = dateObj.getDay(); // 요일
- var days = dateObj.getMonthDay(); // 마지막 일
- var colIndex = startDay;
- for ( var i=1; i <= days; i++ ) {
- var sDay = "";
- if (String(i).length == 1) {
- sDay = "0"+i;
- } else {
- sDay = i;
- }
- ds_grid_grd_calendar.setColumn(0, colIndex, sDay);
- colIndex++;
- }
- for (var j=0; j<42; j++ ) {
- grd_calendar.setFormatColProperty(j, "size", 23);
- if (utlf_isNull(ds_grid_grd_calendar.getColumn(0, j)) ) {
- grd_calendar.setFormatColProperty(j, "size", 0);
- }
- }
- grd_calendar.position.width = 713;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 대상자에 대한 진료기록을 달력에 표기
- ****************************************************************************************/
- function lf_fSetOrdCalendar()
- {
- var isDate = ds_item1_otpt.getColumn(0, "orddd");
- if (utlf_isNull(isDate)) {
- if (ds_item1_otpt.rowcount < 1 ) {
- ds_item1_otpt.addRow();
- }
- ds_item1_otpt.setColumn(0, "orddd", ds_rslt_smpij00600.getColumn(0,"orddd"));
- isDate = ds_item1_otpt.getColumn(0, "orddd");
- }
- var YYYY = isDate.substr(0, 4);
- var MM = isDate.substr(4, 2);
- ds_hidden_calendar.setColumn(0, "year", YYYY);
- ds_hidden_calendar.setColumn(0, "month", MM);
- // 이전 명세서 팝업의 경우, 바뀐 날짜의 시작일자가 적용되지 않으므로 설정함
- ds_hidden_calendar_ordddlist.setColumn(0, "fromdd", YYYY + MM +"01");
- ds_hidden_calendar_ordddlist.setColumn(0, "todd", YYYY + MM + utlf_getLastDate(ds_hidden_calendar.getColumn(0, "month")) ); // 현재월의 마지막일
- lf_fSetOrdSrchCalendar();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 이전월/년, 다음월/년에 해당하는 일자와 해당년월에 진료한 일자를 표시
- ****************************************************************************************/
- function lf_fSetOrdSrchCalendar()
- {
- // 진료달력을 표시한다.
- var isMonth = ds_hidden_calendar.getColumn(0, "month");
- var isYear = ds_hidden_calendar.getColumn(0, "year");
- var isDate = isYear+isMonth+"01";
- var YYYY = isDate.substr(0, 4);
- var MM = isDate.substr(4, 2);
- var DD = isDate.substr(6, 2);
- // 이전명세서 팝업의 경우 fromdd 로 계산시 바뀐 날짜가 아님
- var dateObj = ds_hidden_calendar_ordddlist.getColumn(0, "fromdd");
- // 그리드 초기화
- ds_grid_grd_calendar.clearData();
- ds_grid_grd_calendar.addRow(); // 날짜
- ds_grid_grd_calendar.addRow(); // 날짜별 카운터
- var startDay = utlf_getDay(isDate); // 요일 3:수요일
- var days = utlf_lastDateNum(isDate); //dateObj.getMonthDay(); // 마지막 일
- var colIndex = startDay;
- for ( var i=1; i<=days; i++ ) { // 한달의 일수만큼
- var sDay = "";
- if (String(i).length == 1) {
- sDay = "0"+i;
- } else {
- sDay = i;
- }
- ds_grid_grd_calendar.setColumn(0, colIndex, sDay);
- ds_grid_grd_calendar.setColumn(1, colIndex, 0);
- colIndex++;
- }
- grd_calendar.position.width = parseInt(days)*23;
- lf_TRPIJ00708(); // 해당 달의 진료 달력 조회
- for (var i=0; i<ds_ordddlist.rowcount; i++ ) {
- var dd = parseInt(ds_ordddlist.getColumn(i, "orddd").substr(6, 2), 10);
- for (var k = 0; k < grd_calendar.getFormatColCount(); k++ ) {
- if ( dd == ds_grid_grd_calendar.getColumn(0, k) ) {
- ds_grid_grd_calendar.setColumn(1, k, parseInt(ds_grid_grd_calendar.getColumn(1, k)) + 1 ); // 일별 진료 카운트
- }
- }
- }
- for (var k = 0; k < grd_calendar.getFormatColCount(); k++ ) {
- if ( utlf_isNull(ds_grid_grd_calendar.getColumn(0, k)) ) {
- grd_calendar.setFormatColProperty(k, "size", 0);
- }
- else {
- var sColor = "";
- // 횟수별 색상 세팅
- var cCount = ds_grid_grd_calendar.getColumn(1, k);
- if (cCount >= 6) sColor = "deepskyblue";
- else if (cCount >= 5) sColor = "lightgreen";
- else if (cCount >= 4) sColor = "lightblue";
- else if (cCount >= 3) sColor = "aquamarine";
- else if (cCount >= 2) sColor = "gold";
- else if (cCount >= 1) sColor = "bisque";
- else sColor = "white";
- grd_calendar.setCellProperty('Body', k, "background", sColor);
- grd_calendar.setCellProperty('Body', k, "background2", sColor);
- grd_calendar.setFormatColProperty(k, "size", 23);
- var orddd = ds_item1_otpt.getColumn(0, "orddd");
- if (!utlf_isNull(orddd)) {
- orddd = ds_item1_otpt.getColumn(0, "orddd").substr(6, 2);
- }
- // 현재 날짜 강조
- if (orddd == ds_grid_grd_calendar.getColumn(0, k) ) {
- grd_calendar.setCellProperty('Body', k, "font", "Dotum,9,bold");
- } else {
- grd_calendar.setCellProperty('Body', k, "font", "Dotum,9");
- }
- }
- }
- ds_grid_grd_calendar.rowposition = -1;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 해당 달의 진료 달력 조회
- ****************************************************************************************/
- function lf_TRPIJ00708()
- {
- var year = ds_hidden_calendar.getColumn(0, "year");
- var month = ds_hidden_calendar.getColumn(0, "month");
- var isDate = year+month;
- ds_cond_ordddlist.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_ordddlist.setColumn(0, "fromdd", isDate+"01");
- ds_cond_ordddlist.setColumn(0, "todd", isDate+utlf_lastDateNum(isDate));
- ds_cond_ordddlist.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
- tranf_submit({
- id : "TRPIJ00708"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqGetOutDayJudgPreDocuList"
- , inds : "req=ds_cond_ordddlist"
- , outds : "ds_ordddlist=list"
- , async : false
- });
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병 행 추가
- ****************************************************************************************/
- function lf_fDiagGridInsertRow(flag)
- {
- if (utlf_isNull(flag)) {
- var iRow = ds_grid_grd_cldihist.addRow();
- } else {
- var iRow = ds_grid_grd_cldihist.insertRow(ds_grid_grd_cldihist.rowposition+1);
- }
- var diagseq = 0;
- if ( utlf_isNum(ds_grid_grd_cldihist.getMax("diagseq")) == true ) {
- diagseq = parseInt(ds_grid_grd_cldihist.getMax("diagseq"))+1;
- }
- //diagseq = parseInt(diagseq)+1;
- ds_grid_grd_cldihist.setColumn(iRow, "diagseq", diagseq);
- // 청구과, 진료개시일은 주상병을 기준으로 부여한다.
- var diagorddeptcd = ds_grid_grd_cldihist.getColumn(iRow, "diagorddeptcd");
- if ( utlf_isNull(diagorddeptcd) ) { // 주상병의 진료과가 입력되지 않은 경우 인적사항의 진료과를 입력한다.
- diagorddeptcd = ds_item1_otpt.getColumn(0, "orddeptcd");
- }
- ds_grid_grd_cldihist.setColumn(iRow, "diagorddeptcd", diagorddeptcd);
- ds_grid_grd_cldihist.setColumn(iRow, "ordfromdd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_grid_grd_cldihist.setColumn(iRow, "toot", "-");
- ds_grid_grd_cldihist.setColumn(iRow, "toot1", "-");
- // 추가구분, 의사입력여부
- ds_grid_grd_cldihist.setColumn(iRow, "addflag", "Y");
- ds_grid_grd_cldihist.setColumn(iRow, "drinptyn", "N");
- ds_grid_grd_cldihist.setColumn(iRow, "pid", ds_item1_otpt.getColumn(0, "pid"));
- ds_grid_grd_cldihist.setColumn(iRow, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_grid_grd_cldihist.setColumn(iRow, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- ds_grid_grd_cldihist.setColumn(iRow, "diagkindcd", "0");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병 색 표시
- ****************************************************************************************/
- function lf_fSetDiagGridColor()
- {
- for (var j = 0; j < grd_cldihist.getCellCount("body"); j++) {
- // 030:희귀난치 060:경증 021,022,025:중증
- grd_cldihist.setCellProperty("body", j, "background", 'EXPR(spclflag == "030" ? "#ccffcc" : spclflag == "060" ? "#ccffff" : (spclflag == "021" || spclflag == "022" || spclflag == "025" || spclflag == "041") ? "#ffc4eb" : (spclflag == "999") ? "#ff0000" : "#ffffff")');
- grd_cldihist.setCellProperty("body", j, "background2",'EXPR(spclflag == "030" ? "#ccffcc" : spclflag == "060" ? "#ccffff" : (spclflag == "021" || spclflag == "022" || spclflag == "025" || spclflag == "041") ? "#ffc4eb" : (spclflag == "999") ? "#ff0000" : "#ffffff")');
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병 행 삭제
- ****************************************************************************************/
- function lf_DiagGridDeleteRow()
- {
- // 1. 선택된 행의 rowstat = 'D' 로 만든다.
- var rtnval = false;
- var row;
- var rowstatus;
- var diagcd;
- var diagnm;
- var diagseq;
- var rowtext;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++ ) {
- if (ds_grid_grd_cldihist.getSelect(i)) {
- rowstatus = ds_grid_grd_cldihist.getRowType(i);
- diagcd = ds_list1_diag.getColumn(i, "diagcd");
- diagnm = ds_list1_diag.getColumn(i, "diagnm");
- diagseq = ds_list1_diag.getColumn(i, "diagseq");
- if (rowstatus != 8 && utlf_isNull(diagcd) && utlf_isNull(diagnm)) {
- }
- else {
- if (rowstatus == 2) {
- ds_grid_grd_cldihist.setRowType(i, "D");
- ds_grid_grd_cldihist.setColumn(i, "rowstat", "D");
- }
- else {
- ds_grid_grd_cldihist.setRowType(i, "D");
- ds_grid_grd_cldihist.setColumn(i, "rowstat", "D");
- ds_grid_grd_cldihist.setColumn(i, "diagseq", "D" + diagseq);
- }
- }
- rtnval = true;
- }
- }
- if (rtnval == true) {
- // 2. 기리드의 row 가 'I' 모드이고 rowstat가 "D"이면 그리드에서 삭제한다.
- for (i = 0; i < ds_grid_grd_cldihist.rowcount; i++ ) {
- rowstatus = ds_grid_grd_cldihist.getRowType(i);
- rowtext = ds_grid_grd_cldihist.getColumn(i, "rowstat");
- if (rowstatus == 2) {
- if (rowstat == "D") ds_grid_grd_cldihist.deleteRow(i);
- }
- }
- // 3. 정렬한다. (삭제된 row는 맨 밑으로
- lf_fSortDiagNo();
- // 4. seq를 다시 매긴다.
- var seq = 1;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- diagseq = ds_list1_diag.getColumn(i, "diagseq");
- if (diagseq > "D0") {
- }
- else {
- if (diagseq != seq) {
- ds_list1_diag.setColumn(i, "diagseq", seq);
- ds_grid_grd_cldihist.setRowType(i, "U");
- ds_grid_grd_cldihist.setColumn(i, "rowstat", "U");
- }
- seq++;
- }
- }
- // 5. 빈줄을 추가한다.
- lf_fDiagGridInsertRow();
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병 삭제 취소
- ****************************************************************************************/
- function lf_fDiagGridDeleteCancel()
- {
- var rowstatus;
- var no;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- if (ds_grid_grd_cldihist.getSelect(i)) {
- rowstatus = ds_grid_grd_cldihist.getRowType(i);
- if (rowstatus == 8) {
- ds_grid_grd_cldihist.setRowType(i, "U");
- no = ds_grid_grd_cldihist.getColumn(i, "diagseq");
- no = no.replace("D", "");
- ds_grid_grd_cldihist.setColumn(i, "diagseq", no);
- ds_grid_grd_cldihist.setRowType(i, "U");
- ds_grid_grd_cldihist.setColumn(i, "rowstat", "U");
- }
- }
- }
- // 정렬한다. (삭제된 row는 맨 밑으로)
- lf_fSortDiagNo();
- // seq를 다시 매긴다.
- var seq = 1;
- var diagseq;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- diagseq = ds_grid_grd_cldihist.getColumn(i, "diagseq");
- if (diagseq > "D0") {
- }
- else {
- ds_grid_grd_cldihist.setColumn(i, "diagseq", seq);
- seq++;
- }
- }
- // 빈줄을 추가한다.
- lf_fDiagGridInsertRow();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병코드 입력 후, 해당 상병코드에 해당되는 정보 조회
- ****************************************************************************************/
- function lf_fSearchDiageCode()
- {
- var row = ds_grid_grd_cldihist.rowposition;
- var diagcd = ds_grid_grd_cldihist.getColumn(row, "diagcd");
- if (diagcd) {
- ds_cond_sppiz00400.setColumn(0, "basedd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_sppiz00400.setColumn(0, "diagcd", diagcd);
- ds_cond_sppiz00400.setColumn(0, "diagnm", "");
- ds_cond_sppiz00400.setColumn(0, "selectedrdodiagkind", 1);
- // 1. 입력된 상병코드로 emr.mrtmicd10 테이블을 조회한다.
- tranf_submit({
- id : "TRPIJ00706"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqGetSickAndWounded"
- , inds : "req=ds_cond_sppiz00400"
- , outds : "ds_rslt_sppiz00400=rslt"
- , async : false
- });
- if (ds_rslt_sppiz00400.rowcount != 0 && ds_rslt_sppiz00400.rowcount == 1) {
- // 1-1. 조회된 결과가 1건이면
- lf_fSetDiagCdNm();
- }
- else {
- // 1-2. 조회된 결과가 없거나 여러 건이면 상병코드 조회를 위해 SPPIZ00400_상병코드조회.xfdl 를 호출한다.
- lf_fSearchSPPIZ00400();
- if (ds_grid_grd_cldihist.getColumn(row, "diagnm") == null && ds_grid_grd_cldihist.getColumn(row, "diagengnm") == null) {
- lf_fSetDiagRowStatus();
- return;
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병코드 조회 팝업 호출
- ****************************************************************************************/
- function lf_fSearchSPPIZ00400()
- {
- // SPPIZ00400_상병코드조회
- var cur_row = ds_grid_grd_cldihist.rowposition;
- ds_rslt_sppiz00400.clearData();
- ds_rslt_sppiz00400.addRow();
- var objArg = new Object();
- objArg.sDiagcd = ds_grid_grd_cldihist.getColumn(cur_row, "diagcd");
- objArg.sSelectedrdodiagkind = 1;
- objArg.sSingleFlag = "M";
- var objDs = frmf_modal("SPPIZ00400","SPPIZ00400", objArg,"","","","","","","","","","M");
- ds_rslt_sppiz00400.copyData(objDs);
- var diagcd = ds_rslt_sppiz00400.getColumn(0, "diagcd");
- if (utlf_isNull(diagcd)) { // 선택한 코드가 없는 경우
- sysf_messageBox("상병조회 화면에서 선택한 결과가", "I004"); //상병조회 화면에서 선택한 결과가 없습니다.
- return;
- }
- else {
- ds_grid_grd_cldihist.setColumn(cur_row, "diagcd", ds_rslt_sppiz00400.getColumn(0, "diagcd"));
- ds_grid_grd_cldihist.setColumn(cur_row, "diagnm", ds_rslt_sppiz00400.getColumn(0, "diaghngnm"));
- for (var i = 1; i < ds_rslt_sppiz00400.rowcount; i++) {
- lf_fDiagGridInsertRow("i");
- var insertrow = ds_grid_grd_cldihist.rowposition;
- ds_grid_grd_cldihist.setColumn(insertrow, "diagcd", ds_rslt_sppiz00400.getColumn(i, "diagcd"));
- ds_grid_grd_cldihist.setColumn(insertrow, "diagnm", ds_rslt_sppiz00400.getColumn(i, "diaghngnm"));
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병코드 조회에서 넘어온 상병을 입력
- ****************************************************************************************/
- function lf_fSetDiagCdNm()
- {
- var cur_row = ds_grid_grd_cldihist.rowposition;
- if (cur_row > -1) {
- // 1. 상병코드, 상병명(한글), 상병명(영문)을 입력한다.
- var diagcd = ds_rslt_sppiz00400.getColumn(0, "diagcd");
- var diaghngnm = ds_rslt_sppiz00400.getColumn(0, "diaghngnm");
- var diagengnm = ds_rslt_sppiz00400.getColumn(0, "diagengnm");
- ds_grid_grd_cldihist.setColumn(cur_row, "diagcd", diagcd);
- ds_grid_grd_cldihist.setColumn(cur_row, "diagnm", diaghngnm);
- ds_grid_grd_cldihist.setColumn(cur_row, "diagengnm", diagengnm);
- // 2. 해당 상병의 한글상병명과 영문상병명이 Message 용 output 컨트롤에 표시된다.
- ds_hidden_list3.setColumn(0, "msgspclformat", "상병코드 - "+ diagcd +" / "+ diaghngnm +" / "+ diagengnm);
- var addval1 = ds_grid_grd_cldihist.getColumn(cur_row, "rowstat");
- var addval2 = ds_grid_grd_cldihist.getRowType(cur_row);
- // 3. 그리드 row 상태를 준다.
- var rowstatus = ds_grid_grd_cldihist.getRowType(cur_row);
- if (rowstatus != 8) {
- if (rowstatus == 2) {
- ds_grid_grd_cldihist.setRowType(cur_row, "I");
- ds_grid_grd_cldihist.setColumn(cur_row, "rowstat", "I");
- }
- else {
- ds_grid_grd_cldihist.setRowType(cur_row, "U");
- ds_grid_grd_cldihist.setColumn(cur_row, "rowstat", "U");
- }
- }
- // 4. 빈 row에 대한 입력은 행 추가를 발생시킨다. (그외에는 행추가가 일어나지 않는다.)
- if (utlf_isNull(addval1) && addval2 == 2) lf_fDiagGridInsertRow();
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병순서 부여
- ****************************************************************************************/
- function lf_fChangeDiagNo()
- {
- var cur_row = ds_grid_grd_cldihist.rowposition;
- var newseq = ds_grid_grd_cldihist.getColumn(cur_row, "diagseq");
- var oldseq = ds_list1_diag.getColumn(0," oldseq");
- if (newseq) {
- // 1. seq번호를 매긴다.
- if (ds_grid_grd_cldihist.getRowType(cur_row) != 2) {
- ds_grid_grd_cldihist.setRowType(cur_row, "U");
- ds_grid_grd_cldihist.setColumn(cur_row, "U");
- }
- // 2. '09' 와 같은 형식으로 입력한 경우 -> 9로 처리
- newseq = parseInt(ds_grid_grd_cldihist.getColumn(cur_row, "diagseq"), 10);
- // 3. 삭제상태가 아닌 중복된 번호가 있는지 체크한다.
- var sameRow = 0;
- var diagseq = 0;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- diagseq = ds_grid_grd_cldihist.getColumn(i, "diagseq");
- if (cur_row != i && diagseq == newseq) {
- sameRow = i;
- i = ds_grid_grd_cldihist.rowcount;
- }
- }
- // 3-1. seq번호 중복
- if (sameRow > 0) {
- // 이전보다 앞번호를 입력한 경우
- if (newseq < oldseq) {
- var rowstatus;
- var curseq;
- for (var i = sameRow; i < cur_row; i++) {
- rowstatus = ds_grid_grd_cldihist.getRowType(i);
- if (rowstatus != 8) {
- curseq = parseInt(ds_grid_grd_cldihist.getColumn(i, "diagseq"), 10);
- if (rowstatus != 2) {
- if (ds_grid_grd_cldihist.getColumn(i, "diagseq") != curseq + 1) {
- ds_grid_grd_cldihist.setRowType(i, "U");
- ds_grid_grd_cldihist.setColumn(i, "rowstat", "U");
- }
- }
- ds_grid_grd_cldihist.setColumn(i, "diagseq", curseq + 1);
- }
- }
- }
- // 이전보다 뒷번호를 입력한 경우
- else {
- var rowstatus;
- var curseq;
- for (var i = cur_row; i < sameRow; i++) {
- if (rowstatus != 8) {
- curseq = parseInt(ds_grid_grd_cldihist.getColumn(i, "diagseq"), 10);
- if (rowstatus != 2) {
- if (ds_grid_grd_cldihist.getColumn(i, "diagseq") != curseq - 1) {
- ds_grid_grd_cldihist.setRowType(i, "U");
- ds_grid_grd_cldihist.setColumn(i, "rowstat", "U");
- }
- }
- ds_grid_grd_cldihist.setColumn(i, "diagseq", curseq - 1);
- }
- }
- }
- // 정렬한다. (삭제된 row는 맨 밑으로)
- lf_fSortDiagNo();
- // seq를 다시 매긴다.
- var seq = 1;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- diagseq = ds_grid_grd_cldihist.getColumn(i, "diagseq");
- if (diagseq <= "D0") {
- ds_grid_grd_cldihist.setColumn(i, "diagseq", seq);
- seq++;
- }
- }
- // 빈줄을 추가한다.
- lf_fDiagGridInsertRow();
- }
- // 3-2. seq번호 중복안됨
- else {
- // 정렬한다. (삭제된 row는 맨 밑으로)
- lf_fSortDiagNo();
- // seq를 다시 매긴다.
- var seq = 1;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- diagseq = ds_grid_grd_cldihist.getColumn(i, "diagseq");
- if (diagseq <= "D0") {
- ds_grid_grd_cldihist.setColumn(i, "diagseq", seq);
- seq++;
- }
- }
- // 빈줄을 추가한다.
- lf_fDiagGridInsertRow();
- }
- }
- else {
- ds_grid_grd_cldihist.setColumn(cur_row, "diagseq", oldseq);
- ds_grid_grd_cldihist.setRowType(cur_row, ds_list1_diag.getColumn(0," oldrowstat"));
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 행추가
- ****************************************************************************************/
- function lf_fSpclGridInsertRow()
- {
- // ds_grid_grd_clsphist.updatecontrol = false;
- var aRow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setColumn(aRow, "unitflag", "M");
- ds_grid_grd_clsphist.setColumn(aRow, "edicd", "-");
- ds_grid_grd_clsphist.setColumn(aRow, "currowstat", "1");
- // ds_grid_grd_clsphist.updatecontrol = true;
- ds_grid_grd_clsphist.rowposition = aRow;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 행삭제
- ****************************************************************************************/
- function lf_fSpclGridDeleteRow()
- {
- var rowstatus;
- var spclcd;
- var spclspec;
- var unitflag;
- var basecd;
- var osclEdicd;
- var cnt = 0;
- var spclEdicd;
- var clopEdicd;
- var rowtext;
- // 여러 row를 동시에 선택하고 삭제하는 기능을 부여한다.
- // for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- for (var i = ds_grid_grd_clsphist.rowcount - 1; i >= -1; i--) {
- if (ds_grid_grd_clsphist.getSelect(i)) {
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- spclspec = ds_grid_grd_clsphist.getColumn(i, "spclspec");
- ds_grid_grd_clodhist.updatecontrol = false;
- if (rowstatus != 8 && utlf_isNull(spclcd) && utlf_isNull(spclspec)) {
- unitflag = ds_grid_grd_clsphist.getColumn(i, "unitflag");
- if (unitflag == "J") {
- for (var j = 0; j < ds_grid_grd_clodhist.rowcount; j++) {
- osclEdicd = ds_grid_grd_clsphist.getColumn(i, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_clodhist.setColumn(j, "cnfmcd", "");
- }
- }
- } else {
- cnt = 0;
- for (var j = 0; j < ds_grid_grd_clsphist.rowcount; j++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(j, "edicd");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(j, "unitflag") == "J") {
- if (ds_grid_grd_clsphist.getColumn(j, "spclcd") != "JT001" && ds_grid_grd_clsphist.getRowType(j) != 8) {
- cnt++;
- }
- }
- }
- if (cnt < 1) {
- for (var k = 0; k < ds_grid_grd_clodhist.rowcount; k++) {
- osclEdicd = ds_grid_grd_clodhist.getColumn(k, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_clodhist.setColumn(k, "lnunitspclspecyn", "");
- ds_grid_grd_clodhist.setColumn(k, "jx999lnunitspclspecyn", "");
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- }
- }
- }
- }
- ds_grid_grd_clodhist.updatecontrol = true;
- } else if (unitflag == "O") {
- basecd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- cnt = 0;
- for (var j = 0; j < ds_grid_grd_clsphist.rowcount; j++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(j, "edicd");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(j, "unitflag") == "O") {
- if (ds_grid_grd_clsphist.getColumn(j, "spclcd") != "JT001" && ds_grid_grd_clsphist.getRowType(j) != 8) {
- cnt++;
- }
- }
- }
- if (cnt < 1) {
- for (var k = 0; k < ds_grid_grd_oprcphist.rowcount; k++) {
- clopEdicd = ds_grid_grd_oprcphist.getColumn(k, "edicd");
- if (basecd == clopEdicd) {
- ds_grid_grd_oprcphist.setColumn(k, "spclspecyn", "");
- ds_grid_grd_oprcphist.setColumn(k, "jx999spclspecyn", "");
- grd_oprcphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "edicd"), "background", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- grd_oprcphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "edicd"), "background2", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- }
- }
- }
- }
- // 줄을 삭제한다.
- ds_grid_grd_clsphist.updatecontrol = false;
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.deleteRow(i);
- } else {
- ds_grid_grd_clsphist.setRowType(i, "D");
- ds_grid_grd_clsphist.setColumn(i, "rowstat", "D");
- }
- ds_grid_grd_clsphist.updatecontrol = true;
- ds_hidden_list3.setColumn(0, "msgspclformat", "");
- }
- }
- for (var i = ds_grid_grd_clsphist.rowcount - 1; i >= -1; i--) {
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- rowtext = ds_grid_grd_clsphist.getColumn(i, "rowstat");
- if (rowstatus == 2) {
- if (rowtext == "D") {
- ds_grid_grd_clsphist.deleteRow(i);
- }
- }
- }
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- lf_fCheckSpclSpecData();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방주석입력 줄단위메모
- ****************************************************************************************/
- function lf_fOrderGridInsertCmt()
- {
- ds_cond_sppiz00500.clearData();
- ds_cond_sppiz00500.addRow();
- ds_rslt_sppiz00500.clearData();
- //ds_rslt_sppiz00500.addRow();
- // 1. 특정내역 입력을 위한 팝업을 띄운다.
- var cur_row = ds_grid_grd_clodhist.rowposition;
- var basecd = ds_grid_grd_clodhist.getColumn(cur_row, "basecd");
- var hngnm = ds_grid_grd_clodhist.getColumn(cur_row, "hngnm");
- var edicdflag = ds_grid_grd_clodhist.getColumn(cur_row, "edicdflag");
- var basecd = ds_grid_grd_clodhist.getColumn(cur_row, "basecd");
- if (!utlf_isNull(basecd)) {
- var lnunitspclspecyn = ds_grid_grd_clodhist.getColumn(cur_row, "lnunitspclspecyn");
- // 1-1. 신규 특정내역 입력
- if (utlf_isNull(lnunitspclspecyn)) {
- ds_cond_sppiz00500.setColumn(0, "flag", "I");
- ds_cond_sppiz00500.setColumn(0, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(0, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(0, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(0, "spclcd", "JX999");
- ds_cond_sppiz00500.setColumn(0, "detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- ds_cond_sppiz00500.setColumn(0, "spclspec", "");
- ds_cond_sppiz00500.setColumn(0, "spclformat", "X(700)");
- ds_cond_sppiz00500.setColumn(0, "rownum", "");
- ds_cond_sppiz00500.setColumn(0, "cdnm", "기타내역");
- ds_cond_sppiz00500.setColumn(0, "unitflag", "J");
- }
- // 1-2. 기존 특정내역 수정
- else {
- var rowcnt = 0;
- var setrow = 0;
- var spclEdicd;
- var calcscorcdnm;
- var spclcd;
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- calcscorcdnm = ds_grid_grd_clsphist.getColumn(i, "calcscorcdnm");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(i, "unitflag") == "J") {
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- // 확인코드가 아닌 경우
- if (spclcd != "JT001" && ds_grid_grd_clsphist.getRowType(i) != 8) {
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", i);
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", spclEdicd);
- ds_cond_sppiz00500.setColumn(rowcnt, "hngnm", calcscorcdnm);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", ds_grid_grd_clsphist.getColumn(i, "spclformat"));
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", ds_grid_grd_clsphist.getColumn(i, "cdnm"));
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", ds_grid_grd_clsphist.getColumn(i, "detldesc"));
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- setrow = i;
- rowcnt = ds_cond_sppiz00500.addRow();
- }
- }
- }
- // 특정내역 상세관리에 띄워줄 특정내역 담기
- if (ds_grid_grd_clsphist.getColumn(setrow, "spclcd") == "JX999") {
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(rowcnt, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", ds_grid_grd_clsphist.getColumn(i, "detldesc"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", ds_grid_grd_clsphist.getColumn(i, "spclformat"));
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", setrow);
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", ds_grid_grd_clsphist.getColumn(i, "cdnm"));
- ds_cond_sppiz00500.setColumn(rowcnt, "unitflag", "J");
- }
- else {
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "I");
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(rowcnt, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", "JX999");
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", "X(700)");
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", "기타내역");
- ds_cond_sppiz00500.setColumn(rowcnt, "unitflag", "J");
- }
- }
- var rtnDs = frmf_modal("SPPIZ00500","SPPIZ00500", {objDs:ds_cond_sppiz00500},"","","","","","","","","","M");// SPPIZ00500_특정내역상세관리
- if (rtnDs.rowcount > 0) {
- ds_rslt_sppiz00500.copyData(rtnDs);
- }
- // 2. 특정내역 결과를 화면에 보여준다.
- var rsltcnt = ds_rslt_sppiz00500.rowcount;
- if (rsltcnt > 0) {
- var clsprow = ds_rslt_sppiz00500.rowcount - 1;
- var addcnt = 0;
- var rowstatus;
- var flag;
- var rownum;
- var newspclcd;
- var newcdnm;
- var newspclspec;
- var newspclformat;
- var newdetldesc;
- var oldspclcd;
- var oldspclspec;
- ds_grid_grd_clsphist.enableevent = false;
- for (var i=clsprow; i > -1; i--) {
- flag = ds_rslt_sppiz00500.getColumn(i, "flag");
- rownum = ds_rslt_sppiz00500.getColumn(i, "rownum");
- newspclcd = ds_rslt_sppiz00500.getColumn(i, "spclcd");
- newcdnm = ds_rslt_sppiz00500.getColumn(i, "cdnm");
- newspclspec = ds_rslt_sppiz00500.getColumn(i, "spclspec");
- newspclformat = ds_rslt_sppiz00500.getColumn(i, "spclformat");
- newdetldesc = ds_rslt_sppiz00500.getColumn(i, "detldesc");
- // 2-1. 특정내역 추가
- if (flag == "I") {
- var cRow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setRowType(cRow, "I");
- ds_grid_grd_clsphist.setColumn(cRow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(cRow, "unitflag", "J");
- ds_grid_grd_clsphist.setColumn(cRow, "edicd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(cRow, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(cRow, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(cRow, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(cRow, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(cRow, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(cRow, "calcscorcd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(cRow, "calcscorcdnm", ds_grid_grd_clodhist.getColumn(cur_row, "hngnm"));
- ds_grid_grd_clsphist.setColumn(cRow, "oldspclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(cRow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(cRow, "prcpdd", ds_grid_grd_clodhist.getColumn(cur_row, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(cRow, "prcpno", ds_grid_grd_clodhist.getColumn(cur_row, "prcpno"));
- ds_grid_grd_clsphist.setColumn(cRow, "prcphistno", ds_grid_grd_clodhist.getColumn(cur_row, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(cRow, "execprcpseqno", ds_grid_grd_clodhist.getColumn(cur_row, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(cRow, "currowstat", "");
- ds_grid_grd_clsphist.setColumn(cRow, "edicdflag", ds_grid_grd_clodhist.getColumn(cur_row, "edicdflag"));
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- addcnt++;
- }
- // 2-2. 특정내역 수정
- else if (flag == "U") {
- if (utlf_isNull(rownum)) {
- rownum = 0;
- }
- ds_grid_grd_clsphist.setRowType(rownum, "U");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setColumn(rownum, "edicd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcdnm", ds_rslt_sppiz00500.getColumn(0, "hngnm"));
- ds_grid_grd_clsphist.setColumn(rownum, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(rownum, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(rownum, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(rownum, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(rownum, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(rownum, "oldspclcd", newspclcd);
- rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.setRowType(rownum, "I");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "I");
- }
- else{
- ds_grid_grd_clsphist.setRowType(rownum, "U");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- }
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- oldspclcd = ds_rslt_sppiz00500.getColumn(i, "oldspclcd");
- oldspclspec = ds_rslt_sppiz00500.getColumn(i, "oldspclspec");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- }
- // 2-3. 특정내역 삭제
- else if (flag == "D" && !utlf_isNull(rownum)) {
- rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.deleteRow(rownum);
- }
- else {
- ds_grid_grd_clsphist.setRowType(rownum, "D");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "D");
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- }
- }
- var cnt = 0;
- var spclEdicd;
- for (var i = 0 ; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(i, "unitflag") == "J") {
- if (ds_grid_grd_clsphist.getRowType(i) != 8) {
- cnt++;
- }
- }
- }
- ds_grid_grd_clodhist.enableevent = false;
- // ds_grid_grd_clodhist.updatecontrol = false;
- if (cnt > 0) {
- if (utlf_isNull(lnunitspclspecyn)) { // 기존에는 입력된 내역이 없다가 추가된 경우임
- var osclEdicd;
- var spclEdicd;
- for (var j = 0; j < ds_grid_grd_clodhist.rowcount; j++) {
- osclEdicd = ds_grid_grd_clodhist.getColumn(j, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_clodhist.setColumn(j, "lnunitspclspecyn", "*");
- for (var k = 0 ; k < ds_grid_grd_clsphist.rowcount; k++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(k, "edicd");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(k, "spclcd") == "JX999") {
- ds_grid_grd_clodhist.setColumn(j, "jx999lnunitspclspecyn", "*");
- }
- }
- // ds_grid_grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + i +' ? "#ffff00" : "")');
- // ds_grid_grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + i +' ? "#ffff00" : "")');
- }
- }
- }
- }
- else { // 특정내역이 한건도 없게 된 경우
- if (!utlf_isNull(lnunitspclspecyn)) { // 기존에는 입력된 내역이 있다가 삭제된 경우임
- var osclEdicd;
- for (var i = 0; i < ds_grid_grd_clodhist.rowcount; i++) {
- osclEdicd = ds_grid_grd_clodhist.getColumn(i, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_clodhist.setColumn(i, "lnunitspclspecyn", "");
- ds_grid_grd_clodhist.setColumn(i, "jx999lnunitspclspecyn", "");
- // ds_grid_grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- // ds_grid_grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- }
- }
- }
- }
- // ds_grid_grd_clodhist.updatecontrol = true;
- ds_grid_grd_clodhist.enableevent = true;
- ds_grid_grd_clsphist.enableevent = true;
- } // 처리건수 if end
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- }
- else {
- sysf_messageBox("EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이", "I004"); ///EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- /****************************************************************************************
- * Argument :
- * Description : 원외처방 줄단위메모
- ****************************************************************************************/
- function lf_fOrderrcpGridInsertCmt()
- {
- ds_cond_sppiz00500.clearData();
- ds_cond_sppiz00500.addRow();
- ds_rslt_sppiz00500.clearData();
- //ds_rslt_sppiz00500.addRow();
- // 1. 특정내역 입력을 위한 팝업을 띄운다.
- var cur_row = ds_grid_grd_oprcphist.rowposition;
- var basecd = ds_grid_grd_oprcphist.getColumn(cur_row, "snglcalcscorcd");
- var hngnm = ds_grid_grd_oprcphist.getColumn(cur_row, "hngnm");
- var edicdflag = ds_grid_grd_oprcphist.getColumn(cur_row, "edicdflag");
- var basecd = ds_grid_grd_oprcphist.getColumn(cur_row, "edicd");
- if (!utlf_isNull(basecd)) {
- var lnunitspclspecyn = ds_grid_grd_oprcphist.getColumn(cur_row, "lnunitspclspecyn");
- // 1-1. 신규 특정내역 입력
- if (utlf_isNull(lnunitspclspecyn)) {
- ds_cond_sppiz00500.setColumn(0, "flag", "I");
- ds_cond_sppiz00500.setColumn(0, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(0, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(0, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(0, "spclcd", "JX999");
- ds_cond_sppiz00500.setColumn(0, "detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- ds_cond_sppiz00500.setColumn(0, "spclspec", "");
- ds_cond_sppiz00500.setColumn(0, "spclformat", "X(700)");
- ds_cond_sppiz00500.setColumn(0, "rownum", "");
- ds_cond_sppiz00500.setColumn(0, "cdnm", "기타내역");
- ds_cond_sppiz00500.setColumn(0, "unitflag", "J");
- }
- // 1-2. 기존 특정내역 수정
- else {
- var rowcnt = 0;
- var setrow = 0;
- var spclEdicd;
- var calcscorcdnm;
- var spclcd;
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- calcscorcdnm = ds_grid_grd_clsphist.getColumn(i, "calcscorcdnm");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(i, "unitflag") == "J") {
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- // 확인코드가 아닌 경우
- if (spclcd != "JT001" && ds_grid_grd_clsphist.getRowType(i) != 8) {
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", i);
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", spclEdicd);
- ds_cond_sppiz00500.setColumn(rowcnt, "hngnm", calcscorcdnm);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", ds_grid_grd_clsphist.getColumn(i, "spclformat"));
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", ds_grid_grd_clsphist.getColumn(i, "cdnm"));
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", ds_grid_grd_clsphist.getColumn(i, "detldesc"));
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- setrow = i;
- rowcnt = ds_cond_sppiz00500.addRow();
- }
- }
- }
- // 특정내역 상세관리에 띄워줄 특정내역 담기
- if (ds_grid_grd_clsphist.getColumn(setrow, "spclcd") == "JX999") {
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(rowcnt, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", ds_grid_grd_clsphist.getColumn(i, "detldesc"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", ds_grid_grd_clsphist.getColumn(i, "spclformat"));
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", setrow);
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", ds_grid_grd_clsphist.getColumn(i, "cdnm"));
- ds_cond_sppiz00500.setColumn(rowcnt, "unitflag", "J");
- }
- else {
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "I");
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(rowcnt, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", "JX999");
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", "X(700)");
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", "기타내역");
- ds_cond_sppiz00500.setColumn(rowcnt, "unitflag", "J");
- }
- }
- var rtnDs = frmf_modal("SPPIZ00500","SPPIZ00500", {objDs:ds_cond_sppiz00500},"","","","","","","","","","M");// SPPIZ00500_특정내역상세관리
- if (rtnDs.rowcount > 0) {
- ds_rslt_sppiz00500.copyData(rtnDs);
- }
- // 2. 특정내역 결과를 화면에 보여준다.
- var rsltcnt = ds_rslt_sppiz00500.rowcount;
- if (rsltcnt > 0) {
- var clsprow = ds_rslt_sppiz00500.rowcount - 1;
- var addcnt = 0;
- var rowstatus;
- var flag;
- var rownum;
- var newspclcd;
- var newcdnm;
- var newspclspec;
- var newspclformat;
- var newdetldesc;
- var oldspclcd;
- var oldspclspec;
- ds_grid_grd_clsphist.enableevent = false;
- for (var i=clsprow; i > -1; i--) {
- flag = ds_rslt_sppiz00500.getColumn(i, "flag");
- rownum = ds_rslt_sppiz00500.getColumn(i, "rownum");
- newspclcd = ds_rslt_sppiz00500.getColumn(i, "spclcd");
- newcdnm = ds_rslt_sppiz00500.getColumn(i, "cdnm");
- newspclspec = ds_rslt_sppiz00500.getColumn(i, "spclspec");
- newspclformat = ds_rslt_sppiz00500.getColumn(i, "spclformat");
- newdetldesc = ds_rslt_sppiz00500.getColumn(i, "detldesc");
- // 2-1. 특정내역 추가
- if (flag == "I") {
- var cRow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setRowType(cRow, "I");
- ds_grid_grd_clsphist.setColumn(cRow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(cRow, "unitflag", "J");
- ds_grid_grd_clsphist.setColumn(cRow, "edicd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(cRow, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(cRow, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(cRow, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(cRow, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(cRow, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(cRow, "calcscorcd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(cRow, "calcscorcdnm", ds_grid_grd_oprcphist.getColumn(cur_row, "hngnm"));
- ds_grid_grd_clsphist.setColumn(cRow, "oldspclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(cRow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(cRow, "prcpdd", ds_grid_grd_oprcphist.getColumn(cur_row, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(cRow, "prcpno", ds_grid_grd_oprcphist.getColumn(cur_row, "prcpno"));
- ds_grid_grd_clsphist.setColumn(cRow, "prcphistno", ds_grid_grd_oprcphist.getColumn(cur_row, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(cRow, "execprcpseqno", ds_grid_grd_oprcphist.getColumn(cur_row, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(cRow, "currowstat", "");
- ds_grid_grd_clsphist.setColumn(cRow, "edicdflag", ds_grid_grd_oprcphist.getColumn(cur_row, "edicdflag"));
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- addcnt++;
- }
- // 2-2. 특정내역 수정
- else if (flag == "U") {
- if (utlf_isNull(rownum)) {
- rownum = 0;
- }
- ds_grid_grd_clsphist.setRowType(rownum, "U");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setColumn(rownum, "edicd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcd", ds_rslt_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcdnm", ds_rslt_sppiz00500.getColumn(0, "hngnm"));
- ds_grid_grd_clsphist.setColumn(rownum, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(rownum, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(rownum, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(rownum, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(rownum, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(rownum, "oldspclcd", newspclcd);
- rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.setRowType(rownum, "I");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "I");
- }
- else{
- ds_grid_grd_clsphist.setRowType(rownum, "U");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- }
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- oldspclcd = ds_rslt_sppiz00500.getColumn(i, "oldspclcd");
- oldspclspec = ds_rslt_sppiz00500.getColumn(i, "oldspclspec");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- }
- // 2-3. 특정내역 삭제
- else if (flag == "D" && !utlf_isNull(rownum)) {
- rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.deleteRow(rownum);
- }
- else {
- ds_grid_grd_clsphist.setRowType(rownum, "D");
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "D");
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- }
- }
- var cnt = 0;
- var spclEdicd;
- for (var i = 0 ; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(i, "unitflag") == "J") {
- if (ds_grid_grd_clsphist.getRowType(i) != 8) {
- cnt++;
- }
- }
- }
- ds_grid_grd_oprcphist.enableevent = false;
- // ds_grid_grd_oprcphist.updatecontrol = false;
- if (cnt > 0) {
- if (utlf_isNull(lnunitspclspecyn)) { // 기존에는 입력된 내역이 없다가 추가된 경우임
- var osclEdicd;
- var spclEdicd;
- for (var j = 0; j < ds_grid_grd_oprcphist.rowcount; j++) {
- osclEdicd = ds_grid_grd_oprcphist.getColumn(j, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_oprcphist.setColumn(j, "lnunitspclspecyn", "*");
- for (var k = 0 ; k < ds_grid_grd_clsphist.rowcount; k++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(k, "edicd");
- if (basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(k, "spclcd") == "JX999") {
- ds_grid_grd_oprcphist.setColumn(j, "jx999lnunitspclspecyn", "*");
- }
- }
- // ds_grid_grd_oprcphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + i +' ? "#ffff00" : "")');
- // ds_grid_grd_oprcphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + i +' ? "#ffff00" : "")');
- }
- }
- }
- }
- else { // 특정내역이 한건도 없게 된 경우
- if (!utlf_isNull(lnunitspclspecyn)) { // 기존에는 입력된 내역이 있다가 삭제된 경우임
- var osclEdicd;
- for (var i = 0; i < ds_grid_grd_oprcphist.rowcount; i++) {
- osclEdicd = ds_grid_grd_oprcphist.getColumn(i, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_oprcphist.setColumn(i, "lnunitspclspecyn", "");
- ds_grid_grd_oprcphist.setColumn(i, "jx999lnunitspclspecyn", "");
- // ds_grid_grd_oprcphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- // ds_grid_grd_oprcphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- }
- }
- }
- }
- // ds_grid_grd_oprcphist.updatecontrol = true;
- ds_grid_grd_oprcphist.enableevent = true;
- ds_grid_grd_clsphist.enableevent = true;
- } // 처리건수 if end
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- }
- else {
- sysf_messageBox("EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이", "I004"); ///EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 확인코드 입력
- ****************************************************************************************/
- function lf_fOrderGridInsertCnfmCd()
- {
- var cur_row = ds_grid_grd_clodhist.rowposition;
- var basecd = ds_grid_grd_clodhist.getColumn(cur_row, "basecd");
- if (!utlf_isNull(basecd)) {
- // 1. 확인코드 조회 팝업을 호출한다.
- var objArg = new Object();
- objArg.sCode = ds_grid_grd_clodhist.getColumn(cur_row, "cnfmcd");
- var rtn = frmf_modal("SPPIZ01100","SPPIZ01100", objArg,"","","","","","","","","","M");
- // 2. 확인코드 조회 결과를 처리한다.
- if (!utlf_isNull(rtn)) {
- var cnfmcd = rtn.sCode; //ds_rslt_sppiz01100.getColumn(0, "code");
- if (!utlf_isNull(cnfmcd)) {
- // 2-1. 처방그리드 확인코드 값을 넣는다.
- var osclEdicd;
- for (var i = 0; i < ds_grid_grd_clodhist.rowcount; i++) {
- osclEdicd = ds_grid_grd_clodhist.getColumn(i, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_clodhist.updatecontrol = false;
- ds_grid_grd_clodhist.setColumn(i, "cnfmcd", cnfmcd);
- ds_grid_grd_clodhist.updatecontrol = true;
- // ds_grid_grd_clodhist.setColumn(i, "cnfmcd", ds_grid_grd_clsphist.getColumn(ds_grid_grd_clsphist.rowposition, "spclspec"));
- }
- }
- // 2-2. 기존에 특정내역에 존재하는 확인코드일 경우, 확인코드를 수정한다.
- var isFind = false;
- var unitflag;
- var spclEdicd;
- var spclSpclcd;
- var rowstatus;
- ds_grid_grd_clsphist.enableevent = false;
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount && isFind != true; i++) {
- unitflag = ds_grid_grd_clsphist.getColumn(i, "unitflag");
- if (unitflag == "J") {
- spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- spclSpclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- if (spclEdicd == basecd && spclSpclcd == "JT001") {
- ds_grid_grd_clsphist.setColumn(i, "rowstat", "U");
- ds_grid_grd_clsphist.setColumn(i, "edicd", basecd);
- ds_grid_grd_clsphist.setColumn(i, "spclcd", "JT001");
- ds_grid_grd_clsphist.setColumn(i, "cdnm", "확인코드");
- ds_grid_grd_clsphist.setColumn(i, "spclspec", cnfmcd);
- ds_grid_grd_clsphist.setColumn(i, "remfact", "X(5)");
- ds_grid_grd_clsphist.setColumn(i, "spclformat", "X(5)");
- ds_grid_grd_clsphist.setColumn(i, "detldesc", "진료행위에 대한 추가기술 사항을 구분하는 코드로서 확인코드가 여러개 발생할 경우 '/'로 구분하여 기재");
- ds_grid_grd_clsphist.setColumn(i, "calcscorcd", basecd);
- ds_grid_grd_clsphist.setColumn(i, "calcscorcdnm", ds_grid_grd_clodhist.getColumn(cur_row, "hngnm"));
- ds_grid_grd_clsphist.setColumn(i, "oldspclcd", "JT001");
- ds_grid_grd_clsphist.setColumn(i, "prcpdd", ds_grid_grd_clodhist.getColumn(cur_row, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(i, "prcpno", ds_grid_grd_clodhist.getColumn(cur_row, "prcpno"));
- ds_grid_grd_clsphist.setColumn(i, "prcphistno", ds_grid_grd_clodhist.getColumn(cur_row, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(i, "execprcpseqno", ds_grid_grd_clodhist.getColumn(cur_row, "execprcpseqno"));
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.setColumn(i, "rowstat", "I");
- ds_grid_grd_clsphist.setRowType(i, "I");
- }
- else {
- ds_grid_grd_clsphist.setColumn(i, "rowstat", "U");
- ds_grid_grd_clsphist.setRowType(i, "U");
- }
- isFind = true;
- }
- }
- }
- // 2-3. 신규 입력 확인코드일 경우, 확인코드를 추가한다.
- if (isFind == false) {
- var clspRow = ds_grid_grd_clsphist.addRow(); //ds_grid_grd_clsphist.rowcount - 1;
- ds_grid_grd_clsphist.setRowType(clspRow, "I");
- ds_grid_grd_clsphist.setColumn(clspRow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(clspRow, "unitflag", "J");
- ds_grid_grd_clsphist.setColumn(clspRow, "edicd", basecd);
- ds_grid_grd_clsphist.setColumn(clspRow, "spclcd", "JT001");
- ds_grid_grd_clsphist.setColumn(clspRow, "cdnm", "확인코드");
- ds_grid_grd_clsphist.setColumn(clspRow, "spclspec", cnfmcd);
- ds_grid_grd_clsphist.setColumn(clspRow, "remfact", "X(5)");
- ds_grid_grd_clsphist.setColumn(clspRow, "spclformat", "X(5)");
- ds_grid_grd_clsphist.setColumn(clspRow, "detldesc", "진료행위에 대한 추가기술 사항을 구분하는 코드로서 확인코드가 여러개 발생할 경우 '/'로 구분하여 기재");
- ds_grid_grd_clsphist.setColumn(clspRow, "calcscorcd", basecd);
- ds_grid_grd_clsphist.setColumn(clspRow, "calcscorcdnm", ds_grid_grd_clodhist.getColumn(cur_row, "hngnm"));
- ds_grid_grd_clsphist.setColumn(clspRow, "oldspclcd", "JT001");
- ds_grid_grd_clsphist.setColumn(clspRow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(clspRow, "prcpdd", ds_grid_grd_clodhist.getColumn(cur_row, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(clspRow, "prcpno", ds_grid_grd_clodhist.getColumn(cur_row, "prcpno"));
- ds_grid_grd_clsphist.setColumn(clspRow, "prcphistno", ds_grid_grd_clodhist.getColumn(cur_row, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(clspRow, "execprcpseqno", ds_grid_grd_clodhist.getColumn(cur_row, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(clspRow, "currowstat", "");
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- ds_grid_grd_clsphist.enableevent = true;
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역상세관리화면에서 '결과조회' 팝업 띄움
- ****************************************************************************************/
- function lf_fOrderRsltSrch()
- {
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- if (!utlf_isNull(cretno)) {
- if (grp_dropdownmenu.visible == true) {
- grp_dropdownmenu.visible = false;
- }
- ds_cond_smaer00800.setColumn(0, "srchdate1", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_smaer00800.setColumn(0, "srchdate2", utlf_getCurrentDate());
- ds_cond_smaer00800.setColumn(0, "srchpid", ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_smaer00800.setColumn(0, "wardcd", "");
- ds_cond_smaer00800.setColumn(0, "roomcd", "");
- ds_cond_smaer00800.setColumn(0, "listflag", "P");
- ds_cond_smaer00800.setColumn(0, "deptcd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_smaer00800.setColumn(0, "drid", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_smaer00800.setColumn(0, "chkcheck", "");
- ds_cond_smaer00800.setColumn(0, "chkcheck1", "A");
- ds_cond_smaer00800.setColumn(0, "chkcheck2", "B");
- ds_cond_smaer00800.setColumn(0, "chkcheck3", "C");
- ds_cond_smaer00800.setColumn(0, "chkcheck4", "D");
- ds_cond_smaer00800.setColumn(0, "chkcheck5", "E");
- ds_cond_smaer00800.setColumn(0, "chkcheck6", "F");
- ds_cond_smaer00800.setColumn(0, "chkcheck7", "G");
- ds_cond_smaer00800.setColumn(0, "chkcheck8", "");
- ds_cond_smaer00800.setColumn(0, "tabflag", "");
- ds_cond_smaer00800.setColumn(0, "mdlcd", "");
- ds_cond_smaer00800.setColumn(0, "examgubun", "");
- ds_cond_smaer00800.setColumn(0, "srchflag", "B");
- ds_cond_smaer00800.setColumn(0, "hlaflag", "N");
- ds_cond_smaer00800.setColumn(0, "prntfrmflag", "");
- frmf_open("SMAER00800", "SMAER00800", {ds_cond_smaer00800:ds_cond_smaer00800}, "", "", "", "", "", "", "", "", "", "M");
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방보험인정기준조회
- ****************************************************************************************/
- function lf_fOrderInsuRcogBase()
- {
- var objArg = new Object();
- objArg.sCalcscorcd = ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "snglcalcscorcd");
- objArg.sCalcscorcdnm = ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "hngnm");
- objArg.sLimtcd = "";
- objArg.sAppdd = "";
- objArg.prcpcd = "";
- objArg.sPreviewyn = "Y";
- objArg.sBhviewyn = "Y";
- // SPPIZ01600_보험인정기준조회 팝업 연결 (선택된 row의 처방코드를 넘겨준다.)
- frmf_modal("SPPIZ01600","SPPIZ01600", objArg,"","","","","","","","","","M");
- }
- /****************************************************************************************
- * Argument :
- * Description : 원외보험인정기준조회
- ****************************************************************************************/
- function lf_fOrderrcpInsuRcogBase()
- {
- var objArg = new Object();
- objArg.sCalcscorcd = ds_grid_grd_oprcphist.getColumn(ds_grid_grd_oprcphist.rowposition, "snglcalcscorcd");
- objArg.sCalcscorcdnm = ds_grid_grd_oprcphist.getColumn(ds_grid_grd_oprcphist.rowposition, "hngnm");
- objArg.sLimtcd = "";
- objArg.sAppdd = "";
- objArg.prcpcd = "";
- objArg.sPreviewyn = "Y";
- objArg.sBhviewyn = "Y";
- // SPPIZ01600_보험인정기준조회 팝업 연결 (선택된 row의 처방코드를 넘겨준다.)
- frmf_modal("SPPIZ01600","SPPIZ01600", objArg,"","","","","","","","","","M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방수가조회
- ****************************************************************************************/
- function lf_fOrderCalcScorSrch()
- {
- var objArg = new Object();
- objArg.instcd = sysf_getUserInfo("systeminstcd");
- if (grd_clodhist.currentcol == grd_clodhist.getBindCellIndex("body", "grupcalcscorcd")) {
- objArg.calcscorcd = ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "grupcalcscorcd");
- frmf_open("SMPIC00300", "SMPIC00300", objArg, "", "", "", "", "", "", "", "", "", "M");
- }
- else {
- objArg.calcscorcd = ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "snglcalcscorcd");
- objArg.judgflag = "Y"
- frmf_open("SMPIC00100", "SMPIC00100", objArg, "", "", "", "", "", "", "", "", "", "M");
- }
- }
- /****************************************************************************************
- * Argument :
- * Description : 원외처방수가조회
- ****************************************************************************************/
- function lf_fOprcpOrderCalcScorSrch()
- {
- var objArg = new Object();
- objArg.instcd = sysf_getUserInfo("systeminstcd");
- if (grd_oprcphist.currentcol == grd_oprcphist.getBindCellIndex("body", "edicd")) {
- objArg.calcscorcd = ds_grid_grd_oprcphist.getColumn(ds_grid_grd_oprcphist.rowposition, "edicd");
- frmf_open("SMPIC00300", "SMPIC00300", objArg, "", "", "", "", "", "", "", "", "", "M");
- }
- else {
- objArg.calcscorcd = ds_grid_grd_oprcphist.getColumn(ds_grid_grd_oprcphist.rowposition, "edicd");
- objArg.judgflag = "Y"
- frmf_open("SMPIC00100", "SMPIC00100", objArg, "", "", "", "", "", "", "", "", "", "M");
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 약품편람
- ****************************************************************************************/
- function lf_fOrderDrugHBook()
- {
- var objArg = new Object();
- objArg.calcscorcd = ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "snglcalcscorcd");
- frmf_modal("SMADB01900", "SMADB01900", objArg, "", "", "", "", "", "", "", "", "", "M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01.pid : 등록번호
- 02.orddd : 진료일자
- 03.cretno : 생성번호
- * Description : 대상자조회에서 대상자 선택하여 넘어올때 메세지 여부 확인
- ****************************************************************************************/
- function lf_fGetPatMsgYn(pid, orddd, cretno ) {
- // 1. 환자의 작성된 메세지를 조회한다.
- if ( !utlf_isNull(pid) && !utlf_isNull(orddd) && !utlf_isNull(cretno) ) {
- ds_cond_msg01.clearData();
- ds_cond_msg01.addRow();
- ds_cond_msg01.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_msg01.setColumn(0, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_msg01.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- ds_cond_msg01.setColumn(0, "mskind", "M");
- ds_cond_msg01.setColumn(0, "ordtype", "O");
- tranf_submit({
- id : "TRPIZ01903"
- , service : "insucomapp.JudgMsgTrsm"
- , method : "reqGetJudgMainMsgRef"
- , inds : "req=ds_cond_msg01"
- , outds : "ds_data_msglist=list"
- , async : false
- });
- if (ds_data_msglist.rowcount > 0) {
- btn_ptbsmemo.style.color = "#ff0000ff";
- }
- else {
- btn_ptbsmemo.style.color = "#002e5c";
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 환자기준 전송메세지작성
- ****************************************************************************************/
- function lf_fPatJudgPatMsgTrsm()
- {
- if (!utlf_isNull(ds_item1_otpt.getColumn(0, "pid"))) {
- // 세션값 받기
- var userid = sysf_getUserInfos("userid");
- var usernm = sysf_getUserInfos("usernm");
- var posinstcd = sysf_getUserInfos("posinstcd");
- var posinstnm = sysf_getUserInfos("posinstnm");
- var posdeptcd = sysf_getUserInfos("posdeptcd");
- var posdeptnm = sysf_getUserInfos("posdeptnm");
- if (utlf_isNull(userid) || userid == " " || userid == "-") userid = "pam";
- ds_cond_SPPIZ01900.setColumn(0, "instcd", sysf_getUserInfo("systeminstcd")); // ""
- ds_cond_SPPIZ01900.setColumn(0, "msgwrtedd", utlf_getCurrentDate());
- ds_cond_SPPIZ01900.setColumn(0, "msgwrteno", "");
- ds_cond_SPPIZ01900.setColumn(0, "msgwrtehistno", "");
- ds_cond_SPPIZ01900.setColumn(0, "histstat", "Y");
- ds_cond_SPPIZ01900.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_SPPIZ01900.setColumn(0, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_SPPIZ01900.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- ds_cond_SPPIZ01900.setColumn(0, "mskind", "M");
- ds_cond_SPPIZ01900.setColumn(0, "orddeptcd", ds_item1_otpt.getColumn(0, "orddeptcd"));
- ds_cond_SPPIZ01900.setColumn(0, "orddrid", ds_item1_otpt.getColumn(0, "orddrid"));
- ds_cond_SPPIZ01900.setColumn(0, "orddrnm", ds_init_orddridlist.getColumn(ds_init_orddridlist.findRowAs("cd", ds_item1_otpt.getColumn(0, "orddrid")), "nm"));
- ds_cond_SPPIZ01900.setColumn(0, "ordtype", "O"); // 외래기본 'O', chk
- ds_cond_SPPIZ01900.setColumn(0, "kindflag", "P"); // 환자기준 'P', chk
- ds_cond_SPPIZ01900.setColumn(0, "grupcalcscorcd", "-");
- ds_cond_SPPIZ01900.setColumn(0, "snglcalcscorcd", "-");
- ds_cond_SPPIZ01900.setColumn(0, "ordqty", 0);
- ds_cond_SPPIZ01900.setColumn(0, "ordtims", 0);
- ds_cond_SPPIZ01900.setColumn(0, "orddays", 0);
- ds_cond_SPPIZ01900.setColumn(0, "prcpdd", "-");
- ds_cond_SPPIZ01900.setColumn(0, "prcpno", 0);
- ds_cond_SPPIZ01900.setColumn(0, "prcppayflag", "-");
- ds_cond_SPPIZ01900.setColumn(0, "rgstrid", "-");
- ds_cond_SPPIZ01900.setColumn(0, "rgstdd", "-");
- ds_cond_SPPIZ01900.setColumn(0, "rgsttm", "-");
- ds_cond_SPPIZ01900.setColumn(0, "sendphone", "");
- ds_cond_SPPIZ01900.setColumn(0, "anybodyyn", "N");
- ds_cond_SPPIZ01900.setColumn(0, "sendflag", "O");
- ds_cond_SPPIZ01900.setColumn(0, "senddate", "");
- ds_cond_SPPIZ01900.setColumn(0, "deliveid", "-");
- ds_cond_SPPIZ01900.setColumn(0, "recvdate", "");
- ds_cond_SPPIZ01900.setColumn(0, "recvid", "");
- ds_cond_SPPIZ01900.setColumn(0, "recvcnfmyn", "N");
- ds_cond_SPPIZ01900.setColumn(0, "recvcnfmid", userid);
- ds_cond_SPPIZ01900.setColumn(0, "sendmsg", "");
- ds_cond_SPPIZ01900.setColumn(0, "recvmsg", "");
- ds_cond_SPPIZ01900.setColumn(0, "fstrgstrid", "");
- ds_cond_SPPIZ01900.setColumn(0, "fstrgstdt", "");
- ds_cond_SPPIZ01900.setColumn(0, "lastupdtrid", "");
- ds_cond_SPPIZ01900.setColumn(0, "lastupdtdt", "");
- ds_msgtrsm_info.copyData(ds_cond_SPPIZ01900);
- }
- else {
- sysf_messageBox("기본정보가 ", "I004");
- }
- frmf_modal("SPPIZ01900","SPPIZ01900", {ds_cond_SMPIJ02600:ds_cond_SMPIJ02600},"","","","","","","","","","M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방기준 전송메세지작성
- ****************************************************************************************/
- function lf_fOrderJudgPatMsgTrsm()
- {
- if (!utlf_isNull(ds_item1_otpt.getColumn(0, "pid"))) {
- //처방이므로 처방row선택여부 확인
- if (ds_grid_grd_clodhist.rowposition < 0) {
- return;
- }
- // 세션값 받기
- var userid = sysf_getUserInfos("userid");
- var usernm = sysf_getUserInfos("usernm");
- var posinstcd = sysf_getUserInfos("posinstcd");
- var posinstnm = sysf_getUserInfos("posinstnm");
- var posdeptcd = sysf_getUserInfos("posdeptcd");
- var posdeptnm = sysf_getUserInfos("posdeptnm");
- if (utlf_isNull(userid) || userid == " " || userid == "-") userid = "pam";
- ds_cond_SPPIZ01900.setColumn(0, "instcd", sysf_getUserInfo("systeminstcd")); // ""
- ds_cond_SPPIZ01900.setColumn(0, "msgwrtedd", utlf_getCurrentDate());
- ds_cond_SPPIZ01900.setColumn(0, "msgwrteno", "");
- ds_cond_SPPIZ01900.setColumn(0, "msgwrtehistno", "");
- ds_cond_SPPIZ01900.setColumn(0, "histstat", "Y");
- ds_cond_SPPIZ01900.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_SPPIZ01900.setColumn(0, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_SPPIZ01900.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- ds_cond_SPPIZ01900.setColumn(0, "mskind", "M");
- ds_cond_SPPIZ01900.setColumn(0, "orddeptcd", ds_item1_otpt.getColumn(0, "orddeptcd"));
- ds_cond_SPPIZ01900.setColumn(0, "orddrid", ds_item1_otpt.getColumn(0, "orddrid"));
- ds_cond_SPPIZ01900.setColumn(0, "orddrnm", ds_init_orddridlist.getColumn(ds_init_orddridlist.findRowAs("cd", ds_item1_otpt.getColumn(0, "orddrid")), "nm"));
- ds_cond_SPPIZ01900.setColumn(0, "ordtype", "O"); // 외래기본 'O', chk
- ds_cond_SPPIZ01900.setColumn(0, "kindflag", "O"); // 처방기준 'O', chk
- ds_cond_SPPIZ01900.setColumn(0, "grupcalcscorcd", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "grupcalcscorcd"));
- ds_cond_SPPIZ01900.setColumn(0, "snglcalcscorcd", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "snglcalcscorcd"));
- ds_cond_SPPIZ01900.setColumn(0, "ordqty", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "ordqty"));
- ds_cond_SPPIZ01900.setColumn(0, "ordtims", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "ordtims"));
- ds_cond_SPPIZ01900.setColumn(0, "orddays", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "orddays"));
- ds_cond_SPPIZ01900.setColumn(0, "prcpdd", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "prcpdd"));
- ds_cond_SPPIZ01900.setColumn(0, "prcpno", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "prcpno"));
- ds_cond_SPPIZ01900.setColumn(0, "prcppayflag", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "prcppayflag"));
- ds_cond_SPPIZ01900.setColumn(0, "rgstrid", "-");
- ds_cond_SPPIZ01900.setColumn(0, "rgstdd", "-");
- ds_cond_SPPIZ01900.setColumn(0, "rgsttm", "-");
- ds_cond_SPPIZ01900.setColumn(0, "sendphone", "");
- ds_cond_SPPIZ01900.setColumn(0, "anybodyyn", "N");
- ds_cond_SPPIZ01900.setColumn(0, "sendflag", "O");
- ds_cond_SPPIZ01900.setColumn(0, "deliveid", "-");
- ds_cond_SPPIZ01900.setColumn(0, "recvdate", "");
- ds_cond_SPPIZ01900.setColumn(0, "recvid", "");
- ds_cond_SPPIZ01900.setColumn(0, "recvcnfmyn", "N");
- ds_cond_SPPIZ01900.setColumn(0, "recvcnfmid", userid);
- ds_cond_SPPIZ01900.setColumn(0, "sendmsg", "");
- ds_cond_SPPIZ01900.setColumn(0, "recvmsg", "");
- ds_cond_SPPIZ01900.setColumn(0, "fstrgstrid", "");
- ds_cond_SPPIZ01900.setColumn(0, "fstrgstdt", "");
- ds_cond_SPPIZ01900.setColumn(0, "lastupdtrid", "");
- ds_cond_SPPIZ01900.setColumn(0, "lastupdtdt", "");
- ds_msgtrsm_info.copyData(ds_cond_SPPIZ01900);
- }
- else {
- sysf_messageBox("기본정보가 ", "I004");
- }
- frmf_modal("SPPIZ01900","SPPIZ01900", {ds_cond_SMPIJ02600:ds_cond_SMPIJ02600},"","","","","","","","","","M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 환자 전체 메세지 내용 조회하여 하나씩 보기
- ****************************************************************************************/
- function lf_fJudgPatMsgTrsmRef()
- {
- // ds_cond_SMPIJ02600.setColumn(0, "refyn", "Y");
- // ds_cond_SMPIJ02600.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- // ds_cond_SMPIJ02600.setColumn(0, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- // ds_cond_SMPIJ02600.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- // ds_cond_SMPIJ02600.setColumn(0, "mskind", "M");
- // ds_cond_SMPIJ02600.setColumn(0, "orddeptcd", ds_item1_otpt.getColumn(0, "orddeptcd"));
- // ds_cond_SMPIJ02600.setColumn(0, "orddrid", ds_item1_otpt.getColumn(0, "orddrid"));
- // ds_cond_SMPIJ02600.setColumn(0, "ordtype", "O");
- // ds_cond_SMPIJ02600.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- //
- // frmf_modal("SMPIJ02600", "SMPIJ02600", {ds_cond_SMPIJ02600:ds_cond_SMPIJ02600});
-
- var pid = ipt_pid.value; // 메세지 현황에 등록번호반환
-
- var objArg = new Object();
-
- objArg.sPid = pid;
-
- frmf_modal("SMPIJ02600","SMPIJ02600", objArg,"","","","","","","","","","M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 산정코드조회
- ****************************************************************************************/
- function lf_fSrchEstmCd()
- {
- ds_cond_sppiz00800.clearData();
- ds_cond_sppiz00800.addRow();
- var cur_row = ds_grid_grd_clodhist.rowcount;
- var estmcls = ds_grid_grd_clodhist.getColumn(cur_row, "estmcls");
- var insukindcd = ds_item1_otpt.getColumn(0, "insukindcd");
- if (utlf_isNull(insukindcd)) {
- sysf_messageBox("심사대상자의 보험유형이", "I004"); ///심사대상자의 보험유형이 없습니다
- return false;
- }
-
- ds_cond_sppiz00800.setColumn(0, "name" , this.name);
- ds_cond_sppiz00800.setColumn(0, "calcscorcd", ds_grid_grd_clodhist.getColumn(cur_row, "snglcalcscorcd"));
- ds_cond_sppiz00800.setColumn(0, "insukind" , insukindcd);
- ds_cond_sppiz00800.setColumn(0, "estmcls" , estmcls);
- ds_cond_sppiz00800.setColumn(0, "estmmncd" , ds_grid_grd_clodhist.getColumn(cur_row, "ordtodd"));
- //ds_cond_sppiz00800.setColumn(0, "todd" , todd);
- ds_cond_sppiz00800.setColumn(0, "todd" , "");
-
- frmf_modal("SPPIZ00800", "SPPIZ00800", {objDs:ds_cond_sppiz00800}, "", "", "", "", "", "", "", "", "", "M"); // SPPIZ00800_산정코드조회.xfdl
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 소트
- ****************************************************************************************/
- function lf_fSortSpclNo()
- {
- var rowstatus;
- var spclcd;
- var spclspec;
- if (ds_grid_grd_clsphist.rowcount > 0) {
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- // row 초기화
- ds_grid_grd_clsphist.filter("");
- // 삭제시킨 특정내역은 소트 시 맨 뒤로 위치하도록 설정
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- ds_grid_grd_clsphist.updatecontrol = false;
- if (rowstatus == 8) { // 삭제상태
- ds_grid_grd_clsphist.setColumn(i, "currowstat", parseInt(rowstatus, 10 ) + 10);
- }
- else {
- ds_grid_grd_clsphist.setColumn(i, "currowstat", rowstatus);
- }
- ds_grid_grd_clsphist.updatecontrol = true;
- // 특정코드, 특정내역 없는 줄 삭제
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- spclspec = ds_grid_grd_clsphist.getColumn(i, "spclspec");
- if (rowstatus != 8 && utlf_isNull(spclcd) && utlf_isNull(spclspec)) {
- ds_grid_grd_clsphist.deleteRow(i);
- i--;
- }
- }
- // 소트 수행
- ds_grid_grd_clsphist.keystring = "";
- ds_grid_grd_clsphist.keystring = "S:-currowstat-unitflag+edicd+spclcd";
- // ds_grid_grd_clsphist.keystring = "S:-unitflag-currowstat+edicd+spclcd";
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병 위로 이동
- ****************************************************************************************/
- function lf_fDiagSeqUp()
- {
- var row = ds_grid_grd_cldihist.rowposition;
- // 1. 삭제된 row의 경우 이동 불가
- var rowstatus = ds_grid_grd_cldihist.getRowType(row);
- if ( rowstatus == 8 ) return;
- // 2. 빈 row의 경우 이동 불가
- var diagnm = ds_grid_grd_cldihist.getColumn(row, "diagnm");
- if ( utlf_isNull(diagnm) ) return;
- // 3. row 위로 이동
- //if ( !utlf_isNull(ds_grid_grd_cldihist.getColumn(row, "diagseq")) && ds_grid_grd_cldihist.rowcount > 1) { // row 가 2개 이상일때만
- var diagseq = parseInt(ds_grid_grd_cldihist.getColumn(row, "diagseq"));
- if ( diagseq > 1 ) {
- ds_grid_grd_cldihist.setColumn(row, "diagseq", --diagseq);
- //alert(--diagseq);
- if ( rowstatus == 1 || rowstatus == 4 ) {
- ds_grid_grd_cldihist.updatecontrol = false;
- ds_grid_grd_cldihist.setRowType(row, "U");
- ds_grid_grd_cldihist.setColumn(row, "rowstat", "U");
- ds_grid_grd_cldihist.updatecontrol = true;
- }
- // 바로 위 상병순서와 중복되는 경우
- var nextrow = row - 1;
- var nextdiagseq = ds_grid_grd_cldihist.getColumn(nextrow, "diagseq");
- //diagseq = ds_grid_grd_cldihist.getColumn(nextrow, "diagseq");
- if ( diagseq == nextdiagseq ) {
- ds_grid_grd_cldihist.setColumn(nextrow, "diagseq", ++diagseq);
- //alert(++diagseq);
- rowstatus = ds_grid_grd_cldihist.getRowType(nextrow);
- if ( rowstatus == 1 || rowstatus == 4 ) {
- ds_grid_grd_cldihist.updatecontrol = false;
- ds_grid_grd_cldihist.setRowType(nextrow, "U");
- ds_grid_grd_cldihist.setColumn(nextrow, "rowstat", "U");
- ds_grid_grd_cldihist.updatecontrol = true;
- }
- }
- //lf_fSortDiagNo(); // 상병내역 소트
- //lf_fDiagGridInsertRow(); // 상병 행 추가
- }
- //}
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병 아래로 이동
- ****************************************************************************************/
- function lf_fDiagSeqDown()
- {
- var row = ds_grid_grd_cldihist.rowposition;
- // 1. 삭제된 row의 경우 이동 불가
- var rowstatus = ds_grid_grd_cldihist.getRowType(row);
- if ( rowstatus == 8 ) return;
- // 2. 빈 row의 경우 이동 불가
- var diagnm = ds_grid_grd_cldihist.getColumn(row, "diagnm");
- if ( utlf_isNull(diagnm) ) return;
- var diagseq = parseInt(ds_grid_grd_cldihist.getColumn(row, "diagseq")); // 선택된 줄의 NO
- ds_grid_grd_cldihist.setColumn(row, "diagseq", ++diagseq); //diagseq+1
- //alert(++diagseq);
- if ( rowstatus == 1 || rowstatus == 4 ) {
- ds_grid_grd_cldihist.updatecontrol = false;
- ds_grid_grd_cldihist.setRowType(row, "U");
- ds_grid_grd_cldihist.setColumn(row, "rowstat", "U");
- ds_grid_grd_cldihist.updatecontrol = true;
- }
- // 바로 아래 상병순서와 중복되는 경우
- var nextrow = ds_grid_grd_cldihist.rowposition + 1;
- var nextdiagseq = ds_grid_grd_cldihist.getColumn(nextrow, "diagseq");
- //diagseq = ds_grid_grd_cldihist.getColumn(row, "diagseq");
- if ( diagseq == nextdiagseq ) {
- ds_grid_grd_cldihist.setColumn(nextrow, "diagseq", --diagseq); //nextdiagseq-1
- //alert(--diagseq);
- rowstatus = ds_grid_grd_cldihist.getRowType(nextrow);
- if ( rowstatus == 1 || rowstatus == 4 ) {
- ds_grid_grd_cldihist.updatecontrol = false;
- ds_grid_grd_cldihist.setRowType(nextrow, "U");
- ds_grid_grd_cldihist.setColumn(nextrow, "rowstat", "U");
- ds_grid_grd_cldihist.updatecontrol = true;
- }
- }
- // lf_fSortDiagNo(); // 상병내역 소트
- // lf_fDiagGridInsertRow(); // 상병 행 추가
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병내역 소트
- ****************************************************************************************/
- function lf_fSortDiagNo()
- {
- if ( ds_grid_grd_cldihist.rowcount > 1 ) { //0
- //for (var j = ds_grid_grd_cldihist.rowcount-1; j >= 0; j--) {
- for (var j = ds_grid_grd_cldihist.rowcount-1; j >= 1; j--) {
- // 상병코드, 상병명 없는 줄 삭제
- var rowstatus = ds_grid_grd_cldihist.getRowType(j);
- var diagcd = ds_grid_grd_cldihist.getColumn(j, "diagcd");
- var diagnm = ds_grid_grd_cldihist.getColumn(j, "diagnm");
- //alert(j + " : diagcd = " + diagcd + " / diagnm = " + diagnm);
- if ( rowstatus != 8 && utlf_isNull(diagcd) && utlf_isNull(diagnm) ) {
- ds_grid_grd_cldihist.deleteRow(j);
- }
- }
- var cldino = 1;
- ds_grid_grd_cldihist.updatecontrol = false;
- for (var i=0; i<ds_grid_grd_cldihist.rowcount; i++) {
- if (ds_grid_grd_cldihist.getRowType(i) != 8) {
- //ds_grid_grd_cldihist.setColumn(i, "diagseq", i+1);
- ds_grid_grd_cldihist.setColumn(i, "diagseq", cldino++);
- ds_grid_grd_cldihist.setColumn(i, "status", "u");
- ds_grid_grd_cldihist.setRowType(i, Dataset.ROWTYPE_UPDATE);
- }
- }
-
- for (var i=0; i<ds_grid_grd_cldihist.rowcount; i++) {
- if (ds_grid_grd_cldihist.getRowType(i) == 8) {
- ds_grid_grd_cldihist.setColumn(i, "diagseq", cldino++);
- ds_grid_grd_cldihist.setColumn(i, "status", "d");
- ds_grid_grd_cldihist.setRowType(i, Dataset.ROWTYPE_DELETE);
- }
- }
- ds_grid_grd_cldihist.updatecontrol = true;
- // 소트 수행
- ds_grid_grd_cldihist.keystring = "S:+diagseq";
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병 Grid 마우스 오른쪽 버튼 클릭시 팝업 메뉴 "행 삭제"
- ****************************************************************************************/
- function lf_fDiagGridDeleteRow()
- {
- dsf_deleteSelectedRows(grd_cldihist, true); // 멀티 삭제
- for (var i=0; i<ds_grid_grd_cldihist.rowcount; i++) {
- if ( ds_grid_grd_cldihist.getSelect(i) == true ) {
- ds_grid_grd_cldihist.updatecontrol = false;
- ds_grid_grd_cldihist.setColumn(i, "rowstat", "D");
- //ds_grid_grd_cldihist.setColumn(i, "diagseq", "D"+String(i));
- ds_grid_grd_cldihist.setColumn(i, "diagseq", ds_grid_grd_cldihist.getColumn(i, "seqno"));
- ds_grid_grd_cldihist.setRowType(i, "D");
- ds_grid_grd_cldihist.updatecontrol = true;
- }
- }
-
- lf_fSortDiagNo(); // 상병내역 소트
- lf_fDiagGridInsertRow();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 이전명세서 목록에서 선택한 청구키의 명세서를 이미 열려있는 Popup 화면으로 조회시에 호출
- ****************************************************************************************/
- function lf_fActivatePreDocuWindow()
- {
- var rslt = lf_fInitSrchData(); // 화면을 초기화한다.
- if (rslt == false) { // 수정사항 저장이 완료되지 않아 초기화할 수 없는 경우
- return false;
- }
- var pid = opener.ds_cond_smpij00700.getColumn(0, "pid");
- var orddd = opener.ds_cond_smpij00700.getColumn(0, "orddd");
- var cretno = opener.ds_cond_smpij00700.getColumn(0, "cretno");
- var acptseqno = opener.ds_cond_smpij00700.getColumn(0, "acptseqno");
- var insukindcd = opener.ds_cond_smpij00700.getColumn(0, "insukindcd");
- if ( !utlf_isNull(pid) && !utlf_isNull(orddd) && !utlf_isNull(cretno) && !utlf_isNull(acptseqno) && !utlf_isNull(insukindcd) ) {
- ds_send_item1_otpt.setColumn(0, "pid", pid);
- ds_send_item1_otpt.setColumn(0, "orddd", orddd);
- ds_send_item1_otpt.setColumn(0, "cretno", cretno);
- ds_send_item1_otpt.setColumn(0, "acptseqno", acptseqno);
- ds_send_item1_otpt.setColumn(0, "insukindcd", insukindcd);
- //document.title = "이전 명세서 상병/처방 조회";
- tranf_submit({
- id : "TRPIJ00701"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqGetOutDayJudgTrgtMan"
- , inds : "req=ds_send_item1_otpt"
- , outds : "ds_item1_otpt=otpt ds_item3_supp=supp ds_list1_diag=diag ds_list2_oscl=oscl ds_list3_clcj=clcj ds_patinfo=patinfolist ds_ordddlist=list ds_item7_kopg=kopg ds_item8_asrtjudg=asrtjudg ds_list8_judgmemo=judgmemo ds_list9_edimemo=edimemo"
- , async : false
- });
- if (utlf_isNull(ds_item1_otpt.getColumn(0, "pid") || utlf_isNull(ds_item1_otpt.getColumn(0, "cretno")))) {
- ds_item1_otpt.appendData(ds_rslt_smpij00600, true, true);
- }
- ds_item1_otpt.setColumn(0, "dschjudgprcsstat", dschjudgprcsstat);
- // 데이타셋 매핑
- ds_grid_grd_cldihist.copyData(ds_list1_diag); // 상병
- ds_grid_grd_cldihist.addColumn("status", "STRING");
- ds_grid_grd_clodhist.copyData(ds_list2_oscl); // 처방
- // TODO : 일시 '-' 일때 null 처리 추가
- ds_grid_grd_clsphist.copyData(ds_list3_clcj); // 특정내역
- ds_grid_grd_oprcphist.copyData(ds_list7_clop); // 원외처방
- ds_grid_grd_judgmemo.copyData(ds_list8_judgmemo); // 심사자메모
- if (ds_grid_grd_judgmemo.rowcount > 0) {
- ds_grid_grd_judgmemo.updatecontrol = false;
- for (var i=0; i<ds_grid_grd_judgmemo.rowcount; i++) { // 심사자 입력일시 수정
- ds_grid_grd_judgmemo.setColumn(i, "fstrgstdt", urlf_getStrDate(ds_grid_grd_judgmemo.getColumn(i, "fstrgstdt").substr(0,14)));
- }
- ds_grid_grd_judgmemo.updatecontrol = true;
- }
- ds_grid_grd_edimemo.copyData(ds_list9_edimemo); // edi메모
- // 체크박스 변환 설정
- lf_changecheck1(ds_grid_grd_cldihist, "diagkindcd", "C", 0);
- lf_fSetDayJudgTrgtManSrchData();
- }
- else {
- lf_fCheckAuth(); // 화면 권한을 설정한다.
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 화면 권한을 설정한다.
- ****************************************************************************************/
- function lf_fCheckAuth()
- {
- var judgendyn = ds_item1_otpt.getColumn(0, "dschjudgprcsstat");
- if ( judgendyn == "E" || judgendyn == "D" ) {
- // 외래사전심사상태 (P0379) - A: 미심사, B: 심사중, D: 보류, E: 통합심사완료
- ds_properties.setColumn(0, "auth", "10100000"); // 송신된 경우 처리권한을 부여하지 않는다.
- }
- else {
- ds_properties.setColumn(0, "auth", "11100000");
- }
- var xAuth = frmf_checkAuth("X"); // 처리권한(입력, 수정, 삭제 등)
- btn_save.enable = xAuth; // 저장
- var pAuth = frmf_checkAuth("P"); // 출력권한(보고서 출력, 엑셀 내려받기 등)
- btn_excelsave.enable = pAuth; // 엑셀
- btn_print.enable = pAuth; // 출력
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 기존 조회 내역 중 수정 사항이 있는 경우 저장할 것인지를 물어본다.
- ****************************************************************************************/
- function lf_fCheckChangeSave()
- {
- var initclbs = ds_hidden_item1_initotpt.getColumn(0, "pid");
- var isChange = 0;
- if ( !utlf_isNull(initclbs) ) {
- var clbsupdatadata = false;
- if (ds_hidden_item1_initotpt.getColumn(0, "suppkindcd") != ds_item1_otpt.getColumn(0, "suppkindcd")) {
- clbsupdatadata = true;
- }
- else if (ds_hidden_item1_initotpt.getColumn(0, "ordfildcd") != ds_item1_otpt.getColumn(0, "ordfildcd")) {
- clbsupdatadata = true;
- }
- else if (ds_hidden_item1_initotpt.getColumn(0, "orddeptcd") != ds_item1_otpt.getColumn(0, "orddeptcd")) {
- clbsupdatadata = true;
- }
- else if (ds_hidden_item1_initotpt.getColumn(0, "orddrid") != ds_item1_otpt.getColumn(0, "orddrid")) {
- clbsupdatadata = true;
- }
- else if (ds_hidden_item1_initotpt.getColumn(0, "ordrsltcd") != ds_item1_otpt.getColumn(0, "ordrsltcd")) {
- clbsupdatadata = true;
- }
- else if (ds_hidden_item1_initotpt.getColumn(0, "insuno") != ds_item1_otpt.getColumn(0, "insuno")) {
- clbsupdatadata = true;
- }
- else if (ds_hidden_item1_initotpt.getColumn(0, "certno") != ds_item1_otpt.getColumn(0, "certno")) {
- clbsupdatadata = true;
- }
- if (clbsupdatadata == false) {
- var clspupdtdata = grdf_getGridUpdateData(grp_clsphist.swt_spclmemo.case_spclspec.grd_clsphist); // 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환
- var clodupdtdata = grdf_getGridUpdateData(grd_clodhist);
- var clopupdtdata = grdf_getGridUpdateData(grd_oprcphist);
- if (clodupdtdata.rowcount > 0 || clopupdtdata.rowcount > 0) {
- isChange++;
- } else { // 처방, 원외처방의 수정사항이 없는 경우
- for (var i = ds_grid_grd_cldihist.rowcount - 1; i > -1; i-- ) {
- var rowstatus = ds_grid_grd_cldihist.getRowType(i);
- var diagcd = ds_list1_diag.getColumn(i, "diagcd");
- // 상병코드와 진료개시일이 입력되지 않은 경우 1:insert 3:insert & new
- if ( rowstatus == 2 ) {
- if ( utlf_isNull(diagcd) ) {
- // 줄을 삭제한다.
- ds_grid_grd_cldihist.deleteRow(i);
- delcldiCheck = true;
- }
- }
- }
- // 상병의 경우 기본적으로 추가된 줄을 삭제한 후 체크한다.
- var cldiupdtdata = grdf_getGridUpdateData(grd_cldihist);
- if ( cldiupdtdata.rowcount > 0 ) {
- isChange++;
- }
- for (var i=ds_grid_grd_clsphist.rowcount-1; i>-1; i-- ) {
- var rowstatus = ds_grid_grd_clsphist.getRowType(i);
- var spclcd = ds_list3_clcj.getColumn(i, "spclcd");
- // 구분코드가 입력되지 않은 경우
- if ( rowstatus == 2 ) { // 1 : insert, 3 : insert & new
- if ( utlf_isNull(spclcd) ) {
- // 줄을 삭제한다.
- ds_grid_grd_clsphist.deleteRow(i);
- delclcjCheck = true;
- }
- }
- }
- // 특정내역의 경우 기본적으로 추가된 줄을 삭제한 후 체크한다.
- var clspupdtdata = grdf_getGridUpdateData(grp_clsphist.swt_spclmemo.case_spclspec.grd_clsphist);
- if ( clspupdtdata.rowcount > 0 ) {
- isChange++;
- }
- }
- } else {
- isChange++;
- }
- }
- // // // if (isChange > 0) {
- // // // var ans = sysf_messageBox("수정사항이 있습니다. 저장", "S001"); ///수정사항이 있습니다. 저장하시려면 예(Yes)\n아니면 아니오(No)
- // // // if ( ans == 6 ) { // 6: yes
- // // // var rslt = lf_fSaveOutDayJudg("A"); // 저장
- // // // if ( rslt != true ) {
- // // // return false;
- // // // }
- // // // }
- // // // else if ( ans == 2 ) { // 6: yes, 7:no, 2:cancel
- // // // return false;
- // // // }
- // // // }
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 등록번호 + 엔터 시 대상자화면 호출
- ****************************************************************************************/
- function lf_fGetOutDayJudgTrgtManPidSrch()
- {
- // 대상자 조회화면을 띄운다.
- //var trgtManWindow = frmf_findChildWindow("SMPIJ00600"); // SMPIJ00600_외래일일심사대상자조회.xfdl
- var trgtManWindow = frmf_getChildWindow("SMPIJ00600");
- var patunitsrch1 = ds_item1_otpt.getColumn(0, "pid");
- if ( trgtManWindow == null ) {
- // pid가 변경되었는데 조회창을 여는 경우 기존 조회된 data 초기화를 위해 저장해둔다.
- ds_cond_smpij00600.setColumn(0, "pid", patunitsrch1);
- ds_rslt_smpij00600.setColumn(0, "pid", patunitsrch1);
- var rtn = frmf_open("SMPIJ00600", "SMPIJ00600", {objDs:ds_cond_smpij00600}, "", "", "", "", "", "", "", "", "", "M"); // SMPIJ00600_외래일일심사대상자조회.xfdl
- }
- else {
- // 대상자조회화면에 붙어있는 old 값 초기화
- //trgtManWindow.model.resetInstanceNode("/root/hidden/oldotpt");
- var oldPid = ds_rslt_smpij00600.getColumn(0, "oldPid");
- ds_cond_smpij00600.setColumn(0, "pid", patunitsrch1);
- ds_rslt_smpij00600.setColumn(0, "oldPid", patunitsrch1);
- if ( utlf_isNull(oldPid) ) {
- if ( utlf_isNull(patunitsrch1) ) { // 환자번호 입력 없이 대상자를 조회하는 경우
- trgtManWindow.grp_judgmemo.visible = false; // 대상자 Grid의 메모 필드의 Btn 클릭시 보여지는 메모 저장용 Group을 감춘다.
- frmf_setFocusPop("SMPIJ00600");
- } else { // 기존 심사대상자는 없는데 pid가 입력된 경우 또는 변경된 정보를 저장 후에 조회하는 경우
- trgtManWindow.lf_fSetPatUnitSrch1pidSrch();
- }
- } else {
- if ( patunitsrch1 != oldPid ) { // 조회된 pid가 변경된 상태에서 조회하는 경우
- ds_item1_otpt.setColumn(0,"pid", patunitsrch1);
- ds_cond_smpij00600.setColumn(0,"pid", patunitsrch1);
- trgtManWindow.lf_fSetPatUnitSrch1pidSrch();
- } else { // 기존 심사대상자는 있는데 pid가 변경되지 않은 경우
- trgtManWindow.grp_judgmemo.visible = false; // 대상자 Grid의 메모 필드의 Btn 클릭시 보여지는 메모 저장용 Group을 감춘다.
- frmf_setFocusPop("SMPIJ00600");
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상단에 환자정보 기입하기
- ****************************************************************************************/
- function fSetOutPatPamInfo()
- {
- var pid = ds_item1_otpt.getColumn(0, "pid");
- var orddd = ds_item1_otpt.getColumn(0, "orddd");
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- var instcd = ds_item1_otpt.getColumn(0, "instcd");
-
- // param 첫번째 붙는 값은 외래 : O, 입원 : I, 지원부서 : S, 수술 : T, 응급 : E, 의뢰 : C
- var param = "O" + "▦" + pid + "▦" + orddd + "▦" + cretno + "▦" + instcd;
-
- frmf_setParameter("condparam", param);
- frmf_setParameter("errflag", "Y");
-
- var useyn = appf_initPatientInfo(param);
- if(useyn == "Y") {
- frmf_setParameter("SPMMO08900_rtn_useyn", "");
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 일일 심사 대상자를 조회한 이후의 처리를 한다.
- ****************************************************************************************/
- function lf_fSetDayJudgTrgtManSrchData()
- {
- // 화면 권한을 설정한다.
- lf_fCheckAuth();
- // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- lf_fSetJudgStatBtnAuth();
- // 조회된 심사대상자의 특이 인적사항, 보조/요율 등을 계산하여 보여준다.
- lf_fGetPersonalData();
- // 조회된 심사대상자의 실제진료일과 그달의 진료일자를 진료달력에 표시한다.
- lf_fSetOrdCalendar();
- //자보일때만 사고접수번호, 지급보증번호 보이도록
- if ( ds_item1_otpt.getColumn(0, "insukindcd") == "31" ) {
- // 사고접수번호
- cap_mngtno.visible = true;
- opt_mngtno.visible = true;
- // 지급보증번호
- cap_autmbinsuseqno.visible = true;
- opt_autmbinsuseqno.visible = true;
- } else {
- // 사고접수번호
- cap_mngtno.visible = false;
- opt_mngtno.visible = false;
- // 지급보증번호
- cap_autmbinsuseqno.visible = false;
- opt_autmbinsuseqno.visible = false;
- }
-
- // 2015.12.15 구미병원 특성화 - 보훈환자 표시
- if( !utlf_isNull(ds_item1_otpt.getColumn(0, "bohuncd")) ) {
- cap_bohun.text = ds_item1_otpt.getColumn(0, "bohunnm");
- cap_bohun.visible = true;
- } else {
- cap_bohun.text = "";
- cap_bohun.visible = false;
- }
- // *특정내역
- // 특정코드 줄단위 였던 row가 명세서 단위 row로 바뀌는 경우, 특정코드 값이 표시되지 않으므로 다시 확인한다.
- for (var i=0; i<ds_grid_grd_clsphist.rowcount; i++ ) {
- // 특정내역 자동생성 처리 (자동생성되는 특정내역에 대해 stat 를 'I' 해주도록 한다.
- var stat = ds_list3_clcj.getColumn(i, "currowstat");
- if ( stat == "3" ) { // 3:신규 -> 2:신규
- ds_grid_grd_clsphist.setRowType(i, "I");
- }
- }
- // 특정내역 빈줄 추가
- // lf_fSpclGridInsertRow();
- // 특정내역 및 메모 탭 색 변경
- lf_fSetTapListSetting("all");
- // *상병내역
- // 상병내역 빈줄 추가
- lf_fDiagGridInsertRow();
- // 상병 색 표시
- lf_fSetDiagGridColor();
- // 원외처방 그리드 상태를 급여구분 기본값인 "급여"로 필터링한다.
- rdo_cloppayflag.value = "1";
- ds_grid_grd_oprcphist.filterstr = "";
-
- var selectedRdoPay = rdo_cloppayflag.value;
- if(selectedRdoPay == "1") {
- ds_grid_grd_oprcphist.filterstr = "calcpayflag == '0'";
- }
-
- // 처방그리드, 항목구분 색표시
- grp_ordsrch.rdo_payflag.value = "-";
- grp_ordsrch.rdo_actingflag.value = "all";
- grp_ordsrch.rdo_item1.value = "-";
- grp_ordsrch.rdo_actmatflag.value = "-";
- ds_hidden_list4_otpt.setColumn(0, "calcpayflag", "");
- ds_hidden_list4_otpt.setColumn(0, "actingflag", "");
- ds_hidden_list4_otpt.setColumn(0, "ediitem", "");
- ds_hidden_list4_otpt.setColumn(0, "matractflag", "");
- lf_fGetSelectedOrderData2();
- lf_fSetOrderData();
- // "저장" Btn 클릭시에 인적사항이 변경되었는지 여부를 알기 위해 조회한 항목을 임시로 저장해두고 추후에 비교한다.
- ds_hidden_item1_initotpt.copyData(ds_item1_otpt);
- ds_init_orddridlist.filter("dp=='" + ds_item1_otpt.getColumn(0, "orddeptcd") + "'");
- // 제한규정 버튼 색 표시
- if (utlf_isNull(ds_item1_otpt.getColumn(0, "patlimt"))) {
- // btn_limt.enable = false;
- } else {
- btn_limt.color = "#ff0000";
- btn_limt.enable = true;
- }
- //장애환자 여부 추가
- var hndcyn = ds_item1_otpt.getColumn(0, "hndcyn");
- if (hndcyn == "Y") {
- btn_hndc.visible = true;
- } else {
- btn_hndc.visible = false;
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류 / 삭제" Btn 권한을 설정한다.
- ****************************************************************************************/
- function lf_fSetJudgStatBtnAuth()
- {
- var judgendyn = ds_item1_otpt.getColumn(0, "dschjudgprcsstat"); // 심사상태
- var judgrid = ds_item1_otpt.getColumn(0, "judgmdlid"); // 심사중 심사자ID
- var judgnm = ds_item1_otpt.getColumn(0, "judgmdlnm"); // 심사중 심사자ID
- var userid = sysf_getUserInfo("userid");
- if ( judgendyn == "A" || judgendyn == "D" ) { // 심사상태 : 심사중, 보류
- btn_save.enable = true;
- btn_end.enable = true;
- btn_unjudg.enable = true;
- btn_rete.enable = true;
- } else if ( judgendyn == "E" ) { // 심사상태 : 심사완료
- btn_save.enable = false;
- btn_end.enable = false;
- btn_unjudg.enable = true;
- btn_rete.enable = true;
- } else if ( judgendyn == "A" ) { // 심사상태 : 미심사
- btn_save.enable = true;
- btn_end.enable = true;
- btn_unjudg.enable = false;
- btn_rete.enable = true;
- } else {
- btn_save.enable = true;
- btn_end.enable = true;
- btn_unjudg.enable = true;
- btn_rete.enable = true;
- }
- // 보험유형이 자보 또는 산재일 경우
- var insukindcd = ds_item1_otpt.getColumn(0, "insukindcd");
- if ( insukindcd == "31" || insukindcd == "41" ) {
- //opt_insukindcd.style.background = "darksalmon";
- } else {
- //opt_insukindcd.style.background = "lightgrey";
- }
- // 유형보조가 정상(00)이 아닐 경우
- var suppkindcd = ds_item1_otpt.getColumn(0, "suppkindcd");
- if ( !utlf_isNull(suppkindcd) && suppkindcd != "00" ) {
- //opt_suppkind.style.background = "darksalmon"; //"#f7a08b";
- //opt_payownbrate.style.background = "darksalmon"; //"#f7a08b";
- } else {
- //opt_suppkind.style.background = "lightgrey"; //"#f2f2f2";
- //opt_payownbrate.style.background = "lightgrey";
- }
- // 문제환자일 경우
- lf_fSetProbJudgColor();
- // 수술환자의 경우 수술(유) 버튼을 설정한다.
- if (ds_item1_otpt.getColumn(0, "opyn") == "Y") {
- //btn_opyn.visible = true;
- //btn_opynclass") = "btn5_letter4";
- //btn_opyncolor") = "#cc3333"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- } else {
- // btn_opyn.visible = false;
- // btn_opyn.class = "btn2_letter4"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 상병이력 버튼 설정
- if (ds_item1_otpt.getColumn(0, "diaghist") == "Y") {
- //grp_cldihist.btn_diagHist.class = "btn5_letter4";
- //grp_cldihist.btn_diagHist.style.font = "Dotum,9,bold";
- //grp_cldihist.btn_diagHist.color = "#cc3333"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- } else {
- //grp_cldihist.btn_diagHist.class = "btn2_letter4"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 메모이력 버튼 설정
- var memohist = ds_item1_otpt.getColumn(0, "memohist");
- if (memohist == "Y") {
- //grp_clsphist.btn_memohist.class = "btn5_letter4";
- // grp_clsphist.btn_memohist.color = "#cc0000"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- // grp_clsphist.btn_memohist.style.font = "Dotum,9,bold";
- } else {
- //grp_clsphist.btn_memohist.class = "btn2_letter4"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 미시행처방 버튼 설정
- if (ds_item1_otpt.getColumn(0, "unexecord") == "Y") {
- btn_unexecord.class = "btn5";
- btn_unexecord.color = "#cc3333"; //#ff0066"; // 해당 정보가 있는 경우 버튼 색 변경
- btn_unexecord.style.font = "Dotum,9,bold";
- } else {
- btn_unexecord.color = "#006176ff";
- btn_unexecord.style.font = "Dotum,9";
- btn_unexecord.class = "btn2"; // 표준에서 정한 기본 버튼으로 설정
- }
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- lf_fCheckSpclSpecData();
- // 특정내역 탭버튼 초기화
- if (grp_clsphist.btn_case_spclspec.class == "btn_tab") {
- grp_clsphist.btn_case_spclspec.click();
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 문제환자일 경우, 색상표기 변경
- ****************************************************************************************/
- function lf_fSetProbJudgColor()
- {
- var probjudgflag = ds_item1_otpt.getColumn(0, "probjudgflag");
- if ( probjudgflag == "Y" ) {
- //opt_probjudgflag.style.background = "darksalmon";//"#f7a08b";
- } else {
- //opt_probjudgflag.style.background = "lightgrey";//"#f2f2f2"; // output_fix 클래스의 background-color
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01.judgendyn : 심사마감구분
- * Description : "심사완료"~"보류" 처리 후 다음 심사대상자를 조회한다.
- ****************************************************************************************/
- function lf_fGetNextDayJudgTrgtMan(judgendyn)
- {
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
-
- if ( !utlf_isNull(cretno) ) { // 조회된 심사대상자가 있으면
- var trgtManWindow = frmf_getChildWindow("SMPIJ00600"); // SMPIJ00600_외래일일심사대상자조회.xfdl
- if (utlf_isNull(trgtManWindow)) {
- lf_fGetOutDayJudgTrgtManPidSrch();
- trgtManWindow = frmf_getChildWindow("SMPIJ00600");
- }
- // alert(judgendyn);
- var selectedRow = trgtManWindow.ds_grid_grd_otptmast.rowposition;
- var pid = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "pid");
- var orddd = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "orddd");
- var cretno = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "cretno");
- var acptseqno = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "acptseqno");
- var insukindcd = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "insukindcd");
- var dschjudgprcsstat = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "dschjudgprcsstat");
- var judgmdlid = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "judgmdlid");
- var judgnm = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "judgnm");
- var lastupdtdt = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "lastupdtdt");
- lf_fSaveOutDayJudg(judgendyn);
- //alert(rslt);
- // if ( utlf_isNull(rslt) ) {
- // return;
- // }
- // else {
- // if ( rslt == false ) { // 변경된 데이터가 없는 경우
- // ds_cond_item4_endotpt.addrow();
- // ds_cond_item4_endotpt.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- // ds_cond_item4_endotpt.setColumn(0, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- // ds_cond_item4_endotpt.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- // ds_cond_item4_endotpt.setColumn(0, "acptseqno", ds_item1_otpt.getColumn(0, "acptseqno"));
- // ds_cond_item4_endotpt.setColumn(0, "dschjudgprcsstat", judgendyn);
- ds_item1_otpt.setColumn(0, "dschjudgprcsstat", judgendyn);
- tranf_submit({
- id: "TXPIJ00702"
- , service: "bfjudgapp.OutDayJudg"
- , method: "reqExeSaveOutDayJudgEndYN"
- , inds : "endotpt=ds_item1_otpt"
- , async: false
- });
- // }
- // ds_item1_otpt.setColumn(0, "dschjudgprcsstat", judgendyn);
- lf_fGetPersonalData();
- lf_fCheckAuth(); // 화면 권한을 설정한다.
- lf_fSetJudgStatBtnAuth(); // 심사완료여부 상태에 따라 "저장 / 재계산 / 완료 / 미심 / 보류" Btn 권한을 설정한다.
- // }
- // 다음 심사대상자로 넘어간다.
- if ( !utlf_isNull(trgtManWindow) ) {
- var selectedRow = ds_rslt_smpij00600.getColumn(0, "selectedRow");
- if ( !utlf_isNull(selectedRow) ) {
- var maxRow = trgtManWindow.ds_grid_grd_otptmast.rowcount;
- if ( selectedRow < maxRow ) {
- // 1. 환자단위 대상자이동 시작
- if ( trgtManWindow.grd_otptmast.visible == true ) {
- var prevRow = selectedRow;
- selectedRow++;
- ds_rslt_smpij00600.setColumn(0, "selectedRow", selectedRow);
- var tdayinflag = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "tdayinflag");
- // if ( tdayinflag != "N" ) {
- // sysf_messageBox("입원등록한", "I005");
- // }
- // 당일입원환자 메세지 처리 끝
- // 퇴원후 외래접수일 경우 메세지 처리
- var dschrsrvyn = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "dschrsrvyn");
- // if ( dschrsrvyn == "Y" ) {
- // sysf_messageBox("퇴원후 외래접수된", "I005");
- // }
- // 퇴원후 외래접수 메세지 처리 끝
- // // // // 심사상태 변경 처리 (더블클릭한 row가 심사상태가 A, D이면 B로 변경처리)
- // // // if ( dschjudgprcsstat == "A" || dschjudgprcsstat == "D" || utlf_isNull(dschjudgprcsstat) ) {
- // // // ds_cond_item7.setColumn(0, "pid", pid);
- // // // ds_cond_item7.setColumn(0, "orddd", orddd);
- // // // ds_cond_item7.setColumn(0, "cretno", cretno);
- // // // ds_cond_item7.setColumn(0, "acptseqno", acptseqno);
- // // // ds_cond_item7.setColumn(0, "dschjudgprcsstat", "A");
- // // //
- // // // tranf_submit({
- // // // id: "TXPIJ00602"
- // // // , service: "bfjudgapp.OutDayJudg"
- // // // , method: "reqSetDschJudgPrcsStat"
- // // // , inds : "req=ds_cond_item7"
- // // // , async: false
- // // // });
- // // // var userid = sysf_getUserInfo("userid");
- // // // var usernm = sysf_getUserInfo("usernm");
- // // // var currentdate = utlf_getCurrentDate();
- // // // trgtManWindow.ds_grid_grd_otptmast.setColumn(selectedRow, "dschjudgprcsstat", "A");
- // // // trgtManWindow.ds_grid_grd_otptmast.setColumn(selectedRow, "judgnm", usernm);
- // // // trgtManWindow.ds_grid_grd_otptmast.setColumn(selectedRow, "judgmdlid", userid);
- // // // trgtManWindow.ds_grid_grd_otptmast.setColumn(selectedRow, "lastupdtdt", currentdate);
- // // //
- // // // // old 값 기억 시작
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldrow", selectedRow);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldpid", pid);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldorddd", orddd);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldcretno", cretno);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldacptseqno", acptseqno);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "olddschjudgprcsstat", dschjudgprcsstat);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldjudgmdlid", judgmdlid);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldjudgnm", judgnm);
- // // // trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldlastjudgdt", lastjudgdt);
- // // // // old 값 기억 끝
- // // // }
- // 대상자조회 화면에 심사상태 변경
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "dschjudgprcsstat", judgendyn);
- // 대상자조회화면에서 row 앞으로 이동
- trgtManWindow.ds_grid_grd_otptmast.rowposition = selectedRow;
- // 미심사버튼이 클릭되면 대상자 조회화면에서 미심사로 바꾸고, 심사자, 심사일시를 삭제한다.
- if ( judgendyn == "A" ) {
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "judgnm", "");
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "lastupdtdt", "");
- }
- if ( !utlf_isNull(pid) && !utlf_isNull(orddd) && !utlf_isNull(cretno) && !utlf_isNull(acptseqno) && !utlf_isNull(insukindcd) ) {
- ds_rslt_smpij00600.setColumn(0, "pid", pid);
- ds_rslt_smpij00600.setColumn(0, "orddd", orddd);
- ds_rslt_smpij00600.setColumn(0, "cretno", cretno);
- ds_rslt_smpij00600.setColumn(0, "acptseqno", acptseqno);
- ds_rslt_smpij00600.setColumn(0, "insukindcd", insukindcd);
- ds_rslt_smpij00600.setColumn(0, "opyn", trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "opyn"));
- ds_rslt_smpij00600.setColumn(0, "dschjudgprcsstat", trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "olddschjudgprcsstat"));
- ds_rslt_smpij00600.setColumn(0, "judgmdlid", trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "oldjudgmdlid"));
- lf_fGetOutDayJudgMngt();
- }
- else {
- sysf_messageBox("필수정보가 입력되지 않은", "I005"); ///필수정보가 입력되지 않은 환자입니다.
- }
- }
- // 1. 환자단위 대상자이동 끝
- // 2. 처방별 대상자이동 시작 - 다음행의 pid, orddd, cretno, acptseqno 가 같으면 넘어간다.
- else if ( trgtManWindow.grd_specotpt.visible == true ) {
- var curpid = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "pid");
- var curorddd = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "orddd");
- var curcretno = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "cretno");
- var curacptseqno = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "acptseqno");
- var curpid = trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "pid");
- var nextpid;
- var nextorddd;
- var nextcretno;
- var nextacptseqno;
- // 현재 선택된 row 의 다음행부터 loop 돌면서 다른 대상자를 찾는다.
- for ( var i = selectedRow; i < grd_specotpt.rowcount; i++ ) {
- nextpid = trgtManWindow.ds_grid_grd_otptmast.getColumn(i, "pid");
- nextorddd = trgtManWindow.ds_grid_grd_otptmast.getColumn(i, "orddd");
- nextcretno = trgtManWindow.ds_grid_grd_otptmast.getColumn(i, "cretno");
- nextacptseqno = trgtManWindow.ds_grid_grd_otptmast.getColumn(i, "acptseqno");
- if ( curpid == nextpid && curorddd == nextorddd && curcretno == nextcretno && curacptseqno == nextacptseqno ) {
- trgtManWindow.ds_grid_grd_otptmast.setColumn(i, "dschjudgprcsstat", judgendyn);
- }
- else {
- ds_rslt_smpij00600.setColumn(0, "selectedRow", i);
- // 당일입원환자일 경우 메세지 처리
- var tdayinflag = trgtManWindow.ds_grid_grd_otptmast.getColumn(i, "tdayinflag");
- // if ( tdayinflag != "N" ) {
- // sysf_messageBox("입원등록한", "I005");
- // }
- // 당일입원환자 메세지 처리 끝
- // 퇴원후 외래접수일 경우 메세지 처리
- var dschrsrvyn = trgtManWindow.ds_grid_grd_otptmast.getColumn(i, "dschrsrvyn");
- // if (dschrsrvyn == "Y" ) {
- // sysf_messageBox("퇴원후 외래접수된", "I005");
- // }
- // 퇴원후 외래접수 메세지 처리 끝
- // 심사상태 변경 처리 (더블클릭한 row가 심사상태가 A, D이면 B로 변경처리)
- if ( dschjudgprcsstat == "A" || utlf_isNull(dschjudgprcsstat) || dschjudgprcsstat == "D" || dschjudgprcsstat == "E" ) {
- ds_cond_item7.setColumn(0, "pid", pid);
- ds_cond_item7.setColumn(0, "orddd", orddd);
- ds_cond_item7.setColumn(0, "cretno", cretno);
- ds_cond_item7.setColumn(0, "acptseqno", acptseqno);
- ds_cond_item7.setColumn(0, "dschjudgprcsstat", "A");
- tranf_submit({
- id: "TXPIJ00602"
- , service: "bfjudgapp.OutDayJudg"
- , method: "reqSetDschJudgPrcsStat"
- , inds : "req=ds_cond_item7"
- , async: false
- });
- var userid = sysf_getUserInfo("userid");
- var usernm = sysf_getUserInfo("usernm");
- var currentdate = utlf_getCurrentDate();
- trgtManWindow.ds_grid_grd_otptmast.setColumn(i, "dschjudgprcsstat", "A");
- trgtManWindow.ds_grid_grd_otptmast.setColumn(i, "judgnm", usernm);
- trgtManWindow.ds_grid_grd_otptmast.setColumn(i, "judgmdlid", userid);
- trgtManWindow.ds_grid_grd_otptmast.setColumn(i, "lastupdtdt", currentdate);
- // old 값 기억 시작
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldrow", i);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldpid", pid);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldorddd", orddd);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldcretno", cretno);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldacptseqno", acptseqno);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "olddschjudgprcsstat", dschjudgprcsstat);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldjudgmdlid", judgmdlid);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldjudgnm", judgnm);
- trgtManWindow.ds_hidden_oldotpt.setColumn(0, "oldlastjudgdt", lastjudgdt);
- // old 값 기억 끝
- }
- // 대상자조회 화면에 심사상태 변경
- trgtManWindow.ds_grid_grd_otptmast.setColumn(selectedRow, "dschjudgprcsstat", judgendyn);
- // 대상자조회화면에서 row 앞으로 이동
- trgtManWindow.ds_grid_grd_otptmast.rowposition = i;
- // 미심사버튼이 클릭되면 대상자 조회화면에서 미심사로 바꾸고, 심사자, 심사일시를 삭제한다.
- if ( judgendyn == "A" ) {
- trgtManWindow.ds_grid_grd_otptmast.setColumn(selectedRow, "judgnm", "");
- trgtManWindow.ds_grid_grd_otptmast.setColumn(selectedRow, "lastupdtdt", "");
- }
- if ( !utlf_isNull(pid) && !utlf_isNull(orddd) && !utlf_isNull(cretno) && !utlf_isNull(acptseqno) && !utlf_isNull(insukindcd) ) {
- ds_rslt_smpij00600.setColumn(0, "pid", pid);
- ds_rslt_smpij00600.setColumn(0, "orddd", orddd);
- ds_rslt_smpij00600.setColumn(0, "cretno", cretno);
- ds_rslt_smpij00600.setColumn(0, "acptseqno", acptseqno);
- ds_rslt_smpij00600.setColumn(0, "insukindcd", insukindcd);
- ds_rslt_smpij00600.setColumn(0, "opyn", trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "opyn"));
- ds_rslt_smpij00600.setColumn(0, "dschjudgprcsstat", trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "olddschjudgprcsstat"));
- ds_rslt_smpij00600.setColumn(0, "judgmdlid", trgtManWindow.ds_grid_grd_otptmast.getColumn(selectedRow, "oldjudgmdlid"));
- lf_fGetOutDayJudgMngt();
- }
- else {
- sysf_messageBox("필수정보가 입력되지 않은", "I005"); ///필수정보가 입력되지 않은 환자입니다.
- }
- i = grd_specotpt.rowcount;
- }
- }
- }
- // 2. 처방별 대상자이동 끝
- }
- else {
- //sysf_messageBox("조회된 마지막 심사대상자 입니다. 이후 심사 대상자가", "I004"); ///조회된 마지막 심사대상자 입니다. 이후 심사 대상자가 없습니다.
- // 대상자 조회화면 심사상태 변경
- prevRow = selectedRow;
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "dschjudgprcsstat", judgendyn);
- // 미심사버튼이 클릭되면 대상자 조회화면에서 미심사로 바꾸고, 심사자, 심사일시를 삭제한다.
- if ( judgendyn == "A" ) {
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "judgnm", "");
- trgtManWindow.ds_grid_grd_otptmast.setColumn(prevRow, "lastupdtdt", "");
- }
- }
- }
- else {
- sysf_messageBox("대상자조회 화면이 변경되었으므로 다음 대상자를 다시", "C002");
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방 항목 구분 및 선별심사 처방 색깔 구분
- ****************************************************************************************/
- function lf_fSetOrderData()
- {
- //선별심사, 항목구분, 야간가산, 인정기준 색표시
- lf_fSetItemBold();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방 필터링
- ****************************************************************************************/
- function lf_fGetSelectedOrderData()
- {
- var selectedRdoPay = ds_hidden_list2_osclsrch.getColumn(0, "selectedRdoPay");
- var selectedRdoItem = ds_hidden_list2_osclsrch.getColumn(0, "selectedRdoItem");
- var selectedActflag = ds_hidden_list2_osclsrch.getColumn(0, "actflag");
- // 초기화
- for (var i=0; i < ds_init_rdo_item1.rowcount; i++)
- {
- ds_init_rdo_item1.setColumn(i, "color", "");
- ds_init_rdo_item1.setColumn(i, "font", "");
- }
- // "전체" 항목은 default 로 굵게 표시
- ds_init_rdo_item1.setColumn(0, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(0, "font", "Dotum,9,bold");
- for (var i=grd_clodhist.fixedRows; i<grd_clodhist.rows; i ++ ) {
- ds_grid_grd_clodhist.filter("");
- /*
- if ( utlf_isNull(selectedRdoPay) || selectedRdoPay == "-" ) { // 전체
- }
- else if ( selectedRdoPay == "1" ) { // 급여인 경우
- if ( ds_grid_grd_clodhist.getColumn(i, "calcpayflag") != "0" ) { // 급여구분1(P0104 -:해당사항없음, 0:급여, 1:전액본인부담, 2:일반)
- grd_clodhist.rowHidden(i) = true;
- }
- }
- else if ( selectedRdoPay == "2" ) { // 전액본인인 경우
- if ( ds_grid_grd_clodhist.getColumn(i, "calcpayflag") != "1" ) {
- grd_clodhist.rowHidden(i) = true;
- }
- } else if ( selectedRdoPay == "3" ) { // 비급여(일반)인 경우
- if ( ds_grid_grd_clodhist.getColumn(i, "calcpayflag") != "2" ) {
- grd_clodhist.rowHidden(i) = true;
- }
- } else { // 0원인 경우
- if ( ds_grid_grd_clodhist.getColumn(i, "calcamt") != "0" ) {
- grd_clodhist.rowHidden(i) = true;
- }
- }
- if ( selectedActflag == "all" ) { //전체
- grd_clodhist.rowHidden(i) = false;
- }
- else if ( selectedActflag == "act" ) { //시행
- if ( ds_grid_grd_clodhist.getColumn(i, "execprcpstatcd") != "Y" ) {
- grd_clodhist.rowHidden(i) = true;
- } else {
- grd_clodhist.rowHidden(i) = false;
- }
- } else { //미시행
- if ( ds_grid_grd_clodhist.getColumn(i, "execprcpstatcd") != "N" ) {
- grd_clodhist.rowHidden(i) = true;
- } else {
- grd_clodhist.rowHidden(i) = false;
- }
- }
- if ( utlf_isNull(selectedRdoItem) || selectedRdoItem == "-" ) { // 전체
- } else {
- if ( ds_grid_grd_clodhist.getColumn(i, "ediitem1") != selectedRdoItem ) {
- grd_clodhist.rowHidden(i) = true;
- }
- else {
- grd_clodhist.rowHidden(i) = false;
- }
- }
- */
- // 처방 조회부 항목구분 Radio에서 해당 처방이 있는 item을 굵게 표시한다.
- var item1 = ds_grid_grd_clodhist.getColumn(i, "ediitem1"); //항목구분 에 Bold처리하기 위한 체크
- var old_item1 = "";
- if ( item1 != old_item1 ) {
- if ( item1 == "01" ) {
- ds_init_rdo_item1.setColumn(1, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(1, "font", "Dotum,9,bold");
- }
- else if ( item1 == "03" ) {
- ds_init_rdo_item1.setColumn(2, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(2, "font", "Dotum,9,bold");
- }
- else if ( item1 == "04" ) {
- ds_init_rdo_item1.setColumn(3, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(3, "font", "Dotum,9,bold");
- }
- else if ( item1 == "05" ) {
- ds_init_rdo_item1.setColumn(4, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(4, "font", "Dotum,9,bold");
- }
- else if ( item1 == "06" ) {
- ds_init_rdo_item1.setColumn(5, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(5, "font", "Dotum,9,bold");
- }
- else if ( item1 == "07" ) {
- ds_init_rdo_item1.setColumn(6, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(6, "font", "Dotum,9,bold");
- }
- else if ( item1 == "08" ) {
- ds_init_rdo_item1.setColumn(7, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(7, "font", "Dotum,9,bold");
- }
- else if ( item1 == "09" ) {
- ds_init_rdo_item1.setColumn(8, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(8, "font", "Dotum,9,bold");
- }
- else if ( item1 == "10" ) {
- ds_init_rdo_item1.setColumn(9, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(9, "font", "Dotum,9,bold");
- }
- else if ( item1 == "SS" ) {
- ds_init_rdo_item1.setColumn(10, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(10, "font", "Dotum,9,bold");
- }
- else if ( item1 == "TT" ) {
- ds_init_rdo_item1.setColumn(11, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(11, "font", "Dotum,9,bold");
- }
- // else if ( item1 == "UU" ) {
- // ds_init_rdo_item1.setColumn(12, "color", "#ff0000");
- // ds_init_rdo_item1.setColumn(12, "font", "Dotum,9,bold");
- // }
- // else if ( item1 == "WW" ) {
- // ds_init_rdo_item1.setColumn(13, "color", "#ff0000");
- // ds_init_rdo_item1.setColumn(13, "font", "Dotum,9,bold");
- // }
- old_item1 = item1;
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방 Grid 필터용 조회조건을 초기화
- ****************************************************************************************/
- function lf_fInitOrderFilter()
- {
- // 처방Grid용 조회부의 Radio 초기값을 "전체"로 설정한다.
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoPay", "-");
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoItem", "-");
- ds_hidden_list2_osclsrch.setColumn(0, "actflag", "all"); // 시행구분
- ds_hidden_list2_osclsrch.setColumn(0, "selectedRdoMatrAct", "-"); // 재료행위구분
- ds_hidden_list2_osclsrch.setColumn(0, "chkChoiOrdTotAmt", "");
- ds_grid_grd_clodhist.filter("");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 조회된 심사대상자의 특이 인적사항, 보조/요율 등을 계산하여 보여준다.
- ****************************************************************************************/
- function lf_fGetPersonalData()
- {
- var srchrslt = "";
- if ( ds_item1_otpt.getColumn(0, "dethyn") == "Y" ) {
- srchrslt = " [사망환자입니다.]";
- }
- //중증,희귀번호 동시 존재 시 추가 시작
- var sdoamsg = ds_item1_otpt.getColumn(0, "sdoamsg"); //중증번호
- var rooamsg = ds_item1_otpt.getColumn(0, "rooamsg"); //희귀번호
- // 중증번호만 존재시..sdoamsg
- if ( !utlf_isNull(sdoamsg) && utlf_isNull(rooamsg) ) {
- opt_srchrslt.visible = true;
- // roundrect1.visible = true;
- cmb_itemraremsg.visible = false;
- // 희귀번호만 존재시.. rooamsg
- } else if ( utlf_isNull(sdoamsg) && !utlf_isNull(rooamsg) ) {
-
- opt_srchrslt.visible = true;
- // roundrect1.visible = true;
- cmb_itemraremsg.visible = false;
- // 희귀난치성 산정특례환자의 등록번호를 보여준다.
- var rooamsg = ds_item1_otpt.getColumn(0, "rooamsg");
- if ( !utlf_isNull(rooamsg) ) {
- ds_item1_otpt.setColumn(0, "sdoamsg", rooamsg);
- }
- // 두번호 모두 존재시.. sdoamsg, rooamsg
- } else if ( !utlf_isNull(sdoamsg) && !utlf_isNull(rooamsg) ) {
- opt_srchrslt.visible = false;
- // roundrect1.visible = false;
- cmb_itemraremsg.visible = true;
- ds_hidden_itemraremsg.clearData();
- ds_hidden_itemraremsg.addRow();
- ds_hidden_itemraremsg.setColumn(0, "cd", "중증번호");
- ds_hidden_itemraremsg.setColumn(0, "nm", sdoamsg);
- ds_hidden_itemraremsg.addRow();
- ds_hidden_itemraremsg.setColumn(1, "cd", "희귀번호");
- ds_hidden_itemraremsg.setColumn(1, "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 = ds_item1_otpt.getColumn(0, "suppkindcd");
- var payownbrate = ds_item1_otpt.getColumn(0, "payownbrate");
- var supprate = suppkindcd+"/"+payownbrate; // 보조유형ID과 요율%로 combo 의 value
- ds_hidden_item1_otpt.setColumn(0, "patsupprate", supprate);
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정 환자에 대해 그동안 작성된 심사자메모, 청구메모 내역을 조회한다.
- ****************************************************************************************/
- function lf_fGetMemoHistList()
- {
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- if ( !utlf_isNull(cretno) ) {
- // 1. 메모이력조회 화면을 호출한다.
- var objArg = new Object();
- objArg.sPid = ds_item1_otpt.getColumn(0, "pid");
- objArg.sOrddeptcd = ds_item1_otpt.getColumn(0, "orddeptcd");
- objArg.sIoflag = "O";
- objArg.sRefterm = "2";
- objArg.sAnofildinclyn = "Y";
- objArg.sFromdd = "";
- objArg.sTodd = "";
- objArg.sOrdfildcd = ds_item1_otpt.getColumn(0, "ordfildcd");
- var objRetVal = frmf_modal("SPPIZ00300","SPPIZ00300", objArg,"","","","","","","","","","M");
- // 2. 조회 후 작업을 처리한다.
- var selectMemo = ds_rslt_sppiz00300.rowcount;
- if (selectMemo > 0) {
- for( i = 0 ; i < ds_rslt_sppiz00300.rowcount; i++) {
- var choimemo = utlf_trim(ds_rslt_sppiz00300.getColumn(i, "choimemo"));
- var choiedicd = ds_rslt_sppiz00300.getColumn(i, "edicd");
- if (!utlf_isNull(choimemo)) {
- ds_rslt_sppiz00300.setColumn(i, "choimemo", choimemo);
- var destRef = ds_rslt_sppiz00300.getColumn(i, "destRef");
- // 2-1. 심사메모로 전달한다.
- // 2-2. 청구메모로 전달한다.
- // 2-3. 처방별주석(JX999)으로 전달한다.
- if (destRef == "prcpmemo") {
- var clsprow = ds_grid_grd_clsphist.rowposition;
- var addcnt = 0;
- var oscledicd;
- var lnunitspclspecyn;
- var rowNum;
- var edicd;
- var ans;
- var spclspec;
- var rowstatus;
- for (var i = 0; i < ds_grid_grd_clodhist.rowcount; i++) {
- oscledicd = ds_grid_grd_clodhist.getColumn(i, "basecd");
- if (choiedicd == oscledicd) {
- lnunitspclspecyn = ds_grid_grd_clodhist.getColumn(i, "lnunitspclspecyn");
- rowNum = -1;
- if (lnunitspclspecyn) {
- // 기존에 입력한 JX999가 존재하는지 확인
- for (var j = 0; j < ds_grid_grd_clsphist.rowcount; j++) {
- edicd = ds_grid_grd_clsphist.getColumn(j, "edicd");
- if (oscledicd ==edicd) {
- if (ds_grid_grd_clsphist.getColumn(j, "spclcd") == "JX999" && ds_grid_grd_clsphist.getRowType(j) != 8) {
- rowNum = j;
- j = ds_grid_grd_clsphist.rowcount;
- }
- }
- }
- // 기존에 존재하는 경우
- if (rowNum > -1) {
- ans = sysf_messageBox(oscledicd + "(EDI코드) 에 등록된 메모가 있습니다. 기존 내역에 추가할 경우 예(Yes)\n 새로운 내역으로 변경하시려면 아니오(No)", "S003");
- if (ans == 6) { // 6: yes
- spclspec = ds_grid_grd_clsphist.getColumn(rowNum, "spclspec");
- ds_grid_grd_clsphist.setColumn(rowNum, "spclspec", spclspec + "\n" + choimemo);
- rowstatus = ds_grid_grd_clsphist.getRowType(rowNum);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.setRowType(rowNum, "I");
- }
- else {
- ds_grid_grd_clsphist.setRowType(rowNum, "U");
- }
- }
- else if (ans == 7) { // 7: no
- ds_grid_grd_clsphist.setColumn(rowNum, "spclspec", choimemo);
- rowstatus = ds_grid_grd_clsphist.getRowType(rowNum);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.setRowType(rowNum, "I");
- }
- else {
- ds_grid_grd_clsphist.setRowType(rowNum, "U");
- }
- }
- }
- // 기존에 존재하지 않는 경우
- else {
- clsprow = clsprow.addRow();
- ds_grid_grd_clsphist.setRowType(clsprow, "I");
- ds_grid_grd_clsphist.setColumn(clsprow, "unitflag", "J");
- ds_grid_grd_clsphist.setColumn(clsprow, "edicd", oscledicd);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclcd", "JX999");
- ds_grid_grd_clsphist.setColumn(clsprow, "cdnm", "기타내역");
- ds_grid_grd_clsphist.setColumn(clsprow, "spclspec", choimemo);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclformat", "X(700)");
- ds_grid_grd_clsphist.setColumn(clsprow, "detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcd", oscledicd);
- ds_grid_grd_clsphist.setColumn(clsprow, "oldspclcd", "JX999");
- ds_grid_grd_clsphist.setColumn(clsprow, "seqno", "");
- // 처방 그리드에서 추가할 데이터를 불러온다.
- for (var j = 0; j < ds_grid_grd_clodhist.rowcount; j++) {
- basecd = ds_grid_grd_clodhist.getColumn(j, "basecd");
- if (choiedicd == basecd) {
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpdd", ds_grid_grd_clodhist.getColumn(j, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpno", ds_grid_grd_clodhist.getColumn(j, "prcpno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcphistno", ds_grid_grd_clodhist.getColumn(j, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "execprcpseqno", ds_grid_grd_clodhist.getColumn(j, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "edicdflag", ds_grid_grd_clodhist.getColumn(j, "edicdflag"));
- j = ds_grid_grd_clsphist.rowcount;
- }
- }
- ds_grid_grd_clsphist.setColumn(clsprow, "currowstat", "");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ oscledicd +" / 특정내역명칭: "+ "기타내역" +" / 기재내역: "+ choimemo +" / 기재형식: "+ "X(700)");
- addcnt++;
- }
- }
- // 기존에 JX999가 없는 경우
- else {
- clsprow = clsprow.addRow();
- ds_grid_grd_clsphist.setRowType(clsprow, "I");
- ds_grid_grd_clsphist.setColumn(clsprow, "unitflag", "J");
- ds_grid_grd_clsphist.setColumn(clsprow, "edicd", basecd);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclcd", "JX999");
- ds_grid_grd_clsphist.setColumn(clsprow, "cdnm", "기타내역");
- ds_grid_grd_clsphist.setColumn(clsprow, "spclspec", choimemo);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclformat", "X(700)");
- ds_grid_grd_clsphist.setColumn(clsprow, "detldesc", "특정내역의 구분코드가 없는 경우에는 기타 줄번호(확장 번호)단위의 기타내역에 기재");
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcd", basecd);
- ds_grid_grd_clsphist.setColumn(clsprow, "oldspclcd", "JX999");
- ds_grid_grd_clsphist.setColumn(clsprow, "seqno", "");
- // 처방 그리드에서 추가할 데이터를 불러온다.
- for (var j = 0; j < ds_grid_grd_clodhist.rowcount; j++) {
- basecd = ds_grid_grd_clodhist.getColumn(j, "basecd");
- if (basecd == choiedicd) {
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpdd", ds_grid_grd_clodhist.getColumn(j, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpno", ds_grid_grd_clodhist.getColumn(j, "prcpno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcphistno", ds_grid_grd_clodhist.getColumn(j, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "execprcpseqno", ds_grid_grd_clodhist.getColumn(j, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "edicdflag", ds_grid_grd_clodhist.getColumn(j, "edicdflag"));
- ds_grid_grd_clsphist.setColumn(clsprow, "lnunitspclspecyn", "*");
- ds_grid_grd_clsphist.setColumn(clsprow, "jx999lnunitspclspecyn", "*");
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", "#ffff00");
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", "#ffff00");
- }
- }
- ds_grid_grd_clsphist.setColumn(clsprow, "currentstat", "");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ basecd +" / 특정내역명칭: "+ "기타내역" +" / 기재내역: "+ choimemo +" / 기재형식: "+ "X(700)");
- addcnt++;
- }
- }
- }
- } else if (destRef == "judgmemo") {
- // 심사메모로 전달
- var judgmemo = ds_grid_grd_judgmemo.getColumn(0, "spclspec");
- var userid = sysf_getUserInfo("usernm");
- var objDate = new Date();
- var fstrgstdt;
- fstrgstdt = objDate.toFormatString("%Y%m%d%H%M%S"); // YYYYMMDD HHMMSS
-
- if (judgmemo) {
- // 기존 심사메모가 공백이 아닌 경우 선택된 메모를 심사화면 메모 뒤에 덧붙인다.
- var insrow = ds_grid_grd_judgmemo.rowcount;
- var iRow = ds_grid_grd_judgmemo.insertRow(insrow++);
- ds_grid_grd_judgmemo.setColumn(iRow, "unitflag" , "M");
- ds_grid_grd_judgmemo.setColumn(iRow, "spclcd" , "MX999");
- ds_grid_grd_judgmemo.setColumn(iRow, "usermemoyn" , "Y");
- ds_grid_grd_judgmemo.setColumn(iRow, "spclspec" , choimemo);
- ds_grid_grd_judgmemo.setColumn(iRow, "userid" , userid);
- ds_grid_grd_judgmemo.setColumn(iRow, "fstrgstdt" , fstrgstdt);
- ds_grid_grd_judgmemo.setColumn(iRow, "pid" , ds_item1_otpt.getColumn(0, "pid"));
- ds_grid_grd_judgmemo.setColumn(iRow, "cretno" , ds_item1_otpt.getColumn(0, "cretno"));
- ds_grid_grd_judgmemo.setColumn(iRow, "orddd" , ds_item1_otpt.getColumn(0, "orddd"));
- ds_grid_grd_judgmemo.setColumn(iRow, "spclmemoflag", "U");
- } else {
- if (choiedicd) {
- // 처방별 메모를 전달하는 경우임
- // 동일한 EDI 코드가 있을 경우만 추가
- for (var j = 0; j < ds_list2_clod.rowcount; j++) {
- var clodedicd = ds_list2_clod.getColumn(j, "basecd");
- if (choiedicd == clodedicd) {
- var insrow = ds_grid_grd_judgmemo.rowcount;
- var iRow = ds_grid_grd_judgmemo.insertRow(insrow++);
- ds_grid_grd_judgmemo.setColumn(iRow, "unitflag" , "M");
- ds_grid_grd_judgmemo.setColumn(iRow, "spclcd" , "MX999");
- ds_grid_grd_judgmemo.setColumn(iRow, "usermemoyn" , "Y");
- ds_grid_grd_judgmemo.setColumn(iRow, "spclspec" , choimemo);
- ds_grid_grd_judgmemo.setColumn(iRow, "userid" , userid);
- ds_grid_grd_judgmemo.setColumn(iRow, "fstrgstdt" , fstrgstdt);
- ds_grid_grd_judgmemo.setColumn(iRow, "pid" , ds_item1_otpt.getColumn(0, "pid"));
- ds_grid_grd_judgmemo.setColumn(iRow, "cretno" , ds_item1_otpt.getColumn(0, "cretno"));
- ds_grid_grd_judgmemo.setColumn(iRow, "orddd" , ds_item1_otpt.getColumn(0, "orddd"));
- ds_grid_grd_judgmemo.setColumn(iRow, "spclmemoflag", "U");
-
- j = ds_list2_clod.rowcount;
- }
- }
- } else {
- var insrow = ds_grid_grd_judgmemo.rowcount;
- var iRow = ds_grid_grd_judgmemo.insertRow(insrow++);
- ds_grid_grd_judgmemo.setColumn(iRow, "unitflag" , "M");
- ds_grid_grd_judgmemo.setColumn(iRow, "spclcd" , "MX999");
- ds_grid_grd_judgmemo.setColumn(iRow, "usermemoyn" , "Y");
- ds_grid_grd_judgmemo.setColumn(iRow, "spclspec" , choimemo);
- ds_grid_grd_judgmemo.setColumn(iRow, "userid" , userid);
- ds_grid_grd_judgmemo.setColumn(iRow, "fstrgstdt" , fstrgstdt);
- ds_grid_grd_judgmemo.setColumn(iRow, "pid" , ds_item1_otpt.getColumn(0, "pid"));
- ds_grid_grd_judgmemo.setColumn(iRow, "cretno" , ds_item1_otpt.getColumn(0, "cretno"));
- ds_grid_grd_judgmemo.setColumn(iRow, "orddd" , ds_item1_otpt.getColumn(0, "orddd"));
- ds_grid_grd_judgmemo.setColumn(iRow, "spclmemoflag", "U");
- }
- }
- grp_clsphist.swt_spclmemo.tabindex = 1;
- } else if (destRef == "edimemo") {
- // 청구메모로 전달
- var edimemo = utlf_trim(ds_grid_grd_edimemo.getColumn(0, "edimemo"));
- if (edimemo) {
- // 기존 청구메모가 공백이 아닌 경우 선택된 메모를 심사화면 메모 뒤에 덧붙인다.
- var insrow = ds_grid_grd_edimemo.rowcount;
- var iRow = ds_grid_grd_edimemo.insertRow(insrow++);
- ds_grid_grd_edimemo.setColumn(iRow, "unitflag", "M");
- ds_grid_grd_edimemo.setColumn(iRow, "spclcd", "MX999");
- ds_grid_grd_edimemo.setColumn(iRow, "usermemoyn", "N");
- ds_grid_grd_edimemo.setColumn(iRow, "spclspec", choimemo);
- } else {
- if (choiedicd) {
- // 처방별 메모를 전달하는 경우임
- // 동일한 EDI 코드가 있을 경우 * 표시
- for (var j = 0; j < ds_list2_clod.rowcount; j++) {
- var clodedicd = ds_list2_clod.getColumn(j, "basecd");
- if (choiedicd == clodedicd) {
- var insrow = ds_grid_grd_edimemo.rowcount;
- var iRow = ds_grid_grd_edimemo.insertRow(insrow++);
- ds_grid_grd_edimemo.setColumn(iRow, "unitflag", "M");
- ds_grid_grd_edimemo.setColumn(iRow, "spclcd", "MX999");
- ds_grid_grd_edimemo.setColumn(iRow, "usermemoyn", "N");
- ds_grid_grd_edimemo.setColumn(iRow, "spclspec", choimemo);
-
- j = ds_list2_clod.rowcount;
- }
- }
- } else {
- var insrow = ds_grid_grd_edimemo.rowcount;
- var iRow = ds_grid_grd_edimemo.insertRow(insrow++);
- ds_grid_grd_edimemo.setColumn(iRow, "unitflag", "M");
- ds_grid_grd_edimemo.setColumn(iRow, "spclcd", "MX999");
- ds_grid_grd_edimemo.setColumn(iRow, "usermemoyn", "N");
- ds_grid_grd_edimemo.setColumn(iRow, "spclspec", choimemo);
- }
- }
- grp_clsphist.swt_spclmemo.tabindex = 2;
- }
-
- // 특정내역을 sort한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if (addcnt > 0) {
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- }
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01. spclmemo : 특정메모
- 02. usermemoyn 사용자메모여부
- * Description : 심사자메모, EDI청구메모를 특정내역 형식에 맞춰 설정한다.
- ****************************************************************************************/
- function lf_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);
- //}
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 상병이력 조회 및 전달
- ****************************************************************************************/
- function lf_fGetDiagHistList()
- {
- ds_hidden_smpiz00100_rslt.clearData();
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- if (!utlf_isNull(cretno)) {
- // 1. 상병이력조회 화면을 호출한다.
- var objArg = new Object();
- objArg.sPid = ds_item1_otpt.getColumn(0, "pid");
- objArg.sOrdfromdd = ds_item1_otpt.getColumn(0, "orddd");
- objArg.sOrdtodd = "";
- frmf_modal("SMPIZ00100","SMPIZ00100",objArg,"","","","","","","","","","M");
- var cnt = ds_hidden_smpiz00100_rslt.rowcount;
- // 2. 심사상병전달 처리한다.
- if ( cnt > 0 ) {
- var insrow = ds_grid_grd_cldihist.rowcount;
- var addcnt = 0;
- var diagcd;
- var isSame = false;
- var diagorddeptcd;
- var diagseq;
- for (var i = 0; i < ds_hidden_smpiz00100_rslt.rowcount; i++) {
- diagcd = ds_hidden_smpiz00100_rslt.getColumn(i, "diagcd");
- isSame = false;
- // 2-1. 동일 상병이 존재하면 입력하지 않는다.
- for (var j = 0; j < ds_grid_grd_cldihist.rowcount; j++) {
- if (diagcd == ds_grid_grd_cldihist.getColumn(j, "diagcd")) {
- // 동일한 상병이 존재하는 경우
- isSame = true;
- j = ds_grid_grd_cldihist.rowcount;
- }
- }
- // 2-2. 동일 상병이 존재하지 않으면 추가한다.
- if (isSame == false) {
-
- insrow = ds_grid_grd_cldihist.rowcount-1;
- ds_grid_grd_cldihist.setRowType(insrow, "I");
- ds_grid_grd_cldihist.setColumn(insrow, "rowstat", "I");
- ds_grid_grd_cldihist.setColumn(insrow, "diagkindcd", ds_hidden_smpiz00100_rslt.getColumn(i, "diagkindcd"));
- ds_grid_grd_cldihist.setColumn(insrow, "diagkindcd", "0");
- ds_grid_grd_cldihist.setColumn(insrow, "diagseq", insrow+1);
- ds_grid_grd_cldihist.setColumn(insrow, "diagcd", ds_hidden_smpiz00100_rslt.getColumn(i, "diagcd"));
- ds_grid_grd_cldihist.setColumn(insrow, "diagnm", ds_hidden_smpiz00100_rslt.getColumn(i, "diaghngnm"));
- ds_grid_grd_cldihist.setColumn(insrow, "diagengnm", ds_hidden_smpiz00100_rslt.getColumn(i, "diagengnm"));
- diagorddeptcd = ds_grid_grd_cldihist.getColumn(0, "diagorddeptcd");
- if (utlf_isNull(diagorddeptcd)) {
- diagorddeptcd = ds_item1_otpt.getColumn(0, "orddeptcd");
- }
- ds_grid_grd_cldihist.setColumn(insrow, "diagorddeptcd", diagorddeptcd);
- ds_grid_grd_cldihist.setColumn(insrow, "ordfromdd", ds_grid_grd_cldihist.getColumn(0, "ordfromdd"));
- ds_grid_grd_cldihist.setColumn(insrow, "toot", "-");
- ds_grid_grd_cldihist.setColumn(insrow, "toot1", "-");
- ds_grid_grd_cldihist.setColumn(insrow, "seqno", insrow);
- ds_grid_grd_cldihist.setColumn(insrow, "addflag", "Y");
- ds_grid_grd_cldihist.setColumn(insrow, "drinptyn", "N");
- ds_grid_grd_cldihist.setColumn(insrow, "pid", ds_item1_otpt.getColumn(0, "pid"));
- ds_grid_grd_cldihist.setColumn(insrow, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_grid_grd_cldihist.setColumn(insrow, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- addcnt++;
- }
- }
-
- // 3. 추가가 된 경우에만 소트한다.
- if (addcnt > 0) {
- // 3-1. 소트
- //lf_fSortDiagNo();
- // 정렬 함수 변경으로 심사상병 전달시
- // 3-3. seq 재부여
- var seq = 1;
- for (var j = 0; j < ds_grid_grd_cldihist.rowcount; j++) {
- diagseq = ds_grid_grd_cldihist.getColumn(j, "diagseq");
- if (diagseq <= "D0") {
- ds_grid_grd_cldihist.setColumn(j, "diagseq", seq);
- seq++;
- }
- }
- // 3-2. 빈줄 추가
- lf_fDiagGridInsertRow();
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 줄단위 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- ****************************************************************************************/
- function lf_fSetSpclSpecJX999()
- {
- var iTotSpclCdCnt = 0; // DB에 저장될 JX999 코드 개수
- var rowstatus;
- var spclcd;
- var edicd;
- var calcscorcd;
- var edicdflag;
- var spclmemo;
- var iSpclCdCnt = 0;
- var iSpclCdTotLength = 0;
- var insCharTotCnt = 0;
- var iLen = 0; // 특정내역 길이가 700 byte가 되었는지 계산
- var iStartInx = 0; // 특정내역 시작 index
- var iCharCnt = 0; // 몇글자로 구성되는지 계산
- var sBit;
- var delclsp = ds_send_item3_delclsp.rowcount;
- var max = 0;
- for (var i=0; i<ds_grid_grd_clsphist.rowcount; i++) {
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- edicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- calcscorcd = ds_grid_grd_clsphist.getColumn(i, "calcscorcd");
- edicdflag = ds_grid_grd_clsphist.getColumn(i, "edicdflag");
- if (rowstatus != 1 && spclcd == "JX999") {
- // if (delclsp == 0) {
- max = ds_send_item3_delclsp.addRow();
- // }
- ds_send_item3_delclsp.setColumn(max, "unitflag", "J");
- ds_send_item3_delclsp.setColumn(max, "spclmemoflag", "E");
- ds_send_item3_delclsp.setColumn(max, "edicd", edicd);
- ds_send_item3_delclsp.setColumn(max, "spclcd", "JX999");
- }
- // 해당 EDI코드의 JX999는 모두 삭제하고 새로 추가하므로 "삭제" 상태가 아닌 모든 경우를 전송한다.
- if (rowstatus != 1 && rowstatus != 8 && spclcd == "JX999") { // 0 : new, 8: delete
- spclmemo = ds_grid_grd_clsphist.getColumn(i, "spclspec");
- iSpclCdCnt = 0;
- iSpclCdTotLength = utlf_getStringLength(spclmemo);
- insCharTotCnt = 0;
- if (iSpclCdTotLength > 350) { // 새로 입력된 특정코드가 700byte를 넘는다.
- // 영문(700자), 한글(350자) 길이로 잘라서 n개의 특정코드를 만든다.
- iLen = 0; // 특정내역 길이가 700 byte가 되었는지 계산
- iStartInx = 0; // 특정내역 시작 index
- iCharCnt = 0; // 몇글자로 구성되는지 계산
- for (var j = 0; j < iSpclCdTotLength; j++) {
- sBit = spclmemo.charAt(j);
- iCharCnt++;
- if (escape(sBit).length > 4) {
- iLen += 2;
- }
- else {
- iLen += 1;
- }
- if (iLen >= 350) { // 영문(700자), 한글(350자)
- // iTotSpclCdCnt++;
- iTotSpclCdCnt = ds_send_item3_lnunitmemo.addRow();
- iSpclCdCnt++;
- if (iLen == 350) { // 700byte로 길이가 끝난 경우
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo.substr(iStartInx, iCharCnt));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", ds_grid_grd_clsphist.getColumn(i, "prcpdd"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", ds_grid_grd_clsphist.getColumn(i, "prcpno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", ds_grid_grd_clsphist.getColumn(i, "prcphistno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", ds_grid_grd_clsphist.getColumn(i, "execprcpseqno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "calcscorcd", calcscorcd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclmemoflag", "E");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "J");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclcd", "JX999");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "remfact", "X(700)");
- iStartInx += iCharCnt;
- insCharTotCnt += 350;
- }
- else if (iLen > 350) { // 영문(700자), 한글(350자)를 넘는 경우
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo.substr(iStartInx, iCharCnt -1));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", ds_grid_grd_clsphist.getColumn(i, "prcpdd"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", ds_grid_grd_clsphist.getColumn(i, "prcpno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", ds_grid_grd_clsphist.getColumn(i, "prcphistno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", ds_grid_grd_clsphist.getColumn(i, "execprcpseqno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "calcscorcd", calcscorcd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclmemoflag", "E");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "J");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclcd", "JX999");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "remfact", "X(700)");
- iStartInx += iCharCnt -1;
- i--;
- insCharTotCnt += 349;
- }
- iCharCnt = 0;
- iLen = 0;
- }
- }
- if (iSpclCdTotLength != insCharTotCnt) {
- // iTotSpclCdCnt++;
- iTotSpclCdCnt = ds_send_item3_lnunitmemo.addRow();
- iSpclCdCnt++;
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo.substring(iStartInx, spclmemo.length));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", ds_grid_grd_clsphist.getColumn(i, "prcpdd"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", ds_grid_grd_clsphist.getColumn(i, "prcpno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", ds_grid_grd_clsphist.getColumn(i, "prcphistno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", ds_grid_grd_clsphist.getColumn(i, "execprcpseqno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "calcscorcd", calcscorcd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclmemoflag", "E");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "J");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclcd", "JX999");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "remfact", "X(700)");
- }
- }
- else if (iSpclCdTotLength > 0) { // 새로 추가된 내용이 있다.
- // iTotSpclCdCnt++;
- iTotSpclCdCnt = ds_send_item3_lnunitmemo.addRow();
- iSpclCdCnt++;
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", ds_grid_grd_clsphist.getColumn(i, "prcpdd"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", ds_grid_grd_clsphist.getColumn(i, "prcpno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", ds_grid_grd_clsphist.getColumn(i, "prcphistno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", ds_grid_grd_clsphist.getColumn(i, "execprcpseqno"));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "calcscorcd", calcscorcd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclmemoflag", "E");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "J");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclcd", "JX999");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "remfact", "X(700)");
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 원외처방 특정내역 중 JX999를 특정내역 형식에 맞춰 설정한다.
- ****************************************************************************************/
- function lf_fSetOprcSpclSpecJX999()
- {
- var iTotSpclCdCnt = 0; // DB에 저장될 JX999 코드 개수
- var rowstatus;
- var spclcd;
- var edicd;
- var calcscorcd;
- var edicdflag;
- var delclsp = ds_cond_item3_delclsp.rowcount;
- var max = 0;
- ds_send_item3_lnunitmemo.clearData();
-
- for (var i = 0; i < ds_grid_grd_oprcphist.rowcount; i++) {
- rowstatus = ds_grid_grd_oprcphist.getRowType(i);
- spclspec = ds_grid_grd_oprcphist.getColumn(i, "spclspec");
- edicd = ds_grid_grd_oprcphist.getColumn(i, "edicd");
- edicdflag = ds_grid_grd_oprcphist.getColumn(i, "edicdflag");
- if (rowstatus != 1 && !utlf_isNull(spclspec)) {
- // if (delclsp != null) {
- max = ds_send_item3_delclsp.addRow();
- // }
- if (max > -1) {
- ds_send_item3_delclsp.setColumn(max, "unitflag", "O");
- ds_send_item3_delclsp.setColumn(max, "spclmemoflag", "E");
- ds_send_item3_delclsp.setColumn(max, "edicd", edicd);
- ds_send_item3_delclsp.setColumn(max, "spclcd", "JX999");
- }
- }
- // 해당 EDI코드의 JX999는 모두 삭제하고 새로 추가하므로 "삭제" 상태가 아닌 모든 경우를 전송한다.
- if (rowstatus != 0 && rowstatus != 8 && utlf_isNull(spclspec)) {
- var spclspec = ds_grid_grd_oprcphist.getColumn(i, "spclspec");
- var prcpdd = ds_grid_grd_oprcphist.getColumn(i, "prcpdd");
- var prcpno = ds_grid_grd_oprcphist.getColumn(i, "prcpno");
- var prcphistno = ds_grid_grd_oprcphist.getColumn(i, "prcphistno");
- var execprcpseqno = ds_grid_grd_oprcphist.getColumn(i, "execprcpseqno");
- var iSpclCdCnt = 0;
- var iSpclCdTotLength = utlf_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 < iSpclCdTotLength; 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 = ds_send_item3_lnunitmemo.addRow();
- iSpclCdCnt++;
- if (iLen == 350) { // 700byte로 길이가 끝난 경우
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo.substr(iStartInx, iCharCnt));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "O");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", prcpdd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", prcpno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", prcphistno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", execprcpseqno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- iStartInx += iCharCnt;
- insCharTotCnt += 350;
- }
- else if (iLen > 350) { // 영문(700자), 한글(350자)를 넘는 경우
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo.substr(iStartInx, iCharCnt - 1));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "O");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", prcpdd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", prcpno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", prcphistno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", execprcpseqno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- iStartInx += (iCharCnt - 1);
- j--;
- insCharTotCnt += 349;
- }
- iCharCnt = 0;
- iLen = 0;
- }
- }
- if (iSpclCdTotLength != insCharTotCnt) {
- iTotSpclCdCnt = ds_send_item3_lnunitmemo.addRow();
- iSpclCdCnt++;
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo.substring(iStartInx, spclmemo.length));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "O");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", prcpdd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", prcpno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", prcphistno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", execprcpseqno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- }
- }
- else if (iSpclCdTotLength > 0) { // 새로 추가된 내용이 있다.
- iTotSpclCdCnt = ds_send_item3_lnunitmemo.addRow();
- iSpclCdCnt++;
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "spclspec", spclmemo.substring(iStartInx, spclmemo.length));
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicd", edicd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "unitflag", "O");
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpdd", prcpdd);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcpno", prcpno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "prcphistno", prcphistno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "execprcpseqno", execprcpseqno);
- ds_send_item3_lnunitmemo.setColumn(iTotSpclCdCnt, "edicdflag", edicdflag);
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방 T필드 더블클릭 (특정내역 입력)
- ****************************************************************************************/
- function lf_fSetLnUnitSpclSpec()
- {
- // 1. 특정내역 상세관리 화면으로 데이터를 전달한다.
- ds_cond_sppiz00500.clearData();
- ds_cond_sppiz00500.addRow();
- ds_rslt_sppiz00500.clearData();
- // ds_rslt_sppiz00500.addRow();
- var cur_row = ds_grid_grd_clodhist.rowposition;
- var basecd = ds_grid_grd_clodhist.getColumn(cur_row, "basecd");
- var hngnm = ds_grid_grd_clodhist.getColumn(cur_row, "hngnm");
- if ( !utlf_isNull(basecd) ) {
- var lnunitspclspecyn = ds_grid_grd_clodhist.getColumn(cur_row, "lnunitspclspecyn");
- if ( utlf_isNull(lnunitspclspecyn) ) {
- ds_cond_sppiz00500.addRow();
- ds_cond_sppiz00500.setColumn(0, "flag", "I");
- ds_cond_sppiz00500.setColumn(0, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(0, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(0, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(0, "spclcd" , "JX999");
- ds_cond_sppiz00500.setColumn(0, "detldesc", "");
- ds_cond_sppiz00500.setColumn(0, "spclspec", "");
- ds_cond_sppiz00500.setColumn(0, "spclformat", "");
- ds_cond_sppiz00500.setColumn(0, "rownum", "");
- ds_cond_sppiz00500.setColumn(0, "cdnm", "");
- ds_cond_sppiz00500.setColumn(0, "unitflag", "J");
- } else { // 기존에 입력된 줄단위 특정내역이 있는 경우
- var rowcnt = 0;
- var setrow = 0;
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- var spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- var calcscorcdnm = ds_grid_grd_clsphist.getColumn(i, "calcscorcdnm");
- if ( basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(i, "unitflag") == "J" ) {
- var spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- if ( spclcd != "JT001" && ds_grid_grd_clsphist.getRowType(i) != 4 ) {
- var rowcnt = ds_cond_sppiz00500.addRow();
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", i);
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", spclEdicd);
- ds_cond_sppiz00500.setColumn(rowcnt, "hngnm", calcscorcdnm);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", spclcd);
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", ds_grid_grd_clsphist.getColumn(i, "spclformat"));
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", ds_grid_grd_clsphist.getColumn(i, "cdnm"));
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", ds_grid_grd_clsphist.getColumn(i, "detldesc"));
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclcd", spclcd);
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- setrow = i;
- }
- }
- }
- var aRow = ds_cond_sppiz00500.addRow();
- ds_cond_sppiz00500.setColumn(aRow, "flag", "");
- ds_cond_sppiz00500.setColumn(aRow, "snglcalcscorcd", basecd);
- ds_cond_sppiz00500.setColumn(aRow, "hngnm", hngnm);
- ds_cond_sppiz00500.setColumn(aRow, "edilnno", "-");
- ds_cond_sppiz00500.setColumn(aRow, "spclcd", ds_grid_grd_clsphist.getColumn(setrow, "spclcd"));
- ds_cond_sppiz00500.setColumn(aRow, "detldesc", ds_grid_grd_clsphist.getColumn(setrow, "detldesc"));
- ds_cond_sppiz00500.setColumn(aRow, "spclspec", ds_grid_grd_clsphist.getColumn(setrow, "spclspec"));
- ds_cond_sppiz00500.setColumn(aRow, "spclformat", ds_grid_grd_clsphist.getColumn(setrow, "spclformat"));
- ds_cond_sppiz00500.setColumn(aRow, "cdnm", ds_grid_grd_clsphist.getColumn(setrow, "cdnm"));
- ds_cond_sppiz00500.setColumn(aRow, "rownum", setrow);
- ds_cond_sppiz00500.setColumn(aRow, "unitflag", "J");
- }
- frmf_modal("SPPIZ00500", "SPPIZ00500", {objDs:ds_cond_sppiz00500}, "", "", "", "", "", "", "", "", "", "M"); // SPPIZ00500_특정내역상세관리.xfdl
- // 2. 넘어온 특정내역 데이터를 처리한다.
- var rsltcnt = ds_rslt_sppiz00500.rowcount;
- if ( rsltcnt > 0 ) {
- var addcnt = 0;
- for (var i=rsltcnt; i > 0; i-- ) {
- var flag = ds_rslt_sppiz00500.getColumn(i, "flag");
- var rownum = ds_rslt_sppiz00500.getColumn(i, "rownum");
- var newspclcd = ds_rslt_sppiz00500.getColumn(i, "spclcd");
- var newcdnm = ds_rslt_sppiz00500.getColumn(i, "cdnm");
- var newspclspec = ds_rslt_sppiz00500.getColumn(i, "spclspec");
- var newspclformat = ds_rslt_sppiz00500.getColumn(i, "spclformat ");
- var newdetldesc = ds_rslt_sppiz00500.getColumn(i, "detldesc");
- // 2-1. 특정내역 추가
- if ( flag == "I" ) {
- var clsprow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setColumn(clsprow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(clsprow, "unitflag", "J");
- ds_grid_grd_clsphist.setColumn(clsprow, "edicd", ds_cond_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(clsprow, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcd", ds_cond_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcdnm", ds_cond_sppiz00500.getColumn(0, "hngnm"));
- ds_grid_grd_clsphist.setColumn(clsprow, "oldspclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "currowstat", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpdd", ds_list2_oscl.getColumn(row, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpno", ds_list2_oscl.getColumn(row, "prcpno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcphistno", ds_list2_oscl.getColumn(row, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "execprcpseqno", ds_list2_oscl.getColumn(row, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "edicdflag", ds_list2_oscl.getColumn(row, "edicdflag"));
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- addcnt++;
- // 2-2. 특정내역 수정
- } else if ( flag == "U" ) {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setColumn(rownum, "edicd", ds_cond_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcd", ds_cond_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcdnm", ds_cond_sppiz00500.getColumn(0, "hngnm"));
- ds_grid_grd_clsphist.setColumn(rownum, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(rownum, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(rownum, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(rownum, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(rownum, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(rownum, "oldspclcd", newspclcd);
- var rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if ( rowstatus == 2 ) {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "I");
- ds_grid_grd_clsphist.setRowType(rownum, "I");
- } else {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setRowType(rownum, "U");
- }
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = ds_rslt_sppiz00500.getColumn(i, "oldspclcd");
- var oldspclspec = ds_rslt_sppiz00500.getColumn(i, "oldspclspec");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- // 2-3. 특정내역 삭제
- } else if ( flag == "D" && rownum != "" ) {
- var rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if ( rowstatus == 2 ) {
- ds_grid_grd_clsphist.deleteRow(rownum);
- } else {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "D");
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- }
- }
- var cnt = 0;
- for (var j=0; j<ds_grid_grd_clsphist.rowcount; j++ ) {
- var spclEdicd = ds_grid_grd_clsphist.getColumn(j, "edicd");
- if ( basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(j, "unitflag") == "J" ) {
- if ( ds_grid_grd_clsphist.getRowType(rownum) != 8 ) {
- cnt++;
- }
- }
- }
- if ( cnt > 0 ) {
- if ( utlf_isNull(lnunitspclspecyn) ) { // 기존에는 입력된 내역이 없다가 추가된 경우임
- for (var j=0; j<ds_grid_grd_clsphist.rowcount; j++ ) {
- var osclEdicd = ds_grid_grd_clsphist.getColumn(j, "basecd");
- if ( basecd == osclEdicd ) {
- ds_grid_grd_clsphist.setColumn(j, "lnunitspclspecyn", "*");
- for (var k=0; k<ds_grid_grd_clsphist.rowcount; k++ ) {
- var spclEdicd = ds_grid_grd_clsphist.getColumn(k, "edicd");
- if ( basecd == spclEdicd && ds_grid_grd_clsphist.getColumn(k, "spclcd") == "JX999" ) {
- ds_grid_grd_clsphist.setColumn(j, "jx999lnunitspclspecyn", "*");
- }
- }
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + j +' ? "#ffff00" : "")');
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + j +' ? "#ffff00" : "")');
- }
- }
- }
- } else { // 특정내역이 한건도 없게 된 경우
- if ( lnunitspclspecyn ) { // 기존에는 입력된 내역이 있다가 삭제된 경우임
- for (var j=0; j<ds_grid_grd_clsphist.rowcount; j++ ) {
- var osclEdicd = ds_grid_grd_clsphist.getColumn(j, "basecd");
- if ( basecd == osclEdicd ) {
- ds_grid_grd_clsphist.setColumn(j, "lnunitspclspecyn", "");
- ds_grid_grd_clsphist.setColumn(j, "jx999lnunitspclspecyn", "");
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + j +' ? "#ffffff" : "")');
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + j +' ? "#ffffff" : "")');
- }
- }
- }
- }
- }
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if ( addcnt > 0 ) {
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- } else {
- sysf_messageBox("EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이", "I004"); ///EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 원외처방 T필드 더블클릭 (특정내역 입력)
- ****************************************************************************************/
- function lf_fSetOprcpSpclSpec()
- {
- // 1. 원외처방 특정내역 상세관리 화면을 호출한다.
- ds_cond_sppiz01700.clearData();
- ds_cond_sppiz01700.addRow();
- ds_rslt_sppiz01700.clearData();
- var row = ds_grid_grd_oprcphist.rowposition;
- var edicd = ds_grid_grd_oprcphist.getColumn(row, "edicd");
- var hngnm = ds_grid_grd_oprcphist.getColumn(row, "hngnm");
- var clopdd = ds_grid_grd_oprcphist.getColumn(row, "clopdd");
- var clopno = ds_grid_grd_oprcphist.getColumn(row, "clopno");
- if ( !utlf_isNull(edicd) ) {
- var spclspecyn = ds_grid_grd_oprcphist.getColumn(row, "spclspecyn");
- if ( utlf_isNull(spclspecyn)) {
- ds_cond_sppiz01700.setColumn(0, "flag", "I");
- ds_cond_sppiz01700.setColumn(0, "snglcalcscorcd", edicd);
- ds_cond_sppiz01700.setColumn(0, "hngnm", hngnm);
- ds_cond_sppiz01700.setColumn(0, "clopdd", clopdd);
- ds_cond_sppiz01700.setColumn(0, "clopno", clopno);
- ds_cond_sppiz01700.setColumn(0, "edilnno", "-");
- ds_cond_sppiz01700.setColumn(0, "spclcd" , "JX999");
- ds_cond_sppiz01700.setColumn(0, "detldesc", "");
- ds_cond_sppiz01700.setColumn(0, "spclspec", "");
- ds_cond_sppiz01700.setColumn(0, "spclformat", "");
- ds_cond_sppiz01700.setColumn(0, "rownum", row);
- ds_cond_sppiz01700.setColumn(0, "cdnm", "");
- ds_cond_sppiz01700.setColumn(0, "unitflag", "J");
- } else { // 기존에 입력된 줄단위 원외처방특정내역이 있는 경우
- var rowcnt = 0;
- var setrow = 0;
- for (var i=0; i<ds_grid_grd_oprcphist.rowcount; i++ ) {
- var edicd2 = ds_grid_grd_clsphist.getColumn(i, "edicd");
- var calcscorcdnm = ds_grid_grd_clsphist.getColumn(i, "calcscorcdnm");
- if ( edicd == edicd2 && ds_grid_grd_clsphist.getColumn(i, "unitflag") == "O" ) {
- var spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- if ( spclcd != "JT001" && ds_grid_grd_clsphist.getRowType(i) != 4 ) {
- var rowcnt = ds_cond_sppiz01700.addRow();
- ds_cond_sppiz01700.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz01700.setColumn(rowcnt, "rownum", i);
- ds_cond_sppiz01700.setColumn(rowcnt, "snglcalcscorcd", edicd2);
- ds_cond_sppiz01700.setColumn(rowcnt, "hngnm", calcscorcdnm);
- ds_cond_sppiz01700.setColumn(rowcnt, "clopdd", clopdd);
- ds_cond_sppiz01700.setColumn(rowcnt, "clopno", clopno);
- ds_cond_sppiz01700.setColumn(rowcnt, "edilnno", "-");
- ds_cond_sppiz01700.setColumn(rowcnt, "spclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz01700.setColumn(rowcnt, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- ds_cond_sppiz01700.setColumn(rowcnt, "spclformat", ds_grid_grd_clsphist.getColumn(i, "spclformat"));
- ds_cond_sppiz01700.setColumn(rowcnt, "cdnm", ds_grid_grd_clsphist.getColumn(i, "cdnm"));
- ds_cond_sppiz01700.setColumn(rowcnt, "detldesc", ds_grid_grd_clsphist.getColumn(i, "detldesc"));
- ds_cond_sppiz01700.setColumn(rowcnt, "oldspclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz01700.setColumn(rowcnt, "oldspclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- setrow = i;
- }
- }
- }
- ds_cond_sppiz01700.setColumn(0, "flag", "");
- ds_cond_sppiz01700.setColumn(0, "snglcalcscorcd", edicd);
- ds_cond_sppiz01700.setColumn(0, "hngnm", hngnm);
- ds_cond_sppiz01700.setColumn(0, "clopdd", clopdd);
- ds_cond_sppiz01700.setColumn(0, "clopno", clopno);
- ds_cond_sppiz01700.setColumn(0, "edilnno", "-");
- ds_cond_sppiz01700.setColumn(0, "spclcd", ds_grid_grd_clsphist.getColumn(setrow, "spclcd"));
- ds_cond_sppiz01700.setColumn(0, "detldesc", ds_grid_grd_clsphist.getColumn(setrow, "detldesc"));
- ds_cond_sppiz01700.setColumn(0, "spclspec", ds_grid_grd_clsphist.getColumn(setrow, "spclspec"));
- ds_cond_sppiz01700.setColumn(0, "spclformat", ds_grid_grd_clsphist.getColumn(setrow, "spclformat"));
- ds_cond_sppiz01700.setColumn(0, "cdnm", ds_grid_grd_clsphist.getColumn(setrow, "cdnm"));
- ds_cond_sppiz01700.setColumn(0, "rownum", setrow);
- ds_cond_sppiz01700.setColumn(0, "unitflag", "J");
- }
- var objArg = new Object();
- objArg.sSnglcalcscorcd = ds_cond_sppiz01700.getColumn(0, "snglcalcscorcd");
- objArg.sClopdd = ds_cond_sppiz01700.getColumn(0, "clopdd");
- objArg.sClopno = ds_cond_sppiz01700.getColumn(0, "clopno");
- objArg.sEdilnno = ds_cond_sppiz01700.getColumn(0, "edilnno");
- objArg.sSpclformat = ds_cond_sppiz01700.getColumn(0, "spclformat");
- objArg.sSpclcd = ds_cond_sppiz01700.getColumn(0, "spclcd");
- objArg.sSpclspec = ds_cond_sppiz01700.getColumn(0, "spclspec");
- objArg.sDetldesc = ds_cond_sppiz01700.getColumn(0, "detldesc");
- objArg.ds_cond_sppiz01700 = ds_cond_sppiz01700;
- objArg.objDs = ds_grid_grd_clsphist;
- var rtn = frmf_modal("SPPIZ01700","SPPIZ01700", objArg,"","","","","","","","","","M"); // SPPIZ01700_원외처방특정내역상세관리.xfdl
- // 2. 넘어온 원외처방 특정내역을 처리한다.
- var rsltcnt = ds_rslt_sppiz01700.rowcount;
- if ( rsltcnt > 0 ) {
- var clsprow = 0;
- var addcnt = 0;
- for (var i=rsltcnt-1; i>-1; i--){
- var flag = ds_rslt_sppiz01700.getColumn(i, "flag");
- var rownum = ds_rslt_sppiz01700.getColumn(i, "rownum");
- var newspclcd = ds_rslt_sppiz01700.getColumn(i, "spclcd");
- var newcdnm = ds_rslt_sppiz01700.getColumn(i, "cdnm");
- var newspclspec = ds_rslt_sppiz01700.getColumn(i, "spclspec");
- var newspclformat = ds_rslt_sppiz01700.getColumn(i, "spclformat");
- var newdetldesc = ds_rslt_sppiz01700.getColumn(i, "detldesc");
- // 2-1. 특정내역 추가
- if ( flag == "I" ) {
- clsprow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setColumn(clsprow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(clsprow, "unitflag", "O");
- ds_grid_grd_clsphist.setColumn(clsprow, "edicd", ds_cond_sppiz01700.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(clsprow, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcd", ds_grid_grd_oprcphist.getColumn(row, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcdnm", ds_grid_grd_oprcphist.getColumn(row, "hngnm"));
- ds_grid_grd_clsphist.setColumn(clsprow, "oldspclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpdd", ds_grid_grd_oprcphist.getColumn(row, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpno", ds_grid_grd_oprcphist.getColumn(row, "prcpno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcphistno", ds_grid_grd_oprcphist.getColumn(row, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "execprcpseqno", ds_grid_grd_oprcphist.getColumn(row, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "currowstat", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "edicdflag", ds_grid_grd_oprcphist.getColumn(row, "edicdflag"));
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- addcnt++;
- // 2-2. 특정내역 수정
- } else if ( flag == "U" ) {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setColumn(rownum, "edicd", ds_cond_sppiz01700.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcd", ds_cond_sppiz01700.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "calcscorcdnm", ds_cond_sppiz01700.getColumn(0, "hngnm"));
- ds_grid_grd_clsphist.setColumn(rownum, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(rownum, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(rownum, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(rownum, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(rownum, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(rownum, "oldspclcd", newspclcd);
- var rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if ( rowstatus == 2 ) {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "I");
- ds_grid_grd_clsphist.setRowType(rownum, "I");
- } else {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setRowType(rownum, "U");
- }
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = ds_rslt_sppiz01700.getColumn(i, "oldspclcd");
- var oldspclspec = ds_rslt_sppiz01700.getColumn(i, "oldspclspec");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- // 2-3. 특정내역 삭제
- } else if ( flag == "D" && rownum != "" ) {
- var rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if ( rowstatus == 2 ) {
- ds_grid_grd_clsphist.deleteRow(rownum);
- } else {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "D");
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- }
- }
- lf_fSetClcjRowStatus();
- var cnt = 0;
- for (var j=0; j<ds_grid_grd_clsphist.rowcount; j++ ) {
- var clopEdicd = ds_grid_grd_clsphist.getColumn(j, "edicd");
- if ( edicd == clopEdicd && ds_grid_grd_clsphist.getColumn(j, "unitflag") == "O" ) {
- if ( ds_grid_grd_clsphist.getRowType(j) != 8 ) {
- cnt++;
- }
- }
- }
- if ( cnt > 0 ) {
- if ( utlf_isNull(spclspecyn) ) { // 기존에는 입력된 내역이 없다가 추가된 경우임
- for (var j=0; j< ds_grid_grd_oprcphist.rowcount; j++ ) {
- var clopEdicd = ds_grid_grd_oprcphist.getColumn(j, "edicd");
- if ( edicd == clopEdicd ) {
- ds_grid_grd_oprcphist.setColumn(j, "spclspecyn", "*");
- for (var k=0; k<ds_grid_grd_clsphist.rowcount; k++ ) {
- var spclEdicd = ds_grid_grd_clsphist.getColumn(k, "edicd");
- if ( clopEdicd == spclEdicd && ds_grid_grd_clsphist.getColumn(k, "spclcd") == "JX999" ) {
- ds_grid_grd_oprcphist.setColumn(j, "jx999spclspecyn", "*");
- }
- }
- // ds_grid_grd_oprcphist.setCellProperty("body", ds_grid_grd_oprcphist.getBindCellIndex("body", "edicd"), "background", 'EXPR(currow == ' + j +' ? "#ffff00" : "")');
- // ds_grid_grd_oprcphist.setCellProperty("body", ds_grid_grd_oprcphist.getBindCellIndex("body", "edicd"), "background2", 'EXPR(currow == ' + j +' ? "#ffff00" : "")');
- }
- }
- }
- } else { // 특정내역이 한건도 없게 된 경우
- if ( spclspecyn ) { // 기존에는 입력된 내역이 있다가 삭제된 경우임
- for (var j=0; j<ds_grid_grd_clsphist.rowcount; j++ ) {
- var clopEdicd = ds_grid_grd_oprcphist.getColumn(j, "edicd");
- if ( edicd == clopEdicd ) {
- ds_grid_grd_clsphist.setColumn(j, "spclspecyn", "");
- ds_grid_grd_clsphist.setColumn(j, "jx999specyn", "");
- // ds_grid_grd_oprcphist.setCellProperty("body", ds_grid_grd_oprcphist.getBindCellIndex("body", "edicd"), "background", 'EXPR(currow == ' + j +' ? "#ffffff" : "")');
- // ds_grid_grd_oprcphist.setCellProperty("body", ds_grid_grd_oprcphist.getBindCellIndex("body", "edicd"), "background2", 'EXPR(currow == ' + j +' ? "#ffffff" : "")');
- }
- }
- }
- }
- }
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if ( addcnt > 0 ) {
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- } else {
- sysf_messageBox("EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이", "I004"); ///EDI코드가 입력되지 않았으며 해당 줄단위 특정내역이 없습니다.
- }
- }
- // 특정내역 rowstatus 세팅
- function lf_fSetClcjRowStatus()
- {
- for (var k=ds_grid_grd_clsphist.rowcount-1; k>=1; k--) {
- var rowstatus = ds_grid_grd_clsphist.getColumn(k, "rowstat");
- if (rowstatus == "I") ds_grid_grd_clsphist.setRowType(k, "I");
- else if (rowstatus == "U") ds_grid_grd_clsphist.setRowType(k, "U")
- else if (rowstatus == "D") ds_grid_grd_clsphist.setRowType(k, "D")
- else if (rowstatus == "R") ds_grid_grd_clsphist.deleteRow(k);
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 Grid 에서 선택한 줄단위 특정내역을 조회하고, 명세서단위 특정내역을 수정/입력한다.
- ****************************************************************************************/
- function lf_fSetDocRefLnSpclSpec()
- {
- // 1. 특정내역 상세관리 화면을 호출한다.
- ds_cond_sppiz00500.clearData();
- ds_cond_sppiz00500.addRow();
- ds_rslt_sppiz00500.clearData();
- var row = ds_grid_grd_clsphist.rowposition;
- var edicd = ds_grid_grd_clsphist.getColumn(row, "edicd");
- var unitflag = ds_grid_grd_clsphist.getColumn(row, "unitflag");
- if ( unitflag == "J" ) {
- // 삭제상태인 경우 처방Grid에서 입력,수정은 가능하지만 특정내역Grid에서는 편집할 수 없다.
- var rowstatus = ds_grid_grd_clsphist.getRowType(row);
- if ( rowstatus == 8 ) { // delete
- sysf_messageBox("삭제된 특정내역은 수정할 수", "I004"); ///삭제된 특정내역은 수정할 수 없습니다.
- return;
- }
- }
- var rowcnt = 0;
- for (var i=0; i<ds_grid_grd_clsphist.rowcount; i++ ) {
- var spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- if ( edicd == spclEdicd && ds_grid_grd_clsphist.getColumn(i, "unitflag") == unitflag ) {
- var spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- if ( spclcd != "JT001" && ds_grid_grd_clsphist.getRowType(i) != 4 ) { // 확인코드가 아닌 경우
- rowcnt = ds_cond_sppiz00500.addRow();
- ds_cond_sppiz00500.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00500.setColumn(rowcnt, "rownum", i);
- ds_cond_sppiz00500.setColumn(rowcnt, "snglcalcscorcd", spclEdicd);
- ds_cond_sppiz00500.setColumn(rowcnt, "edilnno", "0");
- ds_cond_sppiz00500.setColumn(rowcnt, "spclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- ds_cond_sppiz00500.setColumn(rowcnt, "spclformat", ds_grid_grd_clsphist.getColumn(i, "spclformat"));
- ds_cond_sppiz00500.setColumn(rowcnt, "cdnm", ds_grid_grd_clsphist.getColumn(i, "cdnm"));
- ds_cond_sppiz00500.setColumn(rowcnt, "detldesc", ds_grid_grd_clsphist.getColumn(i, "detldesc"));
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00500.setColumn(rowcnt, "oldspclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- }
- }
- }
- ds_cond_sppiz00500.setColumn(0, "flag", "");
- ds_cond_sppiz00500.setColumn(0, "snglcalcscorcd", edicd);
- ds_cond_sppiz00500.setColumn(0, "edilnno", "0");
- ds_cond_sppiz00500.setColumn(0, "spclcd", ds_grid_grd_clsphist.getColumn(row, "spclcd"));
- ds_cond_sppiz00500.setColumn(0, "detldesc", ds_grid_grd_clsphist.getColumn(row, "detldesc"));
- ds_cond_sppiz00500.setColumn(0, "spclspec", ds_grid_grd_clsphist.getColumn(row, "spclspec"));
- ds_cond_sppiz00500.setColumn(0, "spclformat", ds_grid_grd_clsphist.getColumn(row, "spclformat"));
- ds_cond_sppiz00500.setColumn(0, "rownum", row);
- ds_cond_sppiz00500.setColumn(0, "cdnm", ds_grid_grd_clsphist.getColumn(row, "cdnm"));
- ds_cond_sppiz00500.setColumn(0, "unitflag", unitflag);
- frmf_modal("SPPIZ00500", "SPPIZ00500", {objDs:ds_cond_sppiz00500});//, "", "", "", "", "", "", "", "", "", "M"); // SPPIZ00500_특정내역상세관리.xfdl
- // 2. 넘어온 데이터를 처리한다.
- var rsltcnt = ds_rslt_sppiz00500.rowcount;
- if ( rsltcnt > 0 ) {
- var clsprow = 0;
- var addcnt = 0;
- for (var i=rsltcnt; i > 0; i-- ) {
- var flag = ds_rslt_sppiz00500.getColumn(i, "flag");
- var rownum = ds_rslt_sppiz00500.getColumn(i, "rownum");
- var newspclcd = ds_rslt_sppiz00500.getColumn(i, "spclcd");
- var newcdnm = ds_rslt_sppiz00500.getColumn(i, "cdnm");
- var newspclspec = ds_rslt_sppiz00500.getColumn(i, "spclspec");
- var newspclformat = ds_rslt_sppiz00500.getColumn(i, "spclformat ");
- var newdetldesc = ds_rslt_sppiz00500.getColumn(i, "detldesc");
- // 2-1. 특정내역을 추가한다.
- if ( flag == "I" ) {
- clsprow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setColumn(clsprow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(clsprow, "unitflag", unitflag);
- ds_grid_grd_clsphist.setColumn(clsprow, "edicd", ds_cond_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(clsprow, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcd", ds_cond_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "oldspclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpdd", ds_grid_grd_clsphist.getColumn(row, "prcpdd"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpno", ds_grid_grd_clsphist.getColumn(row, "prcpno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "prcphistno", ds_grid_grd_clsphist.getColumn(row, "prcphistno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "execprcpseqno", ds_grid_grd_clsphist.getColumn(row, "execprcpseqno"));
- ds_grid_grd_clsphist.setColumn(clsprow, "currowstat", "");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- addcnt++;
- // 2-2. 특정내역을 수정한다.
- } else if ( flag == "U" ) {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setColumn(rownum, "edicd", ds_cond_sppiz00500.getColumn(0, "snglcalcscorcd"));
- ds_grid_grd_clsphist.setColumn(rownum, "spclcd", newspclcd);
- ds_grid_grd_clsphist.setColumn(rownum, "cdnm", newcdnm);
- ds_grid_grd_clsphist.setColumn(rownum, "spclspec", newspclspec);
- ds_grid_grd_clsphist.setColumn(rownum, "spclformat", newspclformat);
- ds_grid_grd_clsphist.setColumn(rownum, "detldesc", newdetldesc);
- ds_grid_grd_clsphist.setColumn(rownum, "oldspclcd", newspclcd);
- var rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if ( rowstatus == 2 ) {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "I");
- ds_grid_grd_clsphist.setRowType(rownum, "I");
- } else {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "U");
- ds_grid_grd_clsphist.setRowType(rownum, "U");
- }
- // 특정코드, 특정내역이 변경되었거나 삭제된 특정코드를 조회하여 "확인"을 선택한 경우
- var oldspclcd = ds_rslt_sppiz00500.getColumn(i, "oldspclcd");
- var oldspclspec = ds_rslt_sppiz00500.getColumn(i, "oldspclspec");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ newcdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ newspclformat);
- // 2-3. 특정내역을 삭제한다.
- } else if ( flag == "D" && rownum != "" ) {
- var rowstatus = ds_grid_grd_clsphist.getRowType(rownum);
- if ( rowstatus == 2 ) {
- ds_grid_grd_clsphist.deleteRow(rownum);
- } else {
- ds_grid_grd_clsphist.setColumn(rownum, "rowstat", "D");
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "입력된 줄단위 특정내역이 없습니다.");
- }
- }
- if ( unitflag == "M" ) { // 명세서 단위
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- lf_fCheckSpclSpecData();
- } else { // 줄단위인 경우
- var cnt = 0;
- for (var j=0; j<ds_grid_grd_clsphist.rowcount; j++ ) {
- var spclEdicd = ds_grid_grd_clsphist.getColumn(j, "edicd");
- if ( edicd == spclEdicd && ds_grid_grd_clsphist.getColumn(j, "unitflag") == "J" ) {
- if ( ds_grid_grd_clsphist.getRowType(j) != 8 ) {
- cnt++;
- }
- }
- }
- if ( cnt > 0 ) {
- for (var j = 0; j < ds_grid_grd_clsphist.rowcount; j++ ) {
- var osclEdicd = ds_grid_grd_clsphist.getColumn(j, "basecd");
- if ( edicd == osclEdicd ) {
- ds_grid_grd_clsphist.setColumn(j, "lnunitspclspecyn", "*");
- for (var k = 0; k< ds_grid_grd_clsphist.rowcount; k++ ) {
- var spclEdicd = ds_grid_grd_clsphist.getColumn(k, "edicd");
- if ( osclEdicd == spclEdicd && ds_grid_grd_clsphist.getColumn(k, "spclcd") == "JX999" ) {
- ds_grid_grd_clsphist.setColumn(j, "jx999lnunitspclspecyn", "*");
- }
- }
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + j +' ? "#ffff00" : "")');
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + j +' ? "#ffff00" : "")');
- }
- }
- } else { // 특정내역이 한건도 없게 된 경우
- for (var j = 0; j < ds_grid_grd_clsphist.rowcount; j++ ) {
- var osclEdicd = ds_grid_grd_clsphist.getColumn(j, "basecd");
- if ( edicd == osclEdicd ) {
- ds_grid_grd_clsphist.setColumn(j, "lnunitspclspecyn", "");
- ds_grid_grd_clsphist.setColumn(j, "jx999lnunitspclspecyn", "");
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + j +' ? "#ffffff" : "")');
- // ds_grid_grd_clsphist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + j +' ? "#ffffff" : "")');
- }
- }
- }
- }
- // 3. 특정내역을 소팅한다. - 특정내역을 소트해야 하는 시기는 특정내역이 추가된 경우 뿐이다.
- if ( addcnt > 0 ) {
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 Grid 에서 선택한 확인코드를 조회하고 줄단위 특정내역을 수정/입력한다.
- ****************************************************************************************/
- function lf_fSetCnfmCdSpclSpec()
- {
- var cur_row = ds_grid_grd_clsphist.rowposition;
- // 1. 확인코드 조회 화면을 호출한다.
- // ds_cond_sppiz01100.clearData();
- // ds_cond_sppiz01100.addRow();
- // ds_cond_sppiz01100.setColumn(0, "code", ds_grid_grd_clsphist.getColumn(cur_row, "spclspec"));
- // frmf_modal("SPPIZ01100", "SPPIZ01100", {ds_init_sppiz01100:ds_cond_sppiz01100});//, "", "", "", "", "", "", "", "", "", "M");
- // 1. 확인코드 조회 팝업을 호출한다.
- var objArg = new Object();
- objArg.sCode = ds_grid_grd_clsphist.getColumn(cur_row, "spclspec");
- var rtn = frmf_modal("SPPIZ01100","SPPIZ01100", objArg,"","","","","","","","","","M");
- // 2. 조회 결과를 처리한다.
- if (!utlf_isNull(rtn)) {
- var cnfmcd = rtn.sCode; // ds_rslt_sppiz01100.getColumn(0, "code");
- var basecd = ds_grid_grd_clsphist.getColumn(cur_row, "edicd");
- var osclEdicd;
- // 2-1. 처방그리드 확인코드를 수정한다.
- for (var i = 0; i < ds_grid_grd_clodhist.rowcount; i++) {
- osclEdicd = ds_grid_grd_clodhist.getColumn(i, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_clodhist.updatecontrol = false;
- ds_grid_grd_clodhist.setColumn(i, "cnfmcd", cnfmcd);
- ds_grid_grd_clodhist.updatecontrol = true;
- }
- }
- // 2-2. 특정내역 그리드 확인코드를 수정한다.
- var rowstatus = ds_grid_grd_clsphist.getRowType(cur_row);
- if (!utlf_isNull(cnfmcd)) {
- if (rowstatus != 8) {
- ds_grid_grd_clsphist.setColumn(cur_row, "spclspec", cnfmcd);
- if (rowstatus != 2) {
- ds_grid_grd_clsphist.setRowType(cur_row, "U");
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "확인코드 - JT001 / 입력코드내역 : "+ cnfmcd +" / 기재형식 : X(5)");
- }
- }
- else {
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.deleteRow(cur_row);
- }
- else {
- ds_grid_grd_clsphist.setRowType(cur_row, "D");
- ds_grid_grd_clsphist.setColumn(cur_row, "rowstat", "D");
- ds_grid_grd_clsphist.setColumn(cur_row, "spclspec", cnfmcd);
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "입력된 확인코드 내역이 없습니다.");
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : SPPIZ00700_심사Comment조회.xfdl 호출(심사자메모,EDI메모)
- ****************************************************************************************/
- function lf_fGetJudgEdiComment(memocls, mflag)
- {
- var ordfildcd = ds_item1_otpt.getColumn(0, "ordfildcd");
- var insukind = ds_item1_otpt.getColumn(0, "insukindcd");
- var objArg = new Object();
- objArg.sMemoflag = "O";
- objArg.sMemocls = memocls;
- objArg.sOrdfildcd = ordfildcd;
- objArg.sInsukind = insukind;
- objArg.sIoflag = "O";
- objArg.sJudgrid = "";
- objArg.sEdiitem1 = "";
- var rtnObj = frmf_modal("SPPIZ00700","SPPIZ00700", objArg,"","","","","","","","","","M");
- for ( var i = 0; i < rtnObj.rowcount; i++ )
- {
- var pid = ds_item1_otpt.getColumn(0, "pid");
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- var orddd = ds_item1_otpt.getColumn(0, "orddd");
- var userid = sysf_getUserInfo("usernm");
- var fstrgstdt = urlf_getStrDate(utlf_getCurrentDateTime().replace(" ",""));
- if (mflag == "judg") {
- var nRow = ds_grid_grd_judgmemo.addRow();
- ds_grid_grd_judgmemo.setColumn(nRow, "pid", pid);
- ds_grid_grd_judgmemo.setColumn(nRow, "cretno", cretno);
- ds_grid_grd_judgmemo.setColumn(nRow, "orddd", orddd);
- ds_grid_grd_judgmemo.setColumn(nRow, "unitflag", "M");
- ds_grid_grd_judgmemo.setColumn(nRow, "spclcd", "");
- ds_grid_grd_judgmemo.setColumn(nRow, "spclmemoflag", "U");
- ds_grid_grd_judgmemo.setColumn(nRow, "userid", userid);
- ds_grid_grd_judgmemo.setColumn(nRow, "fstrgstdt", fstrgstdt);
- ds_grid_grd_judgmemo.setColumn(nRow, "spclspec", rtnObj.getColumn(i, "memo"));
- } else if (mflag == "edi") {
- var nRow = ds_grid_grd_edimemo.addRow();
- ds_grid_grd_edimemo.setColumn(nRow, "pid", pid);
- ds_grid_grd_edimemo.setColumn(nRow, "cretno", cretno);
- ds_grid_grd_edimemo.setColumn(nRow, "orddd", orddd);
- ds_grid_grd_edimemo.setColumn(nRow, "unitflag", "M");
- ds_grid_grd_edimemo.setColumn(nRow, "spclcd", "MX999");
- ds_grid_grd_edimemo.setColumn(nRow, "spclmemoflag", "E");
- ds_grid_grd_edimemo.setColumn(nRow, "userid", userid);
- ds_grid_grd_edimemo.setColumn(nRow, "fstrgstdt", fstrgstdt);
- ds_grid_grd_edimemo.setColumn(nRow, "spclspec", rtnObj.getColumn(i, "memo"));
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : MT004 특정내역 한줄 추가
- ****************************************************************************************/
- function lf_fSetSpclMT004()
- {
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- if (!utlf_isNull(cretno)) {
- // 1. 특정내역에 MT004가 존재하면 이를 삭제한다.
- var spclcd;
- var gridrowstatus;
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- gridrowstatus = ds_grid_grd_clsphist.getRowType(i);
- if (spclcd == "MT004" && gridrowstatus != 8) {
- if (gridrowstatus == 2) {
- ds_grid_grd_clsphist.deleteRow(i);
- }
- else {
- ds_grid_grd_clsphist.setRowType(i, "D");
- ds_grid_grd_clsphist.setColumn(i, "rowstat", "D");
- }
- }
- }
- // 2. 특정내역에 MT004가 없으면 이를 추가한다.
- var clspRow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setColumn(clspRow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(clspRow, "unitflag", "M");
- ds_grid_grd_clsphist.setColumn(clspRow, "edicd", "-");
- ds_grid_grd_clsphist.setColumn(clspRow, "spclcd", "MT004");
- ds_grid_grd_clsphist.setColumn(clspRow, "cdnm", "소명자료 구분");
- ds_grid_grd_clsphist.setColumn(clspRow, "spclspec", "Y");
- ds_grid_grd_clsphist.setColumn(clspRow, "spclformat", "X(1)");
- ds_grid_grd_clsphist.setColumn(clspRow, "detldesc", "소명자료를 첨부하는 경우 'Y'를 기재");
- ds_grid_grd_clsphist.setColumn(clspRow, "calcscorcd", "-");
- ds_grid_grd_clsphist.setColumn(clspRow, "oldspclcd", "MT004");
- ds_grid_grd_clsphist.setColumn(clspRow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(clspRow, "prcpdd", "");
- ds_grid_grd_clsphist.setColumn(clspRow, "prcpno", "");
- ds_grid_grd_clsphist.setColumn(clspRow, "prcphistno", "");
- ds_grid_grd_clsphist.setColumn(clspRow, "execprcpseqno", "");
- ds_grid_grd_clsphist.setColumn(clspRow, "currowstat", "1");
- ds_grid_grd_clsphist.setColumn(clspRow, "edicdflag", "-");
- ds_hidden_list3.setColumn(0, "msgspclformat", "");
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- grp_clsphist.btn_case_spclspec.click();
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 소명자료 특정내역 추가
- ****************************************************************************************/
- function lf_fGetAttachedDataList()
- {
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- if (!utlf_isNull(cretno)) {
- // 1. 첨부물자료관리 팝업을 호출한다.
- ds_cond_sppiz00200.clearData();
- var index = -1;
- var spclcd;
- var gridrowstatus;
- for (var i = 0 ; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- gridrowstatus = ds_grid_grd_clsphist.getRowType(i);
- if (spclcd == "MT015" || spclcd == "MT016") {
- index = ds_cond_sppiz00200.addRow();
- ds_cond_sppiz00200.setColumn(index, "spclcd", ds_grid_grd_clsphist.getColumn(i, "spclcd"));
- ds_cond_sppiz00200.setColumn(index, "seqno", ds_grid_grd_clsphist.getColumn(i, "seqno"));
- ds_cond_sppiz00200.setColumn(index, "spclspec", ds_grid_grd_clsphist.getColumn(i, "spclspec"));
- // 특정내역 Grid에서 "행 삭제"한 경우 MT015 / MT016 자료를 표시하지 않도록 하도록 rowstatus를 전달함
- ds_cond_sppiz00200.setColumn(index, "rowstat", gridrowstatus);
- }
- }
- var objArg = new Object();
- objArg.sOpenflag = "M";
- objArg.sSpclcd = ds_grid_grd_clsphist.getColumn(ds_grid_grd_clsphist.rowposition, "spclcd");
- var rtn = frmf_modal("SPPIZ00200","SPPIZ00200", objArg,"","","","","","","","","","M");
- // if (!utlf_isNull(rtn)) {
- if (rtn > 0) {
- // 오프너에서 ds_rslt_sppiz00200 로 넣어줌
- // ds_rslt_sppiz00200.copyData(rtn);
- // 2. 넘어온 데이터를 입력한다.
- lf_fDisplayAttachedDataList();
- } else {
- ds_rslt_sppiz00200.clearData();
- }
- grp_clsphist.btn_case_spclspec.click();
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 소명자료 특정내역 추가
- ****************************************************************************************/
- function lf_fDisplayAttachedDataList()
- {
- var cSrcNode = ds_rslt_sppiz00200.rowcount;
- if ( cSrcNode < 1 ) {
- return;
- }
- if ( utlf_isNull(ds_rslt_sppiz00200.getColumn(0, "unitflag")) ) { // "취소" 선택시에 버튼 색이 변경되지 않도록
- return;
- }
- // var cSrcChildNodeList = cSrcNode.childNodes;
- var clsprow = 0;
- var addcnt = 0;
- ds_grid_grd_clsphist.updatecontrol = false;
- // 1. 소명자료를 추가,수정,삭제한다.
- for (var i=0; i <ds_rslt_sppiz00200.rowcount; i++ ) {
- var spclcd = ds_rslt_sppiz00200.getColumn(i, "spclcd");
- var spclspec = ds_rslt_sppiz00200.getColumn(i, "spclspec");
- if ( spclcd == "MT015" || spclcd == "MT016" ) {
- var rowstat = ds_rslt_sppiz00200.getColumn(i, "rowstat");
- if ( rowstat == "I" ) {
- clsprow = ds_grid_grd_clsphist.addRow();
- ds_grid_grd_clsphist.setRowType(clsprow, "I");
- ds_grid_grd_clsphist.setColumn(clsprow, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(clsprow, "unitflag", "M");
- ds_grid_grd_clsphist.setColumn(clsprow, "edicd", "-");
- ds_grid_grd_clsphist.setColumn(clsprow, "spclcd", spclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "spclspec", spclspec);
- if ( spclcd == "MT015" ) {
- ds_grid_grd_clsphist.setColumn(clsprow, "cdnm", "제출자료 목록표");
- ds_grid_grd_clsphist.setColumn(clsprow, "spclformat", "X(2)");
- ds_grid_grd_clsphist.setColumn(clsprow, "detldesc", "제출자료코드/제출자료코드/... 형태로 입력");
- } else {
- ds_grid_grd_clsphist.setColumn(clsprow, "cdnm", "제출자료 목록표(기타)");
- ds_grid_grd_clsphist.setColumn(clsprow, "spclformat", "X(200)");
- ds_grid_grd_clsphist.setColumn(clsprow, "detldesc", "영문(200자), 한글(100자)");
- }
- ds_grid_grd_clsphist.setColumn(clsprow, "calcscorcd", "-");
- ds_grid_grd_clsphist.setColumn(clsprow, "oldspclcd", spclcd);
- ds_grid_grd_clsphist.setColumn(clsprow, "seqno", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpdd", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "prcpno", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "prcphistno", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "execprcpseqno", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "currowstat", "");
- ds_grid_grd_clsphist.setColumn(clsprow, "edicdflag", "-");
- addcnt++;
- } else if ( rowstat == "U" ) {
- for (var j = 0; j <ds_grid_grd_clsphist.rowcount; j++ ) {
- var gridspclcd = ds_grid_grd_clsphist.getColumn(j, "spclcd");
- var gridspclspec = ds_grid_grd_clsphist.getColumn(j, "spclspec");
- var gridrowstatus = ds_grid_grd_clsphist.getRowType(j);
- if ( gridspclcd == spclcd ) {
- ds_grid_grd_clsphist.setColumn(j, "spclspec", spclspec);
- if ( gridrowstatus == 2 ) {
- ds_grid_grd_clsphist.setColumn(j, "rowstat", "I");
- } else {
- ds_grid_grd_clsphist.setColumn(j, "rowstat", "U");
- ds_grid_grd_clsphist.setRowType(j, "U");
- }
- }
- }
- // 1-3. 삭제한다.
- } else if ( rowstat == "D" ) {
- for (var j = 0; j < ds_grid_grd_clsphist.rowcount; j++ ) {
- var gridspclcd = ds_grid_grd_clsphist.getColumn(j, "spclcd");
- var gridspclspec = ds_grid_grd_clsphist.getColumn(j, "spclspec");
- var gridrowstatus = ds_grid_grd_clsphist.getRowType(j);
- if ( gridspclcd == spclcd ) {
- if ( gridrowstatus == 2 ) {
- ds_grid_grd_clsphist.setColumn(j, "rowstat", "R");
- } else {
- ds_grid_grd_clsphist.setRowType(j, "D");
- ds_grid_grd_clsphist.setColumn(j, "rowstat", "D");
- }
- }
- }
- }
- }
- }
- ds_grid_grd_clsphist.updatecontrol = true;
- // 2. 소명자료가 추가되었을 경우에만 특정내역을 소트한다.
- if ( addcnt > 0 ) {
- lf_fSortSpclNo();
- // lf_fSpclGridInsertRow();
- }
- // 3. 소명자료 버튼 색을 변경한다.
- var isAttachedDataList = false;
- for (var m=0; m<ds_grid_grd_clsphist.rowcount && isAttachedDataList != true; m++ ) {
- var spclcd = ds_grid_grd_clsphist.getColumn(m, "spclcd");
- if ( spclcd == "MT015" || spclcd == "MT016") isAttachedDataList = true;
- }
- if ( isAttachedDataList ) {
- grp_clsphist.btn_attData.class = "btn5_letter4";
- grp_clsphist.btn_attData.style.color = "#cc3333";
- } else {
- grp_clsphist.btn_attData.class = "btn2_letter4";
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : MT004, 소명자료 버튼 색상
- ****************************************************************************************/
- function lf_fCheckSpclSpecData()
- {
- // 삭제된 상태가 아닌 소명자료 내역이 있는지 파악하여 "소명자료" Btn 색을 설정한다.
- // 특정코드 MT004 가 있는지를 파악하여 "MT004" Btn 색을 설정한다.
- var isAttachedDataList = false;
- var isMT004DataList = false;
- for (var i=0; i<ds_grid_grd_clsphist.rowcount; i++ ) {
- var spclcd = ds_list3_clcj.getColumn(i, "spclcd");
- var spclspec = ds_list3_clcj.getColumn(i, "spclspec");
- if ( spclcd == "MT015" || spclcd == "MT016" ) {
- if ( ds_grid_grd_clsphist.getRowType(i) != 8 ) { // 삭제
- isAttachedDataList = true;
- }
- } else if ( spclcd == "MT004" ) {
- if ( ds_grid_grd_clsphist.getRowType(i) != 8 ) { // 삭제
- isMT004DataList = true;
- }
- }
- }
- if ( isAttachedDataList ) {
- grp_clsphist.btn_attData.class = "btn7";
- grp_clsphist.btn_attData.style.color = "#cc3333";
- } else {
- grp_clsphist.btn_attData.class = "btn2";
- }
- if ( isMT004DataList ) {
- grp_clsphist.btn_mt0004.class = "btn7";
- grp_clsphist.btn_mt0004.style.color = "#cc3333";
- } else {
- grp_clsphist.btn_mt0004.class = "btn2";
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01.flag : 구분
- * Description : 상병 및 처방 치식 입력 호출
- ****************************************************************************************/
- function lf_fDiagOrderToothInput(flag)
- {
- if (flag == "Diag") {
- var cur_row = ds_grid_grd_cldihist.rowposition;
- var diagcd = ds_grid_grd_cldihist.getColumn(cur_row, "diagcd");
- if (!utlf_isNull(diagcd)) {
- ds_cond_sppiz00600_toothapplist.clearData();
- ds_cond_sppiz00600.clearData();
- ds_cond_sppiz00600.addRow();
- ds_cond_sppiz00600.setColumn(0, "clamym", "");
- ds_cond_sppiz00600.setColumn(0, "clamdg", "");
- ds_cond_sppiz00600.setColumn(0, "pid" , ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_sppiz00600.setColumn(0, "pidsn" , "");
- ds_cond_sppiz00600.setColumn(0, "indd" , ds_item1_otpt.getColumn(0, "indd"));
- ds_cond_sppiz00600.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- ds_cond_sppiz00600.setColumn(0, "toot" , ds_grid_grd_cldihist.getColumn(cur_row, "toot"));
- // ds_cond_sppiz00600.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- // ds_cond_sppiz00600.setColumn(0, "toot", ds_grid_grd_cldihist.getColumn(cur_row, "toot"));
- // ds_cond_sppiz00600.setColumn(0, "clamym", "");
- // ds_cond_sppiz00600.setColumn(0, "clamdg", "");
- // ds_cond_sppiz00600.setColumn(0, "pidsn", "");
- lf_fSetToothPop(cur_row, "1");
- ds_rslt_sppiz00600.clearData();
- ds_rslt_sppiz00600.addRow();
- var rtn = frmf_modal("SPPIZ00600","SPPIZ00600", {objDs:ds_cond_sppiz00600, objDs2:ds_cond_sppiz00600_toothapplist},"","","","","","","","","","M");// SPPIZ00600_상병및처방별치식
- lf_fGetToothPop();
- }
- }
- else if (flag = "Order") {
- var cur_row = ds_grid_grd_clodhist.rowposition;
- var basecd = ds_grid_grd_clodhist.getColumn(cur_row, "basecd");
- if (!utlf_isNull(basecd)) {
- ds_cond_sppiz00600_toothapplist.clearData();
- ds_cond_sppiz00600.clearData();
- ds_cond_sppiz00600.addRow();
- ds_cond_sppiz00600.setColumn(0, "clamym", "");
- ds_cond_sppiz00600.setColumn(0, "clamdg", "");
- ds_cond_sppiz00600.setColumn(0, "pid" , ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_sppiz00600.setColumn(0, "pidsn" , "");
- ds_cond_sppiz00600.setColumn(0, "indd" , ds_item1_otpt.getColumn(0, "indd"));
- ds_cond_sppiz00600.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- ds_cond_sppiz00600.setColumn(0, "toot" , ds_grid_grd_cldihist.getColumn(cur_row, "toot"));
- // ds_cond_sppiz00600.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- // ds_cond_sppiz00600.setColumn(0, "toot", ds_grid_grd_cldihist.getColumn(cur_row, "toot"));
- // ds_cond_sppiz00600.setColumn(0, "clamym", "");
- // ds_cond_sppiz00600.setColumn(0, "clamdg", "");
- // ds_cond_sppiz00600.setColumn(0, "pidsn", "");
- lf_fSetToothPop(cur_row, "2");
- ds_rslt_sppiz00600.clearData();
- ds_rslt_sppiz00600.addRow();
- var rtn = frmf_modal("SPPIZ00600","SPPIZ00600", {objDs:ds_cond_sppiz00600, objDs2:ds_cond_sppiz00600_toothapplist},"","","","","","","","","","M");// SPPIZ00600_상병및처방별치식
- lf_fGetToothPop();
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01.row : 줄
- 02.flag : 구분
- * Description : 현재 상병, 처방 Grid 상에서 입력상태의 치식을 팝업 화면에 전달하기 위해 리스트 형태로 만든다.
- ****************************************************************************************/
- function lf_fSetToothPop(row, flag)
- {
- // ds_cond_sppiz00600.clearData();
- // ds_cond_sppiz00600.addRow();
- // 상병
- var cldiRows = ds_grid_grd_cldihist.rowcount;
- // 처방
- var clodRows = ds_grid_grd_clodhist.rowcount;
- var cd = "";
- var cdnm = "";
- var orddd = "";
- var toot = "";
- var rowcnt = 0;
- var milktoothstr = "";
- var subTootStr = "";
- var tootnum = 0;
- var tmpStr = "";
- for (var i = 0; i < cldiRows; i++) {
- cd = ds_grid_grd_cldihist.getColumn(i, "diagcd");
- cdnm = ds_grid_grd_cldihist.getColumn(i, "diagnm");
- orddd = ds_grid_grd_cldihist.getColumn(i, "ordfromdd");
- toot = ds_grid_grd_cldihist.getColumn(i, "toot");
- if (toot != "-" && !utlf_isNull(toot)) {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 0);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cd", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cdnm", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "orddd", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "toot", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "row", "");
- milktoothstr = "ABCDE000";
- for (var inx = 0; inx < 32; inx++) {
- 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) {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 1);
- }
- else {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 0);
- }
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "flag", "상병");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cd", cd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cdnm", cdnm);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightupper", subTootStr.substr(0, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftupper", subTootStr.substr(8, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightlower", subTootStr.substr(16, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftlower", subTootStr.substr(24, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "orddd", orddd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "toot", toot);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "row", i);
- rowcnt++;
- }
- else {
- if (row == i && flag == 1) {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 1);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "flag", "상병");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cd", cd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cdnm", cdnm);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "orddd", orddd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "toot", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "row", i);
- rowcnt++;
- }
- }
- }
- for (var i = 0; i < clodRows; i++) {
- cd = ds_grid_grd_clodhist.getColumn(i, "snglcalcscorcd");
- cdnm = ds_grid_grd_clodhist.getColumn(i, "hngnm");
- orddd = ds_grid_grd_clodhist.getColumn(i, "orddd");
- tootfact = ds_grid_grd_clodhist.getColumn(i, "tootfact");
- estmcls = ds_grid_grd_clodhist.getColumn(i, "estmcls");
- if ((toot != "-" && !utlf_isNull(toot)) || estmcls == "U") {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 0);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "flag", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cd", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cdnm", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "orddd", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "toot", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "row", "");
- milktoothstr = "ABCDE000";
- subTootStr = "";
- for (var inx = 0; inx < 32; inx++) {
- 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) {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 1);
- }
- else {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 0);
- }
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "flag", "처방");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cd", cd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cdnm", cdnm);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightupper", subTootStr.substr(0, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftupper", subTootStr.substr(8, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightlower", subTootStr.substr(16, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftlower", subTootStr.substr(24, 8));
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "orddd", orddd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "toot", toot);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "row", i);
- rowcnt++;
- }
- else {
- if (row == i && flag == 2) {
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "chos", 1);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "flag", "처방");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cd", cd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "cdnm", cdnm);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftupper", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "rightlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "leftlower", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "orddd", orddd);
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "toot", "");
- ds_cond_sppiz00600_toothapplist.setColumn(rowcnt, "row", i);
- rowcnt++;
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 치식결과 반영
- ****************************************************************************************/
- function lf_fGetToothPop()
- {
- var tootRows = ds_rslt_sppiz00600.rowcount;
- var flag = "";
- var row = "";
- var toot = "";
- var rslttoot;
- var rslttoot1;
- var cldistatus;
- for (var i = 0; i < tootRows; i++) {
- flag = ds_rslt_sppiz00600.getColumn(i, "flag");
- row = ds_rslt_sppiz00600.getColumn(i, "row");
- rslttoot = ds_rslt_sppiz00600.getColumn(i, "toot");
- rslttoot1 = ds_rslt_sppiz00600.getColumn(i, "toot1");
- if (utlf_isNull(rslttoot)) {
- rslttoot = "-";
- }
- if (utlf_isNull(rslttoot1)) {
- rslttoot1 = "-";
- }
- if (flag == "1") {
- toot = ds_grid_grd_cldihist.getColumn(row, "toot");
- ds_grid_grd_cldihist.setColumn(row, "toot", rslttoot);
- ds_grid_grd_cldihist.setColumn(row, "toot", rslttoot1);
- if (rslttoot != toot) { // 치식번호가 변경된 경우
- cldistatus = ds_grid_grd_cldihist.getRowType(i);
- if (cldistatus == 2) {
- ds_grid_grd_cldihist.setRowType(i, "u");
- }
- }
- }
- else if (flag == "2") {
- toot = ds_grid_grd_clodhist.getColumn(row, "tootfact");
- ds_grid_grd_clodhist.setColumn("tootfact", rslttoot);
- ds_grid_grd_clodhist.setColumn("tootfact1", rslttoot1);
- if (rslttoot != toot) { // 치식번호가 변경된 경우
- // 처방의 수정된 row 상태를 표시한다.
- lf_fSetOrderChangeRowStat(row);
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 저장
- ****************************************************************************************/
- function lf_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/item5");
- // model.removeNodeset("/root/send/list1");
- // model.removeNodeset("/root/send/list2");
- // model.removeNodeset("/root/send/list3");
- // model.removeNodeset("/root/send/list7");
- ds_send_item3_delclsp.clearData();
- ds_send_item3_lnunitmemo.clearData();
- // 1.특정내역에 저장할 정보가 올바른지 확인한다.
- var rtn = lf_fCheckSaveOutDayJudgInfoCLSP();
- if (rtn == 3) {
- // var updtdata = grdf_getGridUpdateData(grp_clsphist.swt_spclmemo.case_spclspec.grd_clsphist);
- lf_save_grd_ds(ds_grid_grd_clsphist, ds_send_list3_clcj);
- if (ds_send_list3_clcj.rowcount > 0) {
- // ds_send_list3_clcj.clearData();
- // ds_send_list3_clcj.appendData(updtdata, true, true);
- for (var i=0; i<ds_send_list3_clcj.rowcount; i++) {
- if (utlf_isNull(ds_send_list3_clcj.getColumn(i, "spclmemoflag"))) {
- ds_send_list3_clcj.setColumn(i, "spclmemoflag", "E");
- }
- if (utlf_isNull(ds_send_list3_clcj.getColumn(i, "calcscorcd"))) {
- ds_send_list3_clcj.setColumn(i, "calcscorcd", "-");
- }
- if (utlf_isNull(ds_send_list3_clcj.getColumn(i, "edicdflag"))) {
- ds_send_list3_clcj.setColumn(i, "edicdflag", "-");
- }
- ds_send_list3_clcj.setColumn(i, "remfact", ds_send_list3_clcj.getColumn(i, "spclformat"));
- }
- }
- if (ds_send_list3_clcj.rowcount > 0 ) {
- saveOkMsg += "[특정내역] ";
- } else {
- saveNoMsg += "[특정내역] ";
- }
- } else if (rtn == 1) {
- isValidCheck = false;
- } else if (rtn == 2) {
- // lf_fSpclGridInsertRow();
- return;
- }
- if ( isValidCheck ) {
- if ( !utlf_isNull(saveOkMsg) ) {
- if ( ds_send_list3_clcj.rowcount > 0 ) {
- // 줄단위 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- lf_fSetSpclSpecJX999();
- }
- ds_send_item1_otpt.clearData();
- ds_send_item1_otpt.addRow();
- ds_send_item1_otpt.setColumn(0, "pid", ds_item1_otpt.getColumn(0,"pid"));
- ds_send_item1_otpt.setColumn(0, "orddd", ds_item1_otpt.getColumn(0,"orddd"));
- ds_send_item1_otpt.setColumn(0, "cretno", ds_item1_otpt.getColumn(0,"cretno"));
- lf_save_grd_ds(ds_grid_grd_judgmemo, ds_cond_grd_judgmemo);
- lf_save_grd_ds(ds_grid_grd_edimemo, ds_cond_grd_edimemo);
- var sInds = "otpt=ds_send_item1_otpt";
- sInds = sInds + " delmemo=ds_send_item3_delclsp";
- sInds = sInds + " judgmemo=ds_cond_grd_judgmemo";
- sInds = sInds + " edimemo=ds_cond_grd_edimemo";
- sInds = sInds + " lnunitmemo=ds_send_item3_lnunitmemo";
- sInds = sInds + " clcj=ds_send_list3_clcj";
- tranf_submit({
- id: "TXPIJ00703"
- , service: "bfjudgapp.OutDayJudg"
- , method: "reqExeSaveSpclSpec"
- , inds : sInds
- , outds : "ds_grid_grd_clsphist=clcj"
- , async: false
- });
- ds_grid_grd_clsphist.rowposition = 0;
- ds_grid_grd_clsphist.rowposition = -1;
- } else if ( !utlf_isNull(saveNoMsg) ) {
- sysf_messageBox(saveNoMsg +"변경된 데이터가","I004"); ///변경된 데이터가 없습니다.
- }
- } else {
- sysf_messageBox("변경된 정보를 저장할 특정내역이", "I004");
- }
- // lf_fSpclGridInsertRow();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 탭 특정코드 변경
- ****************************************************************************************/
- function lf_fChangeSpclCd()
- {
- var cur_row = ds_grid_grd_clsphist.rowposition;
- var newspclcd = ds_grid_grd_clsphist.getColumn(cur_row, "spclcd");
- var newspclspec = ds_grid_grd_clsphist.getColumn(cur_row, "spclspec");
- var unitflag = ds_grid_grd_clsphist.getColumn(cur_row, "unitflag");
- var spclcd;
- var basecd;
- var spclEdicd;
- // 1. 명세서단위 중복 특정코드가 있는지 확인한다.
- if (unitflag == "M" && !utlf_isNull(newspclcd)) {
- if (newspclcd == "MT004" || newspclcd == "MT015" || newspclcd == "MT016" || newspclcd == "MX999") {
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- if (cur_row != i && newspclcd == spclcd) {
- if (ds_grid_grd_clsphist.getRowType(i) != 8) {
- ds_grid_grd_clsphist.setColumn(cur_row, "spclcd", ds_grid_grd_clsphist.getColumn(cur_row, "oldspclcd"));
- ds_hidden_list3.setColumn(0, "msgspclformat", "명세서 단위 특정코드 '"+ newspclcd +"'가 중복되었습니다.");
- return;
- }
- }
- }
- }
- // 특정코드 MT015, MT016, MT004 정보가 입력된 환자인지를 확인한다.
- lf_fCheckSpclSpecData();
- }
- // 2. 줄단위 중복 특정코드가 있는지 확인한다.
- else {
- if (newspclcd == "JX999" || newspclcd == "JT001") {
- basecd = ds_grid_grd_clsphist.getColumn(cur_row, "edicd");
- // 중복된 특정코드가 있는지를 확인한다.
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- if (cur_row != i && basecd == spclEdicd && newspclcd == spclcd) {
- if (ds_grid_grd_clsphist.getRowType(i) != 8) {
- ds_grid_grd_clsphist.setColumn(cur_row, "spclcd", ds_grid_grd_clsphist.getColumn(cur_row, "oldspclcd"));
- ds_hidden_list3.setColumn(0, "msgspclformat", "EDI코드 "+ basecd +"의 줄단위 특정코드 '"+ newspclcd +"'가 중복되었습니다.");
- return;
- }
- }
- }
- }
- }
- // 3. 특정코드에 맞는 특정코드명을 기입한다.
- var p0117Rows = ds_init_P0117.rowcount;
- var cdid;
- var format;
- if (p0117Rows < 1) {
- for (var i = 0; i < p0117Rows; i++) {
- cdid = ds_init_P0117.getColumn(i, "cdid");
- if (cdid == newspclcd) {
- ds_grid_grd_clsphist.setColumn(cur_row, "cdnm", ds_init_P0117.getColumn(i, "cdnm"));
- format = ds_init_P0117.getColumn(i, "cdval").substring(0, 50);
- ds_grid_grd_clsphist.setColumn(cur_row, "spclformat", format);
- ds_grid_grd_clsphist.setColumn(cur_row, "detldesc", ds_init_P0117.getColumn(i, "detldesc"));
- i = p0117.length + 1;
- }
- }
- }
- ds_grid_grd_clsphist.setColumn(cur_row, "rowstat", "I");
- ds_grid_grd_clsphist.setColumn(cur_row, "oldspclcd", newspclcd);
- // 4. 하단 Message 구성
- var cdnm = ds_grid_grd_clsphist.getColumn(cur_row, "cdnm");
- var spclformat = ds_grid_grd_clsphist.getColumn(cur_row, "spclformat");
- ds_hidden_list3.setColumn(0, "msgspclformat", "특정내역코드: "+ newspclcd +" / 특정내역명칭: "+ cdnm +" / 기재내역: "+ newspclspec +" / 기재형식: "+ spclformat);
- // 5. 빈줄 추가
- // lf_fSpclGridInsertRow();
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 탭 특정코드 외 다른 필드 변경
- ****************************************************************************************/
- function lf_fChangeOtherCd()
- {
- var rowstatus;
- var rowtext;
- var cur_row = ds_grid_grd_clsphist.rowposition;
- var newspclcd = ds_grid_grd_clsphist.getColumn(cur_row, "spclcd");
- var newspclspec = ds_grid_grd_clsphist.getColumn(cur_row, "spclspec");
- // 1. 확인코드(jt001)의 경우, spclspec가 빈값이면 삭제
- var unitflag = ds_grid_grd_clsphist.getColumn(cur_row, "unitflag");
- if (unitflag == "J") {
- if (newspclcd == "JT001") {
- var basecd = ds_grid_grd_clsphist.getColumn(cur_row, "edicd");
- var osclEdicd;
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- osclEdicd = ds_grid_grd_clodhist.getColumn(i, "basecd");
- if (basecd == osclEdicd) {
- ds_grid_grd_clodhist.getColumn(i, "cnfmcd", newspclspec);
- }
- }
- if (utlf_isNull(newspclspec)) {
- var spclEdicd;
- var spclSpclcd;
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- unitflag = ds_grid_grd_clsphist.getColumn(i, "unitflag");
- if (unitflag == "J") {
- spclEdicd = ds_grid_grd_clsphist.getColumn(i, "edicd");
- spclSpclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- if (spclEdicd == basecd && spclSpclcd == "JT001") {
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- if (rowstatus == 2) {
- ds_grid_grd_clsphist.setRowType(i, "D");
- ds_grid_grd_clsphist.setColumn(cur_row, "rowstat", "D");
- }
- else {
- ds_grid_grd_clsphist.setRowType(i, "D");
- ds_grid_grd_clsphist.setRowType(i, "D");
- ds_grid_grd_clsphist.setColumn(cur_row, "rowstat", "D");
- }
- }
- }
- }
- ds_hidden_list3.setColumn(0, "msgspclformat", "입력된 확인코드 내역이 없습니다.");
- // 행 삭제
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- rowtext = ds_grid_grd_clsphist.getColumn(i, "rowstat");
- if (rowstatus == 2) {
- if (rowtext == "D") ds_grid_grd_clsphist.deleteRow(i);
- }
- }
- return;
- }
- }
- }
- // 2. row상태 update 처리
- rowstat = ds_grid_grd_clsphist.getColumn(cur_row, "rowstat");
- if (utlf_isNull(rowstat)) {
- ds_grid_grd_clsphist.setColumn(cur_row, "rowstat", "U");
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01.judgendyn : 심사마감여부
- * Description : 저장버튼 클릭
- ****************************************************************************************/
- function lf_fSaveOutDayJudg(judgendyn)
- {
- var selectedRow = ds_rslt_smpij00600.getColumn(0, "selectedRow");
- var isValidCheck = true;
- var pid = ds_item1_otpt.getColumn(0, "pid");
- var orddd = ds_item1_otpt.getColumn(0, "orddd");
- var cretno = ds_item1_otpt.getColumn(0, "cretno");
- var acptseqno = ds_item1_otpt.getColumn(0, "acptseqno");
- var insukindcd = ds_item1_otpt.getColumn(0, "insukindcd");
- var opyn = ds_item1_otpt.getColumn(0, "opyn");
- // 초기화
- ds_send_item3_delclsp.clearData();
- ds_cond_grd_judgmemo.clearData();
- ds_cond_grd_edimemo.clearData();
- ds_send_item3_lnunitmemo.clearData();
- ds_cond_grd_cldihist.clearData();
- ds_cond_grd_clsphist.clearData();
- ds_grid_grd_delorder.clearData();
- ds_cond_grd_clodhist.clearData();
- ds_cond_grd_oprcphist.clearData();
-
- if ( !utlf_isNull(pid) && !utlf_isNull(orddd) && !utlf_isNull(cretno) && !utlf_isNull(acptseqno) && !utlf_isNull(insukindcd) ) { // 조회된 심사대상자가 있으면
- // 처방 Grid 필터용 조회조건을 초기화한다.
- lf_fInitOrderFilter();
- var saveNoMsg = "";
- var saveOkMsg = "";
- // if (lf_fCheckSaveOutDayJudgCLBS()) { // CLBS 테이블에 저장할 정보가 올바른지 확인한다.
- // 인적사항
- //alert(recalcyn);
- var recalcyn = ds_item1_otpt.getColumn(0, "recalcyn");
- var suppkindcd = ds_item1_otpt.getColumn(0, "suppkindcd");
- var patsupprate = ds_item1_otpt.getColumn(0, "patsupprate");
- var payownbrate = ds_item1_otpt.getColumn(0, "payownbrate");
- // 보조요율만 변경된 경우 재계산만 하고, 인적사항 수정은 안하기 위해 초기값과 같게 만든다.
- ds_item1_otpt.setColumn(0,"recalcyn", ds_hidden_item1_initotpt.getColumn(0, "recalcyn"));
- ds_item1_otpt.setColumn(0,"suppkindcd", ds_hidden_item1_initotpt.getColumn(0, "suppkindcd"));
- ds_item1_otpt.setColumn(0,"patsupprate", ds_hidden_item1_initotpt.getColumn(0, "patsupprate"));
- ds_item1_otpt.setColumn(0,"payownbrate", ds_hidden_item1_initotpt.getColumn(0, "payownbrate"));
- //
- // var initclbs = ds_hidden_item1_initotpt.saveXML();
- // var currentclbs = ds_item1_otpt.saveXML();
- //
- // if (initclbs == currentclbs) {
- // saveNoMsg = "[인적사항]";
- // // 인적사항 변경이 없는 경우에도 사용되는 진료과 / 진료의사 정보를 send data에 설정한다.
- // ds_item1_otpt.setColumn(0, "dschjudgprcsstat", ds_item1_otpt.getColumn(0, "orddeptcd"));
- // ds_item1_otpt.setColumn(0, "recalcyn", recalcyn);
- //
- // if (recalcyn == "Y") { // 보조유형, 요율 외에는 변경사항이 없는 경우임
- // saveOkMsg = "[보조유형 및 요율] ";
- // ds_item1_otpt.setColumn(0, "suppkindcd", suppkindcd);
- // }
- // }
- // else {
- // saveOkMsg = "[인적사항] ";
- // ds_item1_otpt.setColumn(0, "payownbrate", payownbrate);
- // ds_item1_otpt.setColumn(0, "suppkindcd", suppkindcd);
- // ds_item1_otpt.setColumn(0, "recalcyn", recalcyn);
- // }
- //
- // // 심사상태를 '저장' 또는 '심사완료' 상태로 저장한다.
- ds_item1_otpt.setColumn(0, "dschjudgprcsstat", judgendyn);
- ds_item1_otpt.setColumn(0, "recalcyn", recalcyn);
- ds_item1_otpt.setColumn(0, "suppkindcd", suppkindcd);
- ds_item1_otpt.setColumn(0, "patsupprate", patsupprate);
- ds_item1_otpt.setColumn(0, "payownbrate", payownbrate);
- // }
- // else {
- // isValidCheck = false;
- // }
- // 메모 저장
- lf_fSaveMeMoList("A");
- // var diag;
- // if (lf_fCheckSaveOutDayJudgInfoCLDI()) { // CLDI 테이블에 저장할 정보가 올바른지 확인한다.
- // 먼저 빈 줄을 삭제한다.
- var delcldiCheck = false;
- var rowstatus;
- var diagcd;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- rowstatus = ds_grid_grd_cldihist.getRowType(i);
- diagcd = ds_grid_grd_cldihist.getColumn(i, "diagcd");
- // 상병코드와 진료개시일이 입력되지 않은 경우
- if (rowstatus == 2) {
- if (diagcd == null) {
- // 줄을 삭제한다.
- ds_grid_grd_cldihist.deleteRow(i);
- i--;
- delcldiCheck = true;
- }
- }
- }
- lf_save_grd_ds(ds_grid_grd_cldihist, ds_cond_grd_cldihist);
-
- //ds_cond_grd_cldihist.copyData(ds_grid_grd_cldihist);
- // if (ds_cond_grd_cldihist.rowcount > 0 && ds_grid_grd_cldihist.rowcount > 0) {
- // saveOkMsg += "[상병] ";
- // } else {
- // saveNoMsg += "[상병] ";
- // }
- // }
- // else {
- // isValidCheck = false;
- // }
- //
- // // 1.특정내역에 저장할 정보가 올바른지 확인한다.
- // var clcj;
- // var rtn = lf_fCheckSaveOutDayJudgInfoCLSP();
- // if (rtn == 3) {
- // lf_save_grd_ds(ds_grid_grd_clsphist, ds_cond_grd_clsphist);
- // // default 값 세팅
- // for (var i=0; i<ds_cond_grd_clsphist.rowcount; i++) {
- // if (utlf_isNull(ds_cond_grd_clsphist.getColumn(i, "spclmemoflag")) ) {
- // ds_cond_grd_clsphist.setColumn(i, "spclmemoflag", "E");
- // }
- // if (utlf_isNull(ds_cond_grd_clsphist.getColumn(i, "calcscorcd")) ) {
- // ds_cond_grd_clsphist.setColumn(i, "calcscorcd", "-");
- // }
- // if (utlf_isNull(ds_cond_grd_clsphist.getColumn(i, "edicdflag")) ) {
- // ds_cond_grd_clsphist.setColumn(i, "edicdflag", "-");
- // }
- // if (utlf_isNull(ds_cond_grd_clsphist.getColumn(i, "prcpdd")) || ds_cond_grd_clsphist.getColumn(i, "prcpdd") = "false") {
- // ds_cond_grd_clsphist.setColumn(i, "prcpdd", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "prcpdd"));
- // }
- // if (utlf_isNull(ds_cond_grd_clsphist.getColumn(i, "prcpno")) || ds_cond_grd_clsphist.getColumn(i, "prcpno") = "false") {
- // ds_cond_grd_clsphist.setColumn(i, "prcpno", 0);
- // }
- // }
- // if (ds_cond_grd_clsphist.rowcount > 0 && ds_grid_grd_clsphist.rowcount > 0) {
- // saveOkMsg += "[특정내역] ";
- // } else {
- // saveNoMsg += "[특정내역] ";
- // }
- // }
- // else if (rtn == 1) {
- // isValidCheck = false;
- // }
- // else if (rtn == 2) {
- // // lf_fSpclGridInsertRow();
- // return;
- // }
- //
- // var oscl;
- // if (lf_fCheckSaveOutDayJudgInfoCLOD()) { // CLOD 테이블에 저장할 정보가 올바른지 확인한다.
- // lf_save_grd_ds(ds_grid_grd_clodhist, ds_cond_grd_clodhist);
- // if (ds_cond_grd_clodhist.rowcount > 0 && ds_grid_grd_clodhist.rowcount > 0) {
- // saveOkMsg += "[처방] ";
- // } else {
- // saveNoMsg += "[처방] ";
- // }
- // }
- // else {
- // isValidCheck = false;
- // }
- //
- // var clop;
- // if (lf_fCheckSaveOutDayJudgInfoCLOP()) { // CLOP 테이블에 저장할 정보가 올바른지 확인한다.
- // lf_save_grd_ds(ds_grid_grd_oprcphist, ds_cond_grd_oprcphist);
- // if (ds_cond_grd_oprcphist.rowcount > 0 && ds_grid_grd_oprcphist.rowcount > 0) {
- // saveOkMsg += "[원외처방] ";
- // } else {
- // saveNoMsg += "[원외처방] ";
- // }
- // }
- // else {
- // isValidCheck = false;
- // }
- isValidCheck = true;
- if (isValidCheck) {
- if (utlf_isNull(saveOkMsg)) {
- if (ds_cond_grd_clsphist.rowcount > 0) {
- // 줄단위 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- ds_grid_grd_clsphist.addColumn("pid", "string");
- ds_grid_grd_clsphist.addColumn("orddd", "string");
- ds_grid_grd_clsphist.addColumn("cretno", "string");
- ds_grid_grd_clsphist.addColumn("instcd", "string");
-
- ds_grid_grd_clsphist.setColumn(0, "pid", pid);
- ds_grid_grd_clsphist.setColumn(0, "orddd", orddd);
- ds_grid_grd_clsphist.setColumn(0, "cretno", cretno);
- ds_grid_grd_clsphist.setColumn(0, "instcd", instcd);
- lf_fSetSpclSpecJX999();
- }
- if (ds_cond_grd_oprcphist.rowcount > 0) {
- // 원외처방 특정내역 중 기타메모(JX999)를 특정내역 형식에 맞춰 설정한다.
- ds_grid_grd_clsphist.addColumn("pid", "string");
- ds_grid_grd_clsphist.addColumn("orddd", "string");
- ds_grid_grd_clsphist.addColumn("cretno", "string");
- ds_grid_grd_clsphist.addColumn("instcd", "string");
-
- ds_grid_grd_clsphist.setColumn(0, "pid", pid);
- ds_grid_grd_clsphist.setColumn(0, "orddd", orddd);
- ds_grid_grd_clsphist.setColumn(0, "cretno", cretno);
- ds_grid_grd_clsphist.setColumn(0, "instcd", instcd);
- lf_fSetOprcSpclSpecJX999();
- }
-
- ds_list3_clcj.clearData();
- ds_list8_judgmemo.clearData();
- ds_list9_edimemo.clearData();
- //alert("A");
- // tranf_submit({
- // id : "TXPIJ00701"
- // , service : "bfjudgapp.OutDayJudg"
- // , method : "reqExeSaveOutDayJudg"
- // , inds : "otpt=ds_item1_otpt delmemo=ds_send_item3_delclsp judgmemo=ds_grid_grd_judgmemo edimemo=ds_grid_grd_edimemo lnunitmemo=ds_send_item3_lnunitmemo diag=ds_grid_grd_cldihist clcj=ds_grid_grd_clsphist oscl=ds_grid_grd_clodhist"
- // , outds : "ds_list3_clcj=clcj ds_list8_judgmemo=judgmemo ds_list9_edimemo=edimemo"
- // , async : false
- // });
-
- tranf_submit({
- id : "TXPIJ00701"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqExeSaveOutDayJudg"
- , inds : "otpt=ds_item1_otpt delmemo=ds_send_item3_delclsp judgmemo=ds_cond_grd_judgmemo edimemo=ds_cond_grd_edimemo lnunitmemo=ds_send_item3_lnunitmemo diag=ds_cond_grd_cldihist clcj=ds_cond_grd_clsphist oscl=ds_cond_grd_clodhist"
- , outds : "ds_list3_clcj=clcj ds_list8_judgmemo=judgmemo ds_list9_edimemo=edimemo"
- , async : false
- });
-
- // 데이타셋 매핑
- //ds_grid_grd_cldihist.copyData(ds_list1_diag); // 상병
- // ds_grid_grd_clodhist.copyData(ds_list2_oscl); // 처방
- ds_grid_grd_clsphist.copyData(ds_list3_clcj); // 특정내역
- ds_grid_grd_judgmemo.copyData(ds_list8_judgmemo); // 심사자메모
- if (ds_grid_grd_judgmemo.rowcount > 0) {
- ds_grid_grd_judgmemo.updatecontrol = false;
- for (var i=0; i<ds_grid_grd_judgmemo.rowcount; i++) { // 심사자 입력일시 수정
- ds_grid_grd_judgmemo.setColumn(i, "fstrgstdt", urlf_getStrDate(ds_grid_grd_judgmemo.getColumn(i, "fstrgstdt").substr(0,14)));
- }
- ds_grid_grd_judgmemo.updatecontrol = true;
- }
- ds_grid_grd_edimemo.copyData(ds_list9_edimemo); // edi메모
- // 체크박스 변환 설정
- lf_changecheck1(ds_grid_grd_cldihist, "diagkindcd", "C", 0);
- if (judgendyn == "A") { // 외래사전심사상태 (P0379) - A: 미심사, B: 심사중, D: 보류, E: 통합심사완료
- ds_rslt_smpij00600.setColumn(0, "pid", pid);
- ds_rslt_smpij00600.setColumn(0, "orddd", orddd);
- ds_rslt_smpij00600.setColumn(0, "cretno", cretno);
- ds_rslt_smpij00600.setColumn(0, "acptseqno", acptseqno);
- ds_rslt_smpij00600.setColumn(0, "insukindcd", insukindcd);
- ds_rslt_smpij00600.setColumn(0, "opyn", opyn);
- // 대상자조회 화면에서 선택했던 환자의 Row를 기억해 두고, pre/next대상조회 버튼에서 이전, 이후 대상자를 조회한다.
- ds_rslt_smpij00600.setColumn(0, "selectedRow", selectedRow);
- // 저장은 저장일 뿐 심사자 이동이 없으므로, 심사상태 변경 관련 동작은 타지 않도록 구분한다.
- ds_hidden.setColumn(0, "judgstatyn", "N");
- lf_fGetOutDayJudgMngt();
- }
- // E: 심사완료의 경우, 저장 후 결과를 다시 조회하기 위해
- return true;
- }
- else if (saveNoMsg) {
- if (judgendyn != "A") { // 외래사전심사상태 (P0379) - A: 미심사, B: 심사중, D: 보류, E: 통합심사완료
- return false;
- }
- else {
- lf_fDiagGridInsertRow();
- sysf_messageBox(saveNoMsg +"변경된 데이터가","I004"); ///변경된 데이터가 없습니다.
- }
- }
- }
- else { // isValidCheck == false
- // 상병
- var diagseq;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- if (ds_grid_grd_cldihist.getRowType(i) == 8) {
- diagseq = ds_grid_grd_cldihist.getColumn(i, "diagseq");
- ds_grid_grd_cldihist.setColumn(i, "diagseq", "D" + diagseq);
- }
- }
- lf_fDiagGridInsertRow();
- }
- }
- else {
- sysf_messageBox("변경된 정보를 저장할 일일심사 대상자가", "I004"); ///변경된 정보를 저장할 일일심사 대상자가 없습니다.
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : CLBS 테이블에 저장할 정보가 올바른지 확인
- ****************************************************************************************/
- function lf_fCheckSaveOutDayJudgCLBS()
- {
- if ( utlf_isNull(ds_item1_otpt.getColumn(0, "pid")) ) {
- sysf_messageBox("등록번호가", "I004"); ///등록번호가 없습니다
- return false;
- }
- if ( utlf_isNull(ds_item1_otpt.getColumn(0, "orddd")) ) {
- sysf_messageBox("접수일자가", "I004"); ///접수일자가 없습니다
- return false;
- }
- if ( utlf_isNull(ds_item1_otpt.getColumn(0, "suppkindcd")) ) {
- sysf_messageBox("보조유형이", "I004"); //보조유형이 없습니다
- return false;
- }
- if ( utlf_isNull(ds_item1_otpt.getColumn(0, "payownbrate")) ) {
- sysf_messageBox("올바른 보조유형을", "C002"); ///올바른 보조유형을 선택하십시오.
- return false;
- }
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : CLDI 테이블에 저장할 정보가 올바른지 확인
- ****************************************************************************************/
- function lf_fCheckSaveOutDayJudgInfoCLDI()
- {
- // 먼저 빈 줄을 삭제한다.
- var delcldiCheck = false;
- var rowstatus;
- var diagcd;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- rowstatus = ds_grid_grd_cldihist.getRowType(i);
- diagcd = ds_grid_grd_cldihist.getColumn(i, "diagcd");
- // 상병코드와 진료개시일이 입력되지 않은 경우
- if (rowstatus == 2) {
- if (diagcd == null) {
- // 줄을 삭제한다.
- ds_grid_grd_cldihist.deleteRow(i);
- i--;
- delcldiCheck = true;
- }
- }
- }
- // 빈줄을 삭제한 경우 상병순서를 다시 부여한다.
- // 빈줄을 삭제한 경우 상병순서를 다시 부여한다.
- if (delcldiCheck) {
- var seq = 1;
- for (var i = 0; i < ds_grid_grd_cldihist.rowcount; i++) {
- rowstatus = ds_grid_grd_cldihist.getRowType(i);
- if (rowstatus != 8) {
- ds_grid_grd_cldihist.setColumn(i, "diagseq", seq++);
- }
- }
- }
- // 저장할 정보를 체크한다.
- var cldiRows = ds_grid_grd_cldihist.rowcount;
- if (cldiRows < 1) {
- return;
- }
- for (var i = 0; i < cldiRows; i++) {
- var diagcd = ds_grid_grd_cldihist.getColumn(i, "diagcd");
- var ordfromdd = ds_grid_grd_cldihist.getColumn(i, "ordfromdd");
- var diagseq = ds_grid_grd_cldihist.getColumn(i, "diagseq");
- if (utlf_isNull(diagcd) || utlf_isNull(ordfromdd)) {
- sysf_messageBox("상병코드 또는 진료개시일이 입력되지", "E007"); // 상병코드 또는 진료개시일이 입력되지 않았습니다.
- return;
- }
- for (var j = 0; j < i; j++) {
- var prediagseq = ds_grid_grd_cldihist.getColumn(j, "diagseq");
- var prediagcd = ds_grid_grd_cldihist.getColumn(j, "diagcd");
- if (ds_grid_grd_cldihist.getRowType(i) != 8) {
- // 중복된 상병 No가 있을 경우
- if (diagseq == prediagseq) {
- sysf_messageBox("상병순서 '"+ diagseq +"'가", "E006"); // 상병순서 '***'가 중복되었습니다.
- return;
- }
- // 중복된 상병코드가 있는 경우
- if (diagcd == prediagcd) {
- sysf_messageBox("상병코드 '"+ diagcd +"'가", "E006"); // 상병코드 '***'가 중복되었습니다.
- }
- }
- }
- if (utlf_isNull(ds_grid_grd_cldihist.getColumn(i, "toot"))) { // 치식이 입력되지 않은 경우
- ds_grid_grd_cldihist.setColumn(i, "toot", "-");
- }
- }
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 특정내역 데이터 검사
- ****************************************************************************************/
- function lf_fCheckSaveOutDayJudgInfoCLSP()
- {
- var rowstatus;
- var spclcd;
- var spclspec;
- var rowstat;
- var spclspeclen;
- var compminspclspeclen;
- var compmaxspclspeclen;
- // 먼저 빈 줄을 삭제한다.
- for (var i = 0; i < ds_grid_grd_clsphist.rowcount; i++) {
- rowstatus = ds_grid_grd_clsphist.getRowType(i);
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- spclspec = ds_grid_grd_clsphist.getColumn(i, "spclspec");
- // 특정코드와 특정내역이입력되지 않은 경우
- if (rowstatus != 8 && utlf_isNull(spclcd) && utlf_isNull(spclspec)) {
- // 줄을 삭제한다.
- ds_grid_grd_clsphist.deleteRow(i);
- i--;
- }
- }
- // 저장할 정보를 체크한다.
- var clspRows = ds_grid_grd_clsphist.rowcount;
- var prespclcd;
- if (clspRows < 0) {
- return 1;
- }
- for (var i = 0; i < clspRows; i++) {
- spclcd = ds_grid_grd_clsphist.getColumn(i, "spclcd");
- spclspec = ds_grid_grd_clsphist.getColumn(i, "spclspec");
- rowstat = ds_grid_grd_clsphist.getColumn(i, "rowstat");
- spclspeclen = utlf_getStringLength(spclspec);
- compminspclspeclen = ds_init_P0117.getColumn(ds_init_P0117.findRowAs("cdid", spclcd), "minval");
- compmaxspclspeclen = ds_init_P0117.getColumn(ds_init_P0117.findRowAs("cdid", spclcd), "maxval");
- if (rowstat != "D") {
- if (utlf_isNull(spclcd) || utlf_isNull(spclspec)) {
- sysf_messageBox("특정코드 또는 특정내역이 입력되지", "E007"); // 특정코드 또는 특정내역이 입력되지 않았습니다.
- return 2;
- }
- else if (spclcd == "MX999" || spclcd == "MT015" || spclcd == "MT016" || spclcd == "MT004") {
- for (var j = 0; j < i; j++) {
- prespclcd = ds_grid_grd_clsphist.getColumn(j, "spclcd");
- // 중복된 명세서 단위 특정코드가 있는 경우
- if (ds_grid_grd_clsphist.getRowType(i) != 8 && spclcd == prespclcd) {
- sysf_messageBox("명세서 단위 특정코드 '"+ spclcd +"'가", "E006"); // 명세서 단위 특정코드 '***'가 중복되었습니다.
- return 2;
- }
- }
- }
- //특정내역 길이 체크
- if (!utlf_isNull(compmaxspclspeclen)) {
- if (compminspclspeclen <= spclspeclen && spclspeclen <= compmaxspclspeclen) { //입력한 길이가 최소길이, 최대길이 사이에 있을경우 저장 가능.
- }
- else {
- sysf_messageBox("입력특정내역길이 : " + spclspeclen + " 체크특정내역길이 : " + compmaxspclspeclen + "\n" +"특정코드 [ " + spclcd + " ] 의 특정내역 길이를 확인 후", "C003");
- return 1;
- }
- }
- }
- }
- return 3;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : CLOD 테이블에 저장할 정보가 올바른지 확인
- ****************************************************************************************/
- function lf_fCheckSaveOutDayJudgInfoCLOD()
- {
- // 저장할 정보를 체크한다.
- // 처방 Grid
- var clodRows = ds_grid_grd_clodhist.rowcount;
- if (clodRows < 1) return;
- var pid;
- var orddd;
- var cretno;
- var calcseqno;
- var calcscorseqno;
- for (var i = 0; i < clodRows; i++) {
- pid = ds_grid_grd_clodhist.getColumn(i, "pid");
- orddd = ds_grid_grd_clodhist.getColumn(i, "orddd");
- cretno = ds_grid_grd_clodhist.getColumn(i, "cretno");
- calcseqno = ds_grid_grd_clodhist.getColumn(i, "calcseqno");
- calcscorseqno = ds_grid_grd_clodhist.getColumn(i, "calcscorseqno");
- if (utlf_isNull(ds_grid_grd_clodhist.getColumn(i, "tootfact"))) { // 치식이 입력되지 않은 경우
- ds_grid_grd_clodhist.setColumn(i, "tootfact", "-");
- }
- }
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : CLOP 테이블에 저장할 정보가 올바른지 확인
- ****************************************************************************************/
- function lf_fCheckSaveOutDayJudgInfoCLOP()
- {
- // 저장할 정보를 체크한다.
- // 원외처방 Grid
- var clopRows = ds_grid_grd_oprcphist.rowcount;
- if (clopRows < 1) return;
- var spclspec;
- var rowstat;
- for (var i = 0; i < clopRows; i++) {
- spclspec = ds_grid_grd_oprcphist.getColumn(i, "spclspec");
- stat = ds_grid_grd_oprcphist.getRowType(i);
- if (utlf_isNull(spclspec) && stat != 0) {
- sysf_messageBox("원외처방 특정내역이", "I004"); // 원외처방 특정내역이 없습니다.
- return false;
- }
- }
- return true;
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 계산처방시행조회(코드별 처방 hx.보기)
- ****************************************************************************************/
- function lf_fOpenSMPIS00500Detail_O()
- {
- var cur_row = ds_grid_grd_clodhist.rowposition;
- ds_cond_SMPIS00500.setColumn(0, "patunitsrch", ds_item1_otpt.getColumn(0, "pid"));
- ds_cond_SMPIS00500.setColumn(0, "code", ds_grid_grd_clodhist.getColumn(cur_row, "snglcalcscorcd"));
- ds_cond_SMPIS00500.setColumn(0, "datecond", "");
- ds_cond_SMPIS00500.setColumn(0, "fromdd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_SMPIS00500.setColumn(0, "todd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_cond_SMPIS00500.setColumn(0, "ioflag", "O");
- ds_cond_SMPIS00500.setColumn(0, "orddeptcd", "");
- ds_cond_SMPIS00500.setColumn(0, "orddrid", "");
- ds_cond_SMPIS00500.setColumn(0, "codecond", "");
- ds_cond_SMPIS00500.setColumn(0, "judgrid", "");
- ds_cond_SMPIS00500.setColumn(0, "cancer", "");
- ds_cond_SMPIS00500.setColumn(0, "large", "");
- ds_cond_SMPIS00500.setColumn(0, "middle", "");
- ds_cond_SMPIS00500.setColumn(0, "small", "");
- ds_cond_SMPIS00500.setColumn(0, "edicd", "");
- frmf_modal("SMPIS00500", "SMPIS00500", {objDs:ds_cond_SMPIS00500}, "", "", "", "", "", "", "", "", "", "M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 청구삭감조회(코드별 청구 hx.보기)
- ****************************************************************************************/
- function lf_fOpenSMPIS00600Detail()
- {
- // var cur_row = ds_grid_grd_clodhist.rowposition;
- //
- // var today = utlf_getCurrentDate();
- //
- // var fromdd = today.toDate().getAddDate(-6,"M").getDateFormat("YYYYMM");
- // ds_cond_SMPIS00600.setColumn(0, "patunitsrch", ds_item1_otpt.getColumn(0, "pid"));
- // ds_cond_SMPIS00600.setColumn(0, "code", ds_grid_grd_clodhist.getColumn(cur_row, "pid"));
- // ds_cond_SMPIS00600.setColumn(0, "clamym", "");
- // ds_cond_SMPIS00600.setColumn(0, "clamymfrom", fromdd);
- // ds_cond_SMPIS00600.setColumn(0, "clamdgfrom", "");
- // ds_cond_SMPIS00600.setColumn(0, "clamymto", today);
- // ds_cond_SMPIS00600.setColumn(0, "clamdgto", "");
- // ds_cond_SMPIS00600.setColumn(0, "clamflag", "");
- // ds_cond_SMPIS00600.setColumn(0, "ioflag", "I");
- // ds_cond_SMPIS00600.setColumn(0, "insukind", ds_item1_otpt.getColumn(0, "insukindcd"));
- // ds_cond_SMPIS00600.setColumn(0, "orddeptcd", "");
- // ds_cond_SMPIS00600.setColumn(0, "orddrid", "");
- // ds_cond_SMPIS00600.setColumn(0, "cutonly", false);
- //
- // frmf_modal("SMPIS00600", "SMPIS00600", {objDs:ds_cond_SMPIS00600}, "", "", "", "", "", "", "", "", "", "M");
- lf_pidfOpenSMPIS00600("O", "M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 처방사유조회
- ****************************************************************************************/
- function lf_fPrcpResnRef()
- {
- var userid = sysf_getUserInfos("userid");
- var usernm = sysf_getUserInfos("usernm");
- var posinstcd = sysf_getUserInfos("posinstcd");
- var posinstnm = sysf_getUserInfos("posinstnm");
- var posdeptcd = sysf_getUserInfos("posdeptcd");
- var posdeptnm = sysf_getUserInfos("posdeptnm");
- ds_cond_SPMMO19000.setColumn(0,"pid", ds_item1_otpt.getColumn(0, "pid")); // 등록번호
- ds_cond_SPMMO19000.setColumn(0,"fromdd", ds_item1_otpt.getColumn(0, "orddd")); // 처방시작일 default orddd
- ds_cond_SPMMO19000.setColumn(0,"todd", ds_item1_otpt.getColumn(0, "orddd")); // 처방종료일 default "99991231"
- ds_cond_SPMMO19000.setColumn(0,"orddeptcd", "-"); // 진료과 : 주진료과
- ds_cond_SPMMO19000.setColumn(0,"orddrid", "-"); // 주치의 : default "-"
- ds_cond_SPMMO19000.setColumn(0,"mainjudgid", "-"); // 심사자 : 현재심사자
- ds_cond_SPMMO19000.setColumn(0,"prcpcd", ds_grid_grd_clodhist.getColumn(ds_grid_grd_clodhist.rowposition, "pid")); // 수가코드 : 그룹코드
- ds_cond_SPMMO19000.setColumn(0,"insukind", ds_item1_otpt.getColumn(0, "insukindcd")); // 보험유형 : 환자보험유형
- ds_cond_SPMMO19000.setColumn(0,"ioflag", "O"); // 내원유형 : default "-"
- ds_cond_SPMMO19000.setColumn(0,"resncd", "FF"); // 사유구분 : default "FF" : 중복처방사유
- ds_cond_SPMMO19000.setColumn(0,"popup", "judg"); // 팝업사용처구분 : judg(심사)
-
- // alert("20140808 현재 XP에 SPMMO19000_중복처방사유조회 화면이 존재하지 않음");
- // return;
-
- frmf_modal("SPMMO19000", "SPMMO19000", {ds_cond_SPMMO19000:ds_cond_SPMMO19000}, "", "", "", "", "", "", "", "", "", "M");
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 선별심사 / 항목구분 색표시
- ****************************************************************************************/
- function lf_fSetItemBold()
- {
- // 초기화
- for (var i=0; i < ds_init_rdo_item1.rowcount; i++)
- {
- ds_init_rdo_item1.setColumn(i, "color", "");
- ds_init_rdo_item1.setColumn(i, "font", "");
- }
- // "전체" 항목은 default 로 굵게 표시
- ds_init_rdo_item1.setColumn(0, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(0, "font", "Dotum,9,bold");
- var rowcnt = ds_grid_grd_clodhist.rowcount; // 필터
- var old_item1 = "";
- for (var i=0; i<rowcnt ; i++ ) {
- //var lnunitspclspecyn = ds_grid_grd_clodhist.getColumn(i, "lnunitspclspecyn");
- // 줄단위 메모 색표시(안쓰는 컬럼인듯?)
- // if ( lnunitspclspecyn == "*" ) {
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + i +' ? "#ffff00" : "")');
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + i +' ? "#ffff00" : "")');
- // } else {
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- // grd_clodhist.setCellProperty("body", grd_clodhist.getBindCellIndex("body", "basecd"), "background2", 'EXPR(currow == ' + i +' ? "#ffffff" : "")');
- // }
- // 처방 조회부 항목구분 Radio에서 해당 처방이 있는 item을 굵게 표시한다.
- var item1 = ds_grid_grd_clodhist.getColumn(i, "ediitem1"); //항목구분 에 Bold처리하기 위한 체크
- var fRow = ds_init_rdo_item1.findRow("codecolumn", item1);
- if ( item1 != old_item1 && fRow > -1 ) {
- ds_init_rdo_item1.setColumn(fRow, "color", "#ff0000");
- ds_init_rdo_item1.setColumn(fRow, "font", "Dotum,9,bold");
- old_item1 = item1;
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01.tabflag : 탭구분
- * Description : 특정내역 및 메모 탭 색 변경
- ****************************************************************************************/
- function lf_fSetTapListSetting(tabflag)
- {
- var spclcd = ds_list3_clcj.getColumn(0, "spclcd");
- var judgrmk = ds_grid_grd_judgmemo.getColumn(0, "spclspec");
- var edirmk = ds_list9_edimemo.getColumn(0, "spclspec");
- //특정내역
- if ( tabflag == "1" || tabflag == "all" ) {
- if ( utlf_isNull(spclcd) ) {
- grp_clsphist.btn_case_spclspec.style.color = "dimgray"; // #808080
- } else {
- grp_clsphist.btn_case_spclspec.style.color = "red"; // #ff0000
- }
- }
- //재원심사메모
- if ( tabflag == "2" || tabflag == "all" ) {
- if ( utlf_isNull(judgrmk) ) {
- grp_clsphist.btn_case_judg.style.color = "dimgray"; // #808080
- } else {
- grp_clsphist.btn_case_judg.style.color = "red"; // #ff0000
- }
- }
- //EDI메모
- if ( tabflag == "3" || tabflag == "all" ) {
- if ( utlf_isNull(edirmk) ) {
- grp_clsphist.btn_case_edi.style.color = "dimgray"; // #808080
- } else {
- grp_clsphist.btn_case_edi.style.color = "red"; // #ff0000
- }
- }
- // 콤보 색 변경
- // 초기화
- for (var i=0; i < ds_init_rdo_unitflag.rowcount; i++)
- {
- ds_init_rdo_unitflag.setColumn(i, "color", "");
- ds_init_rdo_unitflag.setColumn(i, "font", "");
- }
- // "전체" 항목은 default 로 굵게 표시
- // ds_init_rdo_unitflag.setColumn(0, "color", "#ff0000");
- // ds_init_rdo_unitflag.setColumn(0, "font", "Dotum,9,bold");
- var fRow = -1;
- ds_grid_grd_clsphist.filterstr = "";
- // 명단위
- ds_grid_grd_clsphist.filterstr = "unitflag == 'M'";
- if (ds_grid_grd_clsphist.rowcount > 0) {
- fRow = ds_init_rdo_unitflag.findRow("codecolumn", "M");
- ds_init_rdo_unitflag.setColumn(fRow, "color", "#ff6600");
- }
- // 줄단위
- ds_grid_grd_clsphist.filterstr = "unitflag == 'J'";
- if (ds_grid_grd_clsphist.rowcount > 0) {
- fRow = ds_init_rdo_unitflag.findRow("codecolumn", "J");
- ds_init_rdo_unitflag.setColumn(fRow, "color", "#ff6600");
- }
- // 처방
- ds_grid_grd_clsphist.filterstr = "spclcd == 'JX999'";
- if (ds_grid_grd_clsphist.rowcount > 0) {
- fRow = ds_init_rdo_unitflag.findRow("codecolumn", "JX999");
- ds_init_rdo_unitflag.setColumn(fRow, "color", "#ff6600");
- }
- ds_grid_grd_clsphist.filterstr = "";
- }
- // 심사자메모, edi메모 만 따로 저장(안쓰나??)
- function lf_fSaveMemo(flag)
- {
- 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");
- if (flag == "J") {
- lf_save_grd_ds(ds_grid_grd_judgmemo, ds_cond_grd_judgmemo);
- if (ds_cond_grd_judgmemo.rowcount > 0) {
- lf_fSetJudgEDIMemo(judgmemo, "U");
- saveOkMsg += "[심사메모] ";
- } else {
- saveNoMsg += "[심사메모] ";
- }
- }
- if (flag == "E") {
- lf_save_grd_ds(ds_grid_grd_edimemo, ds_cond_grd_edimemo);
- if (ds_cond_grd_edimemo.rowcount > 0) {
- lf_fSetJudgEDIMemo(edimemo, "E");
- saveOkMsg += "[심사메모] ";
- } else {
- saveNoMsg += "[심사메모] ";
- }
- }
- if (isValidCheck) {
- if (!utlf_isNull(saveOkMsg)) {
- // TODO
- if (submit("TXPIJ00701", false)) {
- }
- }
- else if (!utlf_isNull(saveNoMsg)) {
- sysf_messageBox(saveNoMsg +"변경된 데이터가","I004"); ///변경된 데이터가 없습니다.
- }
- } else { // isValidCheck == false
- sysf_messageBox("변경된 정보를 저장할 심사메모가", "I004");
- }
- }
- // Function
- //=======================================================================================
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument : 01.saveflag : 저장구분
- * Description : 메모저장
- ****************************************************************************************/
- function lf_fSaveMeMoList(saveflag)
- {
- ds_send_item3_delclsp.clearData();
- ds_send_item1_otpt.clearData();
- ds_send_item1_otpt.addRow();
- ds_send_item1_otpt.setColumn(0, "pid", ds_item1_otpt.getColumn(0, "pid"));
- ds_send_item1_otpt.setColumn(0, "orddd", ds_item1_otpt.getColumn(0, "orddd"));
- ds_send_item1_otpt.setColumn(0, "cretno", ds_item1_otpt.getColumn(0, "cretno"));
- ds_send_item1_otpt.setColumn(0, "acptseqno", ds_item1_otpt.getColumn(0, "acptseqno"));
- ds_send_item1_otpt.setColumn(0, "insukindcd", ds_item1_otpt.getColumn(0, "insukindcd"));
- ds_send_item1_otpt.setColumn(0, "suppkindcd", ds_item1_otpt.getColumn(0, "suppkindcd"));
- ds_send_item1_otpt.setColumn(0, "patage", ds_item1_otpt.getColumn(0, "patage"));
- ds_send_item1_otpt.setColumn(0, "opyn", ds_item1_otpt.getColumn(0, "opyn"));
- ds_send_item1_otpt.setColumn(0, "dschjudgprcsstat", ds_item1_otpt.getColumn(0, "dschjudgprcsstat"));
- ds_cond_grd_judgmemo.clearData();
- ds_cond_grd_edimemo.clearData();
- // 재원심사메모
- if (saveflag == "J") {
- var judgmemoRows = ds_grid_grd_judgmemo.rowcount;
- var cnt = 0;
- var rowstatus = "i";
- if (judgmemoRows == 0) {
- return;
- }
- else {
- for (var i = 0; i < judgmemoRows; i++) {
- if (ds_grid_grd_judgmemo.getRowType(i) != 1) {
- if (ds_grid_grd_judgmemo.getRowType(i) == 2) {
- rowstatus = "i";
- ds_grid_grd_judgmemo.setColumn(i, "status" , "i");
- }
- else if (ds_grid_grd_judgmemo.getRowType(i) == 4) {
- rowstatus = "u";
- ds_grid_grd_judgmemo.setColumn(i, "status" , "u");
- }
- else if (ds_grid_grd_judgmemo.getRowType(i) == 8) {
- rowstatus = "d";
- ds_grid_grd_judgmemo.setColumn(i, "status" , "d");
- }
- cnt = ds_cond_grd_judgmemo.addRow();
- ds_cond_grd_judgmemo.setColumn(cnt, "judgspclspec", ds_grid_grd_judgmemo.getColumn(i, "spclspec"));
- var seq = ds_grid_grd_judgmemo.getColumn(i, "seqno");
- if (utlf_isNull(seq)) {
- seq = ds_grid_grd_judgmemo.setColumn(i, "seqno", 1);
- }
- ds_cond_grd_judgmemo.setColumn(cnt, "judgseqno", seq);
- ds_cond_grd_judgmemo.setColumn(cnt, "judgstatus", rowstatus);
- }
- }
- ds_send_item3_lnunitmemo.clearData();
- // ds_list1_diag.clearData();
- // ds_list3_clcj.clearData();
- // ds_grid_grd_delorder.clearData();
- tranf_submit({
- id : "TXPIJ00701"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqExeSaveOutDayJudg"
- , inds : "otpt=ds_send_item1_otpt delmemo=ds_send_item3_delclsp judgmemo=ds_cond_grd_judgmemo edimemo=ds_cond_grd_edimemo lnunitmemo=ds_send_item3_lnunitmemo diag=ds_list1_diag clcj=ds_list3_clcj oscl=ds_grid_grd_delorder"
- , outds : "ds_grid_grd_judgmemo=judgmemo"
- , async : false
- });
- }
- }
- // EDI메모
- else if (saveflag == "E") {
- var edimemoRows = ds_grid_grd_edimemo.rowcount;
- var cnt = -1;
- var rowstatus = "i";
- var status;
- var memo;
- // 저장 전 byte 수 체크
- var allmemo = "";
- for (var i = 0; i < edimemoRows; i++) {
- status = ds_grid_grd_edimemo.getRowType(i);
- memo = ds_grid_grd_edimemo.getColumn(i, "spclspec");
- if (status != 8) {
- allmemo += memo;
- }
- }
- var iSpclCdTotLength = utlf_getStringLength(allmemo);
- // 심사/EDI메모내용이 700byte가 넘을 경우
- if (iSpclCdTotLength == 700 || iSpclCdTotLength > 700){
- sysf_messageBox("심사/EDI메모내용이 700bytes를 초과하여 행추가를","E001");
- return;
- }
- if (edimemoRows == 0) {
- return;
- }
- else {
- for (var i = 0; i < edimemoRows; i++) {
- if (ds_grid_grd_edimemo.getRowType(i) != 1) {
- if (ds_grid_grd_edimemo.getRowType(i) == 2) {
- rowstatus = "i";
- ds_grid_grd_edimemo.setColumn(i, "status" , "i");
- }
- else if (ds_grid_grd_edimemo.getRowType(i) == 4) {
- rowstatus = "u";
- ds_grid_grd_edimemo.setColumn(i, "status" , "u");
- }
- else if (ds_grid_grd_edimemo.getRowType(i) == 8) {
- rowstatus = "d";
- ds_grid_grd_edimemo.setColumn(i, "status" , "d");
- }
- cnt = ds_cond_grd_edimemo.addRow();
- ds_cond_grd_edimemo.setColumn(cnt, "edispclspec", ds_grid_grd_edimemo.getColumn(i, "spclspec"));
- var seq = ds_grid_grd_edimemo.getColumn(i, "seqno");
- if (utlf_isNull(seq)) {
- seq = ds_grid_grd_edimemo.setColumn(i, "seqno", 1);
- }
- ds_cond_grd_edimemo.setColumn(cnt, "ediseqno", seq);
- ds_cond_grd_edimemo.setColumn(cnt, "edistatus", rowstatus);
- }
- }
- for (var k=edimemoRows-1; k>-1; k--){
- if (ds_grid_grd_edimemo.getRowType(k) == 8) {
- ds_grid_grd_edimemo.deleteRow(k); // 삭제
- } else {
- ds_grid_grd_edimemo.updatecontrol = false;
- var aaa = ds_grid_grd_edimemo.setRowType(k, "N");
- ds_grid_grd_edimemo.updatecontrol = true;
- }
- }
- ds_send_item3_lnunitmemo.clearData();
-
- tranf_submit({
- id : "TXPIJ00701"
- , service : "bfjudgapp.OutDayJudg"
- , method : "reqExeSaveOutDayJudg"
- , inds : "otpt=ds_send_item1_otpt delmemo=ds_send_item3_delclsp judgmemo=ds_cond_grd_judgmemo edimemo=ds_cond_grd_edimemo lnunitmemo=ds_send_item3_lnunitmemo diag=ds_list1_diag clcj=ds_list3_clcj oscl=ds_grid_grd_delorder"
- , outds : "ds_grid_grd_judgmemo=judgmemo"
- , async : false
- });
-
- // tranf_submit({
- // id : "TXPIJ00701"
- // , service : "bfjudgapp.OutDayJudg"
- // , method : "reqExeSaveOutDayJudg"
- // , inds : "otpt=ds_send_item1_otpt delmemo=ds_grid_grd_clsphist judgmemo=ds_grid_grd_judgmemo edimemo=ds_grid_grd_edimemo lnunitmemo=ds_send_item3_lnunitmemo diag=ds_grid_grd_cldihist clcj=ds_list3_clcj oscl=ds_grid_grd_delorder"
- // // , outds : "ds_grid_grd_edimemo=edimemo"
- // , async : false
- // });
- }
- }
- // 전체저장 할 경우
- else if (saveflag == "A") {
- var judgmemoRows = ds_grid_grd_judgmemo.rowcount;
- var cnt = -1;
- var rowstatus = "i";
- if (judgmemoRows == 0) {
- return;
- }
- else {
- for (var i = 0; i < judgmemoRows; i++) {
- if (ds_grid_grd_judgmemo.getRowType(i) == 2) {
- rowstatus = "i";
- }
- else if (ds_grid_grd_judgmemo.getRowType(i) == 4) {
- rowstatus = "u";
- }
- else if (ds_grid_grd_judgmemo.getRowType(i) == 8) {
- rowstatus = "d";
- }
- cnt++;
- ds_cond_grd_judgmemo.getColumn(cnt, "judgspclspec" , ds_grid_grd_judgmemo.getColumn(i, "spclspec"));
- var seq = ds_grid_grd_judgmemo.getColumn(i, "seqno");
- if (utlf_isNull(seq)) {
- seq = ds_grid_grd_judgmemo.setColumn(i, "seqno", 1);
- }
- ds_cond_grd_judgmemo.setColumn(cnt, "judgseqno", seq);
- ds_cond_grd_judgmemo.getColumn(cnt, "judgstatus" , rowstatus);
- }
- }
- var edimemoRows = ds_grid_grd_edimemo.rowcount;
- var cnt = 0;
- var rowstatus = "i";
- if (edimemoRows == 0) {
- return;
- }
- else {
- for (var i = 0; i < edimemoRows; i++) {
- if (ds_grid_grd_edimemo.getRowType(i) == 2) {
- rowstatus = "i";
- }
- else if (ds_grid_grd_edimemo.getRowType(i) == 4) {
- rowstatus = "u";
- }
- else if (ds_grid_grd_edimemo.getRowType(i) == 8) {
- rowstatus = "d";
- }
- cnt++;
- ds_cond_grd_edimemo.getColumn(cnt, "edispclspec", ds_grid_grd_edimemo.getColumn(i, "spclspec"));
- ds_cond_grd_edimemo.getColumn(cnt, "ediseqno", ds_grid_grd_edimemo.getColumn(i, "seqno"));
- var seq = ds_grid_grd_edimemo.getColumn(i, "seqno");
- if (utlf_isNull(seq)) {
- seq = ds_grid_grd_edimemo.setColumn(i, "seqno", 1);
- }
- ds_cond_grd_edimemo.setColumn(cnt, "ediseqno", seq);
- ds_cond_grd_edimemo.getColumn(cnt, "edistatus", rowstatus);
- }
- }
- }
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- /****************************************************************************************
- * Argument :
- * Description : 재행/급여/항목구분 Radio 선택에 따라 처방 내역을 보여준다.
- ****************************************************************************************/
- function lf_fGetSelectedOrderData2()
- {
- ds_grid_grd_clodhist.filterstr = "";
- // 항목구분
- var selectedRdoitem1 = grp_ordsrch.rdo_item1.value;
- var filterstr1 = "";
- if (utlf_isNull(selectedRdoitem1) || selectedRdoitem1 == "-") { // 전체
- filterstr1 = "";
- } else {
- filterstr1 = " && ediitem1=='"+selectedRdoitem1+"'";
- }
- // 급여구분
- var selectedRdoitem2 = grp_ordsrch.rdo_payflag.value;
- var filterstr2 = "";
- //if (utlf_isNull(selectedRdoitem2) || selectedRdoitem2 == "-") { // 전체
- if (selectedRdoitem2 == "0") { // 전체
- filterstr2 = "";
- } else if (selectedRdoitem2 == "1") { // 급여인 경우
- filterstr2 = " && calcpayflag=='0'";
- } else if (selectedRdoitem2 == "2") { // 전액본인인 경우
- filterstr2 = " && calcpayflag=='1'";
- } else if (selectedRdoitem2 == "3") { // 비급여인 경우
- filterstr2 = " && calcpayflag=='2'";
- } else if (selectedRdoitem2 == "4") { // 선택인 경우
- filterstr2 = " && specordyn=='Y'";
- }
- // 재료행위구분
- var selectedRdoitem3 = grp_ordsrch.rdo_actmatflag.value;
- var filterstr3 = "";
- if (utlf_isNull(selectedRdoitem3) || selectedRdoitem3 == "-") { // 전체
- filterstr3 = "";
- } else if (selectedRdoitem3 == "1") { // 재료인 경우
- filterstr3 = " && (matractflag=='0' || matractflag=='1' || matractflag=='6')";
- } else { // 행위인 경우 (2 : 가산있는 행위 / 3 : 가산없는 행위)
- filterstr3 = " && (matractflag=='2' || matractflag=='3')";
- }
- // 시행구분
- var selectedRdoitem4 = grp_ordsrch.rdo_actingflag.value;
- var filterstr4 = "";
- if (utlf_isNull(selectedRdoitem4) || selectedRdoitem4 == "all") { // 전체
- filterstr4 = "";
- } else if (selectedRdoitem4 == "act") {
- filterstr4 = " && execprcpstatcd=='Y'";
- } else if (selectedRdoitem4 == "noact") {
- filterstr4 = " && execprcpstatcd=='N'";
- }
- // 필터
- var filterstr = filterstr1 + filterstr2 + filterstr3 + filterstr4;
- if (filterstr.substr(0, 4) == " && ") {
- filterstr = filterstr.substr(4);
- }
- ds_grid_grd_clodhist.filterstr = filterstr;
- ds_grid_grd_clodhist.rowposition = 0; // 그리드의 첫줄부터 표시되도록 포커스를 0으로 설정한다.
- }
- //=======================================================================================
- // Function
- //---------------------------------------------------------------------------------------
- // /****************************************************************************************
- // * Argument :
- // * Description : 처방그리드의 색을 표시함
- // ****************************************************************************************/
- // function lf_fcolor()
- // {
- // var nGridColCount = grd_clodhist.getCellCount("Body");
- //
- // //grd_clodhist.rowposition = i; // 적용할 행
- // for(var i = 0; i < nGridColCount; i++){
- // var spcljudgflag = ds_grid_grd_clodhist.getColumn(i, "spcljudgflag");
- // var indschacptstat = ds_grid_grd_clodhist.getColumn(i, "indschacptstat");
- // var dschjudgprcsstat = ds_grid_grd_clodhist.getColumn(i, "dschjudgprcsstat");
- //
- // grd_clodhist.setCellProperty("Body",i,"background",'EXPR((judgreqyn=="Y") ? "#cc99ff" : (dschjudgprcsstat == "C" || dschjudgprcsstat == "E" && indschacptstat != "D") ? "#99ccff" : (indschacptstat == "D" || dschjudgprcsstat == "C" && indschacptstat == "D") ? "#fea596" : "#ffffff")');
- // grd_clodhist.setCellProperty("Body",i,"background2",'EXPR((judgreqyn=="Y") ? "#cc99ff" : (dschjudgprcsstat == "C" || dschjudgprcsstat == "E" && indschacptstat != "D") ? "#99ccff" : (indschacptstat == "D" || dschjudgprcsstat == "C" && indschacptstat == "D") ? "#fea596" : "#ffffff")');
- ]]></Script>
|