SPPIJ00400_입원세부계산내역.xrw 243 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!-- 수정이력
  3. 2009.04.10 JHP 박창원샘 요청사항 상세내역 그리드 오른 팝업 메뉴 4개 추가
  4. 1. 행위 급여 ( 행위비급여 사항인데 급여로 전환위해서)
  5. 2. 행위 전액본인부담 (행위 급여인데 전액본인부담으로 전환)
  6. 3. 행위 일반 (행위일반으로 전환하기위한 처리)
  7. 4. 행위 No-Charge 처리 (?)-->
  8. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  9. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  10. <xhtml:head>
  11. <xhtml:title>입원재원심사 상세 계산내역</xhtml:title>
  12. <model id="model1">
  13. <instance id="instance1">
  14. <root xmlns="">
  15. <main>
  16. <list1>
  17. <iscl/>
  18. </list1>
  19. <list2>
  20. <insulist/>
  21. </list2>
  22. <list3>
  23. <deletediscl/>
  24. </list3>
  25. <item5>
  26. <!-- [TRPIJ00402] 그룹,싱글,EDI코드 입력에 따라 조회 / 또는 SMPIC00200_수가조회 검색 결과 -->
  27. <mech>
  28. <ediitem1/>
  29. <ediitem2/>
  30. <grupcalcscorcd/>
  31. <snglcalcscorcd/>
  32. <edicd/>
  33. <hngnm/>
  34. <ordnm/>
  35. <edicdflag/>
  36. <ediunitcost/>
  37. <appunitcost/>
  38. </mech>
  39. </item5>
  40. </main>
  41. <send>
  42. <pid/>
  43. <indd/>
  44. <mskind/>
  45. <ownbrate/>
  46. <insukindcd/>
  47. <insukind/>
  48. <suppkindcd/>
  49. <suppkind/>
  50. <fromdd/>
  51. <todd/>
  52. <orddeptcd/>
  53. <atdoc/>
  54. <grupsnglflag/>
  55. <calcscorcd/>
  56. <calcscorcdflag/>
  57. <past/>
  58. <cretno/>
  59. <srchflag/>
  60. <mig/>
  61. <anamne/>
  62. <instcd/>
  63. <choicdsrch/>
  64. <ordlist/>
  65. <judgresn/>
  66. <insufromdd/>
  67. <insutodd/>
  68. <specordyn/>
  69. <ordtype/>
  70. <brateflag/>
  71. <calcbasedd/>
  72. <age/>
  73. <cpyn/>
  74. <quickview/>
  75. <mainordfromdd/>
  76. <!-- 싱글코드 조회시 메인의 날자를 세팅해주기 위해서 20081113 박창원 -->
  77. <mainordtodd/>
  78. <item5>
  79. <!-- [TRPIJ00402] 처방 내역으로 조회하려는 그룹,싱글,EDI코드 조건 -->
  80. <mech>
  81. <insukind/>
  82. <orddd/>
  83. <grupcalcscorcd/>
  84. <snglcalcscorcd/>
  85. <edicd/>
  86. <age/>
  87. </mech>
  88. </item5>
  89. <listval>
  90. <uuee>
  91. <flag/>
  92. <scrnid/>
  93. <compsnm/>
  94. <compscnts/>
  95. <compsrefcnts/>
  96. <compssizecnts/>
  97. </uuee>
  98. </listval>
  99. <proccalctypeap>A</proccalctypeap>
  100. <unitspecyn/>
  101. <prcpcd/>
  102. <rehbprcpcurepartcd/>
  103. <drugmthdspccd/>
  104. <exptmthdfact/>
  105. </send>
  106. <init>
  107. <P0153list>
  108. </P0153list>
  109. <M0006list>
  110. <M0006>
  111. <cdid/>
  112. <cdnm/>
  113. </M0006>
  114. </M0006list>
  115. <M0007list>
  116. <M0007>
  117. <cdid/>
  118. <cdnm/>
  119. </M0007>
  120. </M0007list>
  121. <M0008list>
  122. <M0008>
  123. <cdid/>
  124. <cdnm/>
  125. </M0008>
  126. </M0008list>
  127. <P0506list>
  128. </P0506list>
  129. <drugmthdspccd/>
  130. <drugspd/>
  131. </init>
  132. <hidden>
  133. <popupmenu>
  134. <iscl>
  135. <item>
  136. <name>급여</name>
  137. <func>fOrdChangePay</func>
  138. </item>
  139. <item>
  140. <name>전액본인</name>
  141. <func>fOrdChangeNopy</func>
  142. </item>
  143. <item>
  144. <name>비급여</name>
  145. <func>fOrdChangeGnrl</func>
  146. </item>
  147. <item>
  148. <name>-</name>
  149. <func/>
  150. </item>
  151. <item>
  152. <name>초기복원</name>
  153. <func>fOrgReStore</func>
  154. </item>
  155. <!--
  156. <item>
  157. <name>-</name>
  158. <func/>
  159. </item>
  160. <item>
  161. <name>행위 급여</name>
  162. <func>fActPay</func>
  163. </item>
  164. <item>
  165. <name>행위 전액본인부담</name>
  166. <func>fActAllOwnBurden</func>
  167. </item>
  168. <item>
  169. <name>행위 일반</name>
  170. <func>fActlGnrl</func>
  171. </item>
  172. -->
  173. <item>
  174. <name>-</name>
  175. <func/>
  176. </item>
  177. <item>
  178. <name>수가조회</name>
  179. <func>fSetSrchCalcScorCdPop</func>
  180. </item>
  181. <item>
  182. <name>-</name>
  183. <func/>
  184. </item>
  185. <!--
  186. <item>
  187. <name>No-Charge 처리(본인부담 0원처리) 여부 적용/해제</name>
  188. <func>fOrdChangeNoCharge1</func>
  189. </item>
  190. -->
  191. <item>
  192. <name>No-Charge 처리(본인부담,청구 0원처리) 여부 적용/해제</name>
  193. <func>fOrdChangeNoCharge2</func>
  194. </item>
  195. <item>
  196. <name>행위 No-Charge 처리 적용/해제</name>
  197. <func>fActNoCharge</func>
  198. </item>
  199. <item>
  200. <name>@전액본인주사 수기료 급여처리/해제</name>
  201. <func>fOrdChangeInjectPayFlag</func>
  202. </item>
  203. <item>
  204. <name>MRI 체감(50%) 적용/해제</name>
  205. <func>fOrdChangeMRI</func>
  206. </item>
  207. <item>
  208. <name>수술 및 처치 50% 적용/해제</name>
  209. <func>fOrdChangeOphalf</func>
  210. </item>
  211. <item>
  212. <name>외래 DUMP 퇴원약 적용</name>
  213. <func>fOrdMakeAL100</func>
  214. </item>
  215. <item>
  216. <name>-</name>
  217. <func/>
  218. </item>
  219. <item>
  220. <name>처방유형변경(기왕증)</name>
  221. <func>fOrdChangeInsukind</func>
  222. </item>
  223. <item>
  224. <name>선택진료산정여부 변경</name>
  225. <func>fOrdChangeSpclYn</func>
  226. </item>
  227. <item>
  228. <name>문제처방등록 변경</name>
  229. <func>fOrdChangeProbOrdYn</func>
  230. </item>
  231. <item>
  232. <name>시행일자 변경</name>
  233. <func>fOrdChangeExecDD</func>
  234. </item>
  235. <item>
  236. <name>수술유형 변경</name>
  237. <func>fOrdChangeOp</func>
  238. </item>
  239. <item>
  240. <name>마취유형 변경</name>
  241. <func>fOrdChangeAns</func>
  242. </item>
  243. <item>
  244. <name>Angio유형 변경</name>
  245. <func>fOrdChangeAngio</func>
  246. </item>
  247. <item>
  248. <name>외과가산의사 변경</name>
  249. <func>fGSOrdDRYn</func>
  250. </item>
  251. <item>
  252. <name>일괄산정의미변경</name>
  253. <func>fChngEstmmncd</func>
  254. </item>
  255. <item>
  256. <name>초음파특정내역변경</name>
  257. <func>fOrdChangeRehb</func>
  258. </item>
  259. <item>
  260. <name>-</name>
  261. <func/>
  262. </item>
  263. <item>
  264. <name>수정사유 선택</name>
  265. <func>fOrdChangeWhy</func>
  266. </item>
  267. <item>
  268. <name>-</name>
  269. <func/>
  270. </item>
  271. <!-- JHP 20090803 추가 메세지 상세쪽에도 추가함. 시작 -->
  272. <item>
  273. <name>환자기준 메세지작성</name>
  274. <func>fPatJudgPatMsgTrsm</func>
  275. </item>
  276. <item>
  277. <name>처방기준 메세지작성</name>
  278. <func>fOrderJudgPatMsgTrsm</func>
  279. </item>
  280. <item>
  281. <name>환자 전체메세지 간편보기</name>
  282. <func>fJudgPatMsgTrsmRef</func>
  283. </item>
  284. <!-- JHP 20090803 추가 메세지 상세쪽에도 추가함. 끝 -->
  285. <!--
  286. <item>
  287. <name>환자단위 메시지전송</name>
  288. <func>fSendMsgPat</func>
  289. </item>
  290. <item>
  291. <name>처방단위 메시지전송</name>
  292. <func>fSendMsgOrder</func>
  293. </item>
  294. -->
  295. </iscl>
  296. </popupmenu>
  297. <list1>
  298. <iscllist>
  299. <seq/>
  300. <snglcalcscorcls/>
  301. <grupcalcscorcd/>
  302. <snglcalcscorcd/>
  303. <edicd/>
  304. <estmmeancd/>
  305. <estmcd/>
  306. <hngnm/>
  307. <calcpayflag/>
  308. <ownbrate/>
  309. <payownbrate/>
  310. <appunitcost/>
  311. <calcqty/>
  312. <calctims/>
  313. <calcdays/>
  314. <calcamt/>
  315. <cnfmcd/>
  316. <text/>
  317. <unithospaddamt/>
  318. <unitspecamt/>
  319. <unitaddamt/>
  320. <totordamt/>
  321. <ownbamt/>
  322. <hospaddamt/>
  323. <specamt/>
  324. <addamt/>
  325. <ordnm/>
  326. <grupcalcscorcls/>
  327. </iscllist>
  328. <isclsrch>
  329. <!-- 처방 조회부 Radio 선택 또는 Input 입력값 -->
  330. <judgChanged/>
  331. <inpCalcScorCd/>
  332. <inpEDICd/>
  333. <selectedRdoPay/>
  334. <selectedRdoItem/>
  335. </isclsrch>
  336. <isclitem1>
  337. <!-- 처방 목록에 해당하는 항목이 있는 경우 Radio item을 굵게 표시 -->
  338. <grupcalcscorcls_all/>
  339. <grupcalcscorcls_01/>
  340. <grupcalcscorcls_02/>
  341. <grupcalcscorcls_03/>
  342. <grupcalcscorcls_04/>
  343. <grupcalcscorcls_05/>
  344. <grupcalcscorcls_06/>
  345. <grupcalcscorcls_07/>
  346. <grupcalcscorcls_08/>
  347. <grupcalcscorcls_09/>
  348. <grupcalcscorcls_10/>
  349. <grupcalcscorcls_SS/>
  350. </isclitem1>
  351. <isclcond>
  352. <!-- 재행/급여/항목 구분 Radio 에서 선택된 값에 따라 처방 Grid에 보여질 값들의 조건식
  353. (수가 마스터에서 사용하는 구분값과 심사 화면에서 조건으로 사용되는 값들이 서로 맞지 않아 조건식을 조합하여 작성함 -->
  354. <judgchanged/>
  355. <calcpayflag/>
  356. <grupcalcscorcls/>
  357. </isclcond>
  358. </list1>
  359. <list2>
  360. <cond>
  361. <calcflag/>
  362. <pid/>
  363. <indd/>
  364. <mskind/>
  365. <insukind/>
  366. <suppkind/>
  367. <cretno/>
  368. <pdexchindx/>
  369. <pcalcmthdflag/>
  370. <pbrateflag/>
  371. <pjudgflag/>
  372. <snglcalcscorcd/>
  373. <estmmeancd/>
  374. <estmcd/>
  375. <calcpayflag/>
  376. <freeflag/>
  377. <calcqty/>
  378. <calctims/>
  379. <calcdays/>
  380. <calcseqno/>
  381. <calcscorseqno/>
  382. <execdd/>
  383. <orddd/>
  384. <specordyn/>
  385. <brthdd/>
  386. <estmcls/>
  387. </cond>
  388. <rslt>
  389. <iscl/>
  390. </rslt>
  391. </list2>
  392. <listatdoc>
  393. <atdoctlist>
  394. <atdoctid/>
  395. <atdocthngnm/>
  396. <specordyn/>
  397. </atdoctlist>
  398. </listatdoc>
  399. <smpic00100>
  400. <cond>
  401. <calcscorcd/>
  402. <judgflag/>
  403. </cond>
  404. </smpic00100>
  405. <smpic00200>
  406. <judgsrch>
  407. <con1_dd/>
  408. <con2_gsflag/>
  409. <con3_search1/>
  410. <con4_search2/>
  411. <con5_insu/>
  412. <con6_calcscorcd/>
  413. <con7_todd/>
  414. <con8_instcd/>
  415. <con11_edicd/>
  416. <con_ordinptflag/>
  417. </judgsrch>
  418. <rslt>
  419. <ediitem1/>
  420. <ediitem2/>
  421. <grupcalcscorcd/>
  422. <snglcalcscorcd/>
  423. <edicd/>
  424. <ordnm/>
  425. <edicdflag/>
  426. <ediunitcost/>
  427. </rslt>
  428. </smpic00200>
  429. <sppiz00800>
  430. <cond>
  431. <!-- 처방 Grid '산정의미/산정코드' 컬럼 에서 SPPIZ00800_산정코드조회.xrw에 전달하기 위한 조건 값
  432. <estmcls/>
  433. <estmmncd/>
  434. -->
  435. <insukind/>
  436. <estmcls/>
  437. <estmmncd/>
  438. <todd/>
  439. <repcd/>
  440. </cond>
  441. <rslt>
  442. <clcd>
  443. <estmcls/>
  444. <estmmncd/>
  445. <estmcd/>
  446. <estmcdnm/>
  447. <addmthd/>
  448. <pnt/>
  449. <amt/>
  450. <rate/>
  451. <todd/>
  452. </clcd>
  453. </rslt>
  454. </sppiz00800>
  455. <sppiz01000>
  456. <cond>
  457. <cdid/>
  458. </cond>
  459. <rslt>
  460. <cdid/>
  461. </rslt>
  462. </sppiz01000>
  463. <rslt/>
  464. <cond/>
  465. <tmp>
  466. <isclsrch>
  467. <ordfilflag/>
  468. </isclsrch>
  469. </tmp>
  470. <judgresn/>
  471. <prcpdd/>
  472. <prcpno/>
  473. <prcphistno/>
  474. <chngexec>
  475. <chngdd/>
  476. <chnghh/>
  477. <chngmn/>
  478. </chngexec>
  479. <op>
  480. <nigtprpcflag/>
  481. <erprcpflag/>
  482. </op>
  483. <inpt>
  484. <dschnotidt/>
  485. </inpt>
  486. </hidden>
  487. </root>
  488. </instance>
  489. <script type="javascript" ev:event="xforms-model-construct-done">
  490. <![CDATA[
  491. fInitialize();
  492. ]]>
  493. </script>
  494. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  495. <submission id="TRPIJ00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list1"/>
  496. <submission id="TRPIJ00402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/item5" resultref="/root/main/item5"/>
  497. <submission id="TXPIJ00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/hidden/rslt"/>
  498. <submission id="TXPIJ00402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/listval" resultref="/root/hidden/listval"/>
  499. <submission id="TRPIJ00403" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list1"/>
  500. <submission id="TRPIJ00404" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list1"/>
  501. <submission id="TRPIJ00405" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/hidden/sppiz00800/cond" resultref="/root/hidden/sppiz00800/rslt"/>
  502. <submission id="TRPIJ00406" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/hidden/list2/cond" resultref="/root/hidden/list2/rslt"/>
  503. <submission id="TRPIJ00407" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/listval" resultref="/root/hidden/listval"/>
  504. <submission id="TXPIJ00205" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send"/>
  505. <submission id="TRPIJ00408" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/listval" resultref="/root/hidden/"/>
  506. <submission id="TRPIJ00409" method="post" ref="/root/send" resultref="/root/hidden/listatdoc"/>
  507. <submission id="TRPIJ00410" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/hidden/inpt"/>
  508. <submission id="TRZBC00104" mediatype="application/x-www-form-urlencoded" method="post"/>
  509. <submission id="TRMMB04107" mediatype="application/x-www-form-urlencoded" method="post"/>
  510. <submission id="TRMMO00162" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/drugmthdspccd"/>
  511. </model>
  512. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  513. <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
  514. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  515. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  516. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  517. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  518. <script type="javascript" src="../../../com/instantmsgweb/js/ZMI001.js"/>
  519. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  520. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  521. <script type="javascript">
  522. <![CDATA[
  523. function fInitialize(){
  524. // 공통코드를 조회한다.
  525. //model.removeNodeset("/root/init");
  526. model.resetInstanceNode("/root/init/P0153list") ;
  527. model.resetInstanceNode("/root/init/P0506list") ;
  528. // model.removeNodeset("/root/init/P0153list/P0153");
  529. zbcfGetCodeList(
  530. new Array("P0153","M0006","M0007","M0008","P0506"),
  531. new Array("/root/init/P0153list"
  532. ,"/root/init/M0006list"
  533. ,"/root/init/M0007list"
  534. ,"/root/init/M0008list"
  535. ,"/root/init/P0506list") );
  536. zbcfGetKindCodeList(new Array("M0047"), new Array("M0046"), new Array("/root/init/drugspd"), false);
  537. model.refresh();
  538. model.setValue("/root/send/listval/uuee/scrnid","SPPIJ00400");
  539. submit("TRPIJ00408");
  540. var grd_name = model.getValue("/root/hidden/listval/uuee[compsnm='grd_ordlist']/compsnm");
  541. var refdata = model.getValue("/root/hidden/listval/uuee[compsnm='grd_ordlist']/compscnts");
  542. var sizedata = model.getValue("/root/hidden/listval/uuee[compsnm='grd_ordlist']/compssizecnts");
  543. if (grd_name != "") {
  544. setOrderInfoOfCol("grd_ordlist",refdata,sizedata);
  545. }
  546. fSetRdoReset();
  547. //rdo_ordfilflag.select(0);
  548. model.setValue(rdo_ordfilflag.attribute("ref"),"-");
  549. //rdo_mchrgcode.select(0);
  550. model.setValue(rdo_mchrgcode.attribute("ref"),"calcscorcd");
  551. fGetMainInfo();
  552. // cmb_judgresn.select(4);
  553. }
  554. //Opener에서 기본 정보를 받아 온다.
  555. function fGetMainInfo(){
  556. var selyn = opener.model.getValue("/root/hidden/sppij00400/cond/selyn"); // 재원심사와 사후심사의 호출구분을 위해 20080825 박창원
  557. if(selyn == "Y") { // 사후 심사에서 호출한건
  558. var pid = opener.model.getValue("/root/hidden/sppij00400/cond/pid");
  559. var indd = opener.model.getValue("/root/hidden/sppij00400/cond/indd");
  560. // 누락된 cretno 추가 - 20100302 박창원
  561. //var cretno = opener.model.getValue("/root/main/item1/iteminfo/cretno");
  562. // 20100312 김용민 수정
  563. var cretno = opener.model.getValue("/root/hidden/sppij00400/cond/cretno");
  564. var mskind = opener.model.getValue("/root/hidden/sppij00400/cond/mskind");
  565. var insukindcd = opener.model.getValue("/root/hidden/sppij00400/cond/insukind");
  566. var insukindcdnm = opener.model.getValue("/root/hidden/sppij00400/cond/insukindnm");
  567. var suppkindcd = opener.model.getValue("/root/hidden/sppij00400/cond/suppkind");
  568. var suppkindcdnm = opener.model.getValue("/root/hidden/sppij00400/cond/suppkindnm");
  569. var ownbrate = opener.model.getValue("/root/hidden/sppij00400/cond/ownbrate");
  570. var ordfromdd = opener.model.getValue("/root/hidden/sppij00400/cond/ordfromdd");
  571. var ordtodd = opener.model.getValue("/root/hidden/sppij00400/cond/ordtodd");
  572. var ordtype = opener.model.getValue("/root/hidden/sppij00400/cond/ordtype");
  573. var brateflag = opener.model.getValue("/root/hidden/sppij00400/cond/brateflag");
  574. var calcscorcd = opener.model.getValue("/root/hidden/sppij00400/cond/calcscorcd");
  575. var grupsnglflag = "G";
  576. var selectedRdoItem = "";
  577. var mig = "N";
  578. var insufromdd = opener.model.getValue("/root/hidden/sppij00400/cond/insufromdd");
  579. var insutodd = opener.model.getValue("/root/hidden/sppij00400/cond/insutodd");
  580. var chksave = "Y";
  581. var srchflag = opener.model.getValue("/root/hidden/sppij00400/cond/srchflag");
  582. var cpyn = opener.model.getValue("/root/hidden/sppij00400/cond/cpyn");
  583. // 20090810. JHP. 수정추가,
  584. // 입원사후에서 상세내역을 오픈할때 더블클릭으로 오픈하면 수가코드 조회로.. 오른메뉴로 열면 edi코드로 조회되게 셋팅위하여 구분자와 edi 코드 추가함.
  585. var ediflag = opener.model.getValue("/root/hidden/sppij00400/cond/ediflag");
  586. var edicd = opener.model.getValue("/root/hidden/sppij00400/cond/edicd");
  587. } else {
  588. var pid = opener.model.getValue("/root/main/item1/iteminfo/pid");
  589. var age = opener.model.getValue("/root/main/item1/iteminfo/age");
  590. var indd = opener.model.getValue("/root/main/item1/iteminfo/indd1");
  591. var mskind = opener.model.getValue("/root/send/mskind");
  592. // 누락된 cretno 추가 - 20100302 박창원
  593. var cretno = opener.model.getValue("/root/main/item1/iteminfo/cretno");
  594. var insukindcd = opener.model.getValue("/root/main/item1/iteminfo/insukindcd");
  595. var insukindcdnm = opener.model.getValue("/root/main/item1/iteminfo/insukindnm");
  596. var suppkindcd = opener.model.getValue("/root/main/item1/iteminfo/suppkindcd");
  597. var suppkindcdnm = opener.cmb_suppkind.label;
  598. var ownbrate = opener.model.getValue("/root/main/item1/iteminfo/ownrate");
  599. var ordfromdd = opener.model.getValue("/root/send/ordfromdd");
  600. var ordtodd = opener.model.getValue("/root/send/ordtodd");
  601. var ordtype = opener.model.getValue("/root/send/ordtype");
  602. var brateflag = opener.model.getValue("/root/send/brateflag");
  603. var calcscorcd = opener.model.getValue("/root/hidden/sppij00400/cond/calcscorcd");
  604. var grupsnglflag = opener.model.getValue("/root/hidden/sppij00400/cond/grupsnglflag");
  605. var selectedRdoItem = opener.model.getValue("/root/hidden/sppij00400/cond/selectedRdoItem");
  606. var mig = opener.model.getValue("/root/main/item1/iteminfo/mig");
  607. //저장가능여부 체크
  608. var chksave = opener.model.getValue("root/hidden/item1/chksave");
  609. //퇴원심사 마감여부 체크
  610. var dschjudgprcsstat = opener.model.getValue("/root/main/item1/iteminfo/dschjudgprcsstat");
  611. var cretno = opener.model.getValue("/root/send/cretno");
  612. var srchflag = opener.model.getValue("/root/hidden/item1/detlsrchflag");
  613. var insufromdd = opener.model.getValue("/root/send/fromdd");
  614. var insutodd = opener.model.getValue("/root/send/todd");
  615. var specordyn = opener.model.getValue("/root/main/item1/iteminfo/specordyn");
  616. // 강남성모병원 기능을 제약하기 위해서 instcd 추가 - 20080929 박창원
  617. var instcd = opener.model.getValue("/root/main/item1/iteminfo/instcd");
  618. model.setValue("/root/send/instcd",instcd);
  619. var cpyn = opener.model.getValue("/root/main/item1/iteminfo/cpyn");
  620. // 코드단위 조회시 메인에서 적용된 처방기간을 그대로 적용해주기 위해서 - 20081113 박창원
  621. model.setValue("/root/send/mainordfromdd", ordfromdd);
  622. model.setValue("/root/send/mainordtodd", ordtodd);
  623. }
  624. if(dschjudgprcsstat == "C" || dschjudgprcsstat == "E" || chksave == "Y"){
  625. btn_save.visible = false;
  626. }else{
  627. btn_save.visible = true;
  628. }
  629. //if (selectedRdoItem == "") {
  630. //rdo_ordfilflag.value = "-";
  631. model.setValue(rdo_ordfilflag.attribute("ref"),"-");
  632. selectedRdoItem = "-";
  633. //} else {
  634. // //rdo_ordfilflag.value = selectedRdoItem;
  635. // model.setValue(rdo_ordfilflag.attribute("ref"),selectedRdoItem);
  636. //}
  637. model.setValue("/root/send/pid",pid);
  638. model.setValue("/root/send/age",age);
  639. model.setValue("/root/send/indd",indd);
  640. model.setValue("/root/send/mskind",mskind);
  641. model.setValue("/root/send/insukindcd",insukindcd);
  642. model.setValue("/root/send/insukind",insukindcdnm);
  643. model.setValue("/root/send/suppkindcd",suppkindcd);
  644. model.setValue("/root/send/suppkind",suppkindcdnm);
  645. model.setValue("/root/send/ownbrate",ownbrate);
  646. model.setValue("/root/send/quickview","Y");
  647. // 단일코드 조회시에만 날짜를 바꾸어 주기 위해 코드 이동 - 20081021 박창원
  648. // 사후심사에서 호출했을 경우에는 유형기간과 조회기간을 동일하게 해준다. - 20081013 박창원
  649. // if(selyn == "Y") { // 사후 심사에서 호출한건
  650. // model.setValue("/root/send/fromdd",insufromdd);
  651. // model.setValue("/root/send/todd",insutodd);
  652. // }
  653. // 재원에서 호출시에도 유형기간과 조회기간을 동일하게 해준다. - 20081016 박창원
  654. /* else {
  655. model.setValue("/root/send/fromdd",ordfromdd);
  656. model.setValue("/root/send/todd",ordtodd);
  657. } */
  658. // 20090810. JHP. 수정추가,
  659. // 입원사후에서 상세내역을 오픈할때 더블클릭으로 오픈하면 수가코드 조회로.. 오른메뉴로 열면 edi코드로 조회되게 셋팅위하여 구분자와 edi 코드 추가함.
  660. if(ediflag == "Y"){
  661. model.setValue("/root/send/choicdsrch","edicd");
  662. model.setValue("/root/send/calcscorcd",edicd);
  663. } else if(ediflag == "N"){
  664. model.setValue("/root/send/choicdsrch","calcscorcd");
  665. model.setValue("/root/send/calcscorcd",calcscorcd);
  666. } else{
  667. model.setValue("/root/send/choicdsrch","calcscorcd");
  668. model.setValue("/root/send/calcscorcd",calcscorcd);
  669. }
  670. model.setValue("/root/send/cretno",cretno);
  671. model.setValue("/root/send/srchflag",srchflag);
  672. model.setValue("/root/send/grupsnglflag",grupsnglflag);
  673. model.setValue("/root/send/insufromdd",insufromdd);
  674. model.setValue("/root/send/insutodd",insutodd);
  675. model.setValue("/root/send/specordyn",specordyn);
  676. model.setValue("/root/send/ordtype",ordtype);
  677. model.setValue("/root/send/brateflag",brateflag);
  678. model.setValue("/root/send/mig",mig);
  679. model.setValue("/root/send/cpyn",cpyn);
  680. //금액 계산시 나이 가산때문에 넘겨주기 위해서 추가함.
  681. var brthdd = opener.model.getValue("/root/main/item1/iteminfo/brthdd");
  682. model.setValue("/root/hidden/list2/cond/brthdd",brthdd);
  683. model.setValue("/root/hidden/list1/isclsrch/selectedRdoItem",selectedRdoItem);
  684. // 필터 변경 전 값 설정하기 위한 temp
  685. model.setValue("/root/hidden/tmp/isclsrch/ordfilflag", selectedRdoItem);
  686. //보험정보를 갖고 온다.
  687. model.copyNode(root.main.list2, opener.root.main.list1);
  688. if(srchflag == "ALL"){
  689. model.setValue("/root/send/srchflag","");
  690. model.setValue("/root/send/calcscorcd","");
  691. model.setValue("/root/send/grupsnglflag","S");
  692. model.setValue("/root/send/fromdd",ordfromdd);
  693. model.setValue("/root/send/todd",ordtodd);
  694. } else {
  695. model.setValue("/root/send/fromdd",insufromdd);
  696. model.setValue("/root/send/todd",insutodd);
  697. }
  698. //재원심사 입원세부계산내역 조회
  699. fGetIsclList();
  700. }
  701. //재원심사 입원세부계산내역 조회
  702. function fGetIsclList(){
  703. model.removeNodeset("/root/main/list1");
  704. model.removeNodeset("/root/main/item5");
  705. submit("TRPIJ00401");
  706. var selectedRdoItem = model.getValue("/root/hidden/list1/isclsrch/selectedRdoItem");
  707. if (selectedRdoItem == "" || selectedRdoItem == "-") { // 전체
  708. model.setValue("/root/hidden/list1/isclcond/grupcalcscorcls","");
  709. } else {
  710. model.setValue("/root/hidden/list1/isclcond/grupcalcscorcls","ediitem1='"+selectedRdoItem+"'");
  711. }
  712. // 최적화를 위해이동필요 - 20081105 박창원
  713. /* var rowcnt = getNodesetCount("/root/main/list1/iscl");
  714. rowcnt = eval(rowcnt) + 1;
  715. for (var i=1; i<rowcnt; i++) {
  716. var estmmncd = model.getValue("/root/main/list1/iscl["+ i + "]/estmmncd");
  717. var estmmnnm = model.getValue("/root/main/list1/iscl["+ i + "]/estmmnnm");
  718. if (estmmnnm != "") {
  719. grd_ordlist.tooltipText(i, grd_ordlist.colref("estmmncd")) = "[산정의미코드:" + estmmncd + "]" + estmmnnm;
  720. }
  721. }*/
  722. // 실시일자별로 처방 색깔 구분하여 표시한다
  723. fSetOrderColorByExecdd();
  724. // 인스턴스 필터를 적용하고 fSetColorSpclJudgOrder()를 호출하여 grid 배경색 설정
  725. // 빨리보기 체크가 되어있으면 그리드 색갈및 산정의미 설명 skip - 20081113 박창원
  726. var quickview = model.getValue(chk_quickview.attribute("ref"));
  727. if (quickview != "Y") {
  728. fGetSelectedOrderData();
  729. model.refreshpart("/root/main/list1/iscl");
  730. }
  731. model.refreshpart("/root/hidden/list1/isclsrch/selectedRdoItem" );
  732. }
  733. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  734. //마우스 오른쪽 버튼 기능 관련 코딩 ( Pop-up) //
  735. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  736. //선택된 row의 체크값을 'Y' 로 해주는 함수
  737. function fCheckYSelectedRows() {
  738. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  739. var cRrow = grd_ordlist.selectedRow(i);
  740. grd_ordlist.valueMatrix(cRrow,grd_ordlist.colRef("chkflag")) = "Y";
  741. }
  742. }
  743. //선택된 row의 체크값을 'N' 로 해주는 함수
  744. function fCheckNSelectedRows() {
  745. for( var i = 1; i < grd_ordlist.rows; i++ ){
  746. grd_ordlist.valueMatrix(i,grd_ordlist.colRef("chkflag")) = "N";
  747. }
  748. }
  749. //급여처리
  750. function fOrdChangePay()
  751. {
  752. //선택된 row의 체크값을 'Y' 로 해주는 함수
  753. fCheckYSelectedRows();
  754. // 제약조건을 사전에 처리하도록 한다. (데이터가 변경되는 row도 있기 때문에) - 20080929 박창원
  755. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  756. //선택된row
  757. var cRrow = grd_ordlist.selectedRow(i);
  758. //계산내역인 경우만
  759. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  760. // 수가마스터 셋팅의 급비에 따른 급여 전환 처리 2007.11.20 박도형
  761. // 1. 수가마스터 상 급비가 급여 : 급여 , 100/100, 일반 모두 선택가능
  762. // 2. 수가마스터 상 급비가 100/100 : 100/100, 일반 만 선택가능
  763. // 3. 수가마스터 상 급비가 일반 : 일반 만 선택가능
  764. var pynpy = model.getValue("/root/main/list1/iscl["+ cRrow +"]/pynpy");
  765. // 2008.01.28 박지욱 추가 (급비변경시 구수가코드 ordinptflag == 'x' 이면 변경할 수 없음 처리)
  766. var ordinptflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/ordinptflag");
  767. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  768. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  769. if (cretyn == "Y") {
  770. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  771. //선택된 row의 체크값을 'N' 로 해주는 함수
  772. fCheckNSelectedRows();
  773. return;
  774. }else if (ordinptflag == "X") {
  775. messageBox("급비변경이 불가한 코드(구수가코드)가 포함되어 변경", "E001");
  776. //선택된 row의 체크값을 'N' 로 해주는 함수
  777. fCheckNSelectedRows();
  778. return;
  779. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 alert 막음 ( 2014.0801 이은정 )
  780. //}else if (ordcalcflag == "O") { // 미시행 처방은 변경이 불가함을 alert - 20080929 박창원
  781. // messageBox("미시행 처방이 포함되어 변경", "E001");
  782. //선택된 row의 체크값을 'N' 로 해주는 함수
  783. // fCheckNSelectedRows();
  784. // return;
  785. }else if (pynpy != "0") { // 수가 마스터상 급비의 rule에 따라 급비가 불가한 코드가 있을때 alert - 20080929 박창원
  786. messageBox("급여처리 기준에 포함되지 않는 처방이 있어 변경", "E001");
  787. //선택된 row의 체크값을 'N' 로 해주는 함수
  788. fCheckNSelectedRows();
  789. return;
  790. }
  791. }
  792. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  793. //선택된row
  794. var cRrow = grd_ordlist.selectedRow(i);
  795. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  796. // 동일한 급비일 경우 처리하지 않는다.
  797. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  798. if (calcpayflag != "0") {
  799. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  800. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  801. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  802. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  803. var messageYn = "N";
  804. // 선택안된 같은 처방 row를 담을 배열
  805. var samecalclist = new Array();
  806. var index = 0;
  807. for (var j = 1; j < grd_ordlist.rows; j++) {
  808. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  809. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  810. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  811. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  812. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  813. messageYn = "Y";
  814. samecalclist[index++] = j;
  815. }
  816. }
  817. }
  818. // 동일한 선택안된 row가 있다면
  819. if (messageYn == "Y") {
  820. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  821. model.setValue("/root/hidden/judgresn", "");
  822. model.setValue("/root/hidden/prcpdd", "");
  823. model.setValue("/root/hidden/prcpno", "");
  824. model.setValue("/root/hidden/prcphistno", "");
  825. fOrdExecutePay(cRrow);
  826. for(var k=0; k < index; k++) {
  827. var row = samecalclist[k];
  828. fOrdExecutePay(row);
  829. }
  830. }
  831. } else {
  832. model.setValue("/root/hidden/judgresn", "");
  833. model.setValue("/root/hidden/prcpdd", "");
  834. model.setValue("/root/hidden/prcpno", "");
  835. model.setValue("/root/hidden/prcphistno", "");
  836. fOrdExecutePay(cRrow);
  837. }
  838. }
  839. //선택된 row의 체크값을 'N' 로 해주는 함수
  840. fCheckNSelectedRows();
  841. }
  842. // 선택된 row 별로 처방급비 "급여" 변경 처리
  843. function fOrdExecutePay(cRrow) {
  844. var chkjudgresn = model.getValue("/root/send/judgresn");
  845. //처방이 있는경우
  846. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  847. if(chk_cd != ""){
  848. model.setValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag", "0");
  849. model.setValue("/root/main/list1/iscl[" + cRrow + "]/chkflag","Y");
  850. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  851. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  852. if(chkjudgresn && chkjudgresn != "-"){
  853. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  854. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  855. }else{
  856. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  857. {
  858. // 동일 처방에 이미 심사사유가 달려있으면 그것을 넣어주도록 하고, 없으면 넣도록 팝업을 띄운다.
  859. var judgresn1 = model.getValue("/root/hidden/judgresn");
  860. var prcpdd1 = model.getValue("/root/hidden/prcpdd");
  861. var prcpno1 = model.getValue("/root/hidden/prcpno");
  862. var prcphistno1 = model.getValue("/root/hidden/prcphistno");
  863. var prcpdd2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpdd");
  864. var prcpno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpno");
  865. var prcphistno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcphistno");
  866. if (prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  867. // 기존 심사사유 넣기
  868. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", judgresn1);
  869. } else {
  870. // 새로 심사사유 넣기
  871. var cd = fSetAdjtResnCd2();
  872. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", cd);
  873. model.setValue("/root/hidden/judgresn", cd);
  874. model.setValue("/root/hidden/prcpdd", prcpdd2);
  875. model.setValue("/root/hidden/prcpno", prcpno2);
  876. model.setValue("/root/hidden/prcphistno", prcphistno2);
  877. //grp_judgresn.visible = true;
  878. }
  879. }
  880. }
  881. var row_stat = grd_ordlist.rowStatus(cRrow);
  882. if(row_stat != 1){
  883. if(row_stat != 3){
  884. if(row_stat != 4){
  885. grd_ordlist.rowStatus(cRrow) = 2;
  886. }
  887. }
  888. }
  889. }
  890. //처방급비변경여부를 'Y'로 세팅
  891. model.setValue("/root/main/list1/iscl["+ cRrow +"]/payflagyn", "Y");
  892. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 계산 돌림 ( 2014.0801 이은정 )
  893. ////처방내역이면 계산을 돌리지 않는다.
  894. //if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  895. // grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  896. // return;
  897. //}
  898. }
  899. //전액본인처리
  900. function fOrdChangeNopy()
  901. {
  902. fCheckYSelectedRows();
  903. // 제약조건을 사전에 처리하도록 한다. (데이터가 변경되는 row도 있기 때문에) - 20080929 박창원
  904. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  905. //선택된row
  906. var cRrow = grd_ordlist.selectedRow(i);
  907. //계산내역인 경우만
  908. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  909. // 동일한 급일 경우 처리하지 않는다.
  910. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  911. // 수가마스터 셋팅의 급비에 따른 급여 전환 처리 2007.11.20 박도형
  912. // 1. 수가마스터 상 급비가 급여 : 급여 , 100/100, 일반 모두 선택가능
  913. // 2. 수가마스터 상 급비가 100/100 : 100/100, 일반 만 선택가능
  914. // 3. 수가마스터 상 급비가 일반 : 일반 만 선택가능
  915. var pynpy = model.getValue("/root/main/list1/iscl["+ cRrow +"]/pynpy");
  916. // 하단의 경우는 급여구분 100/100 으로 변환 할수 없다. 2007.11.20 박도형
  917. // 처방구분 대분류 핵의학 09 + 중분류( PET CT 02, PET MRI 05)
  918. // 처방구분 대분류 방사선 MRI 25
  919. var earncls1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/earncls1");
  920. var earncls2 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/earncls2");
  921. var newexecdd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/newexecdd");
  922. // 2008.01.28 박지욱 추가 (급비변경시 구수가코드 ordinptflag == 'x' 이면 변경할 수 없음 처리)
  923. var ordinptflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/ordinptflag");
  924. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  925. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  926. if (cretyn == "Y") {
  927. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  928. //선택된 row의 체크값을 'N' 로 해주는 함수
  929. fCheckNSelectedRows();
  930. return;
  931. }else if (ordinptflag == "X") {
  932. messageBox("급비변경이 불가한 코드(구수가코드)가 포함되어 변경", "E001");
  933. fCheckNSelectedRows();
  934. return;
  935. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 alert 막음 ( 2014.08.01 이은정 )
  936. //}else if (ordcalcflag == "O") { // 미시행 처방은 변경이 불가함을 alert - 20080929 박창원
  937. // messageBox("미시행 처방이 포함되어 변경", "E001");
  938. // fCheckNSelectedRows();
  939. // return;
  940. // 2014년 12월 1일 이후 PET-CT는 전액본인부담 허용 (2014.12.08 L.E.J)
  941. } else if (newexecdd < "20141201" && earncls1 == "09" && (earncls2 == "02" || earncls2 == "05")) {
  942. messageBox("2014년 12월 1일 이전 PET-CT 처방은 전액본인부담으로 변경", "E001");
  943. fCheckNSelectedRows();
  944. return;
  945. } else if (earncls1 == "25") {
  946. messageBox("MRI 처방은 전액본인부담으로 변경", "E001");
  947. fCheckNSelectedRows();
  948. return;
  949. }else if (pynpy == "2") { // 수가 마스터상 급비의 rule에 따라 급비가 불가한 코드가 있을때 alert - 20080929 박창원
  950. messageBox("급여처리 기준에 포함되지 않는 처방이 있어 변경", "E001");
  951. fCheckNSelectedRows();
  952. return;
  953. }
  954. }
  955. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  956. //선택된row
  957. var cRrow = grd_ordlist.selectedRow(i);
  958. // 동일한 급일 경우 처리하지 않는다.
  959. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  960. if (calcpayflag != "1" ) {
  961. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  962. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  963. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  964. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  965. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  966. var messageYn = "N";
  967. // 선택안된 같은 처방 row를 담을 배열
  968. var samecalclist = new Array();
  969. var index = 0;
  970. for (var j = 1; j < grd_ordlist.rows; j++) {
  971. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  972. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  973. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  974. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  975. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  976. messageYn = "Y";
  977. samecalclist[index++] = j;
  978. }
  979. }
  980. // 동일한 선택안된 row가 있다면
  981. if (messageYn == "Y") {
  982. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  983. model.setValue("/root/hidden/judgresn", "");
  984. model.setValue("/root/hidden/prcpdd", "");
  985. model.setValue("/root/hidden/prcpno", "");
  986. model.setValue("/root/hidden/prcphistno", "");
  987. fOrdExecuteNopy(cRrow);
  988. for(var k=0; k < index; k++) {
  989. var row = samecalclist[k];
  990. fOrdExecuteNopy(row);
  991. }
  992. }
  993. } else {
  994. model.setValue("/root/hidden/judgresn", "");
  995. model.setValue("/root/hidden/prcpdd", "");
  996. model.setValue("/root/hidden/prcpno", "");
  997. model.setValue("/root/hidden/prcphistno", "");
  998. fOrdExecuteNopy(cRrow);
  999. }
  1000. }
  1001. }
  1002. fCheckNSelectedRows();
  1003. }
  1004. function fOrdExecuteNopy(cRrow) {
  1005. var chkjudgresn = model.getValue("/root/send/judgresn");
  1006. //처방이 있는경우
  1007. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1008. if(chk_cd != ""){
  1009. model.setValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag", "1");
  1010. model.setValue("/root/main/list1/iscl[" + cRrow + "]/chkflag","Y");
  1011. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1012. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1013. if(chkjudgresn && chkjudgresn != "-"){
  1014. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1015. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  1016. }else{
  1017. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1018. {
  1019. // 동일 처방에 이미 심사사유가 달려있으면 그것을 넣어주도록 하고, 없으면 넣도록 팝업을 띄운다.
  1020. var judgresn1 = model.getValue("/root/hidden/judgresn");
  1021. var prcpdd1 = model.getValue("/root/hidden/prcpdd");
  1022. var prcpno1 = model.getValue("/root/hidden/prcpno");
  1023. var prcphistno1 = model.getValue("/root/hidden/prcphistno");
  1024. var prcpdd2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpdd");
  1025. var prcpno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpno");
  1026. var prcphistno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcphistno");
  1027. if (prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1028. // 기존 심사사유 넣기
  1029. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", judgresn1);
  1030. } else {
  1031. // 새로 심사사유 넣기
  1032. var cd = fSetAdjtResnCd2();
  1033. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", cd);
  1034. model.setValue("/root/hidden/judgresn", cd);
  1035. model.setValue("/root/hidden/prcpdd", prcpdd2);
  1036. model.setValue("/root/hidden/prcpno", prcpno2);
  1037. model.setValue("/root/hidden/prcphistno", prcphistno2);
  1038. //grp_judgresn.visible = true;
  1039. }
  1040. }
  1041. }
  1042. var row_stat = grd_ordlist.rowStatus(cRrow);
  1043. if(row_stat != 1){
  1044. if(row_stat != 3){
  1045. if(row_stat != 4){
  1046. grd_ordlist.rowStatus(cRrow) = 2;
  1047. }
  1048. }
  1049. }
  1050. }
  1051. //계산내역을 갖고 온다.
  1052. //처방급비변경여부를 'Y'로 세팅
  1053. model.setValue("/root/main/list1/iscl["+ cRrow +"]/payflagyn", "Y");
  1054. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 계산 돌림 ( 2014.0801 이은정 )
  1055. //처방내역이면 계산을 돌리지 않는다.
  1056. //if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1057. // grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1058. // return;
  1059. //}
  1060. }
  1061. //일반
  1062. function fOrdChangeGnrl()
  1063. {
  1064. fCheckYSelectedRows();
  1065. // 제약조건을 사전에 처리하도록 한다. (데이터가 변경되는 row도 있기 때문에) - 20080929 박창원
  1066. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1067. //선택된row
  1068. var cRrow = grd_ordlist.selectedRow(i);
  1069. //계산내역인 경우만
  1070. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1071. // 2008.01.28 박지욱 추가 (급비변경시 구수가코드 ordinptflag == 'X' 이면 변경할 수 없음 처리)
  1072. var ordinptflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/ordinptflag");
  1073. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1074. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1075. if (cretyn == "Y") {
  1076. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1077. //선택된 row의 체크값을 'N' 로 해주는 함수
  1078. fCheckNSelectedRows();
  1079. return;
  1080. }else if (ordinptflag == "X") {
  1081. messageBox("급비변경이 불가한 코드(구수가코드)가 포함되어 변경", "E001");
  1082. fCheckNSelectedRows();
  1083. return;
  1084. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 alert 막음 ( 2014.0801 이은정 )
  1085. //} else if (ordcalcflag == "O") {
  1086. // messageBox("미시행 처방이 포함되어 변경", "E001");
  1087. // fCheckNSelectedRows();
  1088. // return;
  1089. }
  1090. }
  1091. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1092. var cRrow = grd_ordlist.selectedRow(i);
  1093. // 동일한 급일 경우 처리하지 않는다.
  1094. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  1095. if(calcpayflag != "2"){
  1096. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  1097. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  1098. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  1099. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  1100. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  1101. var messageYn = "N";
  1102. // 선택안된 같은 처방 row를 담을 배열
  1103. var samecalclist = new Array();
  1104. var index = 0;
  1105. for (var j = 1; j < grd_ordlist.rows; j++) {
  1106. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  1107. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  1108. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  1109. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  1110. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1111. messageYn = "Y";
  1112. samecalclist[index++] = j;
  1113. }
  1114. }
  1115. // 동일한 선택안된 row가 있다면
  1116. if (messageYn == "Y") {
  1117. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  1118. model.setValue("/root/hidden/judgresn", "");
  1119. model.setValue("/root/hidden/prcpdd", "");
  1120. model.setValue("/root/hidden/prcpno", "");
  1121. model.setValue("/root/hidden/prcphistno", "");
  1122. fOrdExecuteGnrl(cRrow);
  1123. for(var k=0; k < index; k++) {
  1124. var row = samecalclist[k];
  1125. fOrdExecuteGnrl(row);
  1126. }
  1127. }
  1128. } else {
  1129. model.setValue("/root/hidden/judgresn", "");
  1130. model.setValue("/root/hidden/prcpdd", "");
  1131. model.setValue("/root/hidden/prcpno", "");
  1132. model.setValue("/root/hidden/prcphistno", "");
  1133. fOrdExecuteGnrl(cRrow);
  1134. }
  1135. }
  1136. }
  1137. fCheckNSelectedRows();
  1138. }
  1139. function fOrdExecuteGnrl(cRrow) {
  1140. var chkjudgresn = model.getValue("/root/send/judgresn");
  1141. //처방이 있는경우
  1142. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1143. if(chk_cd != ""){
  1144. model.setValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag", "2");
  1145. model.setValue("/root/main/list1/iscl[" + cRrow + "]/chkflag","Y");
  1146. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1147. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1148. if(chkjudgresn && chkjudgresn != "-"){
  1149. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1150. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  1151. }else{
  1152. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1153. {
  1154. // 동일 처방에 이미 심사사유가 달려있으면 그것을 넣어주도록 하고, 없으면 넣도록 팝업을 띄운다.
  1155. var judgresn1 = model.getValue("/root/hidden/judgresn");
  1156. var prcpdd1 = model.getValue("/root/hidden/prcpdd");
  1157. var prcpno1 = model.getValue("/root/hidden/prcpno");
  1158. var prcphistno1 = model.getValue("/root/hidden/prcphistno");
  1159. var prcpdd2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpdd");
  1160. var prcpno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpno");
  1161. var prcphistno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcphistno");
  1162. if (prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1163. // 기존 심사사유 넣기
  1164. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", judgresn1);
  1165. } else {
  1166. // 새로 심사사유 넣기
  1167. var cd = fSetAdjtResnCd2();
  1168. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", cd);
  1169. model.setValue("/root/hidden/judgresn", cd);
  1170. model.setValue("/root/hidden/prcpdd", prcpdd2);
  1171. model.setValue("/root/hidden/prcpno", prcpno2);
  1172. model.setValue("/root/hidden/prcphistno", prcphistno2);
  1173. //grp_judgresn.visible = true;
  1174. }
  1175. }
  1176. }
  1177. var row_stat = grd_ordlist.rowStatus(cRrow);
  1178. if(row_stat != 1){
  1179. if(row_stat != 3){
  1180. if(row_stat != 4){
  1181. grd_ordlist.rowStatus(cRrow) = 2;
  1182. }
  1183. }
  1184. }
  1185. }
  1186. //계산내역을 갖고 온다.
  1187. //처방급비변경여부를 'Y'로 세팅
  1188. model.setValue("/root/main/list1/iscl["+ cRrow +"]/payflagyn", "Y");
  1189. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 계산 돌림 ( 2014.0801 이은정 )
  1190. ////처방내역이면 계산을 돌리지 않는다.
  1191. //if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1192. // grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1193. // return;
  1194. //}
  1195. }
  1196. // 20091124 JHP 수정추가 변경된 내역이 있는 처방에 대해 원(초기)상태로 복구한다.
  1197. // 급비 변경 일반 함수 기준 사용... 로직단에서 원데이터 가져다 사용하기 때문에 화면단은 크게 상관없음.
  1198. function fOrgReStore(){
  1199. // 1. 선택된 row 'Y' 처리
  1200. fCheckYSelectedRows();
  1201. // 2.
  1202. //제약조건을 사전에 처리하도록 한다. (데이터가 변경되는 row도 있기 때문에) - 20080929 박창원
  1203. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1204. //선택된row
  1205. var cRrow = grd_ordlist.selectedRow(i);
  1206. //계산내역인 경우만
  1207. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1208. // 2008.01.28 박지욱 추가 (급비변경시 구수가코드 ordinptflag == 'X' 이면 변경할 수 없음 처리)
  1209. var ordinptflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/ordinptflag");
  1210. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1211. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1212. if (cretyn == "Y") {
  1213. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1214. //선택된 row의 체크값을 'N' 로 해주는 함수
  1215. fCheckNSelectedRows();
  1216. return;
  1217. }else if (ordinptflag == "X") {
  1218. messageBox("급비변경이 불가한 코드(구수가코드)가 포함되어 변경", "E001");
  1219. fCheckNSelectedRows();
  1220. return;
  1221. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 alert 막음 ( 2014.0801 이은정 )
  1222. //} else if (ordcalcflag == "O") {
  1223. // messageBox("미시행 처방이 포함되어 변경", "E001");
  1224. // fCheckNSelectedRows();
  1225. // return;
  1226. }
  1227. }
  1228. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1229. var cRrow = grd_ordlist.selectedRow(i);
  1230. // 동일한 급일 경우 처리하지 않는다.
  1231. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  1232. if(calcpayflag != "2"){
  1233. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  1234. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  1235. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  1236. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  1237. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  1238. var messageYn = "N";
  1239. // 선택안된 같은 처방 row를 담을 배열
  1240. var samecalclist = new Array();
  1241. var index = 0;
  1242. for (var j = 1; j < grd_ordlist.rows; j++) {
  1243. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  1244. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  1245. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  1246. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  1247. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1248. messageYn = "Y";
  1249. samecalclist[index++] = j;
  1250. }
  1251. }
  1252. // 동일한 선택안된 row가 있다면
  1253. if (messageYn == "Y") {
  1254. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  1255. model.setValue("/root/hidden/judgresn", "");
  1256. model.setValue("/root/hidden/prcpdd", "");
  1257. model.setValue("/root/hidden/prcpno", "");
  1258. model.setValue("/root/hidden/prcphistno", "");
  1259. fOrdExecuteOrgReStore(cRrow);
  1260. for(var k=0; k < index; k++) {
  1261. var row = samecalclist[k];
  1262. fOrdExecuteOrgReStore(row);
  1263. }
  1264. }
  1265. } else {
  1266. model.setValue("/root/hidden/judgresn", "");
  1267. model.setValue("/root/hidden/prcpdd", "");
  1268. model.setValue("/root/hidden/prcpno", "");
  1269. model.setValue("/root/hidden/prcphistno", "");
  1270. fOrdExecuteOrgReStore(cRrow);
  1271. }
  1272. }
  1273. }
  1274. fCheckNSelectedRows();
  1275. }
  1276. // 20091124 JHP 수정추가 변경된 내역이 있는 처방에 대해 원(초기)상태로 복구한다. 실행
  1277. // 급비 변경 일반 함수 기준 사용... 로직단에서 원데이터 가져다 사용하기 때문에 화면단은 크게 상관없음.
  1278. function fOrdExecuteOrgReStore(cRrow){
  1279. var chkjudgresn = model.getValue("/root/send/judgresn");
  1280. //처방이 있는경우
  1281. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1282. if(chk_cd != ""){
  1283. //20091124 JHP 기존소스에선 필요하지만 기초복원에서는 필요없어서 주석처리함.
  1284. //model.setValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag", "0"); //################################################################################
  1285. //model.setValue("/root/main/list1/iscl[" + cRrow + "]/chkflag","N"); //################################################################################
  1286. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1287. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1288. if(chkjudgresn && chkjudgresn != "-"){
  1289. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1290. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  1291. }else{
  1292. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1293. {
  1294. // 동일 처방에 이미 심사사유가 달려있으면 그것을 넣어주도록 하고, 없으면 넣도록 팝업을 띄운다.
  1295. var judgresn1 = model.getValue("/root/hidden/judgresn");
  1296. var prcpdd1 = model.getValue("/root/hidden/prcpdd");
  1297. var prcpno1 = model.getValue("/root/hidden/prcpno");
  1298. var prcphistno1 = model.getValue("/root/hidden/prcphistno");
  1299. var prcpdd2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpdd");
  1300. var prcpno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpno");
  1301. var prcphistno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcphistno");
  1302. if (prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1303. // 기존 심사사유 넣기
  1304. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", judgresn1);
  1305. } else {
  1306. // 새로 심사사유 넣기
  1307. var cd = fSetAdjtResnCd2();
  1308. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", cd);
  1309. model.setValue("/root/hidden/judgresn", cd);
  1310. model.setValue("/root/hidden/prcpdd", prcpdd2);
  1311. model.setValue("/root/hidden/prcpno", prcpno2);
  1312. model.setValue("/root/hidden/prcphistno", prcphistno2);
  1313. //grp_judgresn.visible = true;
  1314. }
  1315. }
  1316. }
  1317. var row_stat = grd_ordlist.rowStatus(cRrow);
  1318. if(row_stat != 1){
  1319. if(row_stat != 3){
  1320. if(row_stat != 4){
  1321. grd_ordlist.rowStatus(cRrow) = 2;
  1322. }
  1323. }
  1324. }
  1325. }
  1326. //계산내역을 갖고 온다.
  1327. //처방급비변경여부를 'RS'로 세팅(restord 복원으로 ....) 하여 복원이라느걸로 판단한다.
  1328. model.setValue("/root/main/list1/iscl["+ cRrow +"]/payflagyn", "RS"); // ################################################################################
  1329. // 예고심사 시 미시행 처방에 대한 급/비 변경 필요하여 계산 돌림 ( 2014.0801 이은정 )
  1330. ////처방내역이면 계산을 돌리지 않는다.
  1331. //if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){ // ################################################################################
  1332. // grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1333. // return;
  1334. //}
  1335. }
  1336. //No-Charge : 본인부담금0원 처리(청구)
  1337. function fOrdChangeNoCharge1()
  1338. {
  1339. // 강남 성모병원은 실행이 안되게 한다. - 20080929 박창원
  1340. var instcd = model.getValue("/root/send/instcd");
  1341. // 20100729 정승우 서울성모 풀어달라고 함. 이미숙샘 요청
  1342. /* if (instcd == "012") {
  1343. messageBox("사용할 수 없는 메뉴","E008");
  1344. return;
  1345. }
  1346. */
  1347. var chkjudgresn = model.getValue("/root/send/judgresn");
  1348. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1349. var cRrow = grd_ordlist.selectedRow(i);
  1350. //처방이 있는경우
  1351. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1352. //계산내역인 경우만
  1353. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1354. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1355. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1356. if (cretyn == "Y") {
  1357. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1358. //선택된 row의 체크값을 'N' 로 해주는 함수
  1359. fCheckNSelectedRows();
  1360. return;
  1361. }
  1362. if(ordcalcflag == "C"){
  1363. /* // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  1364. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  1365. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  1366. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  1367. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  1368. var messageYn = "N";
  1369. // 선택안된 같은 처방 row를 담을 배열
  1370. var samecalclist = new Array();
  1371. var index = 0;
  1372. for (var j = 1; j < grd_ordlist.rows; j++) {
  1373. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  1374. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  1375. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  1376. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  1377. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1378. messageYn = "Y";
  1379. samecalclist[index++] = j;
  1380. }
  1381. }
  1382. // 동일한 선택안된 row가 있다면
  1383. if (messageYn == "Y") {
  1384. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  1385. model.setValue("/root/hidden/judgresn", "");
  1386. model.setValue("/root/hidden/prcpdd", "");
  1387. model.setValue("/root/hidden/prcpno", "");
  1388. model.setValue("/root/hidden/prcphistno", "");
  1389. //fOrdExecutePay(cRrow);
  1390. for(var k=0; k < index; k++) {
  1391. var row = samecalclist[k];
  1392. //fOrdExecutePay(row);
  1393. }
  1394. }
  1395. } else {
  1396. model.setValue("/root/hidden/judgresn", "");
  1397. model.setValue("/root/hidden/prcpdd", "");
  1398. model.setValue("/root/hidden/prcpno", "");
  1399. model.setValue("/root/hidden/prcphistno", "");
  1400. //fOrdExecutePay(cRrow);
  1401. } */
  1402. if(chk_cd != ""){
  1403. var ownbamt = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ownbamt");
  1404. if(ownbamt != "0") {
  1405. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "J");
  1406. } else if(ownbamt == "0") {
  1407. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "Y");
  1408. }
  1409. model.setValue("/root/main/list1/iscl[" + cRrow + "]/nochargeyn", "Y");
  1410. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1411. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1412. if(chkjudgresn && chkjudgresn != "-"){
  1413. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1414. }else{
  1415. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1416. {
  1417. fSetAdjtResnCd();
  1418. //grp_judgresn.visible = true;
  1419. }
  1420. }
  1421. var row_stat = grd_ordlist.rowStatus(cRrow);
  1422. if(row_stat != 1){
  1423. if(row_stat != 3){
  1424. if(row_stat != 4){
  1425. grd_ordlist.rowStatus(cRrow) = 2;
  1426. }
  1427. }
  1428. }
  1429. }
  1430. //계산내역을 갖고 온다.
  1431. //처방내역이면 계산을 돌리지 않는다.
  1432. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1433. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1434. return;
  1435. }
  1436. }
  1437. }
  1438. }
  1439. //No-Charge : 총진료비0원처리(미청구).
  1440. function fOrdChangeNoCharge2()
  1441. {
  1442. var chkjudgresn = model.getValue("/root/send/judgresn");
  1443. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1444. var cRrow = grd_ordlist.selectedRow(i);
  1445. //처방이 있는경우
  1446. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1447. //계산내역인 경우만
  1448. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1449. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1450. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1451. if (cretyn == "Y") {
  1452. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1453. //선택된 row의 체크값을 'N' 로 해주는 함수
  1454. fCheckNSelectedRows();
  1455. return;
  1456. }
  1457. if(ordcalcflag == "C"){
  1458. if(chk_cd != ""){
  1459. var totordamt = model.getValue("/root/main/list1/iscl["+ cRrow +"]/totordamt");
  1460. if(totordamt != "0") {
  1461. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "D");
  1462. } else if(totordamt == "0") {
  1463. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "Y");
  1464. }
  1465. model.setValue("/root/main/list1/iscl[" + cRrow + "]/nochargeyn", "Y");
  1466. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1467. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1468. if(chkjudgresn && chkjudgresn != "-"){
  1469. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1470. }else{
  1471. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1472. {
  1473. fSetAdjtResnCd();
  1474. //grp_judgresn.visible = true;
  1475. }
  1476. }
  1477. var row_stat = grd_ordlist.rowStatus(cRrow);
  1478. if(row_stat != 1){
  1479. if(row_stat != 3){
  1480. if(row_stat != 4){
  1481. grd_ordlist.rowStatus(cRrow) = 2;
  1482. }
  1483. }
  1484. }
  1485. }
  1486. //계산내역을 갖고 온다.
  1487. //처방내역이면 계산을 돌리지 않는다.
  1488. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1489. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1490. return;
  1491. }
  1492. }
  1493. }
  1494. }
  1495. // 주사수기료만 급여처리 20100119 정승우
  1496. function fOrdChangeInjectPayFlag() {
  1497. var chkjudgresn = model.getValue("/root/send/judgresn");
  1498. var chkok = 0;
  1499. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1500. var cRrow = grd_ordlist.selectedRow(i);
  1501. //처방이 있는경우
  1502. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1503. //계산내역인 경우만
  1504. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1505. //급비
  1506. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  1507. var pay100 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/pay100");
  1508. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1509. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1510. //청구항목
  1511. var ediitem1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ediitem1");
  1512. if (cretyn == "Y") {
  1513. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1514. //선택된 row의 체크값을 'N' 로 해주는 함수
  1515. fCheckNSelectedRows();
  1516. return;
  1517. }
  1518. if (calcpayflag != "1" || pay100 != "@") {
  1519. alert("100/100에만 적용할 수 있는 메뉴입니다.");
  1520. return;
  1521. }
  1522. if (ediitem1 != "04") {
  1523. alert("주사에만 적용할 수 있는 메뉴입니다.");
  1524. return;
  1525. }
  1526. var calcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcflag");
  1527. if (calcflag != "K" ) {
  1528. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  1529. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  1530. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  1531. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  1532. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  1533. var messageYn = "N";
  1534. // 선택안된 같은 처방 row를 담을 배열
  1535. var samecalclist = new Array();
  1536. var index = 0;
  1537. for (var j = 1; j < grd_ordlist.rows; j++) {
  1538. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  1539. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  1540. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  1541. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  1542. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1543. messageYn = "Y";
  1544. samecalclist[index++] = j;
  1545. }
  1546. }
  1547. // 동일한 선택안된 row가 있다면
  1548. if (messageYn == "Y") {
  1549. if (chkok == 0){
  1550. chkok = messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001");
  1551. if (chkok == 6) {
  1552. model.setValue("/root/hidden/judgresn", "");
  1553. model.setValue("/root/hidden/prcpdd", "");
  1554. model.setValue("/root/hidden/prcpno", "");
  1555. model.setValue("/root/hidden/prcphistno", "");
  1556. // fOrdExecuteNopy(cRrow);
  1557. for(var k=0; k < index; k++) {
  1558. var row = samecalclist[k];
  1559. fOrdExecuteInjectPayFlag(row);
  1560. }
  1561. }
  1562. } else if (chkok == 6){
  1563. model.setValue("/root/hidden/judgresn", "");
  1564. model.setValue("/root/hidden/prcpdd", "");
  1565. model.setValue("/root/hidden/prcpno", "");
  1566. model.setValue("/root/hidden/prcphistno", "");
  1567. // fOrdExecuteNopy(cRrow);
  1568. for(var k=0; k < index; k++) {
  1569. var row = samecalclist[k];
  1570. fOrdExecuteInjectPayFlag(row);
  1571. }
  1572. }
  1573. } else {
  1574. model.setValue("/root/hidden/judgresn", "");
  1575. model.setValue("/root/hidden/prcpdd", "");
  1576. model.setValue("/root/hidden/prcpno", "");
  1577. model.setValue("/root/hidden/prcphistno", "");
  1578. fOrdExecuteInjectPayFlag(cRrow);
  1579. }
  1580. } else {
  1581. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  1582. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  1583. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  1584. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  1585. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  1586. var messageYn = "N";
  1587. // 선택안된 같은 처방 row를 담을 배열
  1588. var samecalclist = new Array();
  1589. var index = 0;
  1590. for (var j = 1; j < grd_ordlist.rows; j++) {
  1591. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  1592. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  1593. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  1594. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  1595. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1596. messageYn = "Y";
  1597. samecalclist[index++] = j;
  1598. }
  1599. }
  1600. // 동일한 선택안된 row가 있다면
  1601. if (messageYn == "Y") {
  1602. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  1603. model.setValue("/root/hidden/judgresn", "");
  1604. model.setValue("/root/hidden/prcpdd", "");
  1605. model.setValue("/root/hidden/prcpno", "");
  1606. model.setValue("/root/hidden/prcphistno", "");
  1607. // fOrdExecuteNopy(cRrow);
  1608. for(var k=0; k < index; k++) {
  1609. var row = samecalclist[k];
  1610. fOrdExecuteInjectPayFlag(row);
  1611. }
  1612. }
  1613. } else {
  1614. model.setValue("/root/hidden/judgresn", "");
  1615. model.setValue("/root/hidden/prcpdd", "");
  1616. model.setValue("/root/hidden/prcpno", "");
  1617. model.setValue("/root/hidden/prcphistno", "");
  1618. fOrdExecuteInjectPayFlag(cRrow);
  1619. }
  1620. }
  1621. }
  1622. }
  1623. function fOrdExecuteInjectPayFlag(cRrow) {
  1624. /*
  1625. var chkjudgresn = model.getValue("/root/send/judgresn");
  1626. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1627. var calcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcflag");
  1628. //계산내역인 경우만
  1629. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1630. //급비
  1631. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  1632. var pay100 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/pay100");
  1633. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1634. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1635. //청구항목
  1636. var ediitem1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ediitem1");
  1637. alert(cRrow);
  1638. if (model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "C") {
  1639. if(chk_cd != ""){
  1640. if(calcflag != "K") {
  1641. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "K");
  1642. } else if(calcflag == "K") {
  1643. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "Y");
  1644. }
  1645. model.setValue("/root/main/list1/iscl[" + cRrow + "]/nochargeyn", "Y");
  1646. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1647. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1648. if(chkjudgresn){
  1649. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1650. }else{
  1651. if(judgresn == "-" || judgresn == "" || editflag == "N")
  1652. {
  1653. fSetAdjtResnCd();
  1654. //grp_judgresn.visible = true;
  1655. }
  1656. }
  1657. var row_stat = grd_ordlist.rowStatus(cRrow);
  1658. if(row_stat != 1){
  1659. if(row_stat != 3){
  1660. if(row_stat != 4){
  1661. grd_ordlist.rowStatus(cRrow) = 2;
  1662. }
  1663. }
  1664. }
  1665. }
  1666. //계산내역을 갖고 온다.
  1667. //처방내역이면 계산을 돌리지 않는다.
  1668. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1669. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1670. return;
  1671. }
  1672. } */
  1673. var chkjudgresn = model.getValue("/root/send/judgresn");
  1674. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1675. var calcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcflag");
  1676. //계산내역인 경우만
  1677. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1678. //급비
  1679. var calcpayflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcpayflag");
  1680. var pay100 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/pay100");
  1681. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1682. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1683. //청구항목
  1684. var ediitem1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ediitem1");
  1685. if (model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "C") {
  1686. if(chk_cd != ""){
  1687. if(calcflag != "K") {
  1688. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "K");
  1689. } else if(calcflag == "K") {
  1690. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "Y");
  1691. }
  1692. model.setValue("/root/main/list1/iscl[" + cRrow + "]/nochargeyn", "Y");
  1693. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1694. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1695. if(chkjudgresn && chkjudgresn != "-"){
  1696. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1697. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  1698. }else{
  1699. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1700. {
  1701. // 동일 처방에 이미 심사사유가 달려있으면 그것을 넣어주도록 하고, 없으면 넣도록 팝업을 띄운다.
  1702. var judgresn1 = model.getValue("/root/hidden/judgresn");
  1703. var prcpdd1 = model.getValue("/root/hidden/prcpdd");
  1704. var prcpno1 = model.getValue("/root/hidden/prcpno");
  1705. var prcphistno1 = model.getValue("/root/hidden/prcphistno");
  1706. var prcpdd2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpdd");
  1707. var prcpno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcpno");
  1708. var prcphistno2 = model.getValue("/root/main/list1/iscl[" + cRrow + "]/prcphistno");
  1709. if (prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  1710. // 기존 심사사유 넣기
  1711. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", judgresn1);
  1712. } else {
  1713. // 새로 심사사유 넣기
  1714. var cd = fSetAdjtResnCd2();
  1715. model.setValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd", cd);
  1716. model.setValue("/root/hidden/judgresn", cd);
  1717. model.setValue("/root/hidden/prcpdd", prcpdd2);
  1718. model.setValue("/root/hidden/prcpno", prcpno2);
  1719. model.setValue("/root/hidden/prcphistno", prcphistno2);
  1720. //grp_judgresn.visible = true;
  1721. }
  1722. }
  1723. }
  1724. var row_stat = grd_ordlist.rowStatus(cRrow);
  1725. if(row_stat != 1){
  1726. if(row_stat != 3){
  1727. if(row_stat != 4){
  1728. grd_ordlist.rowStatus(cRrow) = 2;
  1729. }
  1730. }
  1731. }
  1732. }
  1733. //계산내역을 갖고 온다.
  1734. // alert(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag"));
  1735. //처방내역이면 계산을 돌리지 않는다.
  1736. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1737. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1738. return;
  1739. }
  1740. }
  1741. }
  1742. // MRI 체감 50% - 20081105 박창원
  1743. function fOrdChangeMRI()
  1744. {
  1745. // messageBox("현재는 사용", "E001");
  1746. // return;
  1747. var chkjudgresn = model.getValue("/root/send/judgresn");
  1748. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1749. var cRrow = grd_ordlist.selectedRow(i);
  1750. //처방이 있는경우
  1751. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1752. //계산내역인 경우만
  1753. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1754. // MRI인 경우만 수정이 되어야 한다 - 20081105 박창원
  1755. var earncls1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/earncls1");
  1756. if (earncls1 != "25" ) {
  1757. messageBox("MRI 처방이 아닌 경우 50% 체감으로 변경", "E001");
  1758. fCheckNSelectedRows();
  1759. return;
  1760. }
  1761. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1762. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1763. if (cretyn == "Y") {
  1764. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1765. //선택된 row의 체크값을 'N' 로 해주는 함수
  1766. fCheckNSelectedRows();
  1767. return;
  1768. }
  1769. if (ordcalcflag == "C") {
  1770. if(chk_cd != ""){
  1771. var totordamt = model.getValue("/root/main/list1/iscl["+ cRrow +"]/totordamt");
  1772. var calcqty = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcqty");
  1773. if(calcqty != "0.5") {
  1774. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "M");
  1775. } else {
  1776. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "Y");
  1777. }
  1778. model.setValue("/root/main/list1/iscl[" + cRrow + "]/nochargeyn", "Y");
  1779. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1780. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1781. if(chkjudgresn && chkjudgresn != "-" ){
  1782. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1783. }else{
  1784. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1785. {
  1786. fSetAdjtResnCd();
  1787. //grp_judgresn.visible = true;
  1788. }
  1789. }
  1790. var row_stat = grd_ordlist.rowStatus(cRrow);
  1791. if(row_stat != 1){
  1792. if(row_stat != 3){
  1793. if(row_stat != 4){
  1794. grd_ordlist.rowStatus(cRrow) = 2;
  1795. }
  1796. }
  1797. }
  1798. }
  1799. //계산내역을 갖고 온다.
  1800. //처방내역이면 계산을 돌리지 않는다.
  1801. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1802. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1803. return;
  1804. }
  1805. }
  1806. }
  1807. }
  1808. // 수술 및 처치 50% 적용/해제 : Freeflag = 'O' - 20140809 LEJ
  1809. function fOrdChangeOphalf()
  1810. {
  1811. var chkjudgresn = model.getValue("/root/send/judgresn");
  1812. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1813. var cRrow = grd_ordlist.selectedRow(i);
  1814. //처방이 있는경우
  1815. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  1816. //계산내역인 경우만
  1817. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1818. // 처치 및 수술인 경우만 수정이 되어야 한다
  1819. var ordaddinptflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordaddinptflag");
  1820. if (ordaddinptflag != "3" && ordaddinptflag != "5"){
  1821. messageBox("수술 처방이 아닌 경우 50% 적용", "E001");
  1822. fCheckNSelectedRows();
  1823. return;
  1824. }
  1825. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1826. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1827. if (cretyn == "Y") {
  1828. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1829. //선택된 row의 체크값을 'N' 로 해주는 함수
  1830. fCheckNSelectedRows();
  1831. return;
  1832. }
  1833. if (ordcalcflag == "C") {
  1834. if(chk_cd != ""){
  1835. var totordamt = model.getValue("/root/main/list1/iscl["+ cRrow +"]/totordamt");
  1836. var calcqty = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcqty");
  1837. if(calcqty != "0.5") {
  1838. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "O");
  1839. } else {
  1840. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "Y");
  1841. }
  1842. model.setValue("/root/main/list1/iscl[" + cRrow + "]/nochargeyn", "Y");
  1843. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1844. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1845. if(chkjudgresn && chkjudgresn != "-" ){
  1846. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1847. }else{
  1848. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  1849. {
  1850. fSetAdjtResnCd();
  1851. //grp_judgresn.visible = true;
  1852. }
  1853. }
  1854. var row_stat = grd_ordlist.rowStatus(cRrow);
  1855. if(row_stat != 1){
  1856. if(row_stat != 3){
  1857. if(row_stat != 4){
  1858. grd_ordlist.rowStatus(cRrow) = 2;
  1859. }
  1860. }
  1861. }
  1862. }
  1863. //계산내역을 갖고 온다.
  1864. //처방내역이면 계산을 돌리지 않는다.
  1865. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  1866. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  1867. return;
  1868. }
  1869. }
  1870. }
  1871. }
  1872. //처방보험유형변경(기왕증) 버튼 처리
  1873. function fOrdChangeInsukind()
  1874. {
  1875. grp_changeinsukind.visible = true;
  1876. }
  1877. // 수정처방을 변경한다. - 20081002 박창원
  1878. function fOrdRebuild() {
  1879. }
  1880. function fOrdChangeSpclYn()
  1881. {
  1882. fCheckYSelectedRows();
  1883. // 제약조건을 사전에 처리하도록 한다. (데이터가 변경되는 row도 있기 때문에) - 20080929 박창원
  1884. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  1885. //선택된row
  1886. var cRrow = grd_ordlist.selectedRow(i);
  1887. // 선택진료 비적용 코드에 대해서는 block - 20080929 박창원
  1888. var specaddflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/specaddflag");
  1889. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1890. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1891. if (cretyn == "Y") {
  1892. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1893. //선택된 row의 체크값을 'N' 로 해주는 함수
  1894. fCheckNSelectedRows();
  1895. return;
  1896. }
  1897. if (specaddflag == "-") {
  1898. messageBox("선택진료 변경 미대상 처방이 포함되어 변경", "E001");
  1899. //선택된 row의 체크값을 'N' 로 해주는 함수
  1900. fCheckNSelectedRows();
  1901. return;
  1902. }
  1903. }
  1904. grp_selectspecord.visible = true;
  1905. }
  1906. // 외과가산의사 변경 - 팝업화면띄우기
  1907. // 수정추가 20090923 JHP
  1908. function fGSOrdDRYn()
  1909. {
  1910. fCheckYSelectedRows();
  1911. grd_selectgsord.visible = true;
  1912. }
  1913. // 외과가산의사 변경 - 변경확인 작업
  1914. // 수정추가 20090923 JHP
  1915. function fGSOrdDRYn1()
  1916. {
  1917. fCheckYSelectedRows();
  1918. var atdocid = cmb_gsatdoc.value;
  1919. var deptcd = cmb_gsdeptcd.value;
  1920. var deptcd2 = model.getValue("/root/send/orddeptcd");
  1921. var specyn = model.getValue("/root/hidden/listatdoc/atdoctlist[atdoctid = " + atdocid + "]/specordyn");
  1922. for ( var i= 0; i<grd_ordlist.selectedRows; i++){
  1923. var cRrow = grd_ordlist.selectedRow(i);
  1924. // 산정특례코드 확인 substr(estmmncd,4,1) in ('A','B','C')
  1925. var gsestmmncd = model.getValue("/root/main/list1/iscl[" + cRrow + "]/gsestmmncd");
  1926. var Ngsestmmncd = gsestmmncd.substr(3,1);
  1927. if (Ngsestmmncd == "A" || Ngsestmmncd == "B" || Ngsestmmncd == "C") {
  1928. // 일단 외과, 흉부외과 : 서울성모는 진료과체크
  1929. // 경북대병원 진료과조건제외요청
  1930. //if(deptcd == "2040000000" ||deptcd == "2070000000"){
  1931. model.setValue("/root/main/list1/iscl[" + cRrow + "]/gsorddr", atdocid);
  1932. model.setValue("/root/main/list1/iscl[" + cRrow + "]/gsorddryn", "Y");
  1933. var row_stat = grd_ordlist.rowStatus(cRrow);
  1934. if(row_stat != 1){
  1935. if(row_stat != 3){
  1936. if(row_stat != 4){
  1937. grd_ordlist.rowStatus(cRrow) = 2;
  1938. }
  1939. }
  1940. }
  1941. //} else {
  1942. // messageBox("외과분야 의사가 아닙니다. 확인 후", "C003");
  1943. // //선택된 row의 체크값을 'N' 로 해주는 함수
  1944. // fCheckNSelectedRows();
  1945. // return;
  1946. //}
  1947. } else {
  1948. messageBox("외과가산관련 처방이 아닙니다. 확인 후", "C003");
  1949. //선택된 row의 체크값을 'N' 로 해주는 함수
  1950. fCheckNSelectedRows();
  1951. return;
  1952. }
  1953. }
  1954. grd_selectgsord.visible= false;
  1955. }
  1956. // 시행일자 변경
  1957. function fOrdChangeExecDD() {
  1958. grp_execdd.visible = true;
  1959. model.setValue("/root/hidden/chngexec/chngdd", model.getValue("/root/main/list1/iscl[" + grd_ordlist.row + "]/execdd").substr(0,8)); // 일
  1960. model.setValue("/root/hidden/chngexec/chnghh", model.getValue("/root/main/list1/iscl[" + grd_ordlist.row + "]/execdd").substr(8,2)); // 시
  1961. model.setValue("/root/hidden/chngexec/chngmn", model.getValue("/root/main/list1/iscl[" + grd_ordlist.row + "]/execdd").substr(10,2)); // 분
  1962. ipt_chngdd.refresh();
  1963. ipt_chnghh.refresh();
  1964. ipt_chngmn.refresh();
  1965. }
  1966. //선택진료비 산정여부 변경처리
  1967. function fOrdChangeSpclYn1()
  1968. {
  1969. var chkjudgresn = model.getValue("/root/send/judgresn");
  1970. var atdocid = cmb_drlist.value;
  1971. var specyn = model.getValue("/root/hidden/listatdoc/atdoctlist[atdoctid = " + atdocid + "]/specordyn");
  1972. for ( var i= 0; i<grd_ordlist.selectedRows; i++){
  1973. var cRrow = grd_ordlist.selectedRow(i);
  1974. //처방이 있는경우
  1975. //var unitspecyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/unitspecyn");
  1976. //계산내역인 경우만
  1977. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  1978. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  1979. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  1980. if (cretyn == "Y") {
  1981. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  1982. //선택된 row의 체크값을 'N' 로 해주는 함수
  1983. fCheckNSelectedRows();
  1984. return;
  1985. }
  1986. if(ordcalcflag == "C"){
  1987. model.setValue("root/main/list1/iscl["+ cRrow +"]/execrid", atdocid);
  1988. model.setValue("root/main/list1/iscl["+ cRrow +"]/spcordyn","Y");
  1989. if (specyn == "Y") {
  1990. model.setValue("/root/main/list1/iscl["+ cRrow +"]/unitspecyn", "Y");
  1991. }else {
  1992. model.setValue("/root/main/list1/iscl["+ cRrow +"]/unitspecyn", "N");
  1993. }
  1994. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  1995. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  1996. if(chkjudgresn && chkjudgresn != "-"){
  1997. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  1998. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  1999. }else{
  2000. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  2001. {
  2002. fSetAdjtResnCd();
  2003. }
  2004. }
  2005. var row_stat = grd_ordlist.rowStatus(cRrow);
  2006. if(row_stat != 1){
  2007. if(row_stat != 3){
  2008. if(row_stat != 4){
  2009. grd_ordlist.rowStatus(cRrow) = 2;
  2010. }
  2011. }
  2012. }
  2013. //처방내역이면 계산을 돌리지 않는다.
  2014. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  2015. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  2016. return;
  2017. }
  2018. }
  2019. }
  2020. grp_selectspecord.visible= false;
  2021. }
  2022. //문제처방 Toggle
  2023. function fOrdChangeProbOrdYn()
  2024. {
  2025. for ( var i= 0; i<grd_ordlist.selectedRows; i++){
  2026. //처방이 있는경우
  2027. var probordyn = model.getValue("/root/main/list1/iscl["+ grd_ordlist.selectedrow(i) +"]/probordyn");
  2028. //계산내역인 경우만
  2029. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ grd_ordlist.selectedrow(i) +"]/ordcalcflag");
  2030. if(ordcalcflag == "C"){
  2031. if(probordyn == "Y"){
  2032. model.setValue("/root/main/list1/iscl["+ grd_ordlist.selectedrow(i) +"]/probordyn", "N");
  2033. }else if(probordyn == "N"){
  2034. model.setValue("/root/main/list1/iscl["+ grd_ordlist.selectedrow(i) +"]/probordyn", "Y");
  2035. }
  2036. model.setValue("/root/main/list1/iscl["+ grd_ordlist.selectedrow(i) +"]/probordchangeyn", "Y");
  2037. var row_stat = grd_ordlist.rowStatus(grd_ordlist.selectedrow(i));
  2038. if(row_stat != 1){
  2039. if(row_stat != 3){
  2040. if(row_stat != 4){
  2041. grd_ordlist.rowStatus(grd_ordlist.selectedrow(i)) = 2;
  2042. }
  2043. }
  2044. }
  2045. }
  2046. }
  2047. fSetColorSpclJudgOrder();
  2048. model.refresh();
  2049. }
  2050. //수정사유 입력
  2051. function fOrdChangeWhy()
  2052. {
  2053. fSetAdjtResnCd();
  2054. //grp_judgresn.visible = true;
  2055. }
  2056. // 수술유형변경선택시
  2057. function fOrdChangeOp() {
  2058. var row = grd_ordlist.row;
  2059. var ordaddinptflag = model.getValue("/root/main/list1/iscl[" + row + "]/ordaddinptflag");
  2060. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ row +"]/ordcalcflag");
  2061. if (ordcalcflag != "C") {
  2062. return;
  2063. }
  2064. if (ordaddinptflag != "3") { // 수술처방이 아닌경우 Block - 20090613 박창원
  2065. messageBox("수술 처방이 아닌 경우 변경", "E001");
  2066. return;
  2067. }
  2068. // 청구생성된 처방이 있을경우 블로킹
  2069. var cretyn = model.getValue("/root/main/list1/iscl[" + row + "]/cretyn");
  2070. if (cretyn == "Y") {
  2071. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  2072. return;
  2073. }
  2074. grp_changeop.visible= true;
  2075. var erprcpflag = model.getValue("/root/main/list1/iscl[" + row + "]/erprcpflag");
  2076. var nigtprcpflag = model.getValue("/root/main/list1/iscl[" + row + "]/nigtprcpflag");
  2077. model.setValue("/root/hidden/op/erprcpflag", erprcpflag);
  2078. model.setValue("/root/hidden/op/nigtprpcflag", nigtprcpflag);
  2079. model.refresh();
  2080. }
  2081. // 수술유형변경
  2082. function fOrdChangeOp1() {
  2083. var row = grd_ordlist.row;
  2084. var chkjudgresn = model.getValue("/root/send/judgresn");
  2085. var opansflag = cmb_opflag.value;
  2086. var judgresn = model.getValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd");
  2087. var editflag = model.getValue("/root/main/list1/iscl[" + row + "]/editflag");
  2088. // var erprcpflag = model.getValue("/root/hidden/op/erprcpflag");
  2089. // var nigtprcpflag = model.getValue("/root/hidden/op/nigtprpcflag");
  2090. grp_changeop.visible= false;
  2091. if(chkjudgresn && chkjudgresn != "-"){
  2092. model.setValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd", chkjudgresn);
  2093. }else{
  2094. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-" )
  2095. {
  2096. fSetAdjtResnCd();
  2097. //grp_judgresn.visible = true;
  2098. }
  2099. }
  2100. if (chk_oper.value != "N Y" && chk_oper.value != "Y") {
  2101. chk_oper.value = "N";
  2102. } else {
  2103. chk_oper.value = "Y";
  2104. }
  2105. if (chk_opnigt.value != "N Y" && chk_opnigt.value != "Y") {
  2106. chk_opnigt.value = "N";
  2107. }
  2108. else {
  2109. chk_opnigt.value = "Y";
  2110. }
  2111. model.setValue("/root/main/list1/iscl[" + row + "]/opansyn", "Y");
  2112. model.setValue("/root/main/list1/iscl[" + row + "]/opansflagcd", opansflag);
  2113. model.setValue("/root/main/list1/iscl[" + row + "]/erprcpflag",chk_oper.value);
  2114. model.setValue("/root/main/list1/iscl[" + row + "]/nigtprcpflag", chk_opnigt.value);
  2115. var row_stat = grd_ordlist.rowStatus(row);
  2116. if(row_stat != 1){
  2117. if(row_stat != 3){
  2118. if(row_stat != 4){
  2119. grd_ordlist.rowStatus(row) = 2;
  2120. }
  2121. }
  2122. }
  2123. }
  2124. // 초음파사유변경
  2125. function fOrdChangeRehb() {
  2126. var row = grd_ordlist.row;
  2127. var prcpclscd = model.getValue("/root/main/list1/iscl[" + row + "]/prcpclscd");
  2128. var cretyn = model.getValue("/root/main/list1/iscl[" + row + "]/cretyn");
  2129. var grupcalcscorcd = model.getValue("/root/main/list1/iscl[" + row + "]/grupcalcscorcd");
  2130. if (prcpclscd != "C2") { // 초음파처방이 아닌경우
  2131. messageBox("초음파처방이 아닌 경우 변경", "E001");
  2132. return;
  2133. }
  2134. // 청구생성된 처방이 있을경우 블로킹
  2135. if (cretyn == "Y") {
  2136. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  2137. return;
  2138. }
  2139. if (fContainsHardCD("536", grupcalcscorcd)) { // 단순초음파 또는 유도초음파인경우 치료부위, 관련행위, 처방사유 입력 할수 있도록
  2140. //fGethardcdArrayList(new Array( "drugmthdspccd|537", "drugmthdspccd|538", "drugmthdspccd|539"), new Array( "/root/init", "/root/init", "/root/init") );
  2141. model.setValue ( "/root/send/prcpcd", grupcalcscorcd );
  2142. submit ("TRMMO00162")
  2143. //inp_exptmthdfact.disabled = false;
  2144. }
  2145. group4.visible= true;
  2146. var rehbprcpcurepartcd = model.getValue("/root/main/list1/iscl[" + row + "]/rehbprcpcurepartcd");
  2147. var drugmthdspccd = model.getValue("/root/main/list1/iscl[" + row + "]/drugmthcd");
  2148. var exptmthdfact = model.getValue("/root/main/list1/iscl[" + row + "]/exptmthdfact");
  2149. model.setValue("/root/send/rehbprcpcurepartcd", rehbprcpcurepartcd);
  2150. model.setValue("/root/send/drugmthdspccd", drugmthdspccd);
  2151. model.setValue("/root/send/exptmthdfact", exptmthdfact);
  2152. model.refresh();
  2153. }
  2154. function fOrdChangeRehb1() {
  2155. var row = grd_ordlist.row;
  2156. var chkjudgresn = model.getValue("/root/send/judgresn");
  2157. var opansflag = model.getValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd");
  2158. var judgresn = model.getValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd");
  2159. var editflag = model.getValue("/root/main/list1/iscl[" + row + "]/editflag");
  2160. if(chkjudgresn && chkjudgresn != "-"){
  2161. model.setValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd", chkjudgresn);
  2162. }else{
  2163. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-" )
  2164. {
  2165. fSetAdjtResnCd();
  2166. }
  2167. }
  2168. model.setValue("/root/main/list1/iscl[" + row + "]/drugmthyn", "Y");
  2169. model.setValue("/root/main/list1/iscl[" + row + "]/rehbprcpcurepartcd", cmb_rehbprcpcurepartcd.value);
  2170. model.setValue("/root/main/list1/iscl[" + row + "]/drugmthcd",cmb_drugmthdspccd.value);
  2171. model.setValue("/root/main/list1/iscl[" + row + "]/exptmthdfact", ipt_exptmthdfact.value);
  2172. var row_stat = grd_ordlist.rowStatus(row);
  2173. if(row_stat != 1){
  2174. if(row_stat != 3){
  2175. if(row_stat != 4){
  2176. grd_ordlist.rowStatus(row) = 2;
  2177. }
  2178. }
  2179. }
  2180. group4.visible= false;
  2181. }
  2182. // 마취유형변경선택시
  2183. function fOrdChangeAns() {
  2184. var row = grd_ordlist.row;
  2185. var ordaddinptflag = model.getValue("/root/main/list1/iscl[" + row + "]/ordaddinptflag");
  2186. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ row +"]/ordcalcflag");
  2187. if (ordcalcflag != "C") {
  2188. return;
  2189. }
  2190. if (ordaddinptflag != "1") { // 마취처방이 아닌경우 Block - 20090613 박창원
  2191. messageBox("마취 처방이 아닌 경우 변경", "E001");
  2192. return;
  2193. }
  2194. // 청구생성된 처방이 있을경우 블로킹
  2195. var cretyn = model.getValue("/root/main/list1/iscl[" + row + "]/cretyn");
  2196. if (cretyn == "Y") {
  2197. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  2198. return;
  2199. }
  2200. grp_changeans.visible= true;
  2201. var erprcpflag = model.getValue("/root/main/list1/iscl[" + row + "]/erprcpflag");
  2202. var nigtprcpflag = model.getValue("/root/main/list1/iscl[" + row + "]/nigtprcpflag");
  2203. model.setValue("/root/hidden/op/erprcpflag", erprcpflag);
  2204. model.setValue("/root/hidden/op/nigtprpcflag", nigtprcpflag);
  2205. model.refresh();
  2206. }
  2207. // 마취유형변경
  2208. function fOrdChangeAns1() {
  2209. var row = grd_ordlist.row;
  2210. var chkjudgresn = model.getValue("/root/send/judgresn");
  2211. var opansflag = cmb_opflag.value;
  2212. var judgresn = model.getValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd");
  2213. var editflag = model.getValue("/root/main/list1/iscl[" + row + "]/editflag");
  2214. // var erprcpflag = model.getValue("/root/hidden/op/erprcpflag");
  2215. // var nigtprcpflag = model.getValue("/root/hidden/op/nigtprpcflag");
  2216. grp_changeans.visible= false;
  2217. if(chkjudgresn && chkjudgresn != "-"){
  2218. model.setValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd", chkjudgresn);
  2219. }else{
  2220. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  2221. {
  2222. fSetAdjtResnCd();
  2223. //grp_judgresn.visible = true;
  2224. }
  2225. }
  2226. if (chk_anser.value != "N Y" && chk_anser.value != "Y") {
  2227. chk_anser.value = "N";
  2228. } else {
  2229. chk_anser.value = "Y";
  2230. }
  2231. if (chk_ansnigt.value != "N Y" && chk_ansnigt.value != "Y") {
  2232. chk_ansnigt.value = "N";
  2233. }
  2234. else {
  2235. chk_ansnigt.value = "Y";
  2236. }
  2237. model.setValue("/root/main/list1/iscl[" + row + "]/opansyn", "Y");
  2238. model.setValue("/root/main/list1/iscl[" + row + "]/opansflagcd", opansflag);
  2239. model.setValue("/root/main/list1/iscl[" + row + "]/erprcpflag",chk_anser.value);
  2240. model.setValue("/root/main/list1/iscl[" + row + "]/nigtprcpflag", chk_ansnigt.value);
  2241. }
  2242. // Angio 유형변경선택시
  2243. function fOrdChangeAngio() {
  2244. var row = grd_ordlist.row;
  2245. var ordaddinptflag = model.getValue("/root/main/list1/iscl[" + row + "]/ordaddinptflag");
  2246. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ row +"]/ordcalcflag");
  2247. if (ordcalcflag != "C") {
  2248. return;
  2249. }
  2250. if (ordaddinptflag != "4") { // Angio처방이 아닌경우 Block - 20090613 박창원
  2251. messageBox("Angio 처방이 아닌 경우 변경", "E001");
  2252. return;
  2253. }
  2254. // 청구생성된 처방이 있을경우 블로킹
  2255. var cretyn = model.getValue("/root/main/list1/iscl[" + row + "]/cretyn");
  2256. if (cretyn == "Y") {
  2257. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  2258. return;
  2259. }
  2260. grp_changeangio.visible= true;
  2261. var erprcpflag = model.getValue("/root/main/list1/iscl[" + row + "]/erprcpflag");
  2262. var nigtprcpflag = model.getValue("/root/main/list1/iscl[" + row + "]/nigtprcpflag");
  2263. model.setValue("/root/hidden/op/erprcpflag", erprcpflag);
  2264. model.setValue("/root/hidden/op/nigtprpcflag", nigtprcpflag);
  2265. model.refresh();
  2266. }
  2267. // Angio유형변경
  2268. function fOrdChangeAngio1() {
  2269. var row = grd_ordlist.row;
  2270. var chkjudgresn = model.getValue("/root/send/judgresn");
  2271. // var erprcpflag = model.getValue("/root/hidden/op/erprcpflag");
  2272. // var nigtprcpflag = model.getValue("/root/hidden/op/nigtprpcflag");
  2273. var angioflag = cmb_angio.value;
  2274. var judgresn = model.getValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd");
  2275. var editflag = model.getValue("/root/main/list1/iscl[" + row + "]/editflag");
  2276. grp_changeangio.visible= false;
  2277. if(chkjudgresn && chkjudgresn != "-"){
  2278. model.setValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd", chkjudgresn);
  2279. }else{
  2280. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  2281. {
  2282. fSetAdjtResnCd();
  2283. //grp_judgresn.visible = true;
  2284. }
  2285. }
  2286. if (chk_angioer.value != "N Y" && chk_angioer.value != "Y") {
  2287. chk_angioer.value = "N";
  2288. } else {
  2289. chk_angioer.value = "Y";
  2290. }
  2291. if (chk_angionigt.value != "N Y" && chk_angionigt.value != "Y") {
  2292. chk_angionigt.value = "N";
  2293. }
  2294. else {
  2295. chk_angionigt.value = "Y";
  2296. }
  2297. // model.setValue("/root/main/list1/iscl[" + row + "]/opansyn", "Y"); 20100106 정승우 angio 유형변경 안되서 수정
  2298. model.setValue("/root/main/list1/iscl[" + row + "]/angioyn", "Y");
  2299. model.setValue("/root/main/list1/iscl[" + row + "]/angioflagcd", angioflag);
  2300. model.setValue("/root/main/list1/iscl[" + row + "]/erprcpflag",chk_angioer.value);
  2301. model.setValue("/root/main/list1/iscl[" + row + "]/nigtprcpflag", chk_angionigt.value);
  2302. }
  2303. // 환자단위 메시지 전송
  2304. function fSendMsgPat() {
  2305. // open("SPZMI00101" ,"", "10", "10", "SPZMI00101", "", "", "", "");
  2306. model.makeValue("/root/temp/opentab", "pmsg");
  2307. zmifOpenMessagePopup("/root/temp"); // root/temp/opentab 에 receivemsg (받은메세지함) 값을 주고 오픈한다.
  2308. }
  2309. // 처방단위 메시지 전송
  2310. function fSendMsgOrder() {
  2311. // open("SPZMI00101" ,"", "10", "10", "SPZMI00101", "", "", "", "");
  2312. model.makeValue("/root/temp/opentab", "pmsg");
  2313. zmifOpenMessagePopup("/root/temp"); // root/temp/opentab 에 pmsg (환자메세지작성창) 값을 주고 오픈한다.
  2314. }
  2315. function fSrchEstmCd() {
  2316. model.removeNodeset("/root/hidden/sppiz00800/rslt");
  2317. model.resetInstanceNode("/root/hidden/sppiz00800/cond");
  2318. var row = grd_ordlist.row;
  2319. var insukindcd = model.getValue("/root/send/insukindcd");
  2320. var estmcls = model.getValue("/root/main/list1/iscl["+ row +"]/estmcls");
  2321. var estmmncd = model.getValue("/root/main/list1/iscl["+ row +"]/estmmncd");
  2322. if (estmmncd == "") {
  2323. // 산정의미코드를 삭제한 경우
  2324. // fSetCalc();
  2325. } else if (estmmncd.isNumber() == false) { // (numericHelper.js) 저장된 값이 Number 형인지 점검
  2326. model.setValue("/root/main/list1/iscl["+row+"]/estmmncd", model.getValue("/root/hidden/item5/clod/estmmncd"));
  2327. grd_ordlist.rowstatus(row) = model.getValue("/root/hidden/item5/clod/rowstatus");
  2328. messageBox("산정의미코드는 숫자만", "C001"); ///산정의미코드는 숫자만 입력하십시오.
  2329. return false;
  2330. } else {
  2331. /*
  2332. if (model.getValue("/root/main/item1/clbs/payownbrate") == "") {
  2333. // 보조유형 코드가 없거나 요율이 검색되지 않은 경우임
  2334. messageBox("심사대상자의 보조유형이 잘못", "E005"); ///심사대상자의 보조유형이 잘못 선택되었습니다.
  2335. return;
  2336. }
  2337. var suppkindcd= model.getValue("/root/main/item1/clbs/suppkindcd");
  2338. */
  2339. model.setValue("/root/hidden/sppiz00800/cond/insukind", insukindcd);
  2340. model.setValue("/root/hidden/sppiz00800/cond/estmcls", estmcls);
  2341. model.setValue("/root/hidden/sppiz00800/cond/estmmncd", estmmncd);
  2342. var tmp = model.getValue("/root/main/list1/iscl["+ row +"]/execdd");
  2343. var execdd = tmp.substr(0,4) + tmp.substr(4,2) + tmp.substr(6,2);
  2344. model.setValue("/root/hidden/sppiz00800/cond/todd", execdd);
  2345. if (insukindcd == "11") {
  2346. model.setValue("/root/hidden/sppiz00800/cond/repcd", "insu");
  2347. }
  2348. else if (insukindcd == "21" || insukindcd == "22") {
  2349. model.setValue("/root/hidden/sppiz00800/cond/repcd", "proc");
  2350. }
  2351. else if (insukindcd == "31") {
  2352. model.setValue("/root/hidden/sppiz00800/cond/repcd", "autmb");
  2353. }
  2354. else if (insukindcd == "41") {
  2355. model.setValue("/root/hidden/sppiz00800/cond/repcd", "inducs");
  2356. }
  2357. else if (insukindcd == "51") {
  2358. model.setValue("/root/hidden/sppiz00800/cond/repcd", "gnrl");
  2359. }
  2360. else if (insukindcd == "61") {
  2361. model.setValue("/root/hidden/sppiz00800/cond/repcd", "forgn");
  2362. }
  2363. else if (insukindcd == "71") {
  2364. model.setValue("/root/hidden/sppiz00800/cond/repcd", "mou");
  2365. } else {
  2366. model.setValue("/root/hidden/sppiz00800/cond/repcd", "insu");
  2367. }
  2368. submit("TRPID20307");
  2369. var clcdSelect = instance1.selectSingleNode("/root/hidden/sppiz00800/rslt");
  2370. var clcd = clcdSelect.childNodes; //root/hidden/sppiz00800/rslt/clcd
  2371. if (clcd.length == 1) {
  2372. // 수가코드의 estmcls(산정분류)에 따라 선택가능한 5자리의 estmmncd(산정의미), 이에 해당하는 3자리의 estmcd(산정코드)를 조회하고 금액을 재계산한다.
  2373. // fSetCalc();
  2374. } else {
  2375. model.resetInstanceNode("/root/hidden/sppiz00800/cond/estmmncd");
  2376. model.removeNodeset("/root/hidden/sppiz00800/rslt");
  2377. model.makeNode("/root/hidden/sppiz00800/rslt/clcd");
  2378. modal("SPPIZ00800" ,"", "10", "10", "SPPIZ00800", "/root/hidden/sppiz00800/cond", "/root/hidden/cond", "", ""); // SPPIZ00800_산정코드조회.xrw
  2379. if (model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcd")) {
  2380. model.setValue("/root/main/list1/iscl["+ row +"]/estmmncd", model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmmncd"));
  2381. model.setValue("/root/main/list1/iscl["+ row +"]/estmcd", model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcd"));
  2382. model.setValue("/root/main/list1/iscl["+ row +"]/estmcdnm", model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcdnm"));
  2383. // fSetCalc();
  2384. } else {
  2385. model.setValue("/root/main/list1/iscl["+row+"]/estmmncd", model.getValue("/root/hidden/item5/clod/estmmncd"));
  2386. grd_ordlist.rowstatus(row) = model.getValue("/root/hidden/item5/clod/rowstatus");
  2387. }
  2388. }
  2389. }
  2390. var msg = "산정코드 [" + estmcls + "] ";
  2391. if (estmmncd) {
  2392. msg += "산정의미코드: " + estmmncd;
  2393. }
  2394. else {
  2395. return true;
  2396. }
  2397. var estmcd = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcd");
  2398. var estmcdnm = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcdnm");
  2399. if (estmcd) {
  2400. msg += " / 산정코드: " + estmcd;
  2401. }
  2402. if (estmcdnm) {
  2403. msg += " / 명칭: " + estmcdnm;
  2404. }
  2405. var addmthd = model.getValue("/root/hidden/sppiz00800/rslt/clcd/addmthd");
  2406. if (addmthd) {
  2407. msg += " // 계산방법: [" + addmthd + "] ";
  2408. msg += model.getValue("/root/hidden/sppiz00800/rslt/clcd/pnt");
  2409. msg += " / " + model.getValue("/root/hidden/sppiz00800/rslt/clcd/amt");
  2410. msg += " / " + model.getValue("/root/hidden/sppiz00800/rslt/clcd/rate");
  2411. } else {
  2412. msg += " // 조회된 산정코드가 없습니다.";
  2413. }
  2414. model.setValue("/root/hidden/list3/msgspclformat", msg);
  2415. return true;
  2416. }
  2417. // 수가 조회
  2418. function fSetSrchCalcScorCdPop(){
  2419. model.setValue("/root/hidden/smpic00100/cond/calcscorcd", grd_ordlist.valueMatrix(grd_ordlist.row, grd_ordlist.colRef("snglcalcscorcd")));
  2420. model.setValue("/root/hidden/smpic00100/cond/judgflag", "Y");
  2421. modal("SMPIC00100", 1,150, 150, "SMPIC00100", "/root/hidden/smpic00100/cond", "/root/temp/item6", "", "");
  2422. }
  2423. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2424. //마우스 오른쪽 버튼 기능 관련 코딩 끝 //
  2425. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2426. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2427. //조회항목 Filter기능 코딩 //
  2428. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2429. // 처방 조회부 - 재행/급여/항목구분 Radio 선택에 따라 처방 내역을 보여준다.
  2430. function fGetSelectedOrderData() {
  2431. var snglcalcscorcls = model.getValue(rdo_ordfilflag.attribute("ref"));
  2432. var tmp = "/root/main/list1/iscl[ediitem1='"
  2433. var chk = "0";
  2434. //항목구분
  2435. if(snglcalcscorcls) {
  2436. if(chk == "1"){
  2437. tmp = tmp + " and " + snglcalcscorcls;
  2438. }else{
  2439. tmp = tmp + snglcalcscorcls;
  2440. chk = "1";
  2441. }
  2442. }
  2443. if (snglcalcscorcls == "-") { chk= 0; }
  2444. if(chk == "0")
  2445. {
  2446. tmp = "/root/main/list1/iscl";
  2447. }else{
  2448. tmp = tmp + "']";
  2449. }
  2450. grd_ordlist.attribute("nodeset") = tmp ;
  2451. grd_ordlist.rebuild();
  2452. grd_ordlist.resizeCells();
  2453. grd_ordlist.row = 0; // 그리드의 첫줄부터 표시되도록 포커스를 0으로 설정한다.
  2454. }
  2455. function fGetSelectedOrderData_org() {
  2456. var selecteditem = model.getValue("/root/hidden/list1/isclsrch/selectedRdoItem");
  2457. // var judgchanged = model.getValue("/root/hidden/list1/isclsrch/judgChanged");
  2458. for (var i = grd_ordlist.fixedRows; i <= grd_ordlist.rows; i ++ ) {
  2459. grd_ordlist.rowHidden(i) = false;
  2460. var rowcnt = getNodesetCount("/root/main/list1/iscl");
  2461. var estmmncd = model.getValue("/root/main/list1/iscl["+ i + "]/estmmncd");
  2462. var estmmnnm = model.getValue("/root/main/list1/iscl["+ i + "]/estmmnnm");
  2463. if (estmmnnm != "") {
  2464. grd_ordlist.tooltipText(i, grd_ordlist.colref("estmmncd")) = "[산정의미코드:" + estmmncd + "]" + estmmnnm;
  2465. }
  2466. if(selecteditem != "-" && selecteditem != "99"){
  2467. // 2008. 02. 12 박지욱 추가(식대는 02항에 10, 11목인 경우)
  2468. if (selecteditem == "021011") {
  2469. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("ediitem1")) != "02") {
  2470. grd_ordlist.rowHidden(i) = true;
  2471. } else {
  2472. if (grd_ordlist.valueMatrix(i, grd_ordlist.colRef("ediitem2")) != "10" && grd_ordlist.valueMatrix(i, grd_ordlist.colRef("ediitem2")) != "11") {
  2473. grd_ordlist.rowHidden(i) = true;
  2474. }
  2475. }
  2476. // 2008.07.26 박창원 추가 입원을 선택 했을경우 식대를 제외하고 보여준다.
  2477. } else if (selecteditem == "02") {
  2478. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("ediitem1")) != "02") {
  2479. grd_ordlist.rowHidden(i) = true;
  2480. } else {
  2481. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("ediitem2")) == "10" || grd_ordlist.valueMatrix(i, grd_ordlist.colRef("ediitem2")) == "11") {
  2482. grd_ordlist.rowHidden(i) = true;
  2483. }
  2484. }
  2485. } else {
  2486. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("ediitem1")) != selecteditem){
  2487. grd_ordlist.rowHidden(i) = true;
  2488. }
  2489. }
  2490. } else if (selecteditem == "99") { // 원외추가 - 20090703 박창원
  2491. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("hosinhosoutflag")) != "O") {
  2492. grd_ordlist.rowHidden(i) = true;
  2493. }
  2494. }
  2495. /* if(judgchanged == "Y"){
  2496. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("judgadjtresncd")) == "" || grd_ordlist.valueMatrix(i, grd_ordlist.colRef("judgadjtresncd")) == "-" ){
  2497. grd_ordlist.rowHidden(i) = true;
  2498. }
  2499. }*/
  2500. // 색깔처리 통합 - 20081105 박창원
  2501. var judgadjtresncd = model.getValue("/root/main/list1/iscl["+ i +"]/judgadjtresncd"); // 심사변경
  2502. var probordyn = model.getValue("/root/main/list1/iscl["+ i +"]/probordyn"); //문제처방
  2503. var opprcp = model.getValue("/root/main/list1/iscl["+ i +"]/opprcpyn"); //수술중처방
  2504. var execdeptprcpyn = model.getValue("/root/main/list1/iscl["+ i +"]/execdeptprcpyn"); //시행부서처방
  2505. var spcljudgyn = model.getValue("/root/main/list1/iscl["+ i +"]/spcljudgyn"); //선별심사 체크
  2506. var cpyn = model.getValue("/root/send/cpyn"); //non-CP처방
  2507. var prcpkind = "0"; // 어떤 색깔을 설정할것인지...
  2508. var addestmcd = model.getValue("/root/main/list1/iscl["+ i +"]/estmmncd").substr(1, 1); // 야간,공휴가산
  2509. // 색갈체크는 역순으로 한다. 20080929 박창원
  2510. if(cpyn == "Y") { // CP여부판단
  2511. var noncp = model.getValue("/root/main/list1/iscl["+ i +"]/cpflag");
  2512. if (noncp == "N") {
  2513. prcpkind = "1";
  2514. }
  2515. }
  2516. if (spcljudgyn == "Y") { // 선별심사여부판단
  2517. prcpkind = "2";
  2518. }
  2519. if(execdeptprcpyn == "Y"){ // 시행부서처방여부판단
  2520. prcpkind = "3";
  2521. }
  2522. if(opprcp == "Y"){ // 수술중처방여부판단
  2523. prcpkind = "4";
  2524. }
  2525. if(probordyn == "Y" ){ // 문제처방여부판단
  2526. prcpkind = "5";
  2527. }
  2528. if(judgadjtresncd == "A" || judgadjtresncd == "B" || judgadjtresncd == "C" || judgadjtresncd == "D" || judgadjtresncd == "E" || judgadjtresncd == "F" || judgadjtresncd == "G" ){ // 심사변경여부 판단
  2529. prcpkind = "6";
  2530. }
  2531. // 색깔처리
  2532. if (prcpkind == "1") {
  2533. //grd_ordlist.rowStyle(i,"data","background-color") = "#c8e67b";
  2534. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#c8e67b";
  2535. } else if (prcpkind == "2") {
  2536. //grd_ordlist.rowStyle(i,"data","background-color") = "#ffe79d";
  2537. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#ffe79d";
  2538. } else if (prcpkind == "3") {
  2539. //grd_ordlist.rowStyle(i,"data","background-color") = "#b9e5fb";
  2540. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#b9e5fb";
  2541. } else if (prcpkind == "4") {
  2542. //grd_ordlist.rowStyle(i,"data","background-color") = "#7BE6B7";
  2543. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#7BE6B7";
  2544. } else if (prcpkind == "5") {
  2545. //grd_ordlist.rowStyle(i,"data","background-color") = "#fcd2c1";
  2546. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#fcd2c1";
  2547. } else if (prcpkind == "6") {
  2548. //grd_ordlist.rowStyle(i,"data","background-color") = "#43c8f5";
  2549. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#43c8f5";
  2550. }
  2551. // 야간가산(산정의미 두번째 "1'), 공휴가산(산정의미 두번째자리 "5") : 김상진
  2552. if (addestmcd == "1" || addestmcd == "5") {
  2553. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("estmmncd"), i, grd_ordlist.colRef("hngnm")) = "#ffff00";
  2554. }
  2555. }
  2556. // 처방 Grid의 내용이 변경된 경우, 선별심사 처방 색깔 구분을 다시 처리한다.
  2557. //fSetColorSpclJudgOrder();
  2558. model.refreshpart("/root/main/list1/iscl");
  2559. }
  2560. function fSetColorSpclJudgOrder() { // 20080929 새로운 기준에 따라 전면재수정
  2561. for (var i = 1; i < grd_ordlist.rows; i++) { // Grid 필터링 이후 Grid 상에 표시된 처방 개수만큼 돌면서
  2562. //Color 표시 범례
  2563. //1. 심사변경
  2564. //2. 문제처방
  2565. //3. 수술중처방
  2566. //4. 시행부서처방
  2567. //5. 선별심사
  2568. //6. non-CP처방
  2569. var judgadjtresncd = model.getValue("/root/main/list1/iscl["+ i +"]/judgadjtresncd"); // 심사변경
  2570. var probordyn = model.getValue("/root/main/list1/iscl["+ i +"]/probordyn"); //문제처방
  2571. var opprcp = model.getValue("/root/main/list1/iscl["+ i +"]/opprcpyn"); //수술중처방
  2572. var execdeptprcpyn = model.getValue("/root/main/list1/iscl["+ i +"]/execdeptprcpyn"); //시행부서처방
  2573. var spcljudgyn = model.getValue("/root/main/list1/iscl["+ i +"]/spcljudgyn"); //선별심사 체크
  2574. var cpyn = model.getValue("/root/send/cpyn"); //non-CP처방
  2575. var prcpkind = "0"; // 어떤 색깔을 설정할것인지...
  2576. var addestmcd = model.getValue("/root/main/list1/iscl["+ i +"]/estmmncd").substr(1, 1); // 야간,공휴가산
  2577. // 색갈체크는 역순으로 한다. 20080929 박창원
  2578. if(cpyn == "Y") { // CP여부판단
  2579. var noncp = model.getValue("/root/main/list1/iscl["+ i +"]/cpflag");
  2580. if (noncp == "N") {
  2581. prcpkind = "1";
  2582. }
  2583. }
  2584. if (spcljudgyn == "Y") { // 선별심사여부판단
  2585. prcpkind = "2";
  2586. }
  2587. if(execdeptprcpyn == "Y"){ // 시행부서처방여부판단
  2588. prcpkind = "3";
  2589. }
  2590. if(opprcp == "Y"){ // 수술중처방여부판단
  2591. prcpkind = "4";
  2592. }
  2593. if(probordyn == "Y" ){ // 문제처방여부판단
  2594. prcpkind = "5";
  2595. }
  2596. if(judgadjtresncd == "A" || judgadjtresncd == "B" || judgadjtresncd == "C" || judgadjtresncd == "D" || judgadjtresncd == "E" || judgadjtresncd == "F" || judgadjtresncd == "G" ){ // 심사변경여부 판단
  2597. prcpkind = "6";
  2598. }
  2599. // 색깔처리
  2600. if (prcpkind == "1") {
  2601. //grd_ordlist.rowStyle(i,"data","background-color") = "#c8e67b";
  2602. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#c8e67b";
  2603. } else if (prcpkind == "2") {
  2604. //grd_ordlist.rowStyle(i,"data","background-color") = "#ffe79d";
  2605. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#ffe79d";
  2606. } else if (prcpkind == "3") {
  2607. //grd_ordlist.rowStyle(i,"data","background-color") = "#b9e5fb";
  2608. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#b9e5fb";
  2609. } else if (prcpkind == "4") {
  2610. //grd_ordlist.rowStyle(i,"data","background-color") = "#7BE6B7";
  2611. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#7BE6B7";
  2612. } else if (prcpkind == "5") {
  2613. //grd_ordlist.rowStyle(i,"data","background-color") = "#fcd2c1";
  2614. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#fcd2c1";
  2615. } else if (prcpkind == "6") {
  2616. //grd_ordlist.rowStyle(i,"data","background-color") = "#43c8f5";
  2617. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("earncls1"), i, grd_ordlist.colRef("earncls3")) = "#43c8f5";
  2618. }
  2619. // 야간가산(산정의미 두번째 "1'), 공휴가산(산정의미 두번째자리 "5") : 김상진
  2620. if (addestmcd == "1" || addestmcd == "5") {
  2621. grd_ordlist.cellStyle("background-color", i, grd_ordlist.colRef("estmmncd"), i, grd_ordlist.colRef("hngnm")) = "#ffff00";
  2622. }
  2623. }
  2624. }
  2625. // 실시일자별로 처방 색깔 구분하여 표시한다
  2626. function fSetOrderColorByExecdd() {
  2627. var sortexecdd2 = "";
  2628. var color = "#d6eafd";
  2629. for (var i = grd_ordlist.fixedRows; i < grd_ordlist.rows; i ++ ) {
  2630. var status = grd_ordlist.rowHidden(i);
  2631. if (status == false) {
  2632. var sortexecdd1 = grd_ordlist.valueMatrix(i, grd_ordlist.colRef("sortexecdd"));
  2633. if (sortexecdd1 == sortexecdd2) {
  2634. grd_ordlist.rowStyle(i,"data","background-color") = color;
  2635. } else {
  2636. sortexecdd2 = sortexecdd1;
  2637. if (color == "#ffffff") {
  2638. grd_ordlist.rowStyle(i,"data","background-color") = "#d6eafd";
  2639. color = "#d6eafd";
  2640. } else {
  2641. grd_ordlist.rowStyle(i,"data","background-color") = "#ffffff";
  2642. color = "#ffffff";
  2643. }
  2644. }
  2645. }
  2646. }
  2647. var grdobj = document.controls.item("grd_ordlist");
  2648. var col_hngnm = "합계";
  2649. var col_item1 = -1;
  2650. var subtot_style = "background-color:#cefcfa; color:#0000ff;font-weight:bold;"
  2651. var subtot_fromat = "format:(-)#,###.99; roundmode:round; roundposition:0"
  2652. grdobj.subtotalposition= "below";
  2653. grdobj.subtotal("sum", col_item1, grdobj.colRef("calcqty"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2654. grdobj.subtotal("sum", col_item1, grdobj.colRef("calctims"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2655. grdobj.subtotal("sum", col_item1, grdobj.colRef("daydrugqty"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2656. grdobj.subtotal("sum", col_item1, grdobj.colRef("calcdays"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2657. grdobj.subtotal("sum", col_item1, grdobj.colRef("calcamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2658. grdobj.subtotal("sum", col_item1, grdobj.colRef("limitdiffamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2659. grdobj.subtotal("sum", col_item1, grdobj.colRef("druglimitamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2660. grdobj.subtotal("sum", col_item1, grdobj.colRef("unithospaddamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2661. grdobj.subtotal("sum", col_item1, grdobj.colRef("unitspecamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2662. grdobj.subtotal("sum", col_item1, grdobj.colRef("unitaddamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2663. grdobj.subtotal("sum", col_item1, grdobj.colRef("totordamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2664. grdobj.subtotal("sum", col_item1, grdobj.colRef("ownbamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2665. grdobj.subtotal("sum", col_item1, grdobj.colRef("hospaddamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2666. grdobj.subtotal("sum", col_item1, grdobj.colRef("specamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2667. grdobj.subtotal("sum", col_item1, grdobj.colRef("estmamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2668. grdobj.subtotal("sum", col_item1, grdobj.colRef("calcscorpnt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2669. grdobj.subtotal("sum", col_item1, grdobj.colRef("exitprvntdrugamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2670. grdobj.subtotal("sum", col_item1, grdobj.colRef("ordqty"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2671. grdobj.subtotal("sum", col_item1, grdobj.colRef("ordtims"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2672. grdobj.subtotal("sum", col_item1, grdobj.colRef("orddays"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2673. grdobj.subtotal("sum", col_item1, grdobj.colRef("ordtype"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2674. grdobj.subtotal("sum", col_item1, grdobj.colRef("payamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2675. grdobj.subtotal("sum", col_item1, grdobj.colRef("payinsubamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2676. grdobj.subtotal("sum", col_item1, grdobj.colRef("payownbamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2677. grdobj.subtotal("sum", col_item1, grdobj.colRef("pntunitcost"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2678. grdobj.subtotal("sum", col_item1, grdobj.colRef("allownbamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2679. grdobj.subtotal("sum", col_item1, grdobj.colRef("nopyamt"),subtot_fromat, subtot_style, col_hngnm, col_hngnm, true);
  2680. }
  2681. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2682. //조회항목 Filter기능 코딩 끝 //
  2683. //////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2684. function fSetToothPop(row) {
  2685. model.removenode("/root/hidden/sppiz00600/cond/list");
  2686. var cd = "";
  2687. var cdnm = "";
  2688. var orddd = "";
  2689. var toot = "";
  2690. var rowcnt = 1;
  2691. // 상병
  2692. var cntdiag = opener.model.getXPathValue("count(/root/main/list3/diaglist)");
  2693. for (i=1; i<=cntdiag; i++) {
  2694. cd = opener.model.getValue("/root/main/list3/diaglist["+ i + "]/diagcd");
  2695. cdnm = opener.model.getValue("/root/main/list3/diaglist["+ i + "]/diagnm");
  2696. orddd = opener.model.getValue("/root/main/list3/diaglist["+ i + "]/ordfromdd");
  2697. toot = opener.model.getValue("/root/main/list3/diaglist["+ i + "]/toot");
  2698. if (cd != "") {
  2699. if (toot != "-" ) {
  2700. var milktoothstr = "ABCDE000";
  2701. var subTootStr = "";
  2702. for (var inx = 0; inx < 32; inx++) {
  2703. var tootnum = toot.substr(inx,1);
  2704. if (tootnum == "*") { // 선택된 영구치의 경우 1~8 사이 숫자로 표시한다.
  2705. if (inx < 8) {
  2706. subTootStr += (8 - inx);
  2707. }
  2708. else if (inx > 7 && inx < 16) {
  2709. subTootStr += (inx - 7);
  2710. }
  2711. else if (inx > 15 && inx < 24) {
  2712. subTootStr += (24 - inx);
  2713. } else {
  2714. subTootStr += (inx - 23);
  2715. }
  2716. } else if (tootnum == "#") { // 선택된 유치의 경우 A~E 사이 알파벳으로 표시한다.
  2717. if (inx < 8) {
  2718. subTootStr += milktoothstr.charAt(7 - inx);
  2719. }
  2720. else if (inx > 7 && inx < 16) {
  2721. subTootStr += milktoothstr.charAt(inx - 8);
  2722. }
  2723. else if (inx > 15 && inx < 24) {
  2724. subTootStr += milktoothstr.charAt(23 - inx);
  2725. } else {
  2726. subTootStr += milktoothstr.charAt(inx - 24);
  2727. }
  2728. } else { // if (tootnum == "0") 선택되지 않은 경우 공백으로 처리한다.
  2729. subTootStr += " ";
  2730. }
  2731. }
  2732. //치식 표기를 설정한다.
  2733. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "false");
  2734. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag", "상병");
  2735. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd", cd);
  2736. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm", cdnm);
  2737. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper", subTootStr.substr(0, 8));
  2738. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper", subTootStr.substr(8, 8));
  2739. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower", subTootStr.substr(16, 8));
  2740. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower", subTootStr.substr(24, 8));
  2741. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd", orddd);
  2742. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot", toot);
  2743. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row", i);
  2744. rowcnt = rowcnt+1;
  2745. }
  2746. }
  2747. }
  2748. // 처방
  2749. var cntiscl = getNodesetCount("/root/main/list1/iscl");
  2750. cntiscl = eval(cntiscl)+1;
  2751. for (i=1; i<=cntiscl; i++) {
  2752. cd = model.getValue("/root/main/list1/iscl["+ i + "]/snglcalcscorcd");
  2753. cdnm = model.getValue("/root/main/list1/iscl["+ i + "]/hngnm");
  2754. orddd = model.getValue("/root/main/list1/iscl["+ i + "]/orddd");
  2755. toot = model.getValue("/root/main/list1/iscl["+ i + "]/tootfact");
  2756. if (cd != "") {
  2757. if (toot != "-") {
  2758. var milktoothstr = "ABCDE000";
  2759. var subTootStr = "";
  2760. for (var inx = 0; inx < 32; inx++) {
  2761. var tootnum = toot.substr(inx,1);
  2762. if (tootnum == "*") { // 선택된 영구치의 경우 1~8 사이 숫자로 표시한다.
  2763. if (inx < 8) {
  2764. subTootStr += (8 - inx);
  2765. }
  2766. else if (inx > 7 && inx < 16) {
  2767. subTootStr += (inx - 7);
  2768. }
  2769. else if (inx > 15 && inx < 24) {
  2770. subTootStr += (24 - inx);
  2771. } else {
  2772. subTootStr += (inx - 23);
  2773. }
  2774. } else if (tootnum == "#") { // 선택된 유치의 경우 A~E 사이 알파벳으로 표시한다.
  2775. if (inx < 8) {
  2776. subTootStr += milktoothstr.charAt(7 - inx);
  2777. }
  2778. else if (inx > 7 && inx < 16) {
  2779. subTootStr += milktoothstr.charAt(inx - 8);
  2780. }
  2781. else if (inx > 15 && inx < 24) {
  2782. subTootStr += milktoothstr.charAt(23 - inx);
  2783. } else {
  2784. subTootStr += milktoothstr.charAt(inx - 24);
  2785. }
  2786. } else { // if (tootnum == "0") 선택되지 않은 경우 공백으로 처리한다.
  2787. subTootStr += " ";
  2788. }
  2789. }
  2790. //치식 표기를 설정한다.
  2791. if (row == i ) {
  2792. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "true");
  2793. } else {
  2794. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "false");
  2795. }
  2796. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag", "처방");
  2797. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd", cd);
  2798. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm", cdnm);
  2799. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper", subTootStr.substr(0, 8));
  2800. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper", subTootStr.substr(8, 8));
  2801. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower", subTootStr.substr(16, 8));
  2802. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower", subTootStr.substr(24, 8));
  2803. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd", orddd);
  2804. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot", toot);
  2805. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row", i);
  2806. rowcnt = rowcnt+1;
  2807. } else {
  2808. if (row == i ) {
  2809. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/chos", "true");
  2810. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/flag", "처방");
  2811. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cd", cd);
  2812. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/cdnm", cdnm);
  2813. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightupper", "");
  2814. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftupper", "");
  2815. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/rightlower", "");
  2816. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/leftlower", "");
  2817. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/orddd", orddd);
  2818. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/toot", "");
  2819. model.makevalue("/root/hidden/sppiz00600/cond/list/toothapplist[" + rowcnt + "]/row", i);
  2820. rowcnt = rowcnt+1;
  2821. }
  2822. }
  2823. } // if cd != ""
  2824. } // for end
  2825. }
  2826. // 치식 팝어에 받은 데이타
  2827. function fGetToothPop() {
  2828. var tootSelectcnt = getNodesetCount("/root/hidden/sppiz00600/rslt/list");
  2829. var row = "";
  2830. var toot = "";
  2831. tootSelectcnt = eval(tootSelectcnt) + 1;
  2832. for (var i=1; i<tootSelectcnt; i++) {
  2833. flag = model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/flag");
  2834. row = model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/row");
  2835. if (flag == "1") {
  2836. toot = opener.model.getValue("/root/main/list3/diaglist["+ row +"]/toot");
  2837. opener.model.setValue("/root/main/list3/diaglist["+ row +"]/toot", model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/toot"));
  2838. if (model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/toot") != toot) { // 치식번호가 변경된 경우
  2839. //var diagstatus = grd_diaglist.rowstatus(row);
  2840. //if (diagstatus == 0 || diagstatus == 2) { // 0 : new, 2 : update
  2841. // grd_diaglist.rowstatus(row) = 2; // 2 : update
  2842. //}
  2843. }
  2844. } else if (flag == "2") {
  2845. toot = model.getValue("/root/main/list1/iscl["+ row +"]/tootfact");
  2846. model.setValue("/root/main/list1/iscl["+ row +"]/tootfact", model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/toot"));
  2847. if (model.getValue("/root/hidden/sppiz00600/rslt/list["+ i +"]/toot") != toot) { // 치식번호가 변경된 경우
  2848. var ordstatus = grd_ordlist.rowstatus(row);
  2849. if (ordstatus == 0 || ordstatus == 2) { // 0 : new, 2 : update
  2850. grd_ordlist.rowstatus(row) = 2; // 2 : update
  2851. }
  2852. }
  2853. }
  2854. }
  2855. opener.model.refresh();
  2856. model.refresh();
  2857. }
  2858. // 필터 전에 변경된 데이타 존재 여부 체크
  2859. function fChkUpdateData() {
  2860. var flag = true;
  2861. for (var i=1; i<grd_ordlist.rows; i++) {
  2862. var status = grd_ordlist.rowStatus(i);
  2863. if (status !=0) {
  2864. flag = false;
  2865. }
  2866. }
  2867. return flag;
  2868. }
  2869. // 심사사유, 조정사유, 수정사유 입력
  2870. function fSetAdjtResnCd() {
  2871. var oldcd = model.getValue("/root/main/list1/iscl["+ grd_ordlist.row +"]/judgadjtresncd");
  2872. model.resetInstanceNode("/root/hidden/sppiz01000");
  2873. model.setValue("/root/hidden/sppiz01000/cond/cdid", oldcd);
  2874. modal("SPPIZ01000", 1,150, 150, "SPPIZ01000", "/root/hidden/sppiz01000/cond/cdid", "/root/hidden/sppiz01000/cond/cdid", "sysmenu:hidden;", "");
  2875. var newcd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
  2876. if (newcd) {
  2877. for (var i = 0; i < grd_ordlist.selectedRows; i++) {
  2878. var row = grd_ordlist.selectedrow(i);
  2879. model.setValue("/root/main/list1/iscl["+ row +"]/judgadjtresncd", newcd);
  2880. model.setValue("/root/main/list1/iscl[" + row + "]/editflag", "Y");
  2881. //if (newcd != oldcd) {
  2882. if (grd_ordlist.rowStatus(row) == 0) { // 0 : new, 2 : update
  2883. grd_ordlist.rowStatus(row) = 2;
  2884. }
  2885. //grd_ordlist.rowStyle(row, "data", "background-color") = "#ffff9c";
  2886. // }
  2887. }
  2888. }
  2889. return newcd;
  2890. }
  2891. // 심사사유, 조정사유, 수정사유 입력
  2892. function fSetAdjtResnCd2() {
  2893. var oldcd = model.getValue("/root/main/list1/iscl["+ grd_ordlist.row +"]/judgadjtresncd");
  2894. model.resetInstanceNode("/root/hidden/sppiz01000");
  2895. model.setValue("/root/hidden/sppiz01000/cond/cdid", oldcd);
  2896. modal("SPPIZ01000", 1,150, 150, "SPPIZ01000", "/root/hidden/sppiz01000/cond/cdid", "/root/hidden/sppiz01000/cond/cdid", "", "");
  2897. var newcd = model.getValue("/root/hidden/sppiz01000/rslt/cdid");
  2898. return newcd;
  2899. }
  2900. // grid 타이틀 컬럼 정보
  2901. function getOrderInfoOfCol(grdid){
  2902. var refdata = ""; // ref
  2903. var sizedata = ""; // size
  2904. var grdobj = document.controls.item(grdid);
  2905. var totcol = grdobj.cols;
  2906. for(var i = 0; i < totcol; i++){
  2907. var refval = grdobj.colAttribute(i, "ref");
  2908. refdata += refval + "^";
  2909. var sizeval = grdobj.colWidth(i);
  2910. sizedata += sizeval + "^";
  2911. }
  2912. refdata = refdata.substring(0 , refdata.length-1);
  2913. sizedata = sizedata.substring(0, sizedata.length-1);
  2914. var scrnid = model.getValue("/root/hidden/listval/uuee/scrnid");
  2915. var compscnts = model.getValue("/root/hidden/listval/uuee/compscnts");
  2916. if (refdata == compscnts) {
  2917. messageBox("변경된 데이터가","I004");
  2918. return;
  2919. }
  2920. if (scrnid == "") {
  2921. model.setValue("/root/send/listval/uuee/flag","I");
  2922. } else {
  2923. model.setValue("/root/send/listval/uuee/flag","U");
  2924. }
  2925. model.setValue("/root/send/listval/uuee/scrnid","SPPIJ00400");
  2926. model.setValue("/root/send/listval/uuee/compsnm","grd_ordlist");
  2927. model.setValue("/root/send/listval/uuee/compscnts",refdata);
  2928. model.setValue("/root/send/listval/uuee/compsrefcnts","");
  2929. model.setValue("/root/send/listval/uuee/compssizecnts",sizedata);
  2930. if ( submit("TXPIJ00402",false) ) {
  2931. messageBox("사용자 환경 저장이","I002");
  2932. }
  2933. }
  2934. function getOrderInfoOfChk(chkid){
  2935. var scrnid = model.getValue("/root/hidden/listval/uuee[compsnm='"+chkid+"']/scrnid");
  2936. var compscnts = model.getValue("/root/hidden/listval/uuee[compsnm='"+chkid+"']/compscnts");
  2937. var chkval = model.getValue(cmb_judgresn.attribute("ref"));
  2938. if (scrnid == "") {
  2939. model.setValue("/root/send/listval/uuee/flag","I");
  2940. } else {
  2941. model.setValue("/root/send/listval/uuee/flag","U");
  2942. }
  2943. model.setValue("/root/send/listval/uuee/scrnid","SPPIJ00400");
  2944. model.setValue("/root/send/listval/uuee/compsnm",chkid);
  2945. model.setValue("/root/send/listval/uuee/compscnts",(chkval.length == 0 ? "-" : chkval));
  2946. model.setValue("/root/send/listval/uuee/compsrefcnts", "-");
  2947. model.setValue("/root/send/listval/uuee/compssizecnts","-");
  2948. if ( submit("TXPIJ00402") ) {
  2949. //messageBox("사용자 환경 저장이","I002");
  2950. }
  2951. }
  2952. // 사용자별 grid 타이틀 컬럼 설정
  2953. function setOrderInfoOfCol(grdid, refdata, sizedata){
  2954. var grdobj = document.controls.item(grdid);
  2955. var refarr = refdata.split("^");
  2956. var sizearr = sizedata.split("^");
  2957. for(var i = 0; i < refarr.length; i++){
  2958. var colcnt = grdobj.colref("" + refarr[i] + "");
  2959. grdobj.colMove(i, colcnt, "before",false);
  2960. var size = sizearr[i];
  2961. grdobj.colWidth(i) = eval(size);
  2962. }
  2963. grdobj.refresh();
  2964. }
  2965. function fSetRdoReset(){
  2966. var chk_name = model.getValue("/root/hidden/listval/uuee[compsnm='cmb_judgresn']/compsnm");
  2967. var chk_val = model.getValue("/root/hidden/listval/uuee[compsnm='cmb_judgresn']/compscnts");
  2968. if (chk_name.length > 0) {
  2969. if (chk_val.length > 0){
  2970. model.setValue(cmb_judgresn.attribute("ref"), chk_val);
  2971. } else {
  2972. model.setValue(cmb_judgresn.attribute("ref"), "-");
  2973. }
  2974. } else {
  2975. model.setValue(cmb_judgresn.attribute("ref"), "-");
  2976. }
  2977. }
  2978. // 행위급여
  2979. function fActPay() {
  2980. }
  2981. // 행위 전액본인부담
  2982. function fActAllOwnBurden() {
  2983. }
  2984. // 행위 일반
  2985. function fActlGnrl() {
  2986. }
  2987. // 행위 No-Charge처리
  2988. function fActNoCharge() {
  2989. // No-Charge 처리(본인부담 0원처리) 여부 적용/해제 ( fOrdChangeNoCharge1 ) 와 동일하게 구현하는데 exip의 calcstat를 'P'로 update, 창원샘 요청, JHP, 20090414
  2990. var instcd = model.getValue("/root/send/instcd");
  2991. // 20100729 정승우 서울성모 풀어달라고 함. 이미숙샘 요청
  2992. /* if (instcd == "012") {
  2993. messageBox("사용할 수 없는 메뉴","E008");
  2994. return;
  2995. }
  2996. */
  2997. var chkjudgresn = model.getValue("/root/send/judgresn");
  2998. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  2999. var cRrow = grd_ordlist.selectedRow(i);
  3000. //처방이 있는경우
  3001. var chk_cd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/snglcalcscorcd");
  3002. //계산내역인 경우만
  3003. var ordcalcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag");
  3004. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  3005. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  3006. if (cretyn == "Y") {
  3007. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  3008. //선택된 row의 체크값을 'N' 로 해주는 함수
  3009. fCheckNSelectedRows();
  3010. return;
  3011. }
  3012. if(ordcalcflag == "C"){
  3013. if(chk_cd != ""){
  3014. //var ownbamt = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ownbamt");
  3015. var calcflag = model.getValue("/root/main/list1/iscl["+ cRrow +"]/calcflag");
  3016. //if(ownbamt != "0") {
  3017. if(calcflag != "P") {
  3018. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "P");
  3019. // } else if(ownbamt == "0") {
  3020. } else if(calcflag == "P") {
  3021. model.setValue("/root/main/list1/iscl["+ cRrow +"]/freeflag", "Y");
  3022. }
  3023. model.setValue("/root/main/list1/iscl[" + cRrow + "]/nochargeyn", "Y");
  3024. var judgresn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd");
  3025. var editflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/editflag");
  3026. if(chkjudgresn && chkjudgresn != "-"){
  3027. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", chkjudgresn);
  3028. }else{
  3029. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  3030. {
  3031. fSetAdjtResnCd();
  3032. //grp_judgresn.visible = true;
  3033. }
  3034. }
  3035. var row_stat = grd_ordlist.rowStatus(cRrow);
  3036. if(row_stat != 1){
  3037. if(row_stat != 3){
  3038. if(row_stat != 4){
  3039. grd_ordlist.rowStatus(cRrow) = 2;
  3040. }
  3041. }
  3042. }
  3043. }
  3044. //계산내역을 갖고 온다.
  3045. //처방내역이면 계산을 돌리지 않는다.
  3046. if(model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordcalcflag") == "O"){
  3047. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  3048. return;
  3049. }
  3050. }
  3051. }
  3052. }
  3053. // 수정추가 JHP 20090421
  3054. // 수정이 안이루어진 row의 수정사유변경은 막는다.
  3055. // 수정사유 변경은 각 조건들이 모두 N이어야 하며 bfjudgadjtresncd가 '-'이어야 한다.
  3056. function fJudgAdjtResncdChk(){
  3057. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  3058. var cRrow = grd_ordlist.selectedRow(i);
  3059. var payflagyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/payflagyn");
  3060. var spcordyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/spcordyn");
  3061. var probordchangeyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/probordchangeyn");
  3062. var estmyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/estmyn");
  3063. var nochargeyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/nochargeyn");
  3064. var ordchangeyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/ordchangeyn");
  3065. var execchangeyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/execchangeyn");
  3066. var judgadjtresncd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/judgadjtresncd");
  3067. var bfjudgadjtresncd = model.getValue("/root/main/list1/iscl["+ cRrow +"]/bfjudgadjtresncd");
  3068. var opansyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/opansyn");
  3069. var angioyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/angioyn");
  3070. var drugmthyn = model.getValue("/root/main/list1/iscl["+ cRrow +"]/drugmthyn");
  3071. if (payflagyn == "N" && spcordyn == "N" && probordchangeyn == "N" && estmyn == "N" && nochargeyn == "N" && ordchangeyn == "N" && execchangeyn == "N" && opansyn == "N" && angioyn == "N" && drugmthyn== "N") {
  3072. if( judgadjtresncd != bfjudgadjtresncd ){
  3073. if ( bfjudgadjtresncd != "-" ){
  3074. return;
  3075. }else{
  3076. messageBox("수정된적이 없는 DATA에 대한 수정사유변경은 ","E001");
  3077. }
  3078. }
  3079. }
  3080. }
  3081. }
  3082. /* 환자기준 전송메세지작성, JHP. 2009.08.03 */
  3083. function fPatJudgPatMsgTrsm() {
  3084. if (!isNull(model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/pid"))) {
  3085. // 인스턴스생성
  3086. model.makeNode("/root/tmp/msgtrsm/info/instcd");
  3087. model.makeNode("/root/tmp/msgtrsm/info/msgwrtedd");
  3088. model.makeNode("/root/tmp/msgtrsm/info/msgwrteno");
  3089. model.makeNode("/root/tmp/msgtrsm/info/msgwrtehistno");
  3090. model.makeNode("/root/tmp/msgtrsm/info/histstat");
  3091. model.makeNode("/root/tmp/msgtrsm/info/pid");
  3092. model.makeNode("/root/tmp/msgtrsm/info/orddd");
  3093. model.makeNode("/root/tmp/msgtrsm/info/cretno");
  3094. model.makeNode("/root/tmp/msgtrsm/info/mskind");
  3095. model.makeNode("/root/tmp/msgtrsm/info/orddeptcd");
  3096. model.makeNode("/root/tmp/msgtrsm/info/orddrid");
  3097. model.makeNode("/root/tmp/msgtrsm/info/orddrnm");
  3098. model.makeNode("/root/tmp/msgtrsm/info/ordtype");
  3099. model.makeNode("/root/tmp/msgtrsm/info/kindflag");
  3100. model.makeNode("/root/tmp/msgtrsm/info/grupcalcscorcd");
  3101. model.makeNode("/root/tmp/msgtrsm/info/snglcalcscorcd");
  3102. model.makeNode("/root/tmp/msgtrsm/info/ordqty");
  3103. model.makeNode("/root/tmp/msgtrsm/info/ordtims");
  3104. model.makeNode("/root/tmp/msgtrsm/info/orddays");
  3105. model.makeNode("/root/tmp/msgtrsm/info/prcpdd");
  3106. model.makeNode("/root/tmp/msgtrsm/info/prcpno");
  3107. model.makeNode("/root/tmp/msgtrsm/info/prcppayflag");
  3108. model.makeNode("/root/tmp/msgtrsm/info/rgstrid");
  3109. model.makeNode("/root/tmp/msgtrsm/info/rgstdd");
  3110. model.makeNode("/root/tmp/msgtrsm/info/rgsttm");
  3111. model.makeNode("/root/tmp/msgtrsm/info/sendphone");
  3112. model.makeNode("/root/tmp/msgtrsm/info/anybodyyn");
  3113. model.makeNode("/root/tmp/msgtrsm/info/sendflag");
  3114. model.makeNode("/root/tmp/msgtrsm/info/senddate");
  3115. model.makeNode("/root/tmp/msgtrsm/info/sendid");
  3116. model.makeNode("/root/tmp/msgtrsm/info/deliveid");
  3117. model.makeNode("/root/tmp/msgtrsm/info/recvdate");
  3118. model.makeNode("/root/tmp/msgtrsm/info/recvid");
  3119. model.makeNode("/root/tmp/msgtrsm/info/recvcnfmyn");
  3120. model.makeNode("/root/tmp/msgtrsm/info/recvcnfmid");
  3121. model.makeNode("/root/tmp/msgtrsm/info/sendmsg");
  3122. model.makeNode("/root/tmp/msgtrsm/info/recvmsg");
  3123. model.makeNode("/root/tmp/msgtrsm/info/fstrgstrid");
  3124. model.makeNode("/root/tmp/msgtrsm/info/fstrgstdt");
  3125. model.makeNode("/root/tmp/msgtrsm/info/lastupdtrid");
  3126. model.makeNode("/root/tmp/msgtrsm/info/lastupdtdt");
  3127. // 값셋팅
  3128. // 세션값 받기
  3129. var sUserInfosS = getUserInfos();
  3130. sUserInfosS = sUserInfosS + "|";
  3131. var UserInfosS_Array = sUserInfosS.split("|");
  3132. var userid = UserInfosS_Array[0]; //사용자번호
  3133. var usernm = UserInfosS_Array[1]; //사용자이름
  3134. var posinstcd = UserInfosS_Array[6]; //근무지기관코드 2009.04.15
  3135. var posinstnm = UserInfosS_Array[7]; //근무지기관명 2009.04.15
  3136. var posdeptcd = UserInfosS_Array[4]; //소속부서코드
  3137. var posdeptnm = UserInfosS_Array[5]; //소속부서명
  3138. if (userid == null || userid == "" || userid == " " || userid == "-") userid = "pam";
  3139. model.setValue("/root/tmp/msgtrsm/info/instcd", ""); // chk
  3140. model.setValue("/root/tmp/msgtrsm/info/msgwrtedd", getCurrentDate()); // chk
  3141. model.setValue("/root/tmp/msgtrsm/info/msgwrteno", ""); // chk
  3142. model.setValue("/root/tmp/msgtrsm/info/msgwrtehistno", ""); // chk
  3143. model.setValue("/root/tmp/msgtrsm/info/histstat", "Y"); // chk
  3144. model.setValue("/root/tmp/msgtrsm/info/pid", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/pid")); // chk
  3145. var indd = model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/indd");
  3146. //indd = indd.substr(0,4) + indd.substr(5,2) + indd.substr(8,2);
  3147. model.setValue("/root/tmp/msgtrsm/info/orddd", indd); // chk
  3148. model.setValue("/root/tmp/msgtrsm/info/cretno", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/cretno")); // chk
  3149. model.setValue("/root/tmp/msgtrsm/info/mskind", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/mskind")); // chk
  3150. model.setValue("/root/tmp/msgtrsm/info/orddeptcd", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/orddeptcd")); // chk
  3151. //var drid = model.getValue("/root/main/item1/otpt/orddrid")
  3152. //var drnm = model.getValue("/root/init/orddrid/orddridlist[cd = '" + drid + "']/nm");
  3153. model.setValue("/root/tmp/msgtrsm/info/orddrid", opener.model.getValue("/root/main/item1/iteminfo/medispclid")); // chk, TABLE에 적용안함.(값만확인)
  3154. model.setValue("/root/tmp/msgtrsm/info/orddrnm", opener.model.getValue("/root/main/item1/iteminfo/medispclnm")); // chk, TABLE에 적용안함.(값만확인)
  3155. model.setValue("/root/tmp/msgtrsm/info/ordtype", "I"); // 입원기본 'I', chk
  3156. model.setValue("/root/tmp/msgtrsm/info/kindflag", "P"); // 환자기준 'P', chk
  3157. model.setValue("/root/tmp/msgtrsm/info/grupcalcscorcd", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/grupcalcscorcd")); chk
  3158. model.setValue("/root/tmp/msgtrsm/info/snglcalcscorcd", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/snglcalcscorcd")); chk
  3159. model.setValue("/root/tmp/msgtrsm/info/ordqty", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/ordqty")); chk
  3160. model.setValue("/root/tmp/msgtrsm/info/ordtims", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/ordtims")); chk
  3161. model.setValue("/root/tmp/msgtrsm/info/orddays", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/orddays")); chk
  3162. model.setValue("/root/tmp/msgtrsm/info/prcpdd", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcpdd")); chk
  3163. model.setValue("/root/tmp/msgtrsm/info/prcpno", 0); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcpno")); chk
  3164. model.setValue("/root/tmp/msgtrsm/info/prcppayflag", "-"); //model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/prcppayflag")); chk
  3165. model.setValue("/root/tmp/msgtrsm/info/rgstrid", "-"); // 서버단에서 조회하여 가져와야함. chk
  3166. model.setValue("/root/tmp/msgtrsm/info/rgstdd", "-"); // 서버단에서 조회하여 가져와야함. chk
  3167. model.setValue("/root/tmp/msgtrsm/info/rgsttm", "-"); // 서버단에서 조회하여 가져와야함. chk
  3168. model.setValue("/root/tmp/msgtrsm/info/sendphone", ""); // 서버단에서 조회하여 가져와야함. chk
  3169. model.setValue("/root/tmp/msgtrsm/info/anybodyyn", "N"); // 누구나 기본 'N', chk
  3170. model.setValue("/root/tmp/msgtrsm/info/sendflag", "O"); // 진료기본 'O', chk
  3171. model.setValue("/root/tmp/msgtrsm/info/senddate", ""); //쿼리에서 timestamp chk
  3172. model.setValue("/root/tmp/msgtrsm/info/sendid", userid); //chk
  3173. model.setValue("/root/tmp/msgtrsm/info/deliveid", "-"); // 화면에서선택. chk
  3174. model.setValue("/root/tmp/msgtrsm/info/recvdate", ""); // chk
  3175. model.setValue("/root/tmp/msgtrsm/info/recvid", ""); // chk
  3176. model.setValue("/root/tmp/msgtrsm/info/recvcnfmyn", "N"); // 기본 비연속 'N', chk
  3177. model.setValue("/root/tmp/msgtrsm/info/recvcnfmid", userid); //chk
  3178. //var sendmsgvalue1 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/snglcalcscorcd");
  3179. //var sendmsgvalue2 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/hngnm");
  3180. //var sendmsgvalue = sendmsgvalue1 + ', ' + sendmsgvalue2;
  3181. model.setValue("/root/tmp/msgtrsm/info/sendmsg", ""); //sendmsgvalue); // 기본 처방코드, 처방명값가지고 시작. chk
  3182. model.setValue("/root/tmp/msgtrsm/info/recvmsg", ""); // chk
  3183. model.setValue("/root/tmp/msgtrsm/info/fstrgstrid", ""); // chk
  3184. model.setValue("/root/tmp/msgtrsm/info/fstrgstdt", ""); // chk
  3185. model.setValue("/root/tmp/msgtrsm/info/lastupdtrid", ""); // chk
  3186. model.setValue("/root/tmp/msgtrsm/info/lastupdtdt", ""); // chk
  3187. } else {
  3188. messageBox("기본정보가 ", "I004");
  3189. }
  3190. model.refresh();
  3191. modal("SPPIZ01900_심사환자메세지작성", "", "400", "300", "", "/root/tmp/msgtrsm/info", "/root/main/patinfo");
  3192. model.removenode("/root/tmp/msgtrsm");
  3193. }
  3194. /* 처방기준 전송메세지작성, JHP. 2009.07.16 */
  3195. function fOrderJudgPatMsgTrsm() {
  3196. if (!isNull(model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/pid"))) {
  3197. // 인스턴스생성
  3198. model.makeNode("/root/tmp/msgtrsm/info/instcd");
  3199. model.makeNode("/root/tmp/msgtrsm/info/msgwrtedd");
  3200. model.makeNode("/root/tmp/msgtrsm/info/msgwrteno");
  3201. model.makeNode("/root/tmp/msgtrsm/info/msgwrtehistno");
  3202. model.makeNode("/root/tmp/msgtrsm/info/histstat");
  3203. model.makeNode("/root/tmp/msgtrsm/info/pid");
  3204. model.makeNode("/root/tmp/msgtrsm/info/orddd");
  3205. model.makeNode("/root/tmp/msgtrsm/info/cretno");
  3206. model.makeNode("/root/tmp/msgtrsm/info/mskind");
  3207. model.makeNode("/root/tmp/msgtrsm/info/orddeptcd");
  3208. model.makeNode("/root/tmp/msgtrsm/info/orddrid");
  3209. model.makeNode("/root/tmp/msgtrsm/info/orddrnm");
  3210. model.makeNode("/root/tmp/msgtrsm/info/ordtype");
  3211. model.makeNode("/root/tmp/msgtrsm/info/kindflag");
  3212. model.makeNode("/root/tmp/msgtrsm/info/grupcalcscorcd");
  3213. model.makeNode("/root/tmp/msgtrsm/info/snglcalcscorcd");
  3214. model.makeNode("/root/tmp/msgtrsm/info/ordqty");
  3215. model.makeNode("/root/tmp/msgtrsm/info/ordtims");
  3216. model.makeNode("/root/tmp/msgtrsm/info/orddays");
  3217. model.makeNode("/root/tmp/msgtrsm/info/prcpdd");
  3218. model.makeNode("/root/tmp/msgtrsm/info/prcpno");
  3219. model.makeNode("/root/tmp/msgtrsm/info/prcppayflag");
  3220. model.makeNode("/root/tmp/msgtrsm/info/rgstrid");
  3221. model.makeNode("/root/tmp/msgtrsm/info/rgstdd");
  3222. model.makeNode("/root/tmp/msgtrsm/info/rgsttm");
  3223. model.makeNode("/root/tmp/msgtrsm/info/sendphone");
  3224. model.makeNode("/root/tmp/msgtrsm/info/anybodyyn");
  3225. model.makeNode("/root/tmp/msgtrsm/info/sendflag");
  3226. model.makeNode("/root/tmp/msgtrsm/info/senddate");
  3227. model.makeNode("/root/tmp/msgtrsm/info/sendid");
  3228. model.makeNode("/root/tmp/msgtrsm/info/deliveid");
  3229. model.makeNode("/root/tmp/msgtrsm/info/recvdate");
  3230. model.makeNode("/root/tmp/msgtrsm/info/recvid");
  3231. model.makeNode("/root/tmp/msgtrsm/info/recvcnfmyn");
  3232. model.makeNode("/root/tmp/msgtrsm/info/recvcnfmid");
  3233. model.makeNode("/root/tmp/msgtrsm/info/sendmsg");
  3234. model.makeNode("/root/tmp/msgtrsm/info/recvmsg");
  3235. model.makeNode("/root/tmp/msgtrsm/info/fstrgstrid");
  3236. model.makeNode("/root/tmp/msgtrsm/info/fstrgstdt");
  3237. model.makeNode("/root/tmp/msgtrsm/info/lastupdtrid");
  3238. model.makeNode("/root/tmp/msgtrsm/info/lastupdtdt");
  3239. // 값셋팅
  3240. // 처방이므로 처방row선택여부 확인
  3241. if(grd_ordlist.row <= 0){
  3242. return;
  3243. }
  3244. // 세션값 받기
  3245. var sUserInfosS = getUserInfos();
  3246. sUserInfosS = sUserInfosS + "|";
  3247. var UserInfosS_Array = sUserInfosS.split("|");
  3248. var userid = UserInfosS_Array[0]; //사용자번호
  3249. var usernm = UserInfosS_Array[1]; //사용자이름
  3250. var posinstcd = UserInfosS_Array[6]; //근무지기관코드 2009.04.15
  3251. var posinstnm = UserInfosS_Array[7]; //근무지기관명 2009.04.15
  3252. var posdeptcd = UserInfosS_Array[4]; //소속부서코드
  3253. var posdeptnm = UserInfosS_Array[5]; //소속부서명
  3254. if (userid == null || userid == "" || userid == " " || userid == "-") userid = "pam";
  3255. model.setValue("/root/tmp/msgtrsm/info/instcd", ""); // chk
  3256. model.setValue("/root/tmp/msgtrsm/info/msgwrtedd", getCurrentDate()); // chk
  3257. model.setValue("/root/tmp/msgtrsm/info/msgwrteno", ""); // chk
  3258. model.setValue("/root/tmp/msgtrsm/info/msgwrtehistno", ""); // chk
  3259. model.setValue("/root/tmp/msgtrsm/info/histstat", "Y"); // chk
  3260. model.setValue("/root/tmp/msgtrsm/info/pid", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/pid")); // chk
  3261. var indd = model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/indd");
  3262. //indd = indd.substr(0,4) + indd.substr(5,2) + indd.substr(8,2);
  3263. model.setValue("/root/tmp/msgtrsm/info/orddd", indd); // chk
  3264. model.setValue("/root/tmp/msgtrsm/info/cretno", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/cretno")); // chk
  3265. model.setValue("/root/tmp/msgtrsm/info/mskind", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/mskind")); // chk
  3266. model.setValue("/root/tmp/msgtrsm/info/orddeptcd", model.getValue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/orddeptcd")); // chk
  3267. //var drid = model.getValue("/root/main/item1/otpt/orddrid")
  3268. //var drnm = model.getValue("/root/init/orddrid/orddridlist[cd = '" + drid + "']/nm");
  3269. model.setValue("/root/tmp/msgtrsm/info/orddrid", opener.model.getValue("/root/main/item1/iteminfo/medispclid")); // chk, TABLE에 적용안함.(값만확인)
  3270. model.setValue("/root/tmp/msgtrsm/info/orddrnm", opener.model.getValue("/root/main/item1/iteminfo/medispclnm")); // chk, TABLE에 적용안함.(값만확인)
  3271. model.setValue("/root/tmp/msgtrsm/info/ordtype", "I"); // 입원기본 'I', chk
  3272. model.setValue("/root/tmp/msgtrsm/info/kindflag", "O"); // 처방기준 'O', chk
  3273. model.setValue("/root/tmp/msgtrsm/info/grupcalcscorcd", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/grupcalcscorcd")); //chk
  3274. model.setValue("/root/tmp/msgtrsm/info/snglcalcscorcd", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/snglcalcscorcd")); //chk
  3275. model.setValue("/root/tmp/msgtrsm/info/ordqty", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/ordqty")); // 화면에서입원재원상세넣어줌. chk(입원만)
  3276. model.setValue("/root/tmp/msgtrsm/info/ordtims", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/ordtims")); // 화면에서입원재원상세넣어줌. chk(입원만)
  3277. model.setValue("/root/tmp/msgtrsm/info/orddays", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/orddays")); // 화면에서입원재원상세넣어줌. chk(입원만)
  3278. model.setValue("/root/tmp/msgtrsm/info/prcpdd", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/prcpdd")); // 화면에서입원재원상세넣어줌. chk(입원만)
  3279. model.setValue("/root/tmp/msgtrsm/info/prcpno", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/prcpno")); // 화면에서입원재원상세넣어줌. chk(입원만)
  3280. model.setValue("/root/tmp/msgtrsm/info/prcppayflag", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/calcpayflag")); // 화면에서입원재원상세넣어줌. chk (입원만)
  3281. model.setValue("/root/tmp/msgtrsm/info/rgstrid", "-"); // 서버단에서 조회하여 가져와야함. chk
  3282. model.setValue("/root/tmp/msgtrsm/info/rgstdd", "-"); // 서버단에서 조회하여 가져와야함. chk
  3283. model.setValue("/root/tmp/msgtrsm/info/rgsttm", "-"); // 서버단에서 조회하여 가져와야함. chk
  3284. model.setValue("/root/tmp/msgtrsm/info/sendphone", ""); // 서버단에서 조회하여 가져와야함. chk
  3285. model.setValue("/root/tmp/msgtrsm/info/anybodyyn", "N"); // 누구나 기본 'N', chk
  3286. model.setValue("/root/tmp/msgtrsm/info/sendflag", "O"); // 진료기본 'O', chk
  3287. model.setValue("/root/tmp/msgtrsm/info/senddate", ""); //쿼리에서 timestamp chk
  3288. model.setValue("/root/tmp/msgtrsm/info/sendid", userid); //chk
  3289. model.setValue("/root/tmp/msgtrsm/info/deliveid", "-"); // 화면에서선택. chk
  3290. model.setValue("/root/tmp/msgtrsm/info/recvdate", ""); // chk
  3291. model.setValue("/root/tmp/msgtrsm/info/recvid", ""); // chk
  3292. model.setValue("/root/tmp/msgtrsm/info/recvcnfmyn", "N"); // 기본 비연속 'N', chk
  3293. model.setValue("/root/tmp/msgtrsm/info/recvcnfmid", userid); //chk
  3294. //var sendmsgvalue1 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/snglcalcscorcd");
  3295. //var sendmsgvalue2 = model.getvalue("/root/main/list2/oscl[" + grd_clodhist.row + "]/hngnm");
  3296. //var sendmsgvalue = sendmsgvalue1 + ', ' + sendmsgvalue2;
  3297. model.setValue("/root/tmp/msgtrsm/info/sendmsg", ""); // 기본 처방코드, 처방명값가지고 시작. chk -> 변경 화면에서 그룹코드 명 조회하여 넣어줌. chk
  3298. model.setValue("/root/tmp/msgtrsm/info/recvmsg", ""); // chk
  3299. model.setValue("/root/tmp/msgtrsm/info/fstrgstrid", ""); // chk
  3300. model.setValue("/root/tmp/msgtrsm/info/fstrgstdt", ""); // chk
  3301. model.setValue("/root/tmp/msgtrsm/info/lastupdtrid", ""); // chk
  3302. model.setValue("/root/tmp/msgtrsm/info/lastupdtdt", ""); // chk
  3303. } else {
  3304. messageBox("기본정보가 ", "I004");
  3305. }
  3306. model.refresh();
  3307. modal("SPPIZ01900_심사환자메세지작성", "", "400", "300", "", "/root/tmp/msgtrsm/info", "/root/main/patinfo");
  3308. model.removenode("/root/tmp/msgtrsm");
  3309. }
  3310. // 환자 전체 메세지 내용 조회하여 하나씩 보기.
  3311. function fJudgPatMsgTrsmRef(){
  3312. model.makeNode("/root/tmp/msgtrsm/info/refyn");
  3313. model.makeNode("/root/tmp/msgtrsm/info/pid");
  3314. model.makeNode("/root/tmp/msgtrsm/info/orddd");
  3315. model.makeNode("/root/tmp/msgtrsm/info/cretno");
  3316. model.makeNode("/root/tmp/msgtrsm/info/mskind");
  3317. model.makeNode("/root/tmp/msgtrsm/info/orddeptcd");
  3318. model.makeNode("/root/tmp/msgtrsm/info/orddrid");
  3319. model.makeNode("/root/tmp/msgtrsm/info/ordtype");
  3320. model.setValue("/root/tmp/msgtrsm/info/refyn","Y");
  3321. model.setValue("/root/tmp/msgtrsm/info/pid", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/pid")); // chk
  3322. var indd = model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/indd");
  3323. //indd = indd.substr(0,4) + indd.substr(5,2) + indd.substr(8,2);
  3324. model.setValue("/root/tmp/msgtrsm/info/orddd", indd); // chk
  3325. model.setValue("/root/tmp/msgtrsm/info/cretno", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/cretno")); // chk
  3326. model.setValue("/root/tmp/msgtrsm/info/mskind", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/mskind")); // chk
  3327. model.setValue("/root/tmp/msgtrsm/info/orddeptcd", model.getvalue("/root/main/list1/iscl[ " + grd_ordlist.row + " ]/orddeptcd")); // chk
  3328. model.setValue("/root/tmp/msgtrsm/info/orddrid", opener.model.getValue("/root/main/item1/iteminfo/medispclid")); // chk, TABLE에 적용안함.(값만확인)
  3329. model.setValue("/root/tmp/msgtrsm/info/ordtype", "I"); // 외래기본 'O', chk
  3330. modal("SPPIZ01900_심사환자메세지작성", "", "400", "300", "", "/root/tmp/msgtrsm/info", "/root/init/openchk");
  3331. model.removeNode("/root/tmp/msgtrsm");
  3332. }
  3333. // 20091116 JHP 범례 선택에 따른 필터기능
  3334. function fColorFilter(filterchk){
  3335. for (var i = grd_ordlist.fixedRows; i < grd_ordlist.rows; i ++ ) {
  3336. grd_ordlist.rowHidden(i) = false;
  3337. var rowcnt = getNodesetCount("/root/main/list1/iscl");
  3338. // 전체
  3339. if(filterchk == "all"){
  3340. grd_ordlist.rowHidden(i) = false;
  3341. // 선별심사 필터
  3342. }else if(filterchk == "judgadjtresncd"){
  3343. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("judgadjtresncd")) == "-") {
  3344. grd_ordlist.rowHidden(i) = true;
  3345. }
  3346. // 문제처방 필터
  3347. }else if(filterchk == "probordyn"){
  3348. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("probordyn")) != "Y") {
  3349. grd_ordlist.rowHidden(i) = true;
  3350. }
  3351. //수술중처방
  3352. }else if(filterchk == "opprcp"){
  3353. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("opprcpyn")) != "Y") {
  3354. grd_ordlist.rowHidden(i) = true;
  3355. }
  3356. // 시행부서처방
  3357. }else if(filterchk == "execdeptprcpyn"){
  3358. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("execdeptprcpyn")) != "Y") {
  3359. grd_ordlist.rowHidden(i) = true;
  3360. }
  3361. // 선별심사 체크
  3362. }else if(filterchk == "spcljudgyn"){
  3363. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("spcljudgyn")) == "-") {
  3364. grd_ordlist.rowHidden(i) = true;
  3365. }
  3366. // non-cp처방
  3367. }else if(filterchk == "cpyn"){
  3368. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("cpflag")) != "Y") {
  3369. grd_ordlist.rowHidden(i) = true;
  3370. }
  3371. }
  3372. // 색깔 재처리.. 20091116 JHP 필터기능에서 따옴.
  3373. // 색깔처리 통합 - 20081105 박창원
  3374. var judgadjtresncd = model.getValue("/root/main/list1/iscl["+ i +"]/judgadjtresncd"); // 심사변경
  3375. var probordyn = model.getValue("/root/main/list1/iscl["+ i +"]/probordyn"); //문제처방
  3376. var opprcp = model.getValue("/root/main/list1/iscl["+ i +"]/opprcpyn"); //수술중처방
  3377. var execdeptprcpyn = model.getValue("/root/main/list1/iscl["+ i +"]/execdeptprcpyn"); //시행부서처방
  3378. var spcljudgyn = model.getValue("/root/main/list1/iscl["+ i +"]/spcljudgyn"); //선별심사 체크
  3379. var cpyn = model.getValue("/root/send/cpyn"); //non-CP처방
  3380. var prcpkind = "0"; // 어떤 색깔을 설정할것인지...
  3381. // 색갈체크는 역순으로 한다. 20080929 박창원
  3382. if(cpyn == "Y") { // CP여부판단
  3383. var noncp = model.getValue("/root/main/list1/iscl["+ i +"]/cpflag");
  3384. if (noncp == "N") {
  3385. prcpkind = "1";
  3386. }
  3387. }
  3388. if (spcljudgyn == "Y") { // 선별심사여부판단
  3389. prcpkind = "2";
  3390. }
  3391. if(execdeptprcpyn == "Y"){ // 시행부서처방여부판단
  3392. prcpkind = "3";
  3393. }
  3394. if(opprcp == "Y"){ // 수술중처방여부판단
  3395. prcpkind = "4";
  3396. }
  3397. if(probordyn == "Y" ){ // 문제처방여부판단
  3398. prcpkind = "5";
  3399. }
  3400. if(judgadjtresncd == "A" || judgadjtresncd == "B" || judgadjtresncd == "C" || judgadjtresncd == "D" || judgadjtresncd == "E" || judgadjtresncd == "F" || judgadjtresncd == "G" ){ // 심사변경여부 판단
  3401. prcpkind = "6";
  3402. }
  3403. // 색깔처리
  3404. if (prcpkind == "1") {
  3405. grd_ordlist.rowStyle(i,"data","background-color") = "#c8e67b";
  3406. } else if (prcpkind == "2") {
  3407. grd_ordlist.rowStyle(i,"data","background-color") = "#ffe79d";
  3408. } else if (prcpkind == "3") {
  3409. grd_ordlist.rowStyle(i,"data","background-color") = "#b9e5fb";
  3410. } else if (prcpkind == "4") {
  3411. grd_ordlist.rowStyle(i,"data","background-color") = "#7BE6B7";
  3412. } else if (prcpkind == "5") {
  3413. grd_ordlist.rowStyle(i,"data","background-color") = "#fcd2c1";
  3414. } else if (prcpkind == "6") {
  3415. grd_ordlist.rowStyle(i,"data","background-color") = "#43c8f5";
  3416. }
  3417. }
  3418. model.refreshpart("/root/main/list1/iscl");
  3419. }
  3420. function fOrdMakeAL100(){
  3421. // No-Charge 처리(본인부담 0원처리) 여부 적용/해제 ( fOrdChangeNoCharge1 ) 와 동일하게 구현하는데 exip의 calcstat를 'P'로 update, 창원샘 요청, JHP, 20090414
  3422. var instcd = model.getValue("/root/send/instcd");
  3423. var chkjudgresn = model.getValue("/root/send/judgresn");
  3424. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  3425. var cRrow = grd_ordlist.selectedRow(i);
  3426. //처방이 있는경우
  3427. var chk_cd = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("snglcalcscorcd"));
  3428. //계산내역인 경우만
  3429. var ordcalcflag = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("ordcalcflag"));
  3430. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  3431. var cretyn = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("cretyn"));
  3432. var dschdrugflag = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("dschdrugflag")); //퇴원약 구분
  3433. var cvrtbfcretno = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("cvrtbfcretno")); //외래덤프구분
  3434. var prcpclscd = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("prcpclscd")); //.경구약외용약
  3435. if (cretyn == "Y") {
  3436. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  3437. //선택된 row의 체크값을 'N' 로 해주는 함수
  3438. fCheckNSelectedRows();
  3439. return;
  3440. }
  3441. // if (dschdrugflag != "Y") {
  3442. // messageBox("퇴원약이 아니면 변경 할 수 없습니다.", "E");
  3443. // //선택된 row의 체크값을 'N' 로 해주는 함수
  3444. // fCheckNSelectedRows();
  3445. // return;
  3446. // }
  3447. //경구약 외용약이어야한다.
  3448. if (!(prcpclscd == "A2" || prcpclscd == "A4")) {
  3449. messageBox("경구약,외용약이 아니면 변경 할 수 없습니다.", "E");
  3450. //선택된 row의 체크값을 'N' 로 해주는 함수
  3451. fCheckNSelectedRows();
  3452. return;
  3453. }
  3454. //덤프건이여야하고
  3455. if (cvrtbfcretno == "0") {
  3456. messageBox("덤프 처방이 아니면 변경 할 수 없습니다.", "E");
  3457. //선택된 row의 체크값을 'N' 로 해주는 함수
  3458. fCheckNSelectedRows();
  3459. return;
  3460. }
  3461. if(ordcalcflag == "C"){
  3462. if(chk_cd != ""){
  3463. var prcpkindcd = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("prcpkindcd"));
  3464. var oldprcpkindcd = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("oldprcpkindcd"));
  3465. if(oldprcpkindcd != "60" && prcpkindcd == oldprcpkindcd) {
  3466. grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("payflagyn")) = "";
  3467. grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("prcpkindcd")) = "60";
  3468. } else if (prcpkindcd == "60" && prcpkindcd == oldprcpkindcd) {
  3469. grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("payflagyn")) = "";
  3470. grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("prcpkindcd")) = "20";
  3471. }
  3472. var judgresn = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("judgadjtresncd"));
  3473. var editflag = grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("editflag"));
  3474. if(chkjudgresn && chkjudgresn != "-"){
  3475. grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("judgadjtresncd")) = chkjudgresn;
  3476. }else{
  3477. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  3478. {
  3479. fSetAdjtResnCd();
  3480. }
  3481. }
  3482. var row_stat = grd_ordlist.rowStatus(cRrow);
  3483. if(row_stat != 1){
  3484. if(row_stat != 3){
  3485. if(row_stat != 4){
  3486. grd_ordlist.rowStatus(cRrow) = 2;
  3487. }
  3488. }
  3489. }
  3490. }
  3491. //계산내역을 갖고 온다.
  3492. //처방내역이면 계산을 돌리지 않는다.
  3493. if(grd_ordlist.valueMatrix(cRrow, grd_ordlist.colRef("ordcalcflag")) == "O"){
  3494. grd_ordlist.rowstatus(cRrow) = 0; // 2 : update
  3495. return;
  3496. }
  3497. }
  3498. }
  3499. }
  3500. //일괄산정의미변경
  3501. function fChngEstmmncd(){
  3502. var chkp = 0;
  3503. var chkb = 0;
  3504. var insukindcd = model.getValue("/root/send/insukindcd");
  3505. model.resetInstanceNode("/root/hidden/sppiz00800/rslt");
  3506. model.resetInstanceNode("/root/hidden/sppiz00800/cond");
  3507. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  3508. var row = grd_ordlist.selectedRow(i);
  3509. var matractflag = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("matractflag"));
  3510. var ediitem1 = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("ediitem1"));
  3511. var ediitem2 = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("ediitem2"));
  3512. var ediitem = ediitem1 + ediitem2;
  3513. var chk_cd = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("snglcalcscorcd"));
  3514. var estmcls = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmcls"));
  3515. var estmmncd = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmmncd"));
  3516. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  3517. var cretyn = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("cretyn"));
  3518. if (cretyn == "Y") {
  3519. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  3520. //선택된 row의 체크값을 'N' 로 해주는 함수
  3521. grd_ordlist.rowstatus(row) = 0;
  3522. continue;
  3523. }
  3524. if ( matractflag == "2" || matractflag == "3") {
  3525. model.setValue("/root/hidden/sppiz00800/cond/estmmncd","");
  3526. var execdd = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("execdd")).substr(0,8);
  3527. model.setValue("/root/hidden/sppiz00800/cond/todd", execdd);
  3528. model.setValue("/root/hidden/sppiz00800/cond/insukind", insukindcd);
  3529. model.setValue("/root/hidden/sppiz00800/cond/estmcls", estmcls);
  3530. if (chkp==0) { //한번만 콜하자.
  3531. modal("SPPIZ00800" ,"", "10", "10", "SPPIZ00800", "/root/hidden/sppiz00800/cond", "/root/hidden/cond", "", "");
  3532. chkp++;
  3533. }
  3534. var rslt_estmmncd = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmmncd");
  3535. var rslt_estmcd = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcd");
  3536. var rslt_estmcdnm = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcdnm");
  3537. if(rslt_estmmncd&&rslt_estmcd){
  3538. if(chk_cd != ""){
  3539. var judgresn = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("judgadjtresncd"));
  3540. var editflag = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("editflag"));
  3541. var chkjudgresn = model.getValue("/root/send/judgresn");
  3542. if(chkjudgresn && chkjudgresn != "-"){
  3543. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("judgadjtresncd")) = chkjudgresn;
  3544. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("editflag")) = "Y";
  3545. }else{
  3546. if((judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-" ) && chkb == 0)
  3547. {
  3548. fSetAdjtResnCd();
  3549. chkb++;
  3550. // grp_judgresn.visible = true;
  3551. }
  3552. }
  3553. }
  3554. if (grd_ordlist.rowStatus(row) != 1 && grd_ordlist.rowStatus(row) != 3) {
  3555. grd_ordlist.rowStatus(row) = 2;
  3556. }
  3557. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmmncd")) = rslt_estmmncd;
  3558. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmcd")) = rslt_estmcd;
  3559. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmyn")) = "Y";
  3560. grd_ordlist.tooltipText(row,grd_ordlist.colRef("estmmncd")) = "[산정의미코드:" + rslt_estmmncd + "]" + rslt_estmcdnm ;
  3561. // fSetCalc();
  3562. }
  3563. // 보험대분류항이 0101, 0102, 0103, 0201, 0202, 0203, 0204, 0299 인 경우
  3564. } else if (ediitem=="0101" || ediitem=="0102" || ediitem=="0103" || ediitem=="0201"
  3565. || ediitem=="0202" || ediitem=="0203" || ediitem=="0204" || ediitem=="0299" ) {
  3566. model.setValue("/root/hidden/sppiz00800/cond/estmmncd","");
  3567. var execdd = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("execdd")).substr(0,8);
  3568. model.setValue("/root/hidden/sppiz00800/cond/todd", execdd);
  3569. model.setValue("/root/hidden/sppiz00800/cond/insukind", insukindcd);
  3570. model.setValue("/root/hidden/sppiz00800/cond/estmcls", estmcls);
  3571. if (chkp==0) { //한번만 콜하자.
  3572. modal("SPPIZ00800" ,"", "10", "10", "SPPIZ00800", "/root/hidden/sppiz00800/cond", "/root/hidden/cond", "", "");
  3573. chkp++;
  3574. }
  3575. var rslt_estmmncd = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmmncd");
  3576. var rslt_estmcd = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcd");
  3577. var rslt_estmcdnm = model.getValue("/root/hidden/sppiz00800/rslt/clcd/estmcdnm");
  3578. if(rslt_estmmncd&&rslt_estmcd){
  3579. if(chk_cd != ""){
  3580. var judgresn = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("judgadjtresncd"));
  3581. var editflag = grd_ordlist.valueMatrix(row , grd_ordlist.colRef("editflag"));
  3582. var chkjudgresn = model.getValue("/root/send/judgresn");
  3583. if(chkjudgresn && chkjudgresn != "-"){
  3584. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("judgadjtresncd")) = chkjudgresn;
  3585. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("editflag")) = "Y";
  3586. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmyn")) = "Y";
  3587. }else{
  3588. if((judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-" )&& chkb == 0)
  3589. {
  3590. fSetAdjtResnCd();
  3591. chkb++;
  3592. }
  3593. }
  3594. }
  3595. if (grd_ordlist.rowStatus(row) != 1 && grd_ordlist.rowStatus(row) != 3) {
  3596. grd_ordlist.rowStatus(row) = 2;
  3597. }
  3598. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmmncd")) = rslt_estmmncd;
  3599. grd_ordlist.valueMatrix(row , grd_ordlist.colRef("estmcd")) = rslt_estmcd;
  3600. grd_ordlist.tooltipText(row,grd_ordlist.colRef("estmmncd")) = "[산정의미코드:" + rslt_estmmncd + "]" + rslt_estmcdnm ;
  3601. }
  3602. }
  3603. }
  3604. }
  3605. ]]>
  3606. </script>
  3607. </xhtml:head>
  3608. <xhtml:body pagewidth="1211" pageheight="750" guideline="1,1195;2,730;1,0;2,702;2,708;2,705;2,704;" style="margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
  3609. <group id="group3" scroll="auto" style="left:0px; top:0px; width:1195px; height:695px; ">
  3610. <datagrid id="grd_ordlist" nodeset="/root/main/list1/iscl" class="datagrid2" caption="선&#xA;별^문&#xA;제^선&#xA;택^S^IO^항^목^진료일자^execdd^시행일시^시&#xA;행^항목^G^그룹코드^수가코드^EDI코드^산정&#xA;분류^산정&#xA;의미^산정&#xA;코드^@^한글명^급^재료&#xA;행위^퇴^단가^1회량^횟수^1일량&#xA;(일투)^일수&#xA;총투^금액^약제상한&#xA;차액^상한가^선&#xA;택^선택의사^종별가산&#xA;단가^선택가산&#xA;단가^가산단가^총진료비^본인부담금^종별가산&#xA;SUM^선택가산&#xA;SUM^가산&#xA;SUM^MIX^용법/검체^처방&#xA;상태^처방일시^처방번호^처방과코드^처방과^입력자^실시자^최종심사자^최종심사일시^처방명^수정&#xA;사유^치식^확인&#xA;코드^CP&#xA;여부^PRN^포터블^기왕증&#xA;(진료)^마취시간^임상소견^수정사유명칭^edicdflag^ediunitcost^적용일자^pid^indd^cretno^calcseqno^calcscorseqno^mskind^oldmskind^그룹&#xA;항목^처방계산구분^그룹싱글여부^처방일시^처방순번^실시순번^수가점수^가산금액^가산점수^퇴장방지&#xA;금액^퇴장방지&#xA;여부^처방&#xA;수량^처방&#xA;횟수^처방&#xA;일수^처방구분&#xA;(I,O,E)^급여총액^급여&#xA;보험자부담금^급여&#xA;본인부담금^급여&#xA;본인부담율^점당단가^전액본인^비급여금액^NC^저함량배수&#xA;사유코드^용법검체&#xA;코드^예약일시^그룹순번^특진^보험유형^보조유형^급비^처방분류1^처방분류2^처방분류3^수정여부^aftercretno^payflagyn^estmyn^spcordyn^nochargeyn^ordinptflag^ordchangeyn^probordchangeyn^chkflag^bfjudgadjtresncd^execchangeyn^opprcpyn^execdeptprcpyn^specaddflag^cretyn^ordaddinptflag^opansflagcd^nigtprcpflag^erprcpflag^opansyn^angioyn^gsorddryn^angioflagcd^gsorddr^hosinhosoutflag^sortexecdd^execprcpuniqno^proccalctype^부서^의사^면허번호^DRG/완화&#xA;인정여부^DRG인정YN^약구분^퇴원약구분^덤프처방구분^변경전 퇴원약구분^초음파_부위^초음파_관련행위^초음파_사유^drugmthyn" colsep="^" colwidth="20, 20, 20, 25, 20, 25, 25, 68, 115, 105, 25, 37, 22, 84, 80, 65, 35, 32, 32, 23, 197, 24, 32, 19, 50, 39, 30, 45, 30, 66, 66, 66, 26, 68, 66, 66, 75, 71, 71, 72, 72, 71, 30, 82, 60, 115, 83, 100, 62, 62, 110, 62, 115, 115, 40, 100, 65, 32, 31, 47, 47, 60, 170, 100, 100, 100, 100, 100, 49, 73, 89, 46, 49, 100, 100, 80, 80, 80, 80, 80, 82, 86, 70, 68, 68, 60, 58, 60, 68, 90, 90, 90, 80, 72, 90, 88, 30, 73, 61, 115, 30, 27, 60, 60, 60, 60, 60, 60, 60, 60, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 72, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" ellipsis="true" explorerbar="sortmove" extendlastcol="scroll" frozencols="15" mergecellsfixedrows="byrow" rowheader="update" rowheight="35" rowsep="|" tooltip="true" style="left:0px; top:110px; width:1190px; height:580px; ">
  3611. <col ref="spcljudgyn" type="input" visibility="hidden" style="background-color:#c0c0c0; "/>
  3612. <col ref="probordyn" type="input" visibility="hidden" style="background-color:#c0c0c0; "/>
  3613. <col ref="unitspecyn" type="input" visibility="hidden" style="background-color:#c0c0c0; "/>
  3614. <col ref="seq" visibility="hidden"/>
  3615. <col ref="ordtype"/>
  3616. <col ref="ediitem1"/>
  3617. <col ref="ediitem2"/>
  3618. <col ref="orddd" format="yyyy/mm/dd"/>
  3619. <col ref="execdd" visibility="hidden"/>
  3620. <col ref="newexecdd" type="output" format="yyyy/mm/dd hh:nn" showmask="true"/>
  3621. <col ref="execstat" style="text-align:center; "/>
  3622. <col ref="snglcalcscorcls" visibility="hidden"/>
  3623. <col ref="grupflag"/>
  3624. <col imemode="disabled" ref="grupcalcscorcd" type="output" _chartype="upper"/>
  3625. <col imemode="disabled" ref="snglcalcscorcd" type="output" _chartype="upper"/>
  3626. <col imemode="disabled" ref="edicd" type="output" _chartype="upper"/>
  3627. <col ref="estmcls" visibility="hidden" style="background-color:#c0c0c0; "/>
  3628. <col imemode="disabled" ref="estmmncd" maxlength="5"/>
  3629. <col ref="estmcd"/>
  3630. <col ref="pay100"/>
  3631. <col ref="hngnm"/>
  3632. <col disabled="true" ref="calcpayflag" type="combo" style="text-align:center; ">
  3633. <choices>
  3634. <item>
  3635. <![CDATA[ordcalcflag]]>
  3636. <label>급</label>
  3637. <value>0</value>
  3638. </item>
  3639. <item>
  3640. <label>100</label>
  3641. <value>1</value>
  3642. </item>
  3643. <item>
  3644. <label>비</label>
  3645. <value>2</value>
  3646. </item>
  3647. </choices>
  3648. </col>
  3649. <col disabled="true" ref="matractflag" type="combo">
  3650. <choices>
  3651. <item>
  3652. <label>원외</label>
  3653. <value>0</value>
  3654. </item>
  3655. <item>
  3656. <label>재료</label>
  3657. <value>1</value>
  3658. </item>
  3659. <item>
  3660. <label>가O</label>
  3661. <value>2</value>
  3662. </item>
  3663. <item>
  3664. <label>가X</label>
  3665. <value>3</value>
  3666. </item>
  3667. <item>
  3668. <label>약제</label>
  3669. <value>4</value>
  3670. </item>
  3671. <item>
  3672. <label>위탁</label>
  3673. <value>5</value>
  3674. </item>
  3675. <item>
  3676. <label>약제</label>
  3677. <value>6</value>
  3678. </item>
  3679. </choices>
  3680. </col>
  3681. <col ref="dschdrugflag" style="text-align:center; "/>
  3682. <col ref="appunitcost" format="#,###" style="left:1189px; top:32px; width:50px; height:23px; text-align:right; "/>
  3683. <col imemode="disabled" ref="calcqty" type="input" format="####.00" _chartype="upper" style="left:1220px; top:32px; width:39px; height:23px; text-align:right; "/>
  3684. <col imemode="disabled" ref="calctims" type="input" format="###" _chartype="upper" style="text-align:right; "/>
  3685. <col ref="daydrugqty" format="#,###.00" style="text-align:right; "/>
  3686. <col imemode="disabled" ref="calcdays" type="input" format="###" _chartype="upper" style="text-align:right; "/>
  3687. <col ref="calcamt" format="#,###" style="text-align:right; "/>
  3688. <col ref="limitdiffamt" format="#,###" style="text-align:right; "/>
  3689. <col ref="druglimitamt" format="#,###" style="text-align:right; "/>
  3690. <col ref="unitspecyn" style="text-align:center; "/>
  3691. <col ref="specdrid" style="text-align:center; "/>
  3692. <col ref="unithospaddamt" format="#,###" style="text-align:right; "/>
  3693. <col ref="unitspecamt" format="#,###" style="text-align:right; "/>
  3694. <col ref="unitaddamt" format="#,###" style="text-align:right; "/>
  3695. <col ref="totordamt" format="#,###" style="text-align:right; "/>
  3696. <col ref="ownbamt" format="#,###" style="text-align:right; "/>
  3697. <col ref="hospaddamt" format="#,###" style="text-align:right; "/>
  3698. <col ref="specamt" format="#,###" style="text-align:right; "/>
  3699. <col ref="estmamt" format="#,###" style="text-align:right; "/>
  3700. <col ref="prcpmixno" style="text-align:center; "/>
  3701. <col ref="drugmthdspccd" style="text-align:left; "/>
  3702. <col ref="execprcpstatcd" style="text-align:left; "/>
  3703. <col ref="rgstdt" format="yyyy/mm/dd hh:nn:ss" showmask="true"/>
  3704. <col ref="prcpno"/>
  3705. <col ref="orddeptcd" visibility="hidden"/>
  3706. <col ref="orddeptnm"/>
  3707. <col ref="fstrgstrid"/>
  3708. <col ref="execrid"/>
  3709. <col ref="lastupdtrid"/>
  3710. <col ref="lastupdtdt" format="yyyy/mm/dd hh:nn:ss"/>
  3711. <col ref="ordnm"/>
  3712. <col ref="judgadjtresncd"/>
  3713. <col ref="tootfact"/>
  3714. <col ref="cnfmcd"/>
  3715. <col ref="cpflag"/>
  3716. <col ref="prnprcpflag"/>
  3717. <col ref="portprcpflag"/>
  3718. <col ref="anamneflag"/>
  3719. <col ref="ansttm"/>
  3720. <col ref="clinccmtcnts"/>
  3721. <col ref="judgadjtresncdnm" visibility="hidden"/>
  3722. <col ref="edicdflag" visibility="hidden"/>
  3723. <col ref="ediunitcost" visibility="hidden"/>
  3724. <col ref="updtdd" visibility="hidden"/>
  3725. <col ref="pid" visibility="hidden"/>
  3726. <col ref="indd" visibility="hidden"/>
  3727. <col ref="cretno" visibility="hidden"/>
  3728. <col ref="calcseqno" visibility="hidden"/>
  3729. <col ref="calcscorseqno" visibility="hidden"/>
  3730. <col ref="mskind" visibility="hidden"/>
  3731. <col ref="oldmskind" visibility="hidden"/>
  3732. <col ref="grupcalcscorcls" visibility="hidden"/>
  3733. <col ref="ordcalcflag" visibility="hidden" style="background-color:#c0c0c0; "/>
  3734. <col ref="grupsnglfag" visibility="hidden" style="background-color:#c0c0c0; "/>
  3735. <col ref="prcpdd" visibility="hidden" style="background-color:#c0c0c0; "/>
  3736. <col ref="prcphistno" visibility="hidden" style="background-color:#c0c0c0; "/>
  3737. <col ref="execprcpno" visibility="hidden" style="background-color:#c0c0c0; "/>
  3738. <col ref="exectm" visibility="hidden" style="background-color:#c0c0c0; "/>
  3739. <!--여기부터 컬럼 추가 -->
  3740. <col ref="calcscorpnt" style="text-align:right; background-color:#c0c0c0; "/>
  3741. <col ref="estmpnt" style="text-align:right; background-color:#c0c0c0; "/>
  3742. <col ref="exitprvntdrugamt" style="text-align:right; background-color:#c0c0c0; "/>
  3743. <col ref="exitprvntdrugyn" style="text-align:right; background-color:#c0c0c0; "/>
  3744. <col ref="ordqty" style="text-align:right; background-color:#c0c0c0; "/>
  3745. <col ref="ordtims" style="text-align:right; background-color:#c0c0c0; "/>
  3746. <col ref="orddays" style="text-align:right; background-color:#c0c0c0; "/>
  3747. <col ref="ordtype" visibility="hidden" style="text-align:right; background-color:#c0c0c0; "/>
  3748. <col ref="payamt" style="text-align:right; background-color:#c0c0c0; "/>
  3749. <col ref="payinsubamt" style="text-align:right; background-color:#c0c0c0; "/>
  3750. <col ref="payownbamt" style="text-align:right; background-color:#c0c0c0; "/>
  3751. <col ref="payownbrate" style="text-align:right; background-color:#c0c0c0; "/>
  3752. <col ref="pntunitcost" style="text-align:right; background-color:#c0c0c0; "/>
  3753. <col ref="allownbamt" style="text-align:right; background-color:#c0c0c0; "/>
  3754. <col ref="nopyamt" style="text-align:right; background-color:#c0c0c0; "/>
  3755. <col ref="freeflag" style="text-align:center; "/>
  3756. <col ref="lowdrugresncd" style="text-align:center; "/>
  3757. <col ref="drugmthcd" style="text-align:center; "/>
  3758. <col ref="rsrvdd" format="yyyy/mm/dd hh:nn:ss"/>
  3759. <col ref="grupseqno" visibility="hidden"/>
  3760. <col ref="specordyn" visibility="hidden"/>
  3761. <col ref="insukind" visibility="hidden"/>
  3762. <col ref="suppkind" visibility="hidden"/>
  3763. <col ref="pynpy" style="text-align:center; "/>
  3764. <col ref="earncls1" style="text-align:center; "/>
  3765. <col ref="earncls2" style="text-align:center; "/>
  3766. <col ref="earncls3" style="text-align:center; "/>
  3767. <col ref="editflag" style="text-align:center; "/>
  3768. <col ref="aftercretno" style="text-align:center; "/>
  3769. <col ref="payflagyn" visibility="hidden"/>
  3770. <col ref="estmyn" visibility="hidden"/>
  3771. <col ref="spcordyn" visibility="hidden"/>
  3772. <col ref="nochargeyn" visibility="hidden"/>
  3773. <col ref="ordinptflag" visibility="hidden"/>
  3774. <col ref="ordchangeyn" visibility="hidden"/>
  3775. <col ref="probordchangeyn" visibility="hidden"/>
  3776. <col ref="chkflag" visibility="hidden"/>
  3777. <col ref="bfjudgadjtresncd" visibility="hidden"/>
  3778. <col ref="execchangeyn" visibility="hidden"/>
  3779. <col ref="opprcpyn" visibility="hidden"/>
  3780. <col ref="execdeptprcpyn" visibility="hidden"/>
  3781. <col ref="specaddflag" visibility="hidden"/>
  3782. <col ref="cretyn" visibility="hidden"/>
  3783. <col ref="ordaddinptflag" visibility="hidden"/>
  3784. <col ref="opansflagcd" visibility="hidden"/>
  3785. <col ref="nigtprcpflag" visibility="hidden"/>
  3786. <col ref="erprcpflag" visibility="hidden"/>
  3787. <col ref="opansyn" visibility="hidden"/>
  3788. <col ref="angioyn" visibility="hidden"/>
  3789. <col ref="gsorddryn" visibility="hidden"/>
  3790. <col ref="angioflagcd" visibility="hidden"/>
  3791. <!-- 20090924 JHP 의사처방최초등록, 외과가산변경때문에 추가함. -->
  3792. <col ref="gsorddr" visibility="hidden"/>
  3793. <col ref="hosinhosoutflag" visibility="hidden"/>
  3794. <col ref="sortexecdd" visibility="hidden"/>
  3795. <!-- 기왕증 처리를 위한 생성번호를 넣어 놓는다. -->
  3796. <col ref="execprcpuniqno" visibility="hidden"/>
  3797. <col ref="proccalctype" visibility="hidden"/>
  3798. <col ref="earndeptnm" type="output"/>
  3799. <col ref="earndrid" visibility="visible"/>
  3800. <col ref="licnsno"/>
  3801. <col ref="drgacptflag" type="combo">
  3802. <choices>
  3803. <itemset nodeset="/root/init/P0506list/P0506">
  3804. <label ref="cdnm"/>
  3805. <value ref="cdid"/>
  3806. </itemset>
  3807. </choices>
  3808. </col>
  3809. <col ref="drgacptyn" visibility="hidden"/>
  3810. <col ref="prcpclscd" visibility="hidden"/>
  3811. <col ref="prcpkindcd" visibility="hidden"/>
  3812. <col ref="cvrtbfcretno" visibility="hidden"/>
  3813. <col ref="oldprcpkindcd" visibility="hidden"/>
  3814. <col ref="rehbprcpcurepartcd" type="combo" showvalue="true">
  3815. <choices>
  3816. <itemset nodeset="/root/init/drugspd/M0047M0046">
  3817. <label ref="cdnm"/>
  3818. <value ref="cdid"/>
  3819. </itemset>
  3820. </choices>
  3821. </col>
  3822. <col ref="drugmthdspccdnm"/>
  3823. <col ref="exptmthdfact"/>
  3824. <col ref="drugmthyn" visibility="hidden"/>
  3825. <script type="javascript" ev:event="onmousedown">
  3826. <![CDATA[
  3827. if (event.button == 3) { // 3 : 오른쪽 버튼
  3828. if (grd_ordlist.isCell(event.target) && grd_ordlist.mouseRow >= grd_ordlist.fixedrows) {
  3829. var rowstatus = grd_ordlist.rowstatus(grd_ordlist.mouseRow);
  3830. window.setPopupMenu(true, "/root/hidden/popupmenu/iscl/item", "name", "func", false);
  3831. } else {
  3832. window.setPopupMenu(false);
  3833. }
  3834. }
  3835. ]]>
  3836. </script>
  3837. <script type="javascript" ev:event="DOMFocusOut">
  3838. <![CDATA[
  3839. window.setPopupMenu(false);
  3840. ]]>
  3841. </script>
  3842. <script type="javascript" ev:event="xforms-value-changed">
  3843. <![CDATA[
  3844. var col = grd_ordlist.col;
  3845. var row = grd_ordlist.row;
  3846. var judgresn = model.getValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd");
  3847. var editflag = model.getValue("/root/main/list1/iscl[" + row + "]/editflag");
  3848. var rowstat = grd_ordlist.rowstatus(row);
  3849. //처방내역이면 계산을 돌리지 않는다.
  3850. if(model.getValue("/root/main/list1/iscl["+ row +"]/ordcalcflag") == "O"){
  3851. grd_ordlist.rowstatus(row) = 0; // 2 : update
  3852. return;
  3853. }
  3854. if( col == grd_ordlist.colRef("execdd") || col == grd_ordlist.colRef("calcpayflag") || col == grd_ordlist.colRef("estmmncd") )
  3855. {
  3856. //신규처방인경우 처방일시를 선택하면 시행일시를 자동으로 처방일시로 셋팅해준다.
  3857. if(col == grd_ordlist.colRef("rgstdt")){
  3858. var rgstdt = model.getValue("/root/main/list1/iscl[" + row + "]/rgstdt");
  3859. var orddd = model.getValue("/root/main/list1/iscl[" + row + "]/orddd");
  3860. var execdd = model.getValue("/root/main/list1/iscl[" + row + "]/execdd");
  3861. if (rgstdt !="") {
  3862. model.setValue("/root/main/list1/iscl[" + row + "]/orddd", rgstdt.substring(0,8));
  3863. }
  3864. if(!execdd){
  3865. model.setValue("/root/main/list1/iscl[" + row + "]/execdd", rgstdt);
  3866. }
  3867. }
  3868. var chkjudgresn = model.getValue("/root/send/judgresn");
  3869. if(chkjudgresn && chkjudgresn != "-"){
  3870. if(!judgresn){
  3871. model.setValue("/root/main/list1/iscl[" + row + "]/judgadjtresncd", chkjudgresn);
  3872. model.setValue("/root/main/list1/iscl[" + row + "]/editflag", "Y");
  3873. }
  3874. }else{
  3875. if(judgresn == "-" || judgresn == "" || editflag == "N" || chkjudgresn == "-")
  3876. {
  3877. fSetAdjtResnCd();
  3878. // grp_judgresn.visible = true;
  3879. }
  3880. }
  3881. }
  3882. if (col == grd_ordlist.colRef("drgacptflag") ) {
  3883. model.setValue("/root/main/list1/iscl[" + row + "]/drgacptyn", "Y");
  3884. }
  3885. ]]>
  3886. </script>
  3887. <script type="javascript" ev:event="ondblclick">
  3888. <![CDATA[
  3889. if(grd_ordlist.isCell(event.target) && grd_ordlist.row >= grd_ordlist.fixedRows) {
  3890. var col = grd_ordlist.col;
  3891. var row = grd_ordlist.row;
  3892. var insukindcd = model.getValue("/root/send/insukindcd");
  3893. var estmcls = model.getValue("/root/main/list1/iscl["+ row +"]/estmcls");
  3894. var estmmncd = model.getValue("/root/main/list1/iscl["+ row +"]/estmmncd");
  3895. /* -- 수술,마취,Angio도 산정 변경 가능하게 해달라는 심사팀 요청 있었음(2012.04.26 L.E.J)
  3896. // 수술,마취,Angio는 산정변경이 되지 않게 한다. 20090603 박창원
  3897. var ordaddinptflag = model.getValue("/root/main/list1/iscl["+ row +"]/ordaddinptflag");
  3898. if (ordaddinptflag == "1" ||ordaddinptflag == "3" ||ordaddinptflag == "4") {
  3899. messageBox("수술,마취,Angio는 산정을 변경할 수 없습니다. 유형변경으로 ","C003");
  3900. grd_ordlist.rowstatus(row) = 0;
  3901. return;
  3902. }
  3903. */
  3904. //처방이 있는경우
  3905. var chk_cd = model.getValue("/root/main/list1/iscl["+ row +"]/snglcalcscorcd");
  3906. //처방내역이면 계산을 돌리지 않는다. - 미시행처방
  3907. if(model.getValue("/root/main/list1/iscl["+ row +"]/ordcalcflag") == "O"){
  3908. messageBox("선택하신 처방은 미시행 처방","E008");
  3909. grd_ordlist.rowstatus(row) = 0;
  3910. return;
  3911. }
  3912. model.resetInstanceNode("/root/hidden/sppiz00800/rslt");
  3913. model.resetInstanceNode("/root/hidden/sppiz00800/cond");
  3914. model.setValue("/root/hidden/sppiz00800/cond/insukind", insukindcd);
  3915. model.setValue("/root/hidden/sppiz00800/cond/estmcls", estmcls);
  3916. if(col == grd_ordlist.colRef("estmmncd")){
  3917. fChngEstmmncd();
  3918. } else if(col == grd_ordlist.colRef("tootfact")){
  3919. model.makevalue("/root/hidden/sppiz00600/cond/pid", model.getValue("/root/send/pid"));
  3920. model.makevalue("/root/hidden/sppiz00600/cond/indd", model.getValue("/root/send/indd"));
  3921. model.makevalue("/root/hidden/sppiz00600/cond/cretno", model.getValue("/root/send/cretno"));
  3922. model.makevalue("/root/hidden/sppiz00600/cond/toot", model.getValue("/root/main/list1/iscl[" + row + "]/tootfact"));
  3923. // 사전- 재원-상병 : AID, 사전- 재원-상병 : AIC
  3924. model.makevalue("/root/hidden/sppiz00600/cond/flag", "AIC");
  3925. fSetToothPop(row);
  3926. model.removenode("/root/hidden/sppiz00600/rslt"); // SPPIZ00600_상병및처방별치식 에서 선택된 결과가 copyNode되는 경로임
  3927. modal("SPPIZ00600" ,"", "10", "10", "SPPIZ00600", "/root/hidden/sppiz00600/cond", "/root/hidden/cond", "", ""); // SPPIZ00600_상병및처방별치식.xrw
  3928. fGetToothPop();
  3929. }
  3930. }
  3931. ]]>
  3932. </script>
  3933. <script type="javascript" ev:event="onaftersort">
  3934. <![CDATA[
  3935. grd_ordlist.gridToInstance();
  3936. fGetSelectedOrderData();
  3937. ]]>
  3938. </script>
  3939. <script type="javascript" ev:event="oncopy">
  3940. <![CDATA[
  3941. //그룹코드, 수가코드, EDI코드, 처방명칭
  3942. // 그리드 내용 복사
  3943. if (grd_ordlist.selectedRows == 1) { // 한줄
  3944. var row = grd_ordlist.row;
  3945. var col = grd_ordlist.col;
  3946. if (col == grd_ordlist.colRef("grupcalcscorcd") || col == grd_ordlist.colRef("snglcalcscorcd") || col == grd_ordlist.colRef("edicd") || col == grd_ordlist.colRef("hngnm") ) {
  3947. // 등록번호
  3948. var clip = grd_ordlist.labelMatrix(row, col);
  3949. window.clipBoardData = clip;
  3950. } else {
  3951. grid_oncopy(); // (tfHelper.js) window.clipBoardData 복사 기능
  3952. }
  3953. }
  3954. else if (grd_ordlist.selectedRows > 1) { // 여러줄
  3955. grid_oncopy(); // (tfHelper.js) window.clipBoardData 복사 기능
  3956. }
  3957. ]]>
  3958. </script>
  3959. <script type="javascript" ev:event="onkeypress">
  3960. <![CDATA[
  3961. if(event.keycode = 12){
  3962. fOrdChangeInsukind();
  3963. }
  3964. ]]>
  3965. </script>
  3966. </datagrid>
  3967. <group id="group8" class="roundrect_example" style="left:154px; top:77px; width:681px; height:25px; ">
  3968. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:680px; height:25px; "/>
  3969. <select1 id="rdo_ordfilflag" ref="/root/hidden/list1/isclsrch/selectedRdoItem" class="radio_search" appearance="full" cols="15" overflow="visible" style="left:5px; top:5px; width:670px; height:14px; ">
  3970. <choices>
  3971. <item>
  3972. <label>전체</label>
  3973. <value>-</value>
  3974. </item>
  3975. <item>
  3976. <label>진찰</label>
  3977. <value>01</value>
  3978. </item>
  3979. <item>
  3980. <label>입원</label>
  3981. <value>02</value>
  3982. </item>
  3983. <item>
  3984. <label>식대</label>
  3985. <value>021011</value>
  3986. </item>
  3987. <item>
  3988. <label>투약</label>
  3989. <value>03</value>
  3990. </item>
  3991. <item>
  3992. <label>주사</label>
  3993. <value>04</value>
  3994. </item>
  3995. <item>
  3996. <label>마취</label>
  3997. <value>05</value>
  3998. </item>
  3999. <item>
  4000. <label>이학</label>
  4001. <value>06</value>
  4002. </item>
  4003. <item>
  4004. <label>정신</label>
  4005. <value>07</value>
  4006. </item>
  4007. <item>
  4008. <label>수술</label>
  4009. <value>08</value>
  4010. </item>
  4011. <item>
  4012. <label>검사</label>
  4013. <value>09</value>
  4014. </item>
  4015. <item>
  4016. <label>방사선</label>
  4017. <value>10</value>
  4018. </item>
  4019. <item>
  4020. <label>특수</label>
  4021. <value>SS</value>
  4022. </item>
  4023. <item>
  4024. <label>원외</label>
  4025. <value>99</value>
  4026. </item>
  4027. <item>
  4028. <label>선별</label>
  4029. <value>AA' or ediitem1='BB</value>
  4030. </item>
  4031. </choices>
  4032. <script type="javascript" ev:event="xforms-select">
  4033. <![CDATA[
  4034. var selectedRdoItem = model.getValue("/root/hidden/list1/isclsrch/selectedRdoItem");
  4035. var ordfilflag = model.getValue("/root/hidden/tmp/isclsrch/ordfilflag");
  4036. if (selectedRdoItem == "" || selectedRdoItem == "-") { // 전체
  4037. model.setValue("/root/hidden/list1/isclcond/grupcalcscorcls","");
  4038. } else {
  4039. //grd_ordlist.attribute("nodeset") = "/root/main/list1/iscl[grupcalcscorcls='"+selectedRdoItem+"']";
  4040. model.setValue("/root/hidden/list1/isclcond/grupcalcscorcls","ediitem1='"+selectedRdoItem+"'");
  4041. }
  4042. if (!fChkUpdateData()) {
  4043. model.setValue("/root/hidden/list1/isclsrch/selectedRdoItem", ordfilflag);
  4044. rdo_ordfilflag.value = ordfilflag;
  4045. messageBox("변경된 데이타 있는 경우 먼저 변경된 데이타를 저장 후 적용하십시요. ", "E100");
  4046. return;
  4047. } else {
  4048. model.setValue("/root/hidden/tmp/isclsrch/ordfilflag", selectedRdoItem);
  4049. }
  4050. fGetSelectedOrderData();
  4051. // 실시일자별로 처방 색깔 구분하여 표시한다
  4052. fSetOrderColorByExecdd();
  4053. // 빨리보기 체크가 되어있으면 그리드 배경색을 호출하지 않는다. - 20081113 박창원
  4054. var quickview = chk_quickview.value;
  4055. if (quickview != "Y") {
  4056. // 인스턴스 필터를 적용하고 fSetColorSpclJudgOrder()를 호출하여 grid 배경색 설정
  4057. fGetSelectedOrderData();
  4058. model.refreshpart("/root/main/list1/iscl");
  4059. model.refreshpart("/root/hidden/list1/isclsrch/selectedRdoItem" );
  4060. }
  4061. ]]>
  4062. </script>
  4063. </select1>
  4064. </group>
  4065. <group id="group2" style="left:0px; top:0px; width:1190px; height:70px; vertical-align:top; ">
  4066. <shape id="roundrect1" class="roundrerct_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:1px; top:5px; width:1188px; height:65px; background-color:#fffbf2; border-color:#ffd799; "/>
  4067. <button id="btn_srch" class="btn1_letter2" style="left:1112px; top:12px; width:56px; height:22px; ">
  4068. <caption>조회</caption>
  4069. <script type="javascript" ev:event="onclick">
  4070. <![CDATA[
  4071. var cond = model.getValue("/root/send/choicdsrch");
  4072. var calcscorcd = model.getValue("/root/send/calcscorcd");
  4073. if (calcscorcd != "") {
  4074. switch(cond){
  4075. case 'calcscorcd':
  4076. // 수가코드 체크
  4077. if(ipt_cd.currentText.length < 2 ){
  4078. messageBox("수가코드는 2자리 이상", "C001");
  4079. return ;
  4080. }
  4081. break;
  4082. case 'edicd':
  4083. // 수가코드 체크
  4084. if(ipt_cd.currentText.length < 1 ){
  4085. messageBox("EDI코드는 2자리 이상", "C001");
  4086. return ;
  4087. }
  4088. break;
  4089. case 'hngnm':
  4090. //환자등록번호 체크
  4091. if(ipt_cd.currentText.length < 2 ){
  4092. messageBox("수가명칭는 2자리 이상", "C001");
  4093. return ;
  4094. }
  4095. break;
  4096. default :
  4097. return ;
  4098. break;
  4099. }
  4100. }
  4101. fGetIsclList();
  4102. btn_save.disabled = false;
  4103. ]]>
  4104. </script>
  4105. </button>
  4106. <line id="line1" class="line_4" style="x1:1097px; y1:12px; x2:1097px; y2:35px; border-color:#ffe4bb; border-left-style:solid; "/>
  4107. <caption id="caption5" class="search_name" style="left:15px; top:39px; width:90px; height:17px; ">조회기간 :</caption>
  4108. <input id="ipt_fromdd" ref="/root/send/fromdd" class="input_search" inputtype="date" style="left:106px; top:38px; width:85px; height:19px; "/>
  4109. <caption id="caption6" style="left:196px; top:41px; width:14px; height:18px; ">~</caption>
  4110. <input id="ipt_todd" ref="/root/send/todd" class="input_search" inputtype="date" style="left:211px; top:38px; width:85px; height:19px; "/>
  4111. <caption id="caption8" class="search_name" style="left:319px; top:39px; width:86px; height:17px; ">코드조회 :</caption>
  4112. <input id="ipt_cd" ref="/root/send/calcscorcd" class="input_search" inputtype="button" _chartype="upper" style="left:545px; top:38px; width:112px; height:19px; ">
  4113. <script type="javascript" ev:event="onbuttonclick">
  4114. <![CDATA[
  4115. // 처방시작일 또는 종료일이 입력된 경우 해당 날짜를 수가조회 기준일자로 설정
  4116. model.setValue("/root/hidden/smpic00200/judgsrch/con2_gsflag", "S");
  4117. model.setValue("/root/hidden/smpic00200/judgsrch/con3_search1", model.getValue("/root/send/choicdsrch" ));
  4118. model.setValue("/root/hidden/smpic00200/judgsrch/con4_search2", model.getValue("/root/send/calcscorcd")); // SMPIC00200_수가조회 용
  4119. model.setValue("/root/hidden/smpic00200/judgsrch/con1_dd", getCurrentDate());
  4120. var insukindcd = model.getValue("/root/send/insukindcd");
  4121. if (insukindcd == "11") {
  4122. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "insu");
  4123. }
  4124. else if (insukindcd == "21" || insukindcd == "22") {
  4125. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "proc");
  4126. }
  4127. else if (insukindcd == "31") {
  4128. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "indus");
  4129. }
  4130. else if (insukindcd == "41") {
  4131. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "autm");
  4132. }
  4133. model.removeNodeset("/root/hidden/smpic00200/rslt/mech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
  4134. model.removeNodeset("/root/hidden/smpic00200/rslt/picmmech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
  4135. modal("SMPIC00200", 1,150, 150, "SMPIC00200", "root/hidden/smpic00200", "/root/temp", "", "");
  4136. model.setValue("/root/send/calcscorcd", model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  4137. model.refresh();
  4138. ]]>
  4139. </script>
  4140. </input>
  4141. <input id="ipt_pid" ref="/root/send/pid" class="input_default" style="left:105px; top:10px; width:87px; height:19px; "/>
  4142. <caption id="caption2" class="search_name" style="left:15px; top:10px; width:90px; height:17px; ">등록번호 :</caption>
  4143. <input id="ipt_indd" ref="/root/send/indd" class="input_default" inputtype="date" style="left:290px; top:10px; width:86px; height:19px; "/>
  4144. <caption id="caption3" class="search_name" style="left:200px; top:10px; width:90px; height:17px; ">입원일자 :</caption>
  4145. <caption id="caption4" class="search_name" style="left:385px; top:10px; width:90px; height:17px; ">주부 :</caption>
  4146. <caption id="caption7" class="search_name" style="left:490px; top:10px; width:90px; height:17px; ">보험유형 :</caption>
  4147. <output id="opt_insukind" ref="/root/send/insukindcd" class="output_fix" style="left:579px; top:10px; width:35px; height:19px; "/>
  4148. <output id="opt_insukindnm" ref="/root/send/insukind" class="output_fix" style="left:616px; top:10px; width:80px; height:19px; "/>
  4149. <caption id="caption1" class="search_name" style="left:700px; top:10px; width:90px; height:17px; ">유형보조 :</caption>
  4150. <output id="opt_suppkind" ref="/root/send/suppkindcd" class="output_fix" style="left:789px; top:10px; width:35px; height:19px; "/>
  4151. <output id="opt_suppkindnm" ref="/root/send/suppkind" class="output_fix" style="left:826px; top:10px; width:80px; height:19px; "/>
  4152. <output id="opt_ownrate" ref="/root/send/ownbrate" class="output_fix" style="left:908px; top:10px; width:25px; height:19px; "/>
  4153. <caption id="caption9" class="tit_3" style="left:934px; top:13px; width:16px; height:13px; ">%</caption>
  4154. <output id="output2" ref="/root/send/mskind" class="output_fix" style="left:449px; top:10px; width:35px; height:19px; "/>
  4155. <select1 id="rdo_mchrgcode" ref="/root/send/choicdsrch" class="radio_search" appearance="full" cellspacing="5" cols="3" overflow="visible" style="left:405px; top:40px; width:140px; height:15px; border-style:none; ">
  4156. <choices>
  4157. <item>
  4158. <label>수가</label>
  4159. <value>calcscorcd</value>
  4160. </item>
  4161. <item>
  4162. <label>EDI</label>
  4163. <value>edicd</value>
  4164. </item>
  4165. <item>
  4166. <label>명칭</label>
  4167. <value>hngnm</value>
  4168. </item>
  4169. </choices>
  4170. </select1>
  4171. <output id="opt_srchflag" ref="/root/send/srchflag" class="output_fix" visibility="hidden" style="left:658px; top:38px; width:35px; height:19px; "/>
  4172. <input id="input1" ref="/root/send/insutodd" class="input_search" editable="false" inputtype="date" style="left:895px; top:37px; width:85px; height:19px; "/>
  4173. <caption id="caption23" style="left:880px; top:40px; width:14px; height:18px; ">~</caption>
  4174. <input id="input2" ref="/root/send/insufromdd" class="input_search" editable="false" inputtype="date" style="left:790px; top:37px; width:85px; height:19px; "/>
  4175. <caption id="caption24" class="search_name" style="left:700px; top:40px; width:90px; height:17px; ">유형기간 :</caption>
  4176. <output id="opt_medispclidyn" ref="/root/send/specordyn" class="output_fix" visibility="hidden" style="left:950px; top:10px; width:22px; height:19px; "/>
  4177. <output id="output1" ref="/root/hidden/list2/cond/brthdd" class="output_fix" visibility="hidden" style="left:975px; top:10px; width:95px; height:19px; "/>
  4178. <select id="checkbox1" ref="/root/send/quickview" class="checkbox_search" overflow="visible" appearance="full" style="left:985px; top:38px; width:70px; height:19px; border-style:none; ">
  4179. <choices>
  4180. <item>
  4181. <label>빨리보기</label>
  4182. <value>Y</value>
  4183. </item>
  4184. </choices>
  4185. <script type="javascript" ev:event="onclick">
  4186. <![CDATA[
  4187. // 빨리보기 체크가 되어있으면 그리드 배경색을 호출하지 않는다. - 20081113 박창원
  4188. var quickview = model.getValue(chk_quickview.attribute("ref")); //chk_quickview.value;
  4189. if (quickview != "Y") {
  4190. // 인스턴스 필터를 적용하고 fSetColorSpclJudgOrder()를 호출하여 grid 배경색 설정
  4191. fGetSelectedOrderData();
  4192. model.refreshpart("/root/main/list1/iscl");
  4193. model.refreshpart("/root/hidden/list1/isclsrch/selectedRdoItem" );
  4194. }
  4195. ]]>
  4196. </script>
  4197. </select>
  4198. </group>
  4199. <caption id="caption10" class="tit_2" style="left:5px; top:84px; width:145px; height:13px; ">입원 세부 계산내역</caption>
  4200. <line id="line2" class="line_1" style="x1:0px; y1:107px; x2:1190px; y2:107px; "/>
  4201. <select1 id="cmb_judgresn" ref="/root/send/judgresn" class="combo_default" appearance="minimal" showvalue="true" style="left:840px; top:81px; width:95px; height:19px; ">
  4202. <choices>
  4203. <itemset nodeset="/root/init/P0153list/P0153">
  4204. <label ref="cdnm"/>
  4205. <value ref="cdid"/>
  4206. </itemset>
  4207. </choices>
  4208. </select1>
  4209. <button id="btn_judgchng" class="btn2_letter4" style="left:1126px; top:85px; width:64px; height:19px; ">
  4210. <caption>심사변경</caption>
  4211. <script type="javascript" ev:event="DOMActivate">
  4212. <![CDATA[
  4213. var send = "/root/send/data1";
  4214. var cond = "/root/hidden/SPPIJ02400_cond";
  4215. model.makevalue("/root/hidden/SPPIJ02400_cond/tabflag", "2");
  4216. model.makevalue("/root/hidden/SPPIJ02400_cond/pid", model.getValue("/root/main/list2/insulist/pid"));
  4217. model.makevalue("/root/hidden/SPPIJ02400_cond/indd", model.getValue("/root/main/list2/insulist/indd"));
  4218. model.makevalue("/root/hidden/SPPIJ02400_cond/cretno", model.getValue("/root/main/list2/insulist/cretno"));
  4219. model.makevalue("/root/hidden/SPPIJ02400_cond/mskind", model.getValue("/root/main/list2/insulist/mskind"));
  4220. model.makevalue("/root/hidden/SPPIJ02400_cond/insukind", model.getValue("/root/main/list2/insulist/insukind"));
  4221. model.makevalue("/root/hidden/SPPIJ02400_cond/suppkind", model.getValue("/root/main/list2/insulist/suppkind"));
  4222. modal("SPPIJ02400", 1,150, 150, "SPPIJ02400", cond, send, "", "");
  4223. /*
  4224. model.setValue("/root/hidden/list1/isclcond/judgchanged","(judgadjtresncd != '-' and ordcalcflag != 'O')");
  4225. if (!fChkUpdateData()) {
  4226. model.setValue("/root/hidden/list1/isclcond/judgchanged", "");
  4227. messageBox("변경된 데이타 있는 경우 먼저 변경된 데이타를 저장 후 적용하십시요. ", "E100");
  4228. return;
  4229. }
  4230. fGetSelectedOrderData();
  4231. */
  4232. ]]>
  4233. </script>
  4234. </button>
  4235. <group id="grp_execdd" visibility="hidden" style="left:390px; top:415px; width:305px; height:80px; border-color:#c7a3cf; border-style:solid; ">
  4236. <caption id="caption32" class="tit_2" style="left:4px; top:4px; width:115px; height:13px; ">시행일자 변경</caption>
  4237. <line id="line6" class="line_1" style="x1:2px; y1:20px; x2:300px; y2:20px; "/>
  4238. <caption id="caption30" class="search_name" style="left:4px; top:29px; width:90px; height:17px; ">시행일자 :</caption>
  4239. <input id="ipt_chngdd" ref="/root/hidden/chngexec/chngdd" class="input_search" inputtype="date" style="left:94px; top:28px; width:115px; height:19px; "/>
  4240. <button id="btn_chngexecdd" class="btn4_letter2" style="left:184px; top:52px; width:56px; height:22px; ">
  4241. <caption>변경</caption>
  4242. <script type="javascript" ev:event="DOMActivate">
  4243. <![CDATA[
  4244. var chngdd = model.getValue("/root/hidden/chngexec/chngdd");
  4245. var chnghh = model.getValue("/root/hidden/chngexec/chnghh");
  4246. var chngmn = model.getValue("/root/hidden/chngexec/chngmn");
  4247. if (chnghh.length == 1) chnghh = "0" + chnghh;
  4248. if (chngmn.length == 1) chngmn = "0" + chngmn;
  4249. var newexecdd = chngdd + chnghh + chngmn;
  4250. submit("TRPIJ00410");
  4251. var dschnotidt = model.getValue("/root/hidden/inpt/dschnotidt");
  4252. var selyn = opener.model.getValue("/root/hidden/sppij00400/cond/selyn"); // 재원심사와 사후심사의 호출구분을 위해 20080825 박창원
  4253. if(selyn == "Y") { // 사후 심사에서 호출한건
  4254. var indd = opener.model.getValue("/root/hidden/sppij00400/cond/indd");
  4255. } else {
  4256. var indd = opener.model.getValue("/root/main/item1/iteminfo/indd1");
  4257. }
  4258. if (newexecdd<indd+"0000"){
  4259. messageBox("입원일자 이전으로 변경","E001");
  4260. return;
  4261. }
  4262. if (dschnotidt != "" && newexecdd >= dschnotidt) {
  4263. messageBox("변경하는 시행일이 퇴원확정 시간보다 큽니다. 퇴원확정시간 이전으로 변경하세요!!!. 시간까지 ","I007");
  4264. return;
  4265. }
  4266. //수정사유선택시 수정사유팝업안뜨게 수정--20100105
  4267. var judgresn = model.getValue("/root/send/judgresn");
  4268. var cur_row = grd_ordlist.selectedRow(i);
  4269. if(judgresn == "" || judgresn == " " || judgresn == "-"){
  4270. var cd = fSetAdjtResnCd2();
  4271. }
  4272. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  4273. var cRrow = grd_ordlist.selectedRow(i);
  4274. var oldexecdd = model.getValue("/root/main/list1/iscl[" + cRrow + "]/newexecdd");
  4275. var execstat = model.getValue("/root/main/list1/iscl[" + cRrow + "]/execstat");
  4276. // 청구생성된 처방이 있을경우 블로킹 - 20081017 박창원
  4277. var cretyn = model.getValue("/root/main/list1/iscl[" + cRrow + "]/cretyn");
  4278. if (cretyn == "Y") {
  4279. messageBox("청구생성된 처방이 포함되어 변경 할 수 없습니다. 생성삭제 후", "C003");
  4280. //선택된 row의 체크값을 'N' 로 해주는 함수
  4281. fCheckNSelectedRows();
  4282. grp_execdd.visible = false;
  4283. return;
  4284. }
  4285. if (oldexecdd != newexecdd && execstat == "Y") {
  4286. model.setValue("/root/main/list1/iscl[" + cRrow + "]/newexecdd",newexecdd);
  4287. model.setValue("/root/main/list1/iscl[" + cRrow + "]/execchangeyn","Y");
  4288. if(judgresn == "" || judgresn == " " || judgresn == "-"){
  4289. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", cd);
  4290. }else{
  4291. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd", judgresn);
  4292. }
  4293. grd_ordlist.rowStatus(cRrow) = 2;
  4294. }
  4295. }
  4296. grp_execdd.visible = false;
  4297. model.refresh();
  4298. ]]>
  4299. </script>
  4300. </button>
  4301. <button id="btn_canlexecdd" class="btn4_letter2" style="left:244px; top:52px; width:56px; height:22px; ">
  4302. <caption>취소</caption>
  4303. <script type="javascript" ev:event="DOMActivate">
  4304. <![CDATA[
  4305. grp_execdd.visible = false;
  4306. ]]>
  4307. </script>
  4308. </button>
  4309. <input id="ipt_chnghh" ref="/root/hidden/chngexec/chnghh" class="input_search" maxlength="2" format="##" style="left:219px; top:28px; width:20px; height:19px; "/>
  4310. <input id="ipt_chngmn" ref="/root/hidden/chngexec/chngmn" class="input_search" maxlength="2" format="##" style="left:259px; top:28px; width:20px; height:19px; "/>
  4311. <caption id="caption35" style="left:240px; top:26px; width:20px; height:25px; ">시</caption>
  4312. <caption id="caption36" style="left:280px; top:26px; width:20px; height:25px; ">분</caption>
  4313. </group>
  4314. <group id="grp_selectspecord" visibility="hidden" style="left:475px; top:175px; width:255px; height:165px; border-color:#c7a3cf; border-style:solid; ">
  4315. <caption id="caption22" class="tit_2" style="left:-1px; top:-1px; width:199px; height:13px; ">선택의사변경</caption>
  4316. <line id="line3" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4317. <button id="btn_cancel" class="btn4_letter2" style="left:184px; top:134px; width:56px; height:22px; ">
  4318. <caption>취소</caption>
  4319. <script type="javascript" ev:event="DOMActivate">
  4320. <![CDATA[
  4321. grp_selectspecord.visible = false;
  4322. ]]>
  4323. </script>
  4324. </button>
  4325. <button id="btn_accept" class="btn4_letter2" style="left:124px; top:134px; width:56px; height:22px; ">
  4326. <caption>확인</caption>
  4327. <script type="javascript" ev:event="DOMActivate">
  4328. <![CDATA[
  4329. fOrdChangeSpclYn1();
  4330. /*var cRrow = grd_ordlist.selectedRow(i);
  4331. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd",judgresn);
  4332. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  4333. model.refresh();
  4334. grp_judgresn.visible = false; */
  4335. ]]>
  4336. </script>
  4337. </button>
  4338. <select1 id="cmb_deptlist" ref="/root/send/orddeptcd" class="combo_search" appearance="minimal" style="left:89px; top:49px; width:155px; height:40px; ">
  4339. <choices>
  4340. <itemset nodeset="/root/hidden/listdept/deptlist">
  4341. <label ref="depthngnm"/>
  4342. <value ref="deptcd"/>
  4343. </itemset>
  4344. </choices>
  4345. <script type="javascript" ev:event="xforms-value-changed">
  4346. <![CDATA[
  4347. model.setValue("/root/send/orddeptcd",cmb_deptlist.value);
  4348. model.removenode("/root/hidden/listatdoc");
  4349. submit("TRPIJ00409");
  4350. ]]>
  4351. </script>
  4352. </select1>
  4353. <select1 id="cmb_drlist" ref="/root/send/atdoc" class="combo_search" appearance="minimal" style="left:89px; top:94px; width:155px; height:19px; ">
  4354. <choices>
  4355. <itemset nodeset="/root/hidden/listatdoc/atdoctlist">
  4356. <label ref="atdocthngnm"/>
  4357. <value ref="atdoctid"/>
  4358. </itemset>
  4359. </choices>
  4360. <script type="javascript" ev:event="xforms-value-changed">
  4361. <![CDATA[
  4362. model.setValue("/root/send/orddeptcd",cmb_drlist.value);
  4363. ]]>
  4364. </script>
  4365. </select1>
  4366. <caption id="caption11" class="search_name" style="left:4px; top:49px; width:90px; height:17px; ">진료과 :</caption>
  4367. <caption id="caption31" class="search_name" style="left:4px; top:94px; width:90px; height:17px; ">의사명 :</caption>
  4368. <line id="line5" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4369. </group>
  4370. <group id="grp_changeinsukind" visibility="hidden" style="left:460px; top:225px; width:255px; height:210px; border-color:#c7a3cf; border-style:solid; ">
  4371. <caption id="cpt_detail" class="tit_2" style="left:5px; top:0px; width:199px; height:13px; ">처방유형 변경(기왕증) 처리</caption>
  4372. <line id="line4" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4373. <datagrid id="grd_insuhistory" nodeset="/root/main/list2/insulist" class="datagrid2" caption="유형^보조^M^개시일^종료일^cretno" colsep="^" colwidth="34, 34, 18, 70, 70, 40" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="25" rowsep="|" selectionmode="byrow" style="left:2px; top:21px; width:249px; height:153px; ">
  4374. <col ref="insukind"/>
  4375. <col ref="suppkind"/>
  4376. <col ref="mskind"/>
  4377. <col ref="fromdd"/>
  4378. <col ref="todd"/>
  4379. <col ref="cretno" visibility="hidden"/>
  4380. </datagrid>
  4381. <button id="btn_closechangeinsukindt" class="btn4_letter2" style="left:194px; top:179px; width:56px; height:22px; ">
  4382. <caption>취소</caption>
  4383. <script type="javascript" ev:event="DOMActivate">
  4384. <![CDATA[
  4385. grp_changeinsukind.visible = false;
  4386. ]]>
  4387. </script>
  4388. </button>
  4389. <button id="btn_changeinsukind" class="btn4_letter2" style="left:134px; top:179px; width:56px; height:22px; ">
  4390. <caption>변경</caption>
  4391. <script type="javascript" ev:event="DOMActivate">
  4392. <![CDATA[
  4393. //2008.03.03 박지욱 수정
  4394. //선택된 row의 체크값을 'Y' 로 해주는 함수
  4395. fCheckYSelectedRows();
  4396. var mskind = model.getValue( "/root/main/list2/insulist[" + grd_insuhistory.row + "]/mskind");
  4397. model.setValue("/root/send/anamne","Y");
  4398. var cretno = 0;
  4399. cretno = model.getValue( "/root/main/list2/insulist[" + grd_insuhistory.row + "]/cretno");
  4400. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  4401. //선택된row
  4402. var cRrow = grd_ordlist.selectedRow(i);
  4403. // 2008.01.28 박지욱 추가 (처방유형변경시 구수가코드 ordinptflag == 'x' 이면 변경할 수 없음 처리)
  4404. var ordinptflag = model.getValue("/root/main/list1/iscl[" + cRrow + "]/ordinptflag");
  4405. if (ordinptflag == "X") {
  4406. messageBox("처방유형변경이 불가한 코드", "E008");
  4407. } else {
  4408. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  4409. var prcpdd1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpdd");
  4410. var prcpno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcpno");
  4411. var prcphistno1 = model.getValue("/root/main/list1/iscl["+ cRrow +"]/prcphistno");
  4412. var hngnm = model.getValue("/root/main/list1/iscl["+ cRrow +"]/hngnm");
  4413. var messageYn = "N";
  4414. // 선택안된 같은 처방 row를 담을 배열
  4415. var samecalclist = new Array();
  4416. var index = 0;
  4417. for (var j = 1; j < grd_ordlist.rows; j++) {
  4418. var chkflag = model.getValue("/root/main/list1/iscl["+ j +"]/chkflag");
  4419. var prcpdd2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpdd");
  4420. var prcpno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcpno");
  4421. var prcphistno2 = model.getValue("/root/main/list1/iscl["+ j +"]/prcphistno");
  4422. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  4423. messageYn = "Y";
  4424. samecalclist[index++] = j;
  4425. }
  4426. }
  4427. // 동일한 선택안된 row가 있다면
  4428. if (messageYn == "Y") {
  4429. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  4430. model.setValue("/root/main/list1/iscl[" + cRrow + "]/aftercretno",cretno);
  4431. model.setValue("/root/main/list1/iscl[" + cRrow + "]/mskind",mskind);
  4432. model.setValue("/root/main/list1/iscl[" + cRrow + "]/ordchangeyn","Y");
  4433. model.setValue("/root/main/list1/iscl[" + cRrow + "]/proccalctype","S");
  4434. grd_ordlist.rowstatus(cRrow) = 2;
  4435. for(var k=0; k < index; k++) {
  4436. var row = samecalclist[k];
  4437. model.setValue("/root/main/list1/iscl[" + row + "]/aftercretno",cretno);
  4438. model.setValue("/root/main/list1/iscl[" + row + "]/mskind",mskind);
  4439. model.setValue("/root/main/list1/iscl[" + row + "]/ordchangeyn","Y");
  4440. model.setValue("/root/main/list1/iscl[" + row + "]/chkflag","Y");
  4441. model.setValue("/root/main/list1/iscl[" + row + "]/proccalctype","S");
  4442. grd_ordlist.rowstatus(row) = 2;
  4443. }
  4444. }
  4445. } else {
  4446. model.setValue("/root/main/list1/iscl[" + cRrow + "]/aftercretno",cretno);
  4447. model.setValue("/root/main/list1/iscl[" + cRrow + "]/mskind",mskind);
  4448. model.setValue("/root/main/list1/iscl[" + cRrow + "]/ordchangeyn","Y");
  4449. model.setValue("/root/main/list1/iscl[" + cRrow + "]/proccalctype","S");
  4450. grd_ordlist.rowstatus(cRrow) = 2;
  4451. }
  4452. }
  4453. }
  4454. model.refresh();
  4455. grp_changeinsukind.visible = false;
  4456. //row의 체크값을 'N' 로 해주는 함수
  4457. fCheckNSelectedRows();
  4458. //메모를 변경후 저장버튼을 클릭하며 변경된 메모 내역을 저장한다.
  4459. // var cretno = model.getValue( "/root/main/list2/insulist[" + grd_insuhistory.row + "]/cretno");
  4460. // var mskind = model.getValue( "/root/main/list2/insulist[" + grd_insuhistory.row + "]/mskind");
  4461. //
  4462. // for ( var i= 0; i<grd_ordlist.selectedRows; i++){
  4463. // model.setValue("/root/main/list1/iscl[" + grd_ordlist.selectedrow(i) + "]/aftercretno",cretno);
  4464. // model.setValue("/root/main/list1/iscl[" + grd_ordlist.selectedrow(i) + "]/mskind",mskind);
  4465. // grd_ordlist.rowstatus(grd_ordlist.selectedrow(i)) = 2;
  4466. // }
  4467. // model.refresh();
  4468. // grp_changeinsukind.visible = false;
  4469. ]]>
  4470. </script>
  4471. </button>
  4472. </group>
  4473. <button id="btn_rsltsrch" class="btn2_letter4" style="left:1061px; top:85px; width:64px; height:19px; ">
  4474. <caption>결과조회</caption>
  4475. <script type="javascript" ev:event="DOMActivate">
  4476. <![CDATA[
  4477. var pid = model.getValue("/root/send/pid");
  4478. if (pid != "") {
  4479. model.makevalue("/root/hidden/smaer00800/cond/srchdate1", model.getValue("/root/send/indd"));
  4480. model.makevalue("/root/hidden/smaer00800/cond/srchdate2", getCurrentDate());
  4481. model.makevalue("/root/hidden/smaer00800/cond/srchpid", pid);
  4482. model.makevalue("/root/hidden/smaer00800/cond/wardcd", "");
  4483. model.makevalue("/root/hidden/smaer00800/cond/roomcd", "");
  4484. model.makevalue("/root/hidden/smaer00800/cond/listflag", "P");
  4485. model.makevalue("/root/hidden/smaer00800/cond/deptcd", "");
  4486. model.makevalue("/root/hidden/smaer00800/cond/drid", "");
  4487. model.makevalue("/root/hidden/smaer00800/cond/chkcheck", "");
  4488. model.makevalue("/root/hidden/smaer00800/cond/chkcheck1", "A");
  4489. model.makevalue("/root/hidden/smaer00800/cond/chkcheck2", "B");
  4490. model.makevalue("/root/hidden/smaer00800/cond/chkcheck3", "C");
  4491. model.makevalue("/root/hidden/smaer00800/cond/chkcheck4", "D");
  4492. model.makevalue("/root/hidden/smaer00800/cond/chkcheck5", "E");
  4493. model.makevalue("/root/hidden/smaer00800/cond/chkcheck6", "F");
  4494. model.makevalue("/root/hidden/smaer00800/cond/chkcheck7", "G");
  4495. model.makevalue("/root/hidden/smaer00800/cond/chkcheck8", "");
  4496. model.makevalue("/root/hidden/smaer00800/cond/tabflag", "");
  4497. model.makevalue("/root/hidden/smaer00800/cond/mdlcd", "");
  4498. model.makevalue("/root/hidden/smaer00800/cond/examgubun", "");
  4499. open("SMAER00800" ,"", "10", "10", "SMAER00800", "/root/hidden/smaer00800/cond", "/root/send/data/singdata", "", "");
  4500. }
  4501. ]]>
  4502. </script>
  4503. </button>
  4504. <select id="chk_quickview" ref="/root/send/unitspecyn" class="checkbox_search" overflow="visible" appearance="full" style="left:1070px; top:38px; width:70px; height:19px; border-style:none; ">
  4505. <choices>
  4506. <item>
  4507. <label>선택가산</label>
  4508. <value>Y</value>
  4509. </item>
  4510. </choices>
  4511. <script type="javascript" ev:event="onclick">
  4512. <![CDATA[
  4513. // 빨리보기 체크가 되어있으면 그리드 배경색을 호출하지 않는다. - 20081113 박창원
  4514. var quickview = model.getValue(chk_quickview.attribute("ref")); //chk_quickview.value;
  4515. if (quickview != "Y") {
  4516. // 인스턴스 필터를 적용하고 fSetColorSpclJudgOrder()를 호출하여 grid 배경색 설정
  4517. fGetSelectedOrderData();
  4518. model.refreshpart("/root/main/list1/iscl");
  4519. model.refreshpart("/root/hidden/list1/isclsrch/selectedRdoItem" );
  4520. }
  4521. ]]>
  4522. </script>
  4523. </select>
  4524. <group id="grp_changeop" visibility="hidden" style="left:635px; top:250px; width:255px; height:135px; border-color:#c7a3cf; border-style:solid; ">
  4525. <caption id="caption29" class="tit_2" style="left:-1px; top:-1px; width:199px; height:13px; ">수술유형변경</caption>
  4526. <line id="line8" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4527. <button id="button1" class="btn4_letter2" style="left:184px; top:99px; width:56px; height:22px; ">
  4528. <caption>취소</caption>
  4529. <script type="javascript" ev:event="DOMActivate">
  4530. <![CDATA[
  4531. grp_changeop.visible= false;
  4532. ]]>
  4533. </script>
  4534. </button>
  4535. <button id="button2" class="btn4_letter2" style="left:124px; top:99px; width:56px; height:22px; ">
  4536. <caption>확인</caption>
  4537. <script type="javascript" ev:event="DOMActivate">
  4538. <![CDATA[
  4539. fOrdChangeOp1();
  4540. /*var cRrow = grd_ordlist.selectedRow(i);
  4541. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd",judgresn);
  4542. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  4543. model.refresh();
  4544. grp_judgresn.visible = false; */
  4545. ]]>
  4546. </script>
  4547. </button>
  4548. <select1 id="cmb_opflag" ref="/root/send/atdoc" class="combo_search" appearance="minimal" style="left:89px; top:59px; width:155px; height:19px; ">
  4549. <choices>
  4550. <itemset nodeset="/root/init/M0007list/M0007">
  4551. <label ref="cdnm"/>
  4552. <value ref="cdid"/>
  4553. </itemset>
  4554. </choices>
  4555. <script type="javascript" ev:event="xforms-value-changed">
  4556. <![CDATA[
  4557. model.setValue("/root/send/orddeptcd",cmb_drlist.value);
  4558. ]]>
  4559. </script>
  4560. </select1>
  4561. <caption id="caption34" class="search_name" style="left:4px; top:59px; width:90px; height:17px; ">수술유형 :</caption>
  4562. <line id="line9" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4563. <select id="chk_oper" ref="/root/hidden/op/erprcpflag" overflow="visible" appearance="full" style="left:14px; top:29px; width:100px; height:15px; border-style:none; ">
  4564. <choices>
  4565. <item>
  4566. <label>응급여부</label>
  4567. <value>Y</value>
  4568. </item>
  4569. </choices>
  4570. </select>
  4571. <select id="chk_opnigt" ref="/root/hidden/op/nigtprpcflag" overflow="visible" appearance="full" style="left:139px; top:29px; width:105px; height:15px; border-style:none; ">
  4572. <choices>
  4573. <item>
  4574. <label>심야여부</label>
  4575. <value>Y</value>
  4576. </item>
  4577. </choices>
  4578. </select>
  4579. </group>
  4580. <group id="grp_changeangio" visibility="hidden" style="left:435px; top:150px; width:255px; height:135px; border-color:#c7a3cf; border-style:solid; ">
  4581. <caption id="caption33" class="tit_2" style="left:-1px; top:-1px; width:199px; height:13px; ">Angio 유형변경</caption>
  4582. <line id="line10" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4583. <button id="button5" class="btn4_letter2" style="left:184px; top:99px; width:56px; height:22px; ">
  4584. <caption>취소</caption>
  4585. <script type="javascript" ev:event="DOMActivate">
  4586. <![CDATA[
  4587. grp_changeangio.visible= false;
  4588. ]]>
  4589. </script>
  4590. </button>
  4591. <button id="button6" class="btn4_letter2" style="left:124px; top:99px; width:56px; height:22px; ">
  4592. <caption>확인</caption>
  4593. <script type="javascript" ev:event="DOMActivate">
  4594. <![CDATA[
  4595. fOrdChangeAngio1();
  4596. /*var cRrow = grd_ordlist.selectedRow(i);
  4597. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd",judgresn);
  4598. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  4599. model.refresh();
  4600. grp_judgresn.visible = false; */
  4601. ]]>
  4602. </script>
  4603. </button>
  4604. <select1 id="cmb_angio" ref="/root/send/atdoc" class="combo_search" appearance="minimal" style="left:89px; top:59px; width:155px; height:19px; ">
  4605. <choices>
  4606. <itemset nodeset="/root/init/M0006list/M0006">
  4607. <label ref="cdnm"/>
  4608. <value ref="cdid"/>
  4609. </itemset>
  4610. </choices>
  4611. <script type="javascript" ev:event="xforms-value-changed">
  4612. <![CDATA[
  4613. model.setValue("/root/send/orddeptcd",cmb_drlist.value);
  4614. ]]>
  4615. </script>
  4616. </select1>
  4617. <caption id="caption37" class="search_name" style="left:4px; top:59px; width:90px; height:17px; ">Angio유형 :</caption>
  4618. <line id="line11" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4619. <select id="chk_angioer" ref="/root/hidden/op/erprcpflag" overflow="visible" appearance="full" style="left:14px; top:29px; width:100px; height:15px; border-style:none; ">
  4620. <choices>
  4621. <item>
  4622. <label>응급여부</label>
  4623. <value>Y</value>
  4624. </item>
  4625. </choices>
  4626. </select>
  4627. <select id="chk_angionigt" ref="/root/hidden/op/nigtprpcflag" overflow="visible" appearance="full" style="left:139px; top:29px; width:105px; height:15px; border-style:none; ">
  4628. <choices>
  4629. <item>
  4630. <label>심야여부</label>
  4631. <value>Y</value>
  4632. </item>
  4633. </choices>
  4634. </select>
  4635. </group>
  4636. <group id="grp_changeans" visibility="hidden" style="left:485px; top:190px; width:255px; height:135px; border-color:#c7a3cf; border-style:solid; ">
  4637. <caption id="caption38" class="tit_2" style="left:-1px; top:-1px; width:199px; height:13px; ">마취유형변경</caption>
  4638. <line id="line12" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4639. <button id="button7" class="btn4_letter2" style="left:184px; top:99px; width:56px; height:22px; ">
  4640. <caption>취소</caption>
  4641. <script type="javascript" ev:event="DOMActivate">
  4642. <![CDATA[
  4643. grp_changeans.visible= false;
  4644. ]]>
  4645. </script>
  4646. </button>
  4647. <button id="button8" class="btn4_letter2" style="left:124px; top:99px; width:56px; height:22px; ">
  4648. <caption>확인</caption>
  4649. <script type="javascript" ev:event="DOMActivate">
  4650. <![CDATA[
  4651. fOrdChangeAns1();
  4652. /*var cRrow = grd_ordlist.selectedRow(i);
  4653. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd",judgresn);
  4654. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  4655. model.refresh();
  4656. grp_judgresn.visible = false; */
  4657. ]]>
  4658. </script>
  4659. </button>
  4660. <select1 id="cmb_ans" ref="/root/send/atdoc" class="combo_search" appearance="minimal" style="left:89px; top:59px; width:155px; height:19px; ">
  4661. <choices>
  4662. <itemset nodeset="/root/init/M0008list/M0008">
  4663. <label ref="cdnm"/>
  4664. <value ref="cdid"/>
  4665. </itemset>
  4666. </choices>
  4667. <script type="javascript" ev:event="xforms-value-changed">
  4668. <![CDATA[
  4669. model.setValue("/root/send/orddeptcd",cmb_drlist.value);
  4670. ]]>
  4671. </script>
  4672. </select1>
  4673. <caption id="caption39" class="search_name" style="left:4px; top:59px; width:90px; height:17px; ">마취유형 :</caption>
  4674. <line id="line13" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4675. <select id="chk_anser" ref="/root/hidden/op/erprcpflag" overflow="visible" appearance="full" style="left:14px; top:29px; width:100px; height:15px; border-style:none; ">
  4676. <choices>
  4677. <item>
  4678. <label>응급여부</label>
  4679. <value>Y</value>
  4680. </item>
  4681. </choices>
  4682. </select>
  4683. <select id="chk_ansnigt" ref="/root/hidden/op/nigtprpcflag" overflow="visible" appearance="full" style="left:139px; top:29px; width:105px; height:15px; border-style:none; ">
  4684. <choices>
  4685. <item>
  4686. <label>심야여부</label>
  4687. <value>Y</value>
  4688. </item>
  4689. </choices>
  4690. </select>
  4691. </group>
  4692. <group id="grd_selectgsord" visibility="hidden" style="left:425px; top:215px; width:255px; height:165px; border-color:#c7a3cf; border-style:solid; ">
  4693. <caption id="caption40" class="tit_2" style="left:-1px; top:-1px; width:199px; height:14px; ">외과가산의사변경</caption>
  4694. <line id="line14" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4695. <button id="button9" class="btn4_letter2" style="left:184px; top:134px; width:56px; height:22px; ">
  4696. <caption>취소</caption>
  4697. <script type="javascript" ev:event="DOMActivate">
  4698. <![CDATA[
  4699. grd_selectgsord.visible = false;
  4700. ]]>
  4701. </script>
  4702. </button>
  4703. <button id="button10" class="btn4_letter2" style="left:124px; top:134px; width:56px; height:22px; ">
  4704. <caption>확인</caption>
  4705. <script type="javascript" ev:event="DOMActivate">
  4706. <![CDATA[
  4707. fGSOrdDRYn1();
  4708. ]]>
  4709. </script>
  4710. </button>
  4711. <select1 id="cmb_gsdeptcd" ref="/root/send/orddeptcd" class="combo_search" appearance="minimal" style="left:89px; top:49px; width:155px; height:40px; ">
  4712. <choices>
  4713. <itemset nodeset="/root/hidden/listdept/deptlist">
  4714. <label ref="depthngnm"/>
  4715. <value ref="deptcd"/>
  4716. </itemset>
  4717. </choices>
  4718. <script type="javascript" ev:event="xforms-value-changed">
  4719. <![CDATA[
  4720. model.setValue("/root/send/orddeptcd",cmb_deptlist.value);
  4721. model.removenode("/root/hidden/listatdoc");
  4722. submit("TRPIJ00409");
  4723. ]]>
  4724. </script>
  4725. </select1>
  4726. <select1 id="cmb_gsatdoc" ref="/root/send/atdoc" class="combo_search" appearance="minimal" style="left:89px; top:94px; width:155px; height:19px; ">
  4727. <choices>
  4728. <itemset nodeset="/root/hidden/listatdoc/atdoctlist">
  4729. <label ref="atdocthngnm"/>
  4730. <value ref="atdoctid"/>
  4731. </itemset>
  4732. </choices>
  4733. </select1>
  4734. <caption id="caption41" class="search_name" style="left:4px; top:49px; width:90px; height:17px; ">진료과 :</caption>
  4735. <caption id="caption42" class="search_name" style="left:4px; top:94px; width:90px; height:17px; ">의사명 :</caption>
  4736. <line id="line15" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4737. </group>
  4738. <bool id="bool1" checkvalue="A,P" ref="/root/send/proccalctypeap" style="left:935px; top:80px; width:30px; height:20px; text-align:left; "/>
  4739. <caption id="caption45" style="left:960px; top:80px; width:100px; height:20px; ">수기료계산포함</caption>
  4740. <group id="group4" visibility="hidden" style="left:250px; top:205px; width:320px; height:135px; border-color:#c7a3cf; border-style:solid; ">
  4741. <caption id="caption46" class="tit_2" style="left:-1px; top:-1px; width:199px; height:13px; ">초음파 특정내역 변경</caption>
  4742. <line id="line16" class="line_1" style="x1:2px; y1:15px; x2:300px; y2:15px; "/>
  4743. <button id="button11" class="btn4_letter2" style="left:244px; top:99px; width:51px; height:22px; ">
  4744. <caption>취소</caption>
  4745. <script type="javascript" ev:event="DOMActivate">
  4746. <![CDATA[
  4747. group4.visible= false;
  4748. ]]>
  4749. </script>
  4750. </button>
  4751. <button id="button12" class="btn4_letter2" style="left:184px; top:99px; width:51px; height:22px; ">
  4752. <caption>확인</caption>
  4753. <script type="javascript" ev:event="DOMActivate">
  4754. <![CDATA[
  4755. fOrdChangeRehb1();
  4756. ]]>
  4757. </script>
  4758. </button>
  4759. <select1 id="cmb_drugmthdspccd" ref="/root/send/drugmthdspccd" class="combo_search" appearance="minimal" showvalue="true" style="left:94px; top:49px; width:205px; height:19px; ">
  4760. <choices>
  4761. <itemset nodeset="/root/init/drugmthdspccd/drugmthdspccdlist">
  4762. <label ref="trgtcdnm"/>
  4763. <value ref="trgtcd"/>
  4764. </itemset>
  4765. </choices>
  4766. <script type="javascript" ev:event="xforms-value-changed">
  4767. <![CDATA[
  4768. model.setValue("/root/send/drugmthdspccd",cmb_drugmthdspccd.value);
  4769. ]]>
  4770. </script>
  4771. </select1>
  4772. <caption id="caption47" class="search_name" style="left:4px; top:49px; width:90px; height:17px; ">관련행위 :</caption>
  4773. <select1 id="cmb_rehbprcpcurepartcd" ref="/root/send/rehbprcpcurepartcd" class="combo_search" appearance="minimal" showvalue="true" style="left:94px; top:24px; width:205px; height:19px; ">
  4774. <choices>
  4775. <itemset nodeset="/root/init/drugspd/M0047M0046">
  4776. <label ref="cdnm"/>
  4777. <value ref="cdid"/>
  4778. </itemset>
  4779. </choices>
  4780. <script type="javascript" ev:event="xforms-value-changed">
  4781. <![CDATA[
  4782. model.setValue("/root/send/rehbprcpcurepartcd",cmb_rehbprcpcurepartcd.value);
  4783. ]]>
  4784. </script>
  4785. </select1>
  4786. <caption id="caption48" class="search_name" style="left:4px; top:24px; width:90px; height:17px; ">부위 :</caption>
  4787. <caption id="caption49" class="search_name" style="left:4px; top:74px; width:90px; height:17px; ">기타사유 :</caption>
  4788. <input id="ipt_exptmthdfact" ref="/root/send/exptmthdfact" style="left:94px; top:74px; width:205px; height:19px; "/>
  4789. </group>
  4790. </group>
  4791. <group id="grp_judgresn" visibility="hidden" style="left:810px; top:165px; width:255px; height:455px; border-color:#c7a3cf; border-style:solid; ">
  4792. <caption id="caption12" class="tit_2" style="left:-1px; top:-1px; width:199px; height:13px; ">수정사유</caption>
  4793. <line id="line7" class="line_1" style="x1:2px; y1:15px; x2:252px; y2:15px; "/>
  4794. <datagrid id="datagrid1" nodeset="/root/init/P0153list/P0153" class="datagrid2" caption="코드^사유명칭" colsep="^" colwidth="51, 181" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="25" rowsep="|" selectionmode="byrow" style="left:2px; top:21px; width:249px; height:363px; ">
  4795. <col ref="cdid"/>
  4796. <col ref="cdnm"/>
  4797. <script type="javascript" ev:event="ondblclick">
  4798. <![CDATA[
  4799. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  4800. var judgresn = model.getValue( "/root/init/P0153list/P0153[" + grd_judgresn.row + "]/cdid");
  4801. var cRrow = grd_ordlist.selectedRow(i);
  4802. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd",judgresn);
  4803. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  4804. }
  4805. model.refresh();
  4806. grp_judgresn.visible = false;
  4807. ]]>
  4808. </script>
  4809. </datagrid>
  4810. <button id="button3" class="btn4_letter2" style="left:194px; top:389px; width:56px; height:22px; ">
  4811. <caption>취소</caption>
  4812. <script type="javascript" ev:event="DOMActivate">
  4813. <![CDATA[
  4814. grp_judgresn.visible = false;
  4815. ]]>
  4816. </script>
  4817. </button>
  4818. <button id="button4" class="btn4_letter2" style="left:134px; top:389px; width:56px; height:22px; ">
  4819. <caption>확인</caption>
  4820. <script type="javascript" ev:event="DOMActivate">
  4821. <![CDATA[
  4822. for( var i = 0; i < grd_ordlist.selectedRows; i++ ){
  4823. var judgresn = model.getValue( "/root/init/P0153list/P0153[" + grd_judgresn.row + "]/cdid");
  4824. var cRrow = grd_ordlist.selectedRow(i);
  4825. model.setValue("/root/main/list1/iscl[" + cRrow + "]/judgadjtresncd",judgresn);
  4826. model.setValue("/root/main/list1/iscl[" + cRrow + "]/editflag", "Y");
  4827. }
  4828. model.refresh();
  4829. grp_judgresn.visible = false;
  4830. ]]>
  4831. </script>
  4832. </button>
  4833. </group>
  4834. <group id="group1" scroll="auto" style="left:0px; top:696px; width:1195px; height:35px; ">
  4835. <line id="line32" class="line_6" style="x1:0px; y1:0px; x2:1190px; y2:0px; "/>
  4836. <button id="btn_save" class="btn4_letter2" style="left:1073px; top:5px; width:56px; height:22px; ">
  4837. <caption>저장</caption>
  4838. <script type="javascript" ev:event="DOMActivate">
  4839. <![CDATA[
  4840. // 수정추가 JHP 20090421 수정사유만 변경할시 체크
  4841. fJudgAdjtResncdChk();
  4842. var updtdata = getGridUpdateData(grd_ordlist);
  4843. if (updtdata == "") {
  4844. messageBox("변경된 데이터가","I004");
  4845. return;
  4846. }
  4847. var rowcnt = getNodesetCount("/root/main/list1/iscl");
  4848. rowcnt = eval(rowcnt) + 1;
  4849. var updrowcnt = 0;
  4850. var calcbasedd = new Array();
  4851. var endcalcbasedd = new Array();
  4852. for (var i=1; i<= rowcnt; i++) {
  4853. var rowstatus = grd_ordlist.rowstatus(i);
  4854. if (rowstatus == "2") {
  4855. calcbasedd[updrowcnt+1] = model.getValue("/root/main/list1/iscl[" + i + "]/execdd").substr(0,8);
  4856. updrowcnt = updrowcnt + 1;
  4857. }
  4858. }
  4859. model.setValue("/root/send/ordlist",grd_ordlist.getUpdateData());
  4860. // 로딩창 열기
  4861. var sWindowMsg = "변경 및 수가계산중입니다...";
  4862. callLoadingWindow(sWindowMsg);
  4863. // 변경과 동시에 재계산까지 한다.
  4864. if ( submit("TXPIJ00401",false) ) {
  4865. grd_ordlist.clearStatus(); // submit() 성공하면 그리드의 i,u,d 상태 제거
  4866. //messageBox("저장이","I002");
  4867. /*
  4868. var rowcnt = getNodesetCount("/root/send/ordlist");
  4869. var nonequal = "Y";
  4870. var anamne = model.getValue("/root/send/anamne");
  4871. var mskind = model.getValue("/root/send/mskind");
  4872. var endcnt = 0;
  4873. var calccnt = 0;
  4874. // 소급계산부분 - 20080820 박창원
  4875. for (var i=1; i<=updrowcnt; i++) {
  4876. grp_recalc.visible = true;
  4877. model.setValue("/root/send/calcbasedd",calcbasedd[i]);
  4878. if (endcnt == 0) {
  4879. submit("TXPIJ00205");
  4880. endcalcbasedd[endcnt] = calcbasedd[i];
  4881. endcnt++;
  4882. }
  4883. // 20080821 기왕증은 주부유형 다 계산해야한다.
  4884. if (anamne == "Y") {
  4885. if (mskind == "M") {
  4886. for(k=1; k<=endcnt; k++) {
  4887. if (endcalcbasedd[k] == calcbasedd[i]) {
  4888. calccnt++;
  4889. }
  4890. }
  4891. if(calccnt == 0) {
  4892. model.setValue("/root/send/mskind","S");
  4893. submit("TXPIJ00205");
  4894. model.setValue("/root/send/mskind","M");
  4895. submit("TXPIJ00205");
  4896. endcalcbasedd[endcnt] = calcbasedd[i];
  4897. endcnt++;
  4898. calccnt = 0;
  4899. }
  4900. }
  4901. if (mskind == "S") {
  4902. for(k=1; k<=endcnt; k++) {
  4903. if (endcalcbasedd[k] == calcbasedd[i]) {
  4904. calccnt++;
  4905. }
  4906. }
  4907. if(calccnt == 0) {
  4908. model.setValue("/root/send/mskind","M");
  4909. submit("TXPIJ00205");
  4910. model.setValue("/root/send/mskind","S");
  4911. submit("TXPIJ00205");
  4912. endcalcbasedd[endcnt] = calcbasedd[i];
  4913. endcnt++;
  4914. calccnt = 0;
  4915. }
  4916. }
  4917. }
  4918. else {
  4919. for(k=1; k<=endcnt; k++) {
  4920. if (endcalcbasedd[k] == calcbasedd[i]) {
  4921. calccnt++;
  4922. }
  4923. }
  4924. if(calccnt == 0) {
  4925. submit("TXPIJ00205");
  4926. endcalcbasedd[endcnt] = calcbasedd[i];
  4927. endcnt++;
  4928. calccnt = 0;
  4929. }
  4930. }
  4931. }
  4932. */
  4933. var fromdd = model.getValue("/root/send/fromdd");
  4934. var todd = model.getValue("/root/send/todd");
  4935. var mainordfromdd = model.getValue("/root/send/mainordfromdd");
  4936. var mainordtodd = model.getValue("/root/send/mainordtodd");
  4937. var calcscorcd = model.getValue("/root/send/calcscorcd");
  4938. // 코드단위 조회였을경우에는 메인 처방 조회기간대로 함 - 20081113 박창원
  4939. if (calcscorcd != "") {
  4940. //opener.model.setValue("/root/main/item1/iteminfo/lastjudgdt",mainordfromdd);
  4941. opener.model.setValue("/root/send/ordfromdd", mainordfromdd);
  4942. opener.model.setValue("/root/send/ordtodd", mainordtodd);
  4943. } else {
  4944. // 조회기간과 동일하게 메인화면에 처방조회기간을 맞춤 - 20081105 박창원
  4945. //opener.model.setValue("/root/main/item1/iteminfo/lastjudgdt",fromdd);
  4946. opener.model.setValue("/root/send/ordfromdd", fromdd);
  4947. opener.model.setValue("/root/send/ordtodd", todd);
  4948. }
  4949. opener.model.refresh();
  4950. opener.javascript.fGetIsclList_FromTo();
  4951. opener.javascript.fGetCalc();
  4952. opener.javascript.fSetItemSubTotal();
  4953. opener.javascript.fCheckSpclSpecData();
  4954. // 2008. 01. 27 박지욱 추가 (처방 색깔 항 구분에 따라 흰색-회색 구분되도록 처리)
  4955. //opener.javascript.fSetOrderColorByEdiitem();
  4956. //범례 색깔을 표시한다.
  4957. opener.javascript.fSetColorSpclJudgOrder();
  4958. //특정내역이 있는 처방에 'T'필드에 *표를 해준다.
  4959. //opener.javascript.fSetOrdSpclTxt();
  4960. //fGetIsclList();
  4961. //grp_recalc.visible= false;
  4962. var code = model.getValue("/root/send/calcscorcd");
  4963. if (code == ""){
  4964. fGetIsclList();
  4965. // 로딩창 닫기
  4966. removeLoadingWindow();
  4967. messageBox("변경 및 재계산이","I002");
  4968. } else {
  4969. // 로딩창 닫기
  4970. removeLoadingWindow();
  4971. messageBox("변경 및 재계산이","I002");
  4972. window.close();
  4973. }
  4974. } else {
  4975. removeLoadingWindow();
  4976. }
  4977. ]]>
  4978. </script>
  4979. </button>
  4980. <button id="btn_close" class="btn4_letter2" style="left:1132px; top:5px; width:56px; height:22px; ">
  4981. <caption>닫기</caption>
  4982. <script type="javascript" ev:event="DOMActivate">
  4983. <![CDATA[
  4984. window.close(); // F5 실행시 IE를 종료시킨다.
  4985. ]]>
  4986. </script>
  4987. </button>
  4988. <button id="btn_print" class="btn6_letter2" style="left:0px; top:7px; width:56px; height:22px; ">
  4989. <caption>출력</caption>
  4990. </button>
  4991. <button id="btn_exl" class="btn6_letter2" style="left:58px; top:7px; width:56px; height:22px; ">
  4992. <caption>엑셀</caption>
  4993. <script type="javascript" ev:event="DOMActivate">
  4994. <![CDATA[
  4995. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  4996. if (fileName != "") {
  4997. grd_ordlist.saveExcel(fileName, "SheetName", true, true, "", "", true);
  4998. //datagrid.saveExcel의 7번째 인자 값(boolean) : 그리드의 col type=combo일 경우 엑셀저장내용이 lable 또는 value로 설정 함
  4999. }
  5000. ]]>
  5001. </script>
  5002. </button>
  5003. <shape id="roundrect3" class="roundrect_example" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:121px; top:6px; width:734px; height:24px; "/>
  5004. <caption id="caption13" class="cell_2" style="left:130px; top:9px; width:40px; height:17px; ">
  5005. <![CDATA[범 례]]>
  5006. <script type="javascript" ev:event="onclick">
  5007. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청(전체)
  5008. fColorFilter("all"); ]]>
  5009. </script>
  5010. </caption>
  5011. <caption id="caption14" class="color_10" style="left:190px; top:10px; width:20px; height:17px; ">
  5012. <script type="javascript" ev:event="onclick">
  5013. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5014. fColorFilter("judgadjtresncd"); ]]>
  5015. </script>
  5016. </caption>
  5017. <caption id="caption15" style="left:215px; top:10px; width:50px; height:17px; ">
  5018. <![CDATA[심사변경]]>
  5019. <script type="javascript" ev:event="onclick">
  5020. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5021. fColorFilter("judgadjtresncd"); ]]>
  5022. </script>
  5023. </caption>
  5024. <caption id="caption16" class="color_1" style="left:275px; top:10px; width:20px; height:17px; ">
  5025. <script type="javascript" ev:event="onclick">
  5026. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5027. fColorFilter("probordyn");]]>
  5028. </script>
  5029. </caption>
  5030. <caption id="caption17" style="left:300px; top:10px; width:50px; height:17px; ">
  5031. <![CDATA[문제처방]]>
  5032. <script type="javascript" ev:event="onclick">
  5033. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5034. fColorFilter("probordyn"); ]]>
  5035. </script>
  5036. </caption>
  5037. <caption id="caption18" class="color_4" style="left:360px; top:10px; width:20px; height:17px; ">
  5038. <script type="javascript" ev:event="onclick">
  5039. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5040. fColorFilter("opprcp");]]>
  5041. </script>
  5042. </caption>
  5043. <caption id="caption19" style="left:385px; top:10px; width:70px; height:17px; ">
  5044. <![CDATA[수술중처방]]>
  5045. <script type="javascript" ev:event="onclick">
  5046. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5047. fColorFilter("opprcp"); ]]>
  5048. </script>
  5049. </caption>
  5050. <caption id="caption20" class="color_5" style="left:457px; top:10px; width:15px; height:15px; ">
  5051. <script type="javascript" ev:event="onclick">
  5052. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5053. fColorFilter("execdeptprcpyn");]]>
  5054. </script>
  5055. </caption>
  5056. <caption id="caption21" style="left:482px; top:10px; width:75px; height:17px; ">
  5057. <![CDATA[시행부서처방]]>
  5058. <script type="javascript" ev:event="onclick">
  5059. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5060. fColorFilter("execdeptprcpyn"); ]]>
  5061. </script>
  5062. </caption>
  5063. <caption id="caption25" class="color_9" style="left:652px; top:10px; width:15px; height:15px; ">
  5064. <script type="javascript" ev:event="onclick">
  5065. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5066. fColorFilter("cpyn"); ]]>
  5067. </script>
  5068. </caption>
  5069. <caption id="caption26" style="left:677px; top:10px; width:48px; height:17px; ">
  5070. <![CDATA[non-CP]]>
  5071. <script type="javascript" ev:event="onclick">
  5072. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5073. fColorFilter("cpyn"); ]]>
  5074. </script>
  5075. </caption>
  5076. <button id="btn_EnvSetup" class="btn4_letter4" style="left:990px; top:5px; width:56px; height:22px; ">
  5077. <caption>환경저장</caption>
  5078. <script type="javascript" ev:event="DOMActivate">
  5079. <![CDATA[
  5080. getOrderInfoOfCol("grd_ordlist");
  5081. getOrderInfoOfChk("cmb_judgresn");
  5082. ]]>
  5083. </script>
  5084. </button>
  5085. <caption id="caption27" class="color_2" style="left:565px; top:10px; width:15px; height:15px; ">
  5086. <script type="javascript" ev:event="onclick">
  5087. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5088. fColorFilter("spcljudgyn"); ]]>
  5089. </script>
  5090. </caption>
  5091. <caption id="caption28" style="left:590px; top:10px; width:55px; height:17px; ">
  5092. <![CDATA[선별심사]]>
  5093. <script type="javascript" ev:event="onclick">
  5094. <![CDATA[
  5095. // 20091116 JHP 범례 선택시 필터기능 적용요청
  5096. fColorFilter("spcljudgyn"); ]]>
  5097. </script>
  5098. </caption>
  5099. <caption id="caption43" class="color_9" style="left:734px; top:10px; width:15px; height:15px; background-color:#ffff00; ">
  5100. <script type="javascript" ev:event="onclick">
  5101. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5102. fColorFilter("cpyn"); ]]>
  5103. </script>
  5104. </caption>
  5105. <caption id="caption44" style="left:759px; top:10px; width:78px; height:17px; ">
  5106. <![CDATA[야간,공휴가산]]>
  5107. <script type="javascript" ev:event="onclick">
  5108. <![CDATA[// 20091116 JHP 범례 선택시 필터기능 적용요청
  5109. fColorFilter("cpyn"); ]]>
  5110. </script>
  5111. </caption>
  5112. </group>
  5113. </xhtml:body>
  5114. </xhtml:html>