1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[ /*
-
- 주사실메인(SMMNI00100.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var xBizTrgtManListPath = "/root/main/biztrgtman/biztrgtmanlist";
-
- //20090318 dhkim 주사실 코드를 전역변수로 선언
- var injDeptcd;
- var injDeptnm;
- //user session의 부서정보
- var dutplcecd;
- var dutplcenm;
- //20090512 dhkim 서울성모 기관코드 기준자료
- var seoulinstcd;
- //20100224 dhkim 기관코드추가
- var uijbinstcd;//의정부
- var bucinstcd;//부천
- var vctinstcd;//빈센트
- var yuidinstcd;//여의도
- var rcptyn = "";
- /**
- * 20091006 dhkim
- * 주사라벨출력할 내역을 초기설정한다.
- * 20091016 dhkim
- * - 믹스시 처방갯수를 4개에서 3개로 조정
- * - 현재일자+현재시간이 아닌 처방일자+현재시간으로 출력
- * 20091029 dhkim
- * - 믹스내역출력시 for문의 변수를 i가 아닌 k로 새로 부여하여 반복함 (i변수를 두번사용하여 무한루프 돌았음.)
- */
- function fPrintINJLabel(){
-
-
- // 주사라벨 바코드 출력기능_20090515(ByJA)
- //1. 바코드 라벨 초기 설정값 조회
- var scrnid = "SMMNI00100";
-
-
- ds_barcdprntsetup.clearData();
- fGetBarCodeInfo(scrnid); // CareCom.xjs
- lzzfMakeBrcdPrntObjHanDo("CommAX");
- lf_convertXmlToDs(ds_barcdprntsetup.getColumn(0,"prntsetupinfo")); //20180425 추가
-
- //2. 바코드 라벨 환경설정
- var barcdRef = "/root/main/barcdprntsetup/prntsetupinfo/setupinfo";
- var portOpenTF = fSetNursBarcdInfo(barcdRef); // CareCom.js
-
- //3. 주사라벨 출력
- //var prcpdetllistRef= "/root/main/prcpdetl/prcpdetllist";
-
- //호출변수값 설정
- var pid, orddeptnm, patnm, sexage, prcpcd, prcpvol, prcpqty, abbrnm, ast, prcpdelivefact, prcpdd, labelprttm;
- var actorddd;//20091214 dhkim 추가(mix내역 출력시 예약일자로 구분해 연속처방 전체가 모두 출력되는 오류 제거)
- var execprcpuniqno;
- var patinfoStr = "";
- var prcpStr = "";
- var labelprtdtStr = "";
- var mixcnt = 0;
-
- //20170308 추가 ,라벨에 주민번호 보여주기위해
- rrgstno = ds_rghtreflist.getColumn(0, "rrgstno");
-
- //믹스를 위한 체크상태값 추가
- var flag;
- var stat;
- for(var i = 0; i < ds_grd_prcpdetl.rowcount; i++){
- flag = ds_grd_prcpdetl.getColumn(i,"flag");
- if(flag == "1"){
- ds_grd_prcpdetl.setColumn(i,"chklb", "1"); //믹스추가후 체크상태
- }else{
- ds_grd_prcpdetl.setColumn(i,"chklb", "0"); //믹스추가후 체크해제상태
- }
- //2011.08.09 by kya ACTING 한 것 만 주사라벨 출력되도록
- stat = ds_grd_prcpdetl.getColumn(i,"stat");
- if( flag == "1" && stat != "6"){ //시행완료가 아니면
- sysf_messageBox("Acting 완료가 아닙니다. Acting 후 주사라벨을 출력하세요.", "E","");
- return false;
- }
- }
-
- //var tempStr =""; // (20140206) 사용하지 않는 변수 주석처리함
-
- //20091019 dhkim mix가 3개 이상일때는 다음페이지로 보여준다.
- for(var i=0; i<ds_grd_prcpdetl.rowcount;i++){
-
- if(ds_grd_prcpdetl.getColumn(i,"chklb") == "1"){
-
- pid = ds_grd_prcpdetl.getColumn(i,"pid");
-
- pid = pid + "/" + rrgstno.substr(0,8); //20170308 추가
-
- orddeptnm = ds_grd_prcpdetl.getColumn(i,"orddeptnm");
- patnm = ds_grd_prcpdetl.getColumn(i,"patnm");
- sexage = ds_grd_prcpdetl.getColumn(i,"sexage");
-
- patinfoStr = orddeptnm + " " + patnm + " (" + sexage + ")";
-
- prcpcd = ds_grd_prcpdetl.getColumn(i,"prcpnm");
- prcpvol = ds_grd_prcpdetl.getColumn(i,"prcpvol");
- prcpqty = ds_grd_prcpdetl.getColumn(i,"prcpqty");
-
- //20091019 dhkim prcpdd(라벨 젤 아랫줄에 출력되는 일자)는 현재일자가 아닌 처방일자임
- prcpdd = ds_grd_prcpdetl.getColumn(i,"prcpdd");
-
- prcpdd = prcpdd.substr(0,4) + "/"+prcpdd.substr(4,2) + "/" + prcpdd.substr(6,2);
- labelprttm = utlf_getCurrentTime();
- labelprttm = labelprttm.substr(0,2) +":"+ labelprttm.substr(2,2);
- labelprtdtStr = prcpdd + " " + labelprttm;//처방일자 + 현재시간
-
- mix = ds_grd_prcpdetl.getColumn(i,"mix");
-
- if(mix != "-" && mix > 0){
-
- prcpStr = prcpcd + " " + prcpvol + "/" + prcpqty + "♬";
- execprcpuniqno =ds_grd_prcpdetl.getColumn(i,"execprcpuniqno");
-
- //20091215 dhkim 연속처방 믹스라벨이 선택하지 않은 것까지 전체다 출력되는 오류 수정
- actorddd = ds_grd_prcpdetl.getColumn(i,"actorddd");
-
- var _execprcpuniqno, _mix, _prcpcd, _prcpvol, _prcpqty;
- for(var j = 0; j < ds_grd_prcpdetl.rowcount; j++){
-
- _execprcpuniqno = ds_grd_prcpdetl.getColumn(j,"execprcpuniqno");
- _mix = ds_grd_prcpdetl.getColumn(j,"mix");
- _prcpcd = ds_grd_prcpdetl.getColumn(j,"prcpnm");
- //_prcpcd = model.getValue(prcpdetllistRef + "[" + j + "]/prcpcd");
- _prcpvol = ds_grd_prcpdetl.getColumn(j,"prcpvol");
- _prcpqty = ds_grd_prcpdetl.getColumn(j,"prcpqty");
-
- //20091215 dhkim 연속처방 믹스라벨이 선택하지 않은 것까지 전체다 출력되는 오류 수정
- _actorddd = ds_grd_prcpdetl.getColumn(j,"actorddd");
-
- if(execprcpuniqno != _execprcpuniqno && mix == _mix
- && actorddd == _actorddd){//20091215 dhkim 연속처방 믹스라벨이 선택하지 않은 것까지 전체다 출력되는 오류 수정
- mixcnt++;
- prcpStr += _prcpcd + " " + _prcpvol + "/" + _prcpqty + "♬";
- ds_grd_prcpdetl.setColumn(j,"chklb", "0"); //믹스추가후 체크해제상태
- }
- }
-
- //20091019 dhkim mix가 3개 이상일때는 다음페이지로 보여준다.
- if(mixcnt < 3){
- prcpStr = prcpStr.substring(0, (prcpStr.length-1));
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "Y", "1/1");
-
- }else{
- //20091019 dhkim 처방갯수가 3개가 넘어가면 다음페이지로 출력해야하므로 페이지 번호를 지정한다.
- prcpStr = prcpStr.substring(0, parseInt(prcpStr.length)-1);//맨마지막은 배열에서 제외
-
-
- var prcpArr = prcpStr.split("♬");
-
- var quot = parseInt(prcpArr.length/3);//몫
- var rem = parseInt(prcpArr.length%3);//나머지
-
- var totPage = 0;//총페이지
- var curPage = 0;//현재페이지
-
- var pageCntStr = "";
-
- if(rem != 0){
-
- totPage = quot + 1;
- prcpStr = "";
-
-
- }else{
- totPage = quot;
- prcpStr = "";
- }
-
- //alert("---mix3개이상시작---mix번호:"+mix+"---" + prcpArr);
- for(var k = 0; k < prcpArr.length; k++){
-
- //alert("mix번호:"+mix+"---"+k+"번째---" + prcpArr[k]);
- prcpStr += prcpArr[k] + "♬";
-
-
- if(k > 0 && parseInt((k+1)%3) == 0){//한페이지에 3개씩 출력 위해
- curPage++;
- pageCntStr = curPage + "/" + totPage;
- //alert(prcpStr);
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "Y", pageCntStr);
- prcpStr = "";
- }else{
- if(k == (prcpArr.length-1)){//3개씩출력한 나머지 값 출력 위해
- curPage++;
- pageCntStr = curPage + "/" + totPage;
- //alert(prcpStr);
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "Y", pageCntStr);
- prcpStr = "";
- }
- }
- }
-
- }
-
- }else{
- //20170414 수정
- abbrnm = ds_grd_prcpdetl.getColumn(i,"abbrnm");
- ast = ds_grd_prcpdetl.getColumn(i,"ast");
- prcpdelivefact = ds_grd_prcpdetl.getColumn(i,"prcpdelivefact");
-
- prcpStr = prcpcd + " " + prcpvol + "/" + prcpqty + "/" + abbrnm;
- //alert(prcpStr);
-
-
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "N", "");
- }
-
- }
-
- }
-
- }
- function fPrintINJLabelNew(){
-
- //20141127 주사라벨 + acting
-
- var injlacting = ds_main.getColumn(0,"injlacting");
- // 주사라벨 바코드 출력기능_20090515(ByJA)
- //1. 바코드 라벨 초기 설정값 조회
- var scrnid = "SMMNI00100";
-
- ds_barcdprntsetup.clearData();
- fGetBarCodeInfo(scrnid); // CareCom.js
- lzzfMakeBrcdPrntObjHanDo("CommAX");
-
- //2. 바코드 라벨 환경설정
- var barcdRef = "/root/main/barcdprntsetup/prntsetupinfo/setupinfo";
- var portOpenTF = fSetNursBarcdInfo(barcdRef); // CareCom.js
-
- //3. 주사라벨 출력
- //var prcpdetllistRef= "/root/main/prcpdetl/prcpdetllist";
-
- //호출변수값 설정
- var pid, orddeptnm, patnm, sexage, prcpcd, prcpvol, prcpqty, abbrnm, ast, prcpdelivefact, prcpdd, labelprttm;
- var actorddd;//20091214 dhkim 추가(mix내역 출력시 예약일자로 구분해 연속처방 전체가 모두 출력되는 오류 제거)
- var execprcpuniqno;
- var patinfoStr = "";
- var prcpStr = "";
- var labelprtdtStr = "";
- var mixcnt = 0;
-
- //20170308 추가 ,라벨에 주민번호 보여주기위해
- var rrgstno = ds_rghtreflist.getColumn(0, "rrgstno");
-
- //믹스를 위한 체크상태값 추가
- var flag;
- var stat;
- for(var i = 0; i < ds_grd_prcpdetl.rowcount; i++){
- flag = utlf_transNullToEmpty(ds_grd_prcpdetl.getColumn(i,"flag"));
- if(flag == "1"){
- ds_grd_prcpdetl.setColumn(i,"chklb", "1"); //믹스추가후 체크상태
- }else{
- ds_grd_prcpdetl.setColumn(i,"chklb", "0"); //믹스추가후 체크해제상태
- }
- //2011.08.09 by kya ACTING 한 것 만 주사라벨 출력되도록
- stat = ds_grd_prcpdetl.getColumn(i,"stat");
- if(injlacting == "1") {
- // 주사라벨 + acting
- } else {
- if( flag == "1" && stat != "6"){ //시행완료가 아니면
- sysf_messageBox("Acting 완료가 아닙니다. Acting 후 주사라벨을 출력하세요.", "E","");
- return false;
- }
- }
- }
-
- var tempStr ="";
-
- //20091019 dhkim mix가 3개 이상일때는 다음페이지로 보여준다.
- for(var i=0; i<ds_grd_prcpdetl.rowcount;i++){
-
- if( utlf_transNullToEmpty(ds_grd_prcpdetl.getColumn(i,"chklb")) == "1"){
-
- pid = ds_grd_prcpdetl.getColumn(i,"pid");
- pid = pid + "/" + rrgstno.substr(0,8); //20170308 추가
- orddeptnm = ds_grd_prcpdetl.getColumn(i,"orddeptnm");
- patnm = ds_grd_prcpdetl.getColumn(i,"patnm");
- sexage = ds_grd_prcpdetl.getColumn(i,"sexage");
-
- patinfoStr = orddeptnm + " " + patnm + " (" + sexage + ")";
-
- prcpcd = ds_grd_prcpdetl.getColumn(i,"prcpnm");
- prcpvol = ds_grd_prcpdetl.getColumn(i,"prcpvol");
- prcpqty = ds_grd_prcpdetl.getColumn(i,"prcpqty");
- abbrnm = ds_grd_prcpdetl.getColumn(i,"abbrnm"); //경로추가 20170621
-
- //20091019 dhkim prcpdd(라벨 젤 아랫줄에 출력되는 일자)는 현재일자가 아닌 처방일자임
- prcpdd = ds_grd_prcpdetl.getColumn(i,"prcpdd");
-
- prcpdd = prcpdd.substr(0,4) + "/"+prcpdd.substr(4,2) + "/" + prcpdd.substr(6,2);
- labelprttm = utlf_getCurrentTime();
- labelprttm = labelprttm.substr(0,2) +":"+ labelprttm.substr(2,2);
- labelprtdtStr = prcpdd + " " + labelprttm;//처방일자 + 현재시간
-
- mix = ds_grd_prcpdetl.getColumn(i,"mix");
-
- if(mix != "-" && mix > 0){
-
- prcpStr = prcpcd + " " + prcpvol + "/" + prcpqty + "♬";
- execprcpuniqno =ds_grd_prcpdetl.getColumn(i,"execprcpuniqno");
-
- //20091215 dhkim 연속처방 믹스라벨이 선택하지 않은 것까지 전체다 출력되는 오류 수정
- actorddd = ds_grd_prcpdetl.getColumn(i,"actorddd");
-
- var _execprcpuniqno, _mix, _prcpcd, _prcpvol, _prcpqty, _abbrnm;
- for(var j = 0; j < ds_grd_prcpdetl.rowcount; j++){
-
- _execprcpuniqno = ds_grd_prcpdetl.getColumn(j,"execprcpuniqno");
- _mix = ds_grd_prcpdetl.getColumn(j,"mix");
- _prcpcd = ds_grd_prcpdetl.getColumn(j,"prcpnm");
- //_prcpcd = model.getValue(prcpdetllistRef + "[" + j + "]/prcpcd");
- _prcpvol = ds_grd_prcpdetl.getColumn(j,"prcpvol");
- _prcpqty = ds_grd_prcpdetl.getColumn(j,"prcpqty");
- _abbrnm = ds_grd_prcpdetl.getColumn(j,"abbrnm");
-
- //20091215 dhkim 연속처방 믹스라벨이 선택하지 않은 것까지 전체다 출력되는 오류 수정
- _actorddd = ds_grd_prcpdetl.getColumn(j,"actorddd");
-
- if(execprcpuniqno != _execprcpuniqno && mix == _mix
- && actorddd == _actorddd){//20091215 dhkim 연속처방 믹스라벨이 선택하지 않은 것까지 전체다 출력되는 오류 수정
- mixcnt++;
- prcpStr += _prcpcd + " " + _prcpvol + "/" + _prcpqty + "/" + _abbrnm + "♬";
- ds_grd_prcpdetl.setColumn(j,"chklb", "0"); //믹스추가후 체크해제상태
- }
- }
-
- //20091019 dhkim mix가 3개 이상일때는 다음페이지로 보여준다.
- if(mixcnt < 3){
- prcpStr = prcpStr.substring(0, (prcpStr.length-1));
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "Y", "1/1");
-
- }else{
- //20091019 dhkim 처방갯수가 3개가 넘어가면 다음페이지로 출력해야하므로 페이지 번호를 지정한다.
- prcpStr = prcpStr.substring(0, parseInt(prcpStr.length)-1);//맨마지막은 배열에서 제외
-
-
- var prcpArr = prcpStr.split("♬");
-
- var quot = parseInt(prcpArr.length/3);//몫
- var rem = parseInt(prcpArr.length%3);//나머지
-
- var totPage = 0;//총페이지
- var curPage = 0;//현재페이지
-
- var pageCntStr = "";
-
- if(rem != 0){
-
- totPage = quot + 1;
- prcpStr = "";
-
-
- }else{
- totPage = quot;
- prcpStr = "";
- }
-
- //alert("---mix3개이상시작---mix번호:"+mix+"---" + prcpArr);
- for(var k = 0; k < prcpArr.length; k++){
-
- //alert("mix번호:"+mix+"---"+k+"번째---" + prcpArr[k]);
- prcpStr += prcpArr[k] + "♬";
-
-
- if(k > 0 && parseInt((k+1)%3) == 0){//한페이지에 3개씩 출력 위해
- curPage++;
- pageCntStr = curPage + "/" + totPage;
- //alert(prcpStr);
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "Y", pageCntStr);
- prcpStr = "";
- }else{
- if(k == (prcpArr.length-1)){//3개씩출력한 나머지 값 출력 위해
- curPage++;
- pageCntStr = curPage + "/" + totPage;
- //alert(prcpStr);
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "Y", pageCntStr);
- prcpStr = "";
- }
- }
- }
-
- }
-
- }else{
- abbrnm = ds_grd_prcpdetl.getColumn(i,"abbrnm");
- ast = ds_grd_prcpdetl.getColumn(i,"ast");
- prcpdelivefact = ds_grd_prcpdetl.getColumn(i,"prcpdelivefact");
-
- prcpStr = prcpcd + " " + prcpvol + "/" + prcpqty + "/" + abbrnm;
- //alert(prcpStr);
-
-
- fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, "N", "");
- }
-
- }
-
- }
-
- }
- /**
- * 20091006 dhkim
- * 주사라벨을 출력한다.
- */
- function fPrtCareInjLabel_INJ(barcdRef, pid, patinfoStr, prcpStr, abbrnm, ast, prcpdelivefact, labelprtdtStr, portOpenTF, mixyn, pageCntStr){
- utlf_addLog("pid:"+pid);
- utlf_addLog("patinfoStr:"+patinfoStr);
- utlf_addLog("prcpStr:"+prcpStr);
- utlf_addLog("abbrnm:"+abbrnm);
- utlf_addLog("ast:"+ast);
- utlf_addLog("prcpdelivefact:"+prcpdelivefact);
- utlf_addLog("labelprtdtStr:"+labelprtdtStr);
- utlf_addLog("portOpenTF:"+portOpenTF);
- utlf_addLog("mixyn:"+mixyn);
- utlf_addLog("pageCntStr:"+pageCntStr);
-
- //var esc = String.fromCharCode(27); // (20140206) 사용하지 않는 변수 주석처리함
- //var sPrntKind = model.getvalue(barcdRef + "/prntkind"); // (20140206) 사용하지 않는 변수 주석처리함
- var iLeft = ds_data_blank.getColumn(0,"left");
- var iTop = ds_data_blank.getColumn(0,"top");
- if(utlf_isNull(iLeft) || iLeft == "-"){
- iLeft = 0;
- }
- if(utlf_isNull(iTop) || iTop == "-"){
- iTop = 0;
- }
- if(ast=="Y"){
- ast = "AST( )/";
- }else{
- ast = "";
- }
- var patnm = ds_grd_prcpdetl.getColumn(0,"patnm");
- var sexage = ds_grd_prcpdetl.getColumn(0,"sexage");
- var prcpcd = ds_grd_prcpdetl.getColumn(0,"prcpcd");
- var orddeptnm = ds_grd_prcpdetl.getColumn(0,"orddeptnm");
-
-
- var execprcpvol = ds_grd_prcpdetl.getColumn(0,"prcpvol");
- var prcpvolunitflag = "";
- var execprcpqty = ""; // 2014-02-10 중복된 선언으로 인한 재선언
- var prcpqtyunitflag = ""; // 2014-02-10 중복된 선언으로 인한 재선언
- //var execprcpqty = "";
- //var prcpqtyunitflag ="";
- var prcpdd = ds_grd_prcpdetl.getColumn(0,"prcpdd");
- var roomcd = "";
- var medirectm = "";
- var totalmedirectm = "";
-
- dsf_createDsRow("ds_BarCode_DrugNode"
- , [{col: "pid", val:pid}
- ,{col: "ast", val:ast}
- ,{col: "prcpdelivefact", val:prcpdelivefact}
- ,{col: "prcpStr", val:prcpStr}
- ,{col: "patinfoStr", val:patinfoStr}
- ,{col: "orddeptnm", val:orddeptnm}
- ,{col: "patnm", val:patnm}
- ,{col: "sexage", val:sexage}
- ]);
-
-
-
- fPrtCareInjLabel("injroom", barcdRef, pid, patnm, sexage, prcpcd, execprcpvol+prcpvolunitflag, execprcpqty+prcpqtyunitflag , abbrnm, ast, prcpdelivefact, prcpdd, "", utlf_getCurrentTime(), roomcd, medirectm, totalmedirectm, portOpenTF);
-
- return;
-
- }
- /*
- * 20090318 dhkim
- * 화면 초기화 펑션으로 분리함
- */
- function cf_TRMNI00109(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function fInit(){
- //간호하드코딩 테이블 조회_20091026_SMY
- //var pCode = ""077""; // 조회할 CdGrupID 코드정보 // (20140206) 사용하지 않는 변수 주석처리함
- var pDate = utlf_getCurrentDate(); //조회기준일자
- ds_main_leftref.setColumn(0,"bizdd", pDate );
- dsf_createDs("ds_send");
- fGetNursHardCdInfo("'077'", pDate);
-
- //20090911 dhkim 변경요청(3158번) 전일 액팅 미마감건 존재시 화면 blocking
-
- // TRMNI00201
-
- dutplcecd = sysf_getUserInfo("dutplcecd");
- dutplcenm = sysf_getUserInfo("dutplcenm");
- //20150414 kya 중앙주사실, 소아주사실 지정
- if(dutplcecd == "3050317000" ) {
- dsf_createDsRow("ds_send"
- , [{col: "cdgrupid", val:"211"}
- ]);
-
- } else {
- dsf_createDsRow("ds_send"
- , [{col: "cdgrupid", val:"032"}
- ]);
- }
-
-
-
- var oParam = {};
- oParam.id = "TRMNI00109";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetNursDeptInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_injdeptlist=injdeptlist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00109";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI00109") < 0){
- sysf_messageBox("간호에 등록된 주사실코드 조회를 실패하였습니다.", "E999");
- return false;
- }else{
- injDeptcd = ds_injdeptlist.getColumn(0,"deptcd");
- injDeptnm = ds_injdeptlist.getColumn(0,"deptnm");
- }
-
- //20090512 dhkim 서울성모기관코드 조회
- ds_send.setColumn(0,"cdgrupid","079");
-
- var oParam = {};
- oParam.id = "TRMNI01303";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetNursBaseCd";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_dutinstinfo=execinfolist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00109";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI01303") < 0){
- sysf_messageBox("간호에 등록된 병원기관코드 조회를 실패하였습니다.", "E999");
- return false;
- }
-
- //20090512 dhkim 소아청소년과제외 옵션 추가(체크박스)
- ds_send.setColumn(0,"cdgrupid","078");
- var oParam = {};
- oParam.id = "TRMNI01302";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetNursBaseCd";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_execinfo=execinfolist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00109";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI01302") < 0){
- sysf_messageBox("간호에 등록된 소아청소년과제외옵션 조회를 실패하였습니다.", "E999");
- return false;
- }else{
-
- seoulinstcd = ds_dutinstinfo.getColumn(0,"basecd");
- //서울성모병원의 경우 default로 소아청소년과제외체크
- //20090618 dhkim 서울성모병원의 경우 센터명을 보여주고
- if(seoulinstcd == sysf_getUserInfo("dutplceinstcd")){
- ds_main_leftref.setColumn(0,"deptexc", "Y");
-
- group3.grd_biztrgtman.setFormatColProperty(group3.grd_biztrgtman.getBindCellIndex("body","centnm"),"size",75);
-
- group3.switch1.case1.grd_ordrsrv.setFormatColProperty(group3.switch1.case1.grd_ordrsrv.getBindCellIndex("body","centnm"),"size",99);
- group3.grd_ordsper.setFormatColProperty(group3.grd_ordsper.getBindCellIndex("body","centnm"),"size",100);
- group3.grd_injsper.setFormatColProperty(group3.grd_injsper.getBindCellIndex("body","centnm"),"size",100);
-
- //chk_deptexc.attribute("visiblity") = "visible";
- }
- //그 외 병원은 default 체크해제
- //타병원의경우 센터명을 숨김
- else{
- //빈센트병원인 경우 소아청소년과 디폴트 체크
- //supcdid : "02" : 의정부성모, "03" : 부천성가병원, "04" : 빈센트
- //2010.02.24 dhkim - 요청번호(10110) 주사실 로그인시 [소아청소년과 제외] check 되지 않도록 요청함
- ds_codelist.filter("cdgrupid == '077'")
- ds_codelist.applyChange();
- uijbinstcd = ds_codelist.lookup("supcdid","02","cdid");//의정부
- bucinstcd = ds_codelist.lookup("supcdid","03","cdid");//부천
- vctinstcd = ds_codelist.lookup("supcdid","04","cdid");//빈센트
- yuidinstcd = ds_codelist.lookup("supcdid","05","cdid");//여의도
- ds_codelist.filter("");
-
- if(vctinstcd == sysf_getUserInfo("dutplceinstcd")){
-
- ds_main_leftref.setColumn(0,"deptexc", "Y");
-
-
- }else{
- ds_main_leftref.setColumn(0,"deptexc", "");
-
- }
- group3.grd_biztrgtman.setFormatColProperty(group3.grd_biztrgtman.getBindCellIndex("body","centnm"),"size",0);
- group3.switch1.case1.grd_ordrsrv.setFormatColProperty(group3.switch1.case1.grd_ordrsrv.getBindCellIndex("body","centnm"),"size",0);
- group3.grd_ordsper.setFormatColProperty(group3.grd_ordsper.getBindCellIndex("body","centnm"),"size",0);
- group3.grd_injsper.setFormatColProperty(group3.grd_injsper.getBindCellIndex("body","centnm"),"size",0);
-
- }
-
- }
-
-
- // 환자마다 체크하는 것이 아니라, 처음에만 미마감내역이 존재하면 조회를 blocking한다.
- if(dutplcecd == injDeptcd){
- var isBlocking = fCheckEndYn();//20090911 dhkim 마감여부체크추가
- if(isBlocking){
- return;
- }
- }
- //부위기준자료조회
- fpartflaginfo();
-
- // 의료수익 Block제어 체크로직(Y : Blocking처리, N : skip)
- var arrParam = [{dsNm: "ds_init_P0453", cdGrpId: "P0453"}
- ]
- appf_getCodeList(arrParam);
-
-
- ds_temp.setColumn(0,"endyn",ds_init_P0453.getColumn(0,"cdid"));
-
-
- ds_main_leftref.setColumn(0,"exec", dutplcecd);
- ds_main_leftref.setColumn(0,"execnm",dutplcenm);
- ds_grd_biztrgtman.clearData();
- ds_grd_ordrsrv.clearData();
- ds_grd_ordsper.clearData();
- ds_grd_injsper.clearData();
- ds_grd_prcpdetl.clearData();
- ds_grd_testrsrv.clearData();
- ds_grd_snwinfo.clearData();
-
-
- group3.group2.ipt_dd.value = utlf_getCurrentDate();// 기준일에 현재날짜(디폴트);
-
-
- //20090713 dhkim 업무기준 추가
- ds_main_leftref.setColumn(0,"workflag", "1");//처방일자
-
-
- //20150703 kya 사용자 환경설정 tab 세팅
- //right 적용일자 부여
- fSetUserTermInit();
- //alert("sdate = " +ipt_sdate.value);
- //20090318 dhkim 주사실명칭 하드코딩을 간호부서기준자료코드와 로그인사용자정보로 변경함
- if(dutplcecd == injDeptcd){
- //주사실사용자의 경우 당일업무대상자리스트 조회
- fbiztrgtman("biztrgt");
-
- }else{
-
- //주사실사용자가 아닌 경우 상단정보가 있을때에 오른쪽 환자정보 조회
- var node = sysf_getGlobalVariable("paminfo");
- dsf_setCSVToDs("ds_paminfo",node);
-
- var uppid = ds_paminfo.getColumn(0,"pid");
- if(!utlf_isNull(uppid)){
-
- group3.group1.ipt_pid.value = ds_paminfo.getColumn(0,"pid");
- //20090629 dhkim 7월 고시변경으로 인한 리턴값 추가
- var rtn = fpidref("starts");
- if(!rtn){
- return;
- }
- fRghtDataList();
-
- }
-
- }
-
- if(group3.group1.cmb_term.value == "0" ){
- group3.group1.ipt_sdate.enable = true;
- group3.group1.ipt_edate.enable = true;
- } else {
- var date2 = group3.group1.ipt_edate.value;
- var term = group3.group1.cmb_term.value;
- group3.group1.ipt_sdate.value = date2.getAddDate(-term,"D").getDateFormat("YYYYMMDD") ;
-
- group3.group1.ipt_sdate.enable = false;
- group3.group1.ipt_edate.enable = false;
- }
-
- }
- /**
- * @group :
- * @ver : 2007.05.03
- * 2009.02.25 dhkim 테스트중...통계건수 클릭시 이 펑션 타게 테스트중임(플래그statflag 추가)
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 당일업무대상자리스트
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function cf_TRMNI00101(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function fbiztrgtman(flag, statflag){
- var flagshidden= ds_hidden.getColumn(0,"flags");
- var execnm = ds_main_leftref.getColumn(0,"execnm");
- var execcd = ds_main_leftref.getColumn(0,"exec");
- //20090713 dhkim 업무기준 조회조건추가
- var workflag = ds_main_leftref.getColumn(0,"workflag");
-
- //20090911 dhkim 마감일자
- var enddd = utlf_getCurrentDate().toDate("YYYYMMDD").getAddDate(-1, "D").getDateFormat("YYYYMMDD");
-
- //alert('fbiztrgtman 로그인정보 : ' + execcd + ', 주사실기준자료정보 : ' + injDeptcd);
-
- //20090318 dhkim 주사실명칭 하드코딩을 간호부서기준자료코드와 로그인사용자정보로 변경함
- if(flagshidden == "grd_ordsper" && execcd != injDeptcd){
- return;
- }
-
- //20090318 dhkim 주사실명칭 하드코딩을 간호부서기준자료코드와 로그인사용자정보로 변경함
- if(execcd != injDeptcd){
- //주사실 사용자가 아닐때
- return;
- }
-
-
- //그리드 내용 클릭시
- if(flag == "biztrgt"){
-
-
-
- //20090512 dhkim 소아청소년과제외옵션, 소아청소년과코드 추가
- var deptexc = ds_main_leftref.getColumn(0,"deptexc");
- dsf_createDsRow("ds_send",
- [{col:"bizdd", val: ds_main_leftref.getColumn(0,"bizdd")}
- ,{col:"execflag", val:ds_main_leftref.getColumn(0,"execflag")}
- ,{col:"exec", val:ds_main_leftref.getColumn(0,"exec")}
- ,{col:"endblkyn", val:"Y"}
- ,{col:"enddd", val:enddd}
- ,{col:"workflag", val:ds_main_leftref.getColumn(0,"workflag")}
- ,{col:"stats", val:utlf_transNullToEmpty(statflag)}
- ,{col:"deptexc", val:deptexc}
- ]);
-
- if(deptexc == "Y"){
- dsf_makeValue(ds_send,"deptexccd","string", ds_execinfo.lookup("basecd","Y","supcdid"));//소아청소년과코드
- }
- var oParam = {};
- oParam.id = "TRMNI00101";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetBizTrgtmanData";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_grd_biztrgtman=biztrgtmanlist ds_biztrgtman_statslist=statslist ds_biztrgtman_endyninfo=endyninfo";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00101";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TRMNI00101") > -1){
-
- //20090715 dhkim 그리드 업무일자 컬럼명 변경
- var workddstr = ds_main_leftref.getColumn(0,"workflag");
- var workflag = workddstr ;
- if(utlf_isNull(workddstr)){
- workddstr = "업무일자";
- }else{
-
- if(workflag == "1"){
- workddstr = "처방일자";
- }else if(workflag == "2"){
- workddstr = "예약일자";
- }else{
- workddstr = "업무일자";
- }
- }
-
- group3.grd_biztrgtman.setCellProperty("head",group3.grd_biztrgtman.getBindCellIndex("body","workdd"),"text",workddstr);
-
-
-
- var execnmchk = ds_main_leftref.getColumn(0,"execnm");
- var execcdchk = ds_main_leftref.getColumn(0,"exec");
-
- //alert('fbiztrgtman 로그인정보 : ' + execcdchk + ', 주사실기준자료정보 : ' + injDeptcd);
-
- //20090318 dhkim 주사실명칭 하드코딩을 간호부서기준자료코드와 로그인사용자정보로 변경함
- if(execcdchk == injDeptcd){
- //20090318 dhkim 주사실명칭 하드코딩을 주석처리
-
- group3.tar_memo.value="";
-
- ds_grd_ordrsrv.clearData();
- ds_grd_ordsper.clearData();
- ds_grd_injsper.clearData();
- ds_grd_prcpdetl.clearData();
- ds_grd_testrsrv.clearData();
- ds_grd_snwinfo.clearData();
-
- group3.group1.ipt_pid.value="";
- group3.group1.opt_hngnm.value="";
- group3.group1.opt_gndrage.value="";
- group3.group1.opt_rrgstno.value="";
-
- }
- }
- }
-
-
- var isBlocking = fCheckEndYn();//20090911 dhkim 마감여부체크추가
- if(isBlocking){
- return;
- }
-
-
- //acting 처리후 다시 조회시
- if(flag=="acting"){
- dsf_createDsRow("ds_send",
- [{col:"bizdd", val: ds_main_leftref.getColumn(0,"bizdd")}
- ,{col:"execflag", val:ds_main_leftref.getColumn(0,"execflag")}
- ,{col:"exec", val:ds_main_leftref.getColumn(0,"exec")}
- ,{col:"endblkyn", val:ds_temp.getColumn(0,"endyn")}
- ,{col:"workflag", val:ds_main_leftref.getColumn(0,"workflag")}
- ]);
-
- var oParam = {};
- oParam.id = "TRMNI00101";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetBizTrgtmanData";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_grd_biztrgtman=biztrgtmanlist ds_biztrgtman_statslist=statslist ds_biztrgtman_endyninfo=endyninfo";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00101";
- tranf_submit(oParam);
-
-
- }
- ds_grd_biztrgtman.rowposition = -1;
- }
- /**
- * 20090911
- * dhkim
- * 업무대상자리스트 수납상태에 따른 색깔변경
- */
- function cf_TRMNI00112(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function fCheckEndYn(){
-
- var bizdd = ds_main_leftref.getColumn(0,"bizdd");
- if(utlf_isNull(bizdd)){
- sysf_messageBox('업무일자를 선택하십시오.', 'E');
- return false;
- }
-
-
- //진료정보테이블에서 가져와야함 ...
- var enddd;
- //var enddd = getCurrentDate().toDate('YYYYMMDD').getAddDate(-1, "D").getDateFormat('YYYYMMDD');
-
-
- dsf_createDsRow("ds_send",
- [{col:"bizdd", val:bizdd}
- ]);
-
- var oParam = {};
- oParam.id = "TRMNI00112";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetEndDayInfo";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_enddayinfo=enddayinfo";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00112";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI00112") < 0){
- sysf_messageBox('문제가 발생하여 전일마감일자조회를 실패하였습니다.', 'E');
- return false;
- }else{
- enddd = ds_enddayinfo.getColumn(0,"enddd");
- }
-
- var execnm = ds_main_leftref.getColumn(0,"execnm");
- //20170321 dutplcecd 로 가져옴.
-
-
- dsf_createDsRow("ds_send",
- [{col:"endblkyn", val:"Y"}
- ,{col:"enddd", val:enddd}
- ,{col:"exec", val:dutplcecd} //소아주사실 또는 중앙주사실
- ]);
-
- var oParam = {};
- oParam.id = "TRMNI00111";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetEndInfo";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_endyninfo=endyninfo";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00111";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI00111") > -1){
- var endblockyn = "Y";
- var endcount = ds_endyninfo.getColumn(0,"endyn"); // 마감여부 check
- if (endblockyn == 'Y'){ // 공통Block여부가 'Y'인 경우만 체크되도록
-
- if (endcount >= 1) { // 전일 마감되지 않은 건수가 있을경우
-
- var endddstr = enddd.substring(0,4) + '-' + enddd.substring(4, 6) + '-' + enddd.substring(6,8);
-
- sysf_messageBox(endddstr + " 의" + execnm + " 마감이 되지 않았습니다. 마감후 다시 조회하십시오.", "E");
-
- ds_grd_biztrgtman.clearData();
- ds_grd_ordrsrv.clearData();
- ds_grd_ordsper.clearData();
- ds_grd_injsper.clearData();
- ds_grd_prcpdetl.clearData();
- ds_grd_testrsrv.clearData();
- ds_grd_snwinfo.clearData();
-
-
- frmf_setParameter("fromdd", enddd);
- frmf_setParameter("todd", enddd);
- frmf_setParameter("enddd", enddd);
- frmf_setParameter("termkind", "1");//조회구간 기준일자
- frmf_setParameter("execflag", "2");//시행여부 : 완료
- frmf_setParameter("endflag", "N");//마감구분 : 마감전
- frmf_setParameter("ispopup", "Y");//메인에서 띄웠는지여부
-
- // 주사실 미시행 내역조회 및 마감 화면 open
- frmf_modal("SMMNI00200","SMMNI00200","","","1","15","128","","","","","","M");
- return true;
- }
- }
- }
-
- return false;
-
- }
- function cf_TRMNI00111(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @group :
- * @ver : 2007.05.04
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 등록번호에 따른 환자정보 검색
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fpidref(flag){
- var pid = group3.group1.ipt_pid.value;
- if(utlf_isNull(pid)){
- sysf_messageBox("환자를 지정하지", "E007")
- return false;
- }
-
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ]);
-
- var oParam = {};
- oParam.id = "TRMNI00102";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetPidRef";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_rghtreflist=rghtreflist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00102";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI00102") > -1){
- var hngnm=ds_rghtreflist.getColumn(0,"hngnm");
- //데이타가 없을시 이전 출력 내용 삭제.
- if(utlf_isNull(hngnm)){
- group3.group1.opt_hngnm.value="";
- group3.group1.opt_gndrage.value="";
- group3.group1.opt_rrgstno.value="";
- if(ds_rghtreflist.rowcount ==0) ds_rghtreflist.addRow();
- ds_rghtreflist.setColumn(0,"pid","");
- return false;
- }
-
-
- //20090629 dhkim
- //2009.07.01부터 보험료인상에 대한 주사실 액팅 시점의 수납 메시지 관련 원무인터페이스 호출추가
- //주사, 혈액에 대해서만
- dsf_createDs("ds_insurinfo");
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ,{col:"instcd", val:sysf_getUserInfo("dutplceinstcd")}
- ]);
-
- if(flag == "new"){
- var oParam = {};
- oParam.id = "TRMNI00110";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetInsurApplyYnInfo";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_insurinfo=insurlist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00110";
- tranf_submit(oParam);
-
- fRghtDataList();
- ds_grd_prcpdetl.clearData();
- }
- }
-
- return true;
- }
- function cf_TRMNI00102(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function cf_TRMNI00110(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- var prcprcptyn = ds_insurinfo.getColumn(0,"prcprcptyn");
- if(prcprcptyn == "Y"){
- sysf_messageBox("요율변경 대상자입니다.\r\n수납에서 정산할 수 있도록 안내 해 주시기 바랍니다.", "E");
- }
- }
- /**
- * @group :
- * @ver : 2007.05.10
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 업무대상자 리스트 클릭시..
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fBiztrgtClick(flag){
-
- dsf_makeValue(ds_hidden,"flags","string","grd_biztrgtman");
-
- if (flag=="acting"){
- var TRow = ds_grd_biztrgtman.rowcount;
- var chkpid = ds_send.getColumn(0,"pid");
- var chkorddd = ds_send.getColumn(0,"orddd");
-
- for (T=0; T<TRow; T++){
- var pid = ds_grd_biztrgtman.getColumn(T,"pid");
- var orddd = ds_grd_biztrgtman.getColumn(T,"orddd");
- if (pid == chkpid && orddd == chkorddd){
- //alert('pid input node : ' +model.getValue('/root/main/rghtref/rghtreflist/pid'));
- //alert('pid biz그리드 node : '+model.getValue(xBizTrgtManListPath+"["+T+"]/pid"));
- if(!utlf_isNull(ds_grd_biztrgtman.getColumn(T,"pid"))){
- ds_rghtreflist.setColumn(0,"pid",ds_grd_biztrgtman.getColumn(T,"pid"));
- }
- //alert('pid input node : ' +model.getValue('/root/main/rghtref/rghtreflist/pid'));
- //오른쪽 환자 데이타 조회에서 등록번호 데이타 입력후 조회
- //20090629 dhkim 7월 고시변경으로 인한 리턴값 추가
- var rtn = fpidref();
- if(!rtn){
- return ;
- }
- ds_grd_biztrgtman.rowposition = T;
- break;
- }
-
- var execnmchk = ds_main_leftref.getColumn(0,"execnm");
- var execcdchk = ds_main_leftref.getColumn(0,"exec");
-
- //alert('fBiztrgtClick 로그인정보 : ' + execcdchk + ', 주사실기준자료정보 : ' + injDeptcd);
-
- //20090318 dhkim 주사실명칭 하드코딩을 간호부서기준자료코드와 로그인사용자정보로 변경함
- if(execcdchk == injDeptcd){
-
- //20090318 dhkim 주사실명칭 하드코딩을 주석처리
- /*
- if (execnmchk == "주사실"){
- */
- if (pid != chkpid && orddd != chkorddd){
- if (T >= TRow){
-
- group3.tar_memo.value="";
-
- ds_grd_ordrsrv.clearData();
- ds_grd_ordsper.clearData();
- ds_grd_injsper.clearData();
- ds_grd_testrsrv.clearData();
- ds_grd_snwinfo.clearData();
-
- group3.group1.ipt_pid.value="";
- group3.group1.opt_hngnm.value="";
- group3.group1.opt_gndrage.value="";
- group3.group1.opt_rrgstno.value="";
-
- return;
- }
- }
- }
- }
- }
-
- if(ds_grd_biztrgtman.rowposition < 0){
- return;
- }
-
-
- if(flag!="acting"){
- //화면상단 정보설정
- var iRow = ds_grd_biztrgtman.rowposition;
- var xBizTrgtPath = "/root/main/biztrgtman/biztrgtmanlist";
- var ordtype = 'O';
- var pid = ds_grd_biztrgtman.getColumn(iRow,"pid");
- var orddd = ds_grd_biztrgtman.getColumn(iRow,"orddd").substr(0, 8);
- var cretno = ds_grd_biztrgtman.getColumn(iRow,"cretno");
- var instcd = ds_grd_biztrgtman.getColumn(iRow,"instcd");
- var param = ordtype + "▦" + pid + "▦" + orddd + "▦" + cretno + "▦" + instcd + "▦" + '' + "▦" + '';
- // var param = ordtype + "▦" + pid + "▦" + orddd + "▦" + cretno + "▦" + instcd + "▦" + '' + "▦" + orgorddd;
- // var param = ordtype + "▦" + pid + "▦" + orddd + "▦" + cretno + "▦" + instcd + "▦" + acptseqno + "▦" + orgorddd;
- frmf_setParameter("condparam", param);
- appf_initPatientInfo(param);
-
- }
- if (flag!="acting"){
- var iRow = ds_grd_biztrgtman.rowposition;
- ds_rghtreflist.setColumn(0,"pid",ds_grd_biztrgtman.getColumn(iRow,"pid"));
- //오른쪽 환자 데이타 조회에서 등록번호 데이타 입력후 조회
- //20090629 dhkim 7월고시변경으로 인해 리턴값 추가
-
- var rtn = fpidref("biztrgrman");
- if(!rtn){
- return;
- }
- ds_grd_biztrgtman.rowposition = iRow;
- }
-
- //20200128 코로나 바이러스 추가
- fc_check_coronavirus();
-
- //오른쪽 환자정보 조회(상병, 메모, 진료예약정보, 검사예약정보, 진료내역, 미시행주사내역)
- fRghtDataList();
-
- //처방상세조회
- var iRow = ds_grd_biztrgtman.rowposition;
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_grd_biztrgtman.getColumn(iRow,"pid")}
- ,{col:"drugdd", val:ds_grd_biztrgtman.getColumn(iRow,"orddd")}
- ,{col:"exec", val:ds_main_leftref.getColumn(0,"exec")}
- ,{col:"grdflag", val:"W"}
- ]);
-
- //2010.06.09 김달현 - colHidden에러 수정
- var prcpNmColHidden = group3.grd_prcpdetl.getRealColSize(group3.grd_prcpdetl.getBindCellIndex("body","prcpnm"));
- var prcpHngNmColHidden = group3.grd_prcpdetl.getRealColSize(group3.grd_prcpdetl.getBindCellIndex("body","prcphngnm"));
- ds_grd_prcpdetl.enableevent = false;
- ds_grd_prcpdetl.clearData();
- var oParam = {};
- oParam.id = "TRMNI00103";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetPrcpDetlData";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_grd_prcpdetl=prcpdetllist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00103";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMNI00103") > -1){
-
- group3.grd_prcpdetl.enableredraw = false;
- //2010.06.09 김달현 - colHidden 에러 수정
- if(prcpNmColHidden == 0 && prcpHngNmColHidden == 0){
- group3.grd_prcpdetl.setFormatColProperty(group3.grd_prcpdetl.getBindCellIndex("body","prcpnm"),"size",225);
- }else if(prcpNmColHidden == 0){
- group3.grd_prcpdetl.setFormatColProperty(group3.grd_prcpdetl.getBindCellIndex("body","prcphngnm"),"size",227);
- }else if(prcpHngNmColHidden == 0){
- group3.grd_prcpdetl.setFormatColProperty(group3.grd_prcpdetl.getBindCellIndex("body","prcpnm"),"size",225);
-
- }
-
-
- group3.grd_prcpdetl.enableredraw = true;
- var Row = ds_grd_prcpdetl.rowcount;
- var mixchk = 0;
- var rcptchk; //20090305 dhkim 후수납관련필드추가
- //처방상태 값에 따른 처방상세내역 리스트에 상태값 을 나타내는 로직 시작
-
- for(i=0; i < ds_grd_prcpdetl.rowcount; i++){
-
- var execdd = ds_grd_prcpdetl.getColumn(i,"execrid");
- var blodcomstat = ds_grd_prcpdetl.getColumn(i,"blodcomstat");
- var execprcpstatcd = ds_grd_prcpdetl.getColumn(i,"execprcpstatcd");
- var prcpclscd = ds_grd_prcpdetl.getColumn(i,"prcpclscd");
- var drugno = ds_grd_prcpdetl.getColumn(i,"drugno");
- var cdnm = ds_grd_prcpdetl.getColumn(i,"cdnm");
- var endyn = ds_grd_prcpdetl.getColumn(i,"endyn");
- var etcprcpresncd = ds_grd_prcpdetl.getColumn(i,"etcprcpresncd"); // 수혈반납 및 폐기사유코드
- var blodcomstat = ds_grd_prcpdetl.getColumn(i,"blodcomstat"); // 성분제제상태
-
- //20090305 dhkim 후수납관련필드추가
- rcptchk = ds_grd_prcpdetl.getColumn(i,"rcptchk"); // 후수납상태
-
- //20130220 kya 수납여부보여주기
-
-
- if(
- (
- (rcptchk == "R" && execprcpstatcd == "230")
- || (rcptchk == "V")
- || (rcptchk == "Y")
- || (rcptchk == "F")
- )
- && drugno != "0"
- && cdnm!="마약"
-
-
- //20090617 dhkim 조제완료가 아닌 약
- && execprcpstatcd != "310"
- && execprcpstatcd != "315"
-
- ){
- //alert(rcptchk + ' ' + execprcpstatcd + ' ' + drugno);
- ds_grd_prcpdetl.setColumn(i,"stat", 13); //전송완료
- }
-
- if(execprcpstatcd == "300"){
- ds_grd_prcpdetl.setColumn(i,"stat", 1); //조제보류
- }
-
- if(execprcpstatcd == "310" || execprcpstatcd == "315" &&
- (prcpclscd == "A7"
- //20090310 dhkim 무균약추가
- || prcpclscd == "A9")
- ){
- ds_grd_prcpdetl.setColumn(i,"stat", 2); //조제완료
-
- var mixk = ds_grd_prcpdetl.getColumn(i,"mix");//mix번호
- var actordddk = ds_grd_prcpdetl.getColumn(i,"actorddd");//실시예약일자
- var rsrvtmk = ds_grd_prcpdetl.getColumn(i,"rsrvtm");//예약시간
- var ordddk = ds_grd_prcpdetl.getColumn(i,"orddd");//진료일자
- var drugnok = ds_grd_prcpdetl.getColumn(i,"drugno");//투약번호
-
- for (r=0; r < ds_grd_prcpdetl.rowcount; r++){
- var mixr = ds_grd_prcpdetl.getColumn(r,"mix");
- var actordddr = ds_grd_prcpdetl.getColumn(r,"actorddd");
- var rsrvtmr = ds_grd_prcpdetl.getColumn(r,"rsrvtm");
- var ordddr = ds_grd_prcpdetl.getColumn(r,"orddd");
- var drugnor = ds_grd_prcpdetl.getColumn(r,"drugno");
-
- //alert('prcpcd:'+model.getValue(xPrcpDetlPath+"["+r+"]/prcpcd")+'mixk:' + mixk + ',mixr:'+mixr+',actordddk:'+actordddk+',actordddr:'+actordddr+',rsrvtmk:'+rsrvtmk+',rsrvtmr:'+rsrvtmr+',ordddk:'+ordddk+',ordddr:'+ordddr+'drugnok:'+drugnok+',drugnor:'+drugnor);
-
- //20090617 dhkim
- //항암과 믹스시킨 일반주사약의 경우 조제완료쳐지면 상태값을 조제완료로 변경
- if(mixk == mixr && actordddr == actordddk && rsrvtmr == rsrvtmk && ordddr == ordddk && drugnor == drugnok && drugnok != 0){
-
- ds_grd_prcpdetl.setColumn(i,"stat", 2);
- }
- }
-
- }
-
- if(execprcpstatcd == "500" || execprcpstatcd == "505" || execprcpstatcd == "510"){
- ds_grd_prcpdetl.setColumn(i,"stat", 11);//접수
- }
- if(execprcpstatcd == "520" || execprcpstatcd == "525"){
- ds_grd_prcpdetl.setColumn(i,"stat", 4);//준비완료
- }
- if(execprcpstatcd == "540"){
- ds_grd_prcpdetl.setColumn(i,"stat", 7); //반납의뢰
- }
- if(execprcpstatcd == "550"){
- ds_grd_prcpdetl.setColumn(i,"stat", 8); //반납완료
- }
- if(execprcpstatcd == "530"){
- if (blodcomstat == "8") {
- ds_grd_prcpdetl.setColumn(i,"stat", 14); //잔여폐기
- }
- else {
- ds_grd_prcpdetl.setColumn(i,"stat", 5); //불출
- }
- }
- if(execprcpstatcd == "560"){
- if (etcprcpresncd == "07" || etcprcpresncd == "12") {
- ds_grd_prcpdetl.setColumn(i,"stat", 14); //잔여폐기
- }
- else {
- ds_grd_prcpdetl.setColumn(i,"stat", 9); //폐기의뢰
- }
- }
- if(execprcpstatcd == "570"){
- ds_grd_prcpdetl.setColumn(i,"stat", 10); //폐기완료
- }
- if(execprcpstatcd == "320"){
- ds_grd_prcpdetl.setColumn(i,"stat", 5); //출고
- }
- if(prcpclscd =="B4"){
- if(execprcpstatcd == "610"){
- ds_grd_prcpdetl.setColumn(i,"stat", 12); //실시완료
- }
- }else{
- if(execprcpstatcd == "610"){
- ds_grd_prcpdetl.setColumn(i,"stat", 6); //시행완료
- }
- }
-
- var mix = ds_grd_prcpdetl.getColumn(i,"mix");
- var actorddd = ds_grd_prcpdetl.getColumn(i,"actorddd");
- var rsrvtm = ds_grd_prcpdetl.getColumn(i,"rsrvtm");
- var orddd = ds_grd_prcpdetl.getColumn(i,"orddd");
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var rgstdd = ds_grd_prcpdetl.getColumn(i,"rgstdd");
- var rgsttm = ds_grd_prcpdetl.getColumn(i,"rgsttm");
-
- //20090622 dhkim
- if(orddd.length > 8){
- orddd = orddd.substring(0, 8);
- }
- //20090903 dhkim 빈센트 오류사항 (믹스지정한 처방상태가 동일하지 않음)
- var stat = ds_grd_prcpdetl.getColumn(i,"stat");
-
- if(prcpclscd == "A7"){
- for (k=0; k<Row; k++){
- var mixs = ds_grd_prcpdetl.getColumn(k,"mix");
- var actorddds = ds_grd_prcpdetl.getColumn(k,"actorddd");
- var rsrvtms = ds_grd_prcpdetl.getColumn(k,"rsrvtm");
- var orddds = ds_grd_prcpdetl.getColumn(k,"orddd");
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var _rgstdd = ds_grd_prcpdetl.getColumn(k,"rgstdd");
- var _rgsttm = ds_grd_prcpdetl.getColumn(k,"rgsttm");
-
- //alert('mix : '+mix + ', mixs:' + mixs + ', actorddd: ' + actorddd+ ', actorddds:' + actorddds +', rsrvtm:' + rsrvtm + ', rsrvtms:' + rsrvtms + ', orddd:' + orddd + ', orddds : ' + orddds);
-
- //20090622 dhkim
- if(orddds.length > 8){
- orddds = orddds.substring(0, 8);
- }
-
- //20091112 dhkim 믹스그룹화 시 rgstdd, rgsttm 조건 추가
- if(mix == mixs && mix != '-' && actorddds == actorddd && rsrvtms == rsrvtm && orddds == orddd && rgstdd == _rgstdd && rgsttm == _rgsttm){
- // 특조전송시 mix번호 같을때 항암으로 보여주는 로직..
-
- ds_grd_prcpdetl.setColumn(i,"prcpclscd", "A7");
- //20090903 dhkim 빈센트 오류사항 (믹스지정한 처방상태가 동일하지 않음)
- ds_grd_prcpdetl.setColumn(i,"stat", stat);
- }
- }
- }
-
- //20090526 dhkim 무균믹스추가
- if(prcpclscd == "A9"){
- for (k=0; k<Row; k++){
- var mixs = ds_grd_prcpdetl.getColumn(k,"mix");
- var actorddds = ds_grd_prcpdetl.getColumn(k,"actorddd");
- var rsrvtms = ds_grd_prcpdetl.getColumn(k,"rsrvtm");
- var orddds = ds_grd_prcpdetl.getColumn(k,"orddd");
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var _rgstdd = ds_grd_prcpdetl.getColumn(k,"rgstdd");
- var _rgsttm = ds_grd_prcpdetl.getColumn(k,"rgsttm");
-
- if(orddds.length > 8){
- orddds = orddds.substring(0, 8);
- }
-
- //20091112 dhkim 믹스그룹화 시 rgstdd, rgsttm 조건 추가
- if(mix == mixs && mix != '-' && actorddds == actorddd && rsrvtms == rsrvtm && orddds == orddd && rgstdd == _rgstdd && rgsttm == _rgsttm){
- // 특조전송시 mix번호 같을때 항암으로 보여주는 로직..
- ds_grd_prcpdetl.setColumn(i,"prcpclscd", "A9");
- //20090903 dhkim 빈센트 오류사항 (믹스지정한 처방상태가 동일하지 않음)
- ds_grd_prcpdetl.setColumn(i,"stat", stat);
- }
- }
- }
-
-
- //20090529 dhkim
- //혈액 상태중 반납의뢰, 통폐기의뢰, 잔여폐기의뢰, 출고, 접수, 준비완료, 반납완료, 통폐기완료, 잔여폐기완료 상태값 정의
- if(prcpclscd == "B4"){
-
- ds_grd_prcpdetl.setColumn(i,"stat", ds_grd_prcpdetl.getColumn(i,"bloodst"));
- }
-
-
- } //상태 값을 나타내는 로직 끝
- //예약일자 변경시 이전 날짜 선택 여부를 위해서 노드를 copy해둠
-
- dsf_copyDs(ds_hidden_main,ds_main,"replace");
- dsf_copyDs(ds_hidden_grd_prcpdetl,ds_grd_prcpdetl,"replace");
-
- }
- ds_grd_prcpdetl.enableevent = true;
- }
- function cf_TRMNI00103(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- for (var i=0;i<ds_grd_prcpdetl.rowcount;i++)
- {
- ds_grd_prcpdetl.setColumn(i,"rsrvtm_ord",ds_grd_prcpdetl.getColumn(i,"rsrvtm"));
- ds_grd_prcpdetl.setColumn(i,"actorddd_ord",ds_grd_prcpdetl.getColumn(i,"actorddd"));
- }
- }
- /**
- * @group :
- * @ver : 2007.05.11
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 오른쪽 조회시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fRghtDataList(){
-
- //20090911 dhkim 주사실 사용자는 미마감내역이 존재하면 조회를 blocking한다.
- //if(dutplcecd == injDeptcd){
- // var isBlocking = fCheckEndYn();//20090911 dhkim 마감여부체크추가
- // if(isBlocking){
- // return;
- // }
- //}
-
- var xBizTrgtPath = "/root/main/biztrgtman/biztrgtmanlist";
- var hngnm = ds_rghtreflist.getColumn(0,"hngnm");
- if(utlf_isNull(hngnm)){
- sysf_messageBox("환자가 조회되지", "E007")
- return;
- }
-
- var iRow = ds_grd_biztrgtman.rowposition;
-
- if ( iRow < 0 ) {
- var bizorddd = ds_main_leftref.getColumn(0,"sdate");
-
- } else {
- var bizorddd = ds_grd_biztrgtman.getColumn(iRow,"orddd");
- }
-
-
- var allterm = ds_main.getColumn(0,"allterm");
- var cretno = ds_grd_biztrgtman.getColumn(iRow,"cretno");
- var orddd = ds_main_leftref.getColumn(0,"bizdd");
-
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"allterm", val:allterm}
- ,{col:"orddd", val:orddd}
- ,{col:"bizorddd", val:bizorddd}
- ,{col:"cretno", val:cretno}
- ,{col:"exec", val:ds_main_leftref.getColumn(0,"exec")}
- ,{col:"sdate", val:ds_main_leftref.getColumn(0,"sdate")}
- ,{col:"edate", val:ds_main_leftref.getColumn(0,"edate")}
- ]);
-
- //상병, 메모, 진료예약, 검사예약, 진료내역, 미시행주사내역 조회
- var oParam = {};
- oParam.id = "TRMNI00104";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetRghtDataList";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_grd_ordsper=ordsperlist ds_grd_injsper=injsperlist ds_grd_snwinfo=snwinfolist ds_grd_ordrsrv=ordrsrvlist ds_grd_testrsrv=testrsrvlist ds_memolist=memolist";
- oParam.async = false;
- //oParam.callback = "cf_TRMNI00104";
- tranf_submit(oParam);
-
- ds_grd_ordsper.rowposition = -1;
- ds_grd_ordrsrv.rowposition = -1;
- ds_grd_testrsrv.rowposition = -1;
-
- var seqno = ds_memolist.getColumn(0,"seqno")
- if(utlf_isNull(seqno)){
- //메모 데이타 없을시 이전 데이타 삭제
- group3.tar_memo.value="";
- }
-
- var memocnts=ds_memolist.getColumn(0,"memocnts");
- if(ds_memolist.rowcount == 0){
- ds_memolist.addRow();
- ds_memolist.setColumn(0,"memocnts","");
- group3.tar_memo.value = "";
-
- }
- }
- /**
- * @group :
- * @ver : 2007.05.14
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 오른쪽 메모
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMemoInsert(){
- var memocnts = group3.tar_memo.value;
- var seqno = ds_memolist.getColumn(0,"seqno");
- var hngnm = ds_rghtreflist.getColumn(0,"hngnm");
- //메모 데이타 조회시 환자 선택 여부 파악
- if(utlf_isNull(hngnm)){
- sysf_messageBox("환자가 선택되지", "E007")
- return;
- }
-
- //20091109 dhkim 메모 널처리
- if(utlf_isNull(memocnts)){
- memocnts = " ";
- }
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"memocnts", val:memocnts}
- ,{col:"seqno", val: ds_memolist.getColumn(0,"seqno")}
- ]);
-
- var oParam = {};
- oParam.id = "TXMNI00101";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExeMemoList";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00101";
- tranf_submit(oParam);
- }
- function cf_TXMNI00101(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- fRghtDataList();
- }
- /**
- * 20090713 dhkim
- * 처방전출력취소 기능 추가
- */
- function fPrintCancel(){
-
- var oRow = ds_grd_ordsper.rowposition;
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"prtyn", val:"C"}
- ]);
-
-
- dsf_createDs("ds_send_prcpdetl");
- ds_grd_prcpdetl.filter("flag == '1'");
- ds_grd_prcpdetl.applyChange();
- ds_send_prcpdetl.copyData(ds_grd_prcpdetl,true);
- ds_grd_prcpdetl.filter("");
-
- // model.removenode("/root/send");
- // model.makeValue("/root/send/pid", model.getValue("/root/main/rghtref/rghtreflist/pid"));
- // model.makeValue("/root/send/prcpdetl", grd_prcpdetl.getupdatedataAll("i"));
- // model.makeValue("/root/send/prtyn", "C");//출력취소
- //20090713 dhkim 출력여부추가
- var oParam = {};
- oParam.id = "TXMNI00105";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExePrint";
- oParam.inds = "refCond=ds_send_prcpdetl print=ds_send";
- oParam.outds = "";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00105";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00105") > -1){
- //변경내용저장 실행후 업무대상리스트 다시 조회 실시
- fbiztrgtman("acting");
-
- if (ds_rghtreflist.getColumn(0,"pid") == ds_grd_biztrgtman.getColumn(oRow,"pid")){
- //처방 상세내역
- fBiztrgtClick("acting");
- }else if (oRow != ""){
- ds_grd_ordsper.rowposition = oRow;
- fordsper();
- }
- //예약일자 변경시 이전 날짜 선택 여부를 위해서 노드를 copy해둠
- dsf_copyDs(ds_hidden_main,ds_main);
- dsf_copyDs(ds_hidden_grd_prcpdetl,ds_grd_prcpdetl,"replace");
- }
- }
- function cf_TXMNI00105(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @ver : 2008.12.09
- * @by : dhkim
- * @desc : fRexpert()의 기능중 출력후 액팅하는 부분의 호출을 facting에서 fPrcpActing으로 변경
- */
- function fRexpertNew(){
- var mpsacting = utlf_transNullToEmpty(ds_main.getColumn(0,"mpsacting"));
-
- //alert( "mpsacting = " + mpsacting);
-
- var Row = ds_grd_prcpdetl.rowcount;
- var jRow=ds_grd_prcpdetl.rowposition;
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist";
- var xrexportPath = "/root/send/report/for";
- var xordsperPath = "/root/main/rghtlist/ordsperlist";
-
- //처방전출력 연결 시 환자 선택 여부 파악
- if(Row==0){
- sysf_messageBox("환자가 선택되지", "E007");
- return;
- }
-
- var chek = 0;
- var kRow = 0;
- for (var i=0; i<Row; i++){
- chek = chek + utlf_transNullToEmpty(ds_grd_prcpdetl.getColumn(i,"flag"));
- if(ds_grd_prcpdetl.getColumn(i,"flag") == "1"){
- kRow = kRow +","+ i;
- }
- }
-
- if(chek==0){
- sysf_messageBox("하나 이상의 처방내역을", "C002");
- return;
- }
-
- var kRows = String(kRow).split(",");
-
- if(mpsacting == "1"){
- for(var i=1; i < kRows.length; i++){
- var stat = ds_grd_prcpdetl.getColumn(kRows[i],"stat");
- if (stat == "6"){
- sysf_messageBox("이미 실시완료된 처방은 처방전+Acting을", "E001");
- return;
- }
- var prcpclscd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpclscd");
- //20081219 dhkim
- //항암제는 조제완료가 아니면 처방전+acting불가
- if(prcpclscd == "A7" && stat != "2"){
- sysf_messageBox("항암제는 조제완료 상태일 때에만 처방전+Acting을", "E001");
- return;
- }
-
-
-
- //20081219 dhkim
- //혈액은 처방전+acting불가(조회만가능함..) 서미영쌤 확인후 지워버려
- if(prcpclscd == "B4"){
- if(stat != "5"){
- sysf_messageBox("불출되지 않은 혈액은 처방전+Acting을", "E001");
- return;
- }
- }
- }
- }
-
- dsf_createDs("ds_send_report");
- dsf_copyDs(ds_send_report,ds_grd_prcpdetl,"replace");
-
- dsf_createDsRow("ds_send_report_only",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"hngnm", val:ds_rghtreflist.getColumn(0,"hngnm")}
- ,{col:"gndrage", val:ds_rghtreflist.getColumn(0,"gndrage")}
- ,{col:"rrgstno", val:ds_rghtreflist.getColumn(0,"rrgstno")}
- ]);
-
- var flags = ds_hidden.getColumn(0,"flags");
- var oRow = ds_grd_ordsper.rowposition;
- var iRow = ds_grd_biztrgtman.rowposition;
- if(flags == "grd_ordsper"){
-
- dsf_makeValue(ds_send_report_only,"depthngnm","string",ds_grd_ordsper.getColumn(oRow,"depthngnm"));
- dsf_makeValue(ds_send_report_only,"usernm","string",ds_grd_ordsper.getColumn(oRow,"usernm"));
- }else if (flags == "grd_biztrgtman"){
-
- dsf_makeValue(ds_send_report_only,"depthngnm","string",ds_grd_biztrgtman.getColumn(iRow,"depthngnm"));
- dsf_makeValue(ds_send_report_only,"usernm","string",ds_grd_biztrgtman.getColumn(iRow,"usernm"));
- }
-
- dsf_makeValue(ds_send_report_only,"termhngnm","string", ds_grd_snwinfo.getColumn(0,"termhngnm"));
- var printday = utlf_getCurrentDate();
- var printtime = utlf_getCurrentTime();
-
- dsf_makeValue(ds_send_report_only,"printdaytime","string",(printday+printtime));
- dsf_makeValue(ds_send_report_only,"mpsacting","string",ds_main.getColumn(0,"mpsacting"));
-
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- // rptf_setNodeListToDOM(objDOM, "/root/send/report", ds_send_report); // 데이터셋 1
- // rptf_setNodeListToDOM(objDOM, "/root/send/report/only", ds_send_report_only); // 데이터셋 2
- rptf_setNodeListToDOM(objDOM, "root/send/report/prcpdetllist", ds_send_report); // 데이터셋 1
- rptf_setNodeListToDOM(objDOM, "root/send/report/only", ds_send_report_only); // 데이터셋 2
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
- //var option = "open=1;save=1;directprint=0;print=1;zoom=0";
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;";
- var prtOption = "printername=";
-
- rptf_exeReportPreview30(["RPMNI00100"],[objParam], option, prtOption);
-
- if(mpsacting == "1"){
-
- //처방전 출력후 액팅 부분 펑션변경(facting() -> fPrcpActing())
- fPrcpActing("Y");
-
- }else{
-
- var oRow = ds_grd_ordsper.rowposition;
-
-
-
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"prtyn", val:"Y"}
- ]);
-
-
- dsf_createDs("ds_send_prcpdetl");
- ds_grd_prcpdetl.filter("flag == '1'");
- ds_grd_prcpdetl.applyChange();
- ds_send_prcpdetl.copyData(ds_grd_prcpdetl,true);
- ds_grd_prcpdetl.filter("");
-
- //20090713 dhkim 출력여부추가
- var oParam = {};
- oParam.id = "TXMNI00105";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExePrint";
- oParam.inds = "refCond=ds_send_prcpdetl print=ds_send";
- oParam.outds = "";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00105";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00105") > -1){
-
-
-
- //변경내용저장 실행후 업무대상리스트 다시 조회 실시
- fbiztrgtman("acting");
- if (ds_rghtreflist.getColumn(0,"pid") == ds_grd_biztrgtman.getColumn(iRow,"pid")){
- //처방 상세내역
- fBiztrgtClick("acting");
- }else if (!utlf_isNull(oRow)){
- ds_grd_ordsper.rowposition = oRow;
- fordsper();
- }
- //예약일자 변경시 이전 날짜 선택 여부를 위해서 노드를 copy해둠
- dsf_copyDs(ds_hidden_main,ds_main);
- dsf_copyDs(ds_hidden_grd_prcpdetl,ds_grd_prcpdetl,"replace");
- return ;
-
- }
- }
- }
- /**
- * @ver : 2008.12.09
- * @by : dhkim
- * @desc : 특조전송전 변경내용저장을 호출하는 부분을 변경함으로 특조전송펑션 신규생성
- * : SMS전송 기능 추가 (2010.04.20 by 안도영 - 여의도에 한함 - TXMNI00103 submit 실행시 같이 실행)
- */
- function fPrcpAnticncr(){
- var oRow = ds_grd_ordsper.rowposition;
- var iRow = ds_grd_biztrgtman.rowposition;
-
- var Row = ds_grd_prcpdetl.rowcount;
- var jRow=ds_grd_prcpdetl.rowposition;
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist" ;
- var xordsperPath = "/root/main/rghtlist/ordsperlist";
- var xhiddenPrcpDetlPath = "/root/hidden/main/prcpdetl/prcpdetllist";
-
- //처방전출력 연결 시 환자 선택 여부 파악
- if(Row==0){
- sysf_messageBox("환자가 선택되지", "E007");
- return;
- }
-
- var chek = 0;
- var kRow = "0";
-
- //20090519 dhkim 의정부, 성가 주사실 요청사항
- //[주사실 특조전송시 예약시간 필수입력사항 해제건]
- //의정부, 성가 주사실 요청사항으로 특조전송시 예약시간을 입력하지 않고
- //환자가 오면 바로 특조전송을 하는 프로세스로 현재 예약시간이 필수로 되어있는 프로그램
- //사용시 약제와 의사소통상 혼돈이 있음.(의정부itc 이유진, 성가itc조수진 요청사항)
- //1) 예약시간 필수입력사항으로 되어 있는 것을 필수조건에서 제외한다.
- //2) 현재 서울성모는 예약시간을 넣고 있으므로 업무상 예약시간을 입력하는 업무는 프로그램과 상관없이 현행대로 유지한다.
- for (i=0; i<Row; i++){
- if(utlf_isNull(ds_grd_prcpdetl.getColumn(i,"flag")))
- {
- ds_grd_prcpdetl.setColumn(i,"flag","0")
- }
- chek = chek + Number(ds_grd_prcpdetl.getColumn(i,"flag"));
- if(ds_grd_prcpdetl.getColumn(i,"flag") == "1"){
- kRow = kRow +","+ i;
- var rsrvtm = ds_grd_prcpdetl.getColumn(i,"rsrvtm");
-
- }
- }
-
- if(chek==0){
- sysf_messageBox("하나 이상의 처방을", "C002");//처방이 한개도 체크되지 않았을때
- return;
- }
-
- var kRows = utlf_transNullToEmpty(kRow).split(",");
- var kchek = 0;
- var prcpclscd ;
- //20090309 dhkim
- //무균조제 약품 전송 추가
- for(var i = 1; i < kRows.length; i++){
- prcpclscd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpclscd");
- if(prcpclscd == "A7" || prcpclscd == "A9" || prcpclscd == "A5" ){// A7:항암, A9:무균, A5:임상항암
- kchek = kchek + 1;
- }
- }
-
- if(kchek == 0){
- //20090309 dhkim
- //무균조제 약품 전송 추가
- sysf_messageBox("하나 이상의 항암/무균을", "C002");
- //messageBox("하나 이상의 항암/무균을", "C002");
- return;
- }
-
- for(var i = 1; i < kRows.length; i++){
- var stat = ds_grd_prcpdetl.getColumn(kRows[i],"stat");
- if (stat == "6"){
- sysf_messageBox("Acting을 실시한 처방은 특조전송을", "E001");
- return;
- }
-
- var drugnochk = ds_grd_prcpdetl.getColumn(kRows[i],"drugno");
- if (drugnochk != "0"){
- sysf_messageBox("한번 특조전송을 실시한 처방은 특조전송을", "E001");
- return;
- }
- }
-
-
- var chkd = 0;
- var stat, flag, prcpclscdnow;
- for(var j = 0 ; j < Row; j++){
- stat = ds_grd_prcpdetl.getColumn(j,"stat"); //처방상태
- flag = ds_grd_prcpdetl.getColumn(j,"flag"); //checkbox 선택
- prcpclscdnow = ds_grd_prcpdetl.getColumn(j,"prcpclscd");//처방종류
-
- if ((flag == "0" || utlf_isNull(flag)) && (prcpclscdnow == "A7" || prcpclscdnow == "A9") && utlf_isNull(stat)){
- chkd = chkd + 1;
- }
- }
-
- if(chkd > 0){
- if(sysf_messageBox("전송할 처방이 모두 선택되지 않았습니다. 특조전송을 실시 하겠습니까?", "Q") != 6) return;
- }
-
- var a = 0;
- for (var i = 1; i < kRows.length; i++){
- if(i == 1){
- a = i;
- }else{
- a = i - 1;
- }
- if(ds_hidden_grd_prcpdetl.getColumn(kRows[a],"actorddd") != ds_hidden_grd_prcpdetl.getColumn(kRows[i],"actorddd")){
- var doublek = "dd";
- var drugno = ds_grd_prcpdetl.getColumn(i,"drugno");
-
- }
- }
-
- var kRows = kRow.split(",");
- var chkactorddd = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- if(kRows.length >= 3){
- for (i=1; i<kRows.length; i++){
- var chkactorddd1 = ds_hidden_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- var drugno = ds_grd_prcpdetl.getColumn(kRows[i],"drugno");
-
- }
- }
-
- var lRow = 0;
- var chkactorddd = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- for (var i = 0; i < Row; i++){
- var chkactorddd1 = ds_hidden_grd_prcpdetl.getColumn(i,"actorddd");
- if(chkactorddd == chkactorddd1){
- lRow = lRow +","+ i;
- }
- }
-
- var lRows = lRow.split(",");
- for (var i = 0; i < Row; i++){
- var actordddchk = ds_grd_prcpdetl.getColumn(i,"actorddd");
- var actordddchk1 = ds_hidden_grd_prcpdetl.getColumn(i,"actorddd");
- if (actordddchk != actordddchk1){
- if (kRow != lRow){
- sysf_messageBox("동일한 일자를 모두 선택 하지 않으면 저장", "E001");
- return;
- }
- }
- }
-
- var vewactorddd1 =ds_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- var vewactorddd4 = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- for (var i = 1; i < kRows.length; i++){
- var vewactorddd2 = ds_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- var vewactorddd3 = ds_hidden_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- if(vewactorddd1 != vewactorddd2 && vewactorddd4==vewactorddd3){
- sysf_messageBox("예약 일자를 모두 동일한 일자로 변경 하지 않으면 저장", "E001");
- return;
- }
- }
-
- var prcpflag = ""; // 항암전송 체크
- var msgflag = ""; // SMS전송 체크
-
- if(doublek != "dd"){
- var prcpexecdeptcd = ds_main_leftref.getColumn(0,"exec");
- var flag = "Change";
- var pid = ds_rghtreflist.getColumn(0,"pid");
- var actorddd = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- var smsflag = fSMSFlag(yuidinstcd); // 20100420 by 안도영 추가
- var patnm = ds_rghtreflist.getColumn(0,"hngnm"); // 20100421 by 안도영 추가
-
- dsf_createDs("ds_savechangeinfo");
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ,{col:"drugdd", val:actorddd}
- ,{col:"ordtm", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"ordtm")}
- ,{col:"acting", val:flag}
- ,{col:"prcpexecdeptcd", val:prcpexecdeptcd}
- ,{col:"smsflag", val:smsflag}
- ,{col:"patnm", val:patnm}
- ,{col:"dutplcecd", val:dutplcecd}
- ,{col:"insukind", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"insukind" )}
- ,{col:"suppkind", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"suppkind" )}
- ,{col:"insucd", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"insucd" )}
- ,{col:"suppkindresn", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"suppkindresn" )}
- ,{col:"ownbflag", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"ownbflag" )}
- ,{col:"spclcd", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"spclcd" )}
- ,{col:"rareobstflag", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"rareobstflag" )}
- ]);
-
- dsf_createDsRow("ds_send_anticncr",
- [{col:"pid", val:pid}
- ]);
- dsf_createDs("ds_send_prcpdetl");
- ds_grd_prcpdetl.filter("flag == '1'");
- ds_grd_prcpdetl.applyChange();
- ds_send_prcpdetl.copyData(ds_grd_prcpdetl,true);
- ds_grd_prcpdetl.filter("");
-
-
-
- //변경내용저장실행
- var oParam = {};
- oParam.id = "TXMNI00108";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExePrcpChangeSave";
- oParam.inds = "refCond=ds_send_prcpdetl acting=ds_send";
- oParam.outds = "ds_savechangeinfo=rcptinfo";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00108";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00108") > -1){
-
-
- //20081212 dhkim 0원수납 에러메세지 테스트 ..
- if(ds_savechangeinfo.getColumn(0,"rcptYn") == "N"){
-
-
- //20090318 dhkim messageBox로 변경
- sysf_messageBox(ds_savechangeinfo.getColumn(0,"errMsg"), "E");
- return ;//2010.02.17 dhkim
- }
-
- //특조전송실행
- dsf_createDs("ds_temp_transchk");
-
- var oParam = {};
- oParam.id = "TXMNI00103";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExeAnticncr";
- oParam.inds = "refCond=ds_send_prcpdetl refConds=ds_send_anticncr";
- oParam.outds = "ds_temp_transchk=transchk";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00103";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00103") > -1){
- //예약일자 변경시 이전 날짜 선택 여부를 위해서 노드를 copy해둠
- dsf_copyDs(ds_hidden_main,ds_main,"replace");
- dsf_copyDs(ds_hidden_grd_prcpdetl,ds_grd_prcpdetl,"replace");
-
-
- if(ds_temp_transchk.getColumn(0,"prcpflag")=="Y"){
- prcpflag = "Y";
-
- dsf_makeValue(ds_send,"instcd","string",ds_temp_transchk.getColumn(0,"instcd"));
- var oParam = {};
- oParam.id = "TXMNI00109";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExeSMS";
- oParam.inds = "addInfo=ds_send";
- oParam.outds = "ds_temp_transchk=transchk";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00103";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00109") > -1){
- //alert("msgflag: "+model.getValue("/root/temp/transchk/msgflag"));
- if(ds_temp_transchk.getColumn(0,"msgflag")=="Y"){
- msgflag = "Y";
- }else{
- msgflag = "N";
- }
- }else{
- msgflag = "N";
- }
- }else{
- prcpflag = "N";
- }
-
- if("Y"==prcpflag&&"Y"==msgflag){
- sysf_messageBox("특조전송이", "I002");
- }else if("Y"==prcpflag&&"N"==msgflag){
- sysf_messageBox("특조전송은 완료되었으나, SMS전송은", "E009");
- }
-
- dsf_makeValue(ds_send,"pid","string",ds_send_anticncr.getColumn(0,"pid"));
-
- //20091015 dhkim 액팅후 무조건 당일업무대상자리스트 refresh와 등록번호 새로세팅 후 처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
-
- //업무대상리스트 다시조회
- fbiztrgtman("acting");
-
- //등록번호 새로세팅
- ds_rghtreflist.setColumn(0,"pid", pid);
-
-
- //처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
- ds_grd_ordsper.rowposition = oRow;
- fordsper(actorddd);
-
-
- }
- }
- }else{
- var prcpexecdeptcd = ds_main_leftref.getColumn(0,"exec");
- var flag = "Change";
- var pid = ds_rghtreflist.getColumn(0,"pid");
- var actorddd = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- var smsflag = fSMSFlag(yuidinstcd); // 20100420 by 안도영 추가
- var patnm = ds_rghtreflist.getColumn(0,"hngnm"); // 20100421 by 안도영 추가
-
- dsf_createDs("ds_savechangeinfo");
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ,{col:"drugdd", val:actorddd}
- ,{col:"ordtm", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"ordtm")}
- ,{col:"acting", val:flag}
- ,{col:"prcpexecdeptcd", val:prcpexecdeptcd}
- ,{col:"smsflag", val:smsflag}
- ,{col:"patnm", val:patnm}
- ,{col:"dutplcecd", val:dutplcecd}
- ,{col:"insukind", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"insukind" )}
- ,{col:"suppkind", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"suppkind" )}
- ,{col:"insucd", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"insucd" )}
- ,{col:"suppkindresn", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"suppkindresn" )}
- ,{col:"ownbflag", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"ownbflag" )}
- ,{col:"spclcd", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"spclcd" )}
- ,{col:"rareobstflag", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"rareobstflag" )}
- ]);
-
- dsf_createDs("ds_send_prcpdetl");
- ds_grd_prcpdetl.filter("flag == '1'");
- ds_grd_prcpdetl.applyChange();
- ds_send_prcpdetl.copyData(ds_grd_prcpdetl,true);
- ds_grd_prcpdetl.filter("");
-
-
- //변경내용저장실행
- var oParam = {};
- oParam.id = "TXMNI00108";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExePrcpChangeSave";
- oParam.inds = "refCond=ds_send_prcpdetl acting=ds_send";
- oParam.outds = "ds_savechangeinfo=rcptinfo";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00108";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00108") > -1){
-
- //20081212 dhkim 0원수납 에러메세지 테스트 ..
- if(ds_savechangeinfo.getColumn(0,"rcptYn") == "N"){
- //20090318 dhkim messageBox로 변경
- //alert(model.getValue('/root/savechangeinfo/rcptinfo/errMsg'));
- sysf_messageBox(ds_savechangeinfo.getColumn(0,"errMsg"), "E");
- return ;//2010.02.17 dhkim
- }
-
- //특조전송실행
- dsf_createDs("ds_temp_transchk");
-
- var oParam = {};
- oParam.id = "TXMNI00103";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExeAnticncr";
- oParam.inds = "refCond=ds_send_prcpdetl refConds=ds_send_anticncr";
- oParam.outds = "ds_temp_transchk=transchk";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00103";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXMNI00103") > -1){
- dsf_makeValue(ds_send,"pid","string",ds_send_anticncr.getColumn(0,"pid"));
- //20091015 dhkim 액팅후 무조건 당일업무대상자리스트 refresh와 등록번호 새로세팅 후 처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
-
- //업무대상리스트 다시조회
- fbiztrgtman("acting");
-
- //등록번호 새로세팅
- ds_rghtreflist.setColumn(0,"pid", pid);
-
-
- //처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
- ds_grd_ordsper.rowposition = oRow;
- fordsper(actorddd);
-
-
- }
- //20100426 안도영
-
- if(ds_temp_transchk.getColumn(0,"prcpflag")=="Y"){
- prcpflag = "Y";
- dsf_makeValue(ds_send,"instcd","string",ds_temp_transchk.getColumn(0,"instcd"));
- var oParam = {};
- oParam.id = "TXMNI00109";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExeSMS";
- oParam.inds = "addInfo=ds_send";
- oParam.outds = "ds_temp_transchk=transchk";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00103";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXMNI00109") > -1){
- //alert("msgflag: "+model.getValue("/root/temp/transchk/msgflag"));
- if(ds_temp_transchk.getColumn(0,"msgflag")=="Y"){
- msgflag = "Y";
- }else{
- msgflag = "N";
- }
- }else{
- msgflag = "N";
- }
- }else{
- prcpflag = "N";
- }
-
- if("Y"==prcpflag&&"Y"==msgflag){
- sysf_messageBox("특조전송이", "I002");
- }else if("Y"==prcpflag&&"N"==msgflag){
- sysf_messageBox("특조전송은 완료되었으나, SMS전송은", "E009");
- }
- }
- }
- }
- function cf_TXMNI00108(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function cf_TXMNI00103(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @ver : 2010.04.19
- * @by : 안도영
- * @desc : SMS전송을 위한 여의도 병원 체크
- */
- function fSMSFlag(yuidinstcd){
- var SMSFlag="";
- if(yuidinstcd == sysf_getUserInfo("dutplceinstcd")){
- // 여의도 기관만 적용 (특조전송시 SMS 전송)
- SMSFlag = "Y";
- }else{
- SMSFlag = "N";
- }
- return SMSFlag;
- }
- /**
- * @ver : 2008.12.09
- * @by : dhkim
- * @desc : facting에 액팅, 변경내용저장, 특조전송 기능을
- * 변경내용저장만 수행하도록 찢음
- */
- function fPrcpChangeSave(){
- var iRow = ds_grd_biztrgtman.rowposition;
- var oRow = ds_grd_ordsper.rowposition;
- var xhiddenPrcpDetlPath = "/root/hidden/main/prcpdetl/prcpdetllist"
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist"
- //var prcpno = grd_prcpdetl.textmatrix(iRow, 17);
-
- var Row = ds_grd_prcpdetl.rowcount;
-
- //20091015 dhkim 등록번호 변수저장
- var pid = ds_rghtreflist.getColumn(0,"pid");
-
-
- //변경내용저장 시 환자 선택 여부 파악
- if(Row==0){
- sysf_messageBox("환자가 선택되지", "E007")
- return;
- }
-
- var kRow = 0;
- var chek = 0;
-
- for (i=0; i<Row; i++){
-
- //20170519 권영애
- //chek = chek + ds_grd_prcpdetl.getColumn(i,"flag");
- //trace(ds_grd_prcpdetl.getColumn(i,"flag"));
- //if(ds_grd_prcpdetl.getColumn(i,"flag") == "1"){
- // kRow = kRow +","+ i
- //}
- trace(utlf_transNullToEmpty(ds_grd_prcpdetl.getColumn(i,"rsflag")));
- if (ds_grd_prcpdetl.getColumn(i,"rsflag") == "1"){
- kRow = kRow +","+ i;
- chek = chek + 1;
- ds_grd_prcpdetl.setColumn(i,"flag", "1") ;
- } else {
- ds_grd_prcpdetl.setColumn(i,"flag", "0") ;
- }
-
- }
-
- if(chek==0){
- sysf_messageBox("하나 이상의 처방내역을", "C002")
- return;
- }
-
- var kRows = kRow.split(",");
- var chkactorddd = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- var chkactorddd1, drugno;
-
- //20081223 dhkim
- //약번호의 경우 항암 뿐 아니라 마약의 경우에도 따지 므로 메세지를 구분할 필요가 있음
- var cdnm;
-
- if(kRows.length >= 3){
- for (i=1; i<kRows.length; i++){
- chkactorddd1 = ds_hidden_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- drugno = ds_grd_prcpdetl.getColumn(kRows[i],"drugno");
-
- //20081223 dhkim
- cdnm = ds_grd_prcpdetl.getColumn(kRows[i],"cdnm");
-
- if(drugno != "0"){
- if(cdnm == "마약"){
- sysf_messageBox("마약 불출신청 접수 후 예약일자 변경을", "E001");
- }else{
- sysf_messageBox("항암 전송후 예약일자 변경을", "E001");
- }
- return;
- }
-
- if(chkactorddd != chkactorddd1){
- sysf_messageBox("초기 동일한 예약일자가 아니면 저장", "E001");
- return;
- }
- }
- }
-
- var lRow = "0";
- var chkactorddd = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- for (i=1; i<Row; i++){
- var chkactorddd1 = ds_hidden_grd_prcpdetl.getColumn(i,"actorddd");
- //20150116 kya 재료제외
- //if(chkactorddd == chkactorddd1) {
- var nowprcpclscd = ds_hidden_grd_prcpdetl.getColumn(i,"prcpclscd");
- if ( (chkactorddd == chkactorddd1) && ( nowprcpclscd != "M2" )) {
- lRow = lRow +","+ i
- }
- }
-
- var lRows = lRow.split(",");
- for (i=1; i<Row; i++){
- var actordddchk = ds_grd_prcpdetl.getColumn(i,"actorddd");
- var actordddchk1 = ds_grd_prcpdetl.getColumn(i,"actorddd");
-
- // alert("actordddchk = " + actordddchk + ",actordddchk1=" + actordddchk1 +", kRow =" + kRow +", lRow = " + lRow);
-
- //20160512 kya 수정
- if (actordddchk != actordddchk1){
- if (kRow != lRow){
- sysf_messageBox("동일한 일자를 모두 선택 하지 않으면 저장", "E001");
- return;
- }
- }
- }
-
- var vewactorddd1 = ds_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- for (i=1; i<kRows.length; i++){
- var vewactorddd2 = ds_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- if(vewactorddd1 != vewactorddd2){
- sysf_messageBox("예약 일자를 모두 동일한 일자로 변경 하지 않으면 저장", "E001");
- return;
- }
- }
-
- var prcpexecdeptcd = ds_main_leftref.getColumn(0,"exec");
- var actorddd = ds_hidden_grd_prcpdetl.getColumn(kRows[1],"actorddd");
-
-
- dsf_createDs("ds_savechangeinfo");
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ,{col:"drugdd", val:actorddd}
- ,{col:"ordtm", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"ordtm")}
- ,{col:"acting", val:"Change"}
- ,{col:"prcpexecdeptcd", val:prcpexecdeptcd}
- ,{col:"insukind", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"insukind" )}
- ,{col:"suppkind", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"suppkind" )}
- ,{col:"insucd", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"insucd" )}
- ,{col:"suppkindresn", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"suppkindresn" )}
- ,{col:"ownbflag", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"ownbflag" )}
- ,{col:"spclcd", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"spclcd" )}
- ,{col:"rareobstflag", val:ds_hidden_grd_prcpdetl.getColumn(kRows[1],"rareobstflag" )}
- ]);
-
- dsf_createDs("ds_send_prcpdetl");
- ds_grd_prcpdetl.filter("flag == '1'");
- ds_grd_prcpdetl.applyChange();
- ds_send_prcpdetl.copyData(ds_grd_prcpdetl,true);
- ds_grd_prcpdetl.filter("");
-
-
- //변경내용저장실행
- var oParam = {};
- oParam.id = "TXMNI00108";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExePrcpChangeSave";
- oParam.inds = "refCond=ds_send_prcpdetl acting=ds_send";
- oParam.outds = "ds_savechangeinfo=rcptinfo";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00108";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00108") > -1){
-
- //20081212 dhkim 0원수납 에러메세지 테스트 ..
- if(ds_savechangeinfo.getColumn(0,"rcptYn") == "N"){
- //20090318 dhkim messageBox로 변경
- //alert(model.getValue('/root/savechangeinfo/rcptinfo/errMsg'));
- sysf_messageBox(ds_savechangeinfo.getColumn(0,"errMsg"), "E");
- }
-
-
- //20091015 dhkim 액팅후 무조건 당일업무대상자리스트 refresh와 등록번호 새로세팅 후 처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
-
- //업무대상리스트 다시조회
- fbiztrgtman("acting");
-
- //등록번호 새로세팅
- ds_rghtreflist.setColumn(0,"pid", pid);
-
- //처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
- ds_grd_ordsper.rowposition = oRow;
- fordsper(actorddd);
-
-
- }
- }
- /**
- * @ver : 2008.12.09
- * @by : dhkim
- * @desc : facting에 액팅, 변경내용저장, 특조전송 기능을
- * 액팅취소만 수행하도록 찢음
- */
- function fPrcpActingCancel(){
- var iRow = ds_grd_biztrgtman.rowposition;
- var Row = ds_grd_prcpdetl.rowcount;
- var jRow=ds_grd_prcpdetl.rowposition;
- var oRow = ds_grd_ordsper.rowposition;
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist" ;
-
- //20091015 dhkim 등록번호 변수저장
- var pid = ds_rghtreflist.getColumn(0,"pid");
-
- //acting체크 시 환자 선택 여부 파악
- if(Row==0){
- sysf_messageBox("환자가 선택되지", "E007");
- return;
- }
- var chek = 0;
- var kRow = 0;
- for (var i=0; i<Row; i++){
- chek = chek + ds_grd_prcpdetl.getColumn(i,"flag");
- if(ds_grd_prcpdetl.getColumn(i,"flag") == "1"){
- kRow = kRow +","+ i;
- }
- }
-
- if(chek==0){
- sysf_messageBox("하나 이상의 처방내역을", "C002");
- return;
- }
-
- var kRows = kRow.split(",");
-
- for(i=1; i<kRows.length; i++){
-
- var exec = ds_grd_prcpdetl.getColumn(kRows[i],"execdd");
- var prcpclscd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpclscd");
- var execchk = utlf_getCurrentDate();
- var execord = exec.substr(0,8);
- var endyn = ds_grd_prcpdetl.getColumn(kRows[i],"endyn");
- var act50yn = ds_grd_prcpdetl.getColumn(kRows[i],"act50yn");
- var dracptyn = ds_grd_prcpdetl.getColumn(kRows[i],"dracptyn");
- var dracptdt = ds_grd_prcpdetl.getColumn(kRows[i],"dracptdt");
- //20091108_SMY추가
- var fRow= ds_codelist.findRowExpr("cdgrupid == '077' && supcdid == '04' && cdid == '"+ sysf_getUserInfo("dutplceinstcd") +"'");
- if(ds_codelist.getColumn(fRow,"cdid")){
- var mig = ds_grd_prcpdetl.getColumn(kRows[i],"mig");
- var prcpcd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpcd");
- var migflag = prcpcd.substr(0,1);
-
- if(migflag == '_'){
- sysf_messageBox("전환된 데이터는 Acting취소할 수 없습니다.(처방코드 : "+ prcpcd + " )", "E");
- return;
- }
- }
-
- if(exec == "-"){
- sysf_messageBox("Acting을 실시하지 않은 곳은 Acting 취소을", "E001");
- return;
- }
- if(execord != execchk){
- sysf_messageBox("Acting을 실시한 일자와 현재 일자가 동일하지 않은 곳은 Acting 취소을", "E001");
- return;
- }
- if(prcpclscd == "B4"){
- sysf_messageBox("혈액은 Acting 취소을 ", "E001");
- return;
- }
-
- // 마감된 처방을 Acting취소시 마감반환사유 프로세스 입력되도록
- if (endyn == "Y") {
- sysf_messageBox("마감된 Acting처방을 취소하려면 반환사유를 ", "C001");
-
-
- ds_cond.setColumn(0,"prcpdd",ds_grd_prcpdetl.getColumn(kRows[i],"prcpdd"));
- ds_cond.setColumn(0,"prcpno",ds_grd_prcpdetl.getColumn(kRows[i],"prcpno"));
- ds_cond.setColumn(0,"prcphistno",ds_grd_prcpdetl.getColumn(kRows[i],"prcphistno"));
- ds_cond.setColumn(0,"execprcpno",ds_grd_prcpdetl.getColumn(kRows[i],"execprcpno"));
- ds_cond.setColumn(0,"instcd",sysf_getUserInfo("dutplceinstcd"));
- ds_cond.setColumn(0,"ioflag","O");
-
- // 반환사유 팝업
- var objArg = new Object();
- objArg.arg_ds_endinfo_result_list = ds_cond;
-
- frmf_modal("SPPAS03000", "SPPAS03000",objArg,"", "2", "100", "100", "", "", "", "", "", "M");
-
- }
-
- var stat = ds_grd_prcpdetl.getColumn(kRows[i],"stat");
- var prcpclscd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpclscd");
- var cdnm = ds_grd_prcpdetl.getColumn(kRows[i],"cdnm");
- } // for end
-
- if(kRows.length >= 3){
- var chkactorddd = ds_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- for (i=1; i<kRows.length; i++){
- var chkactorddd1 = ds_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- if(chkactorddd != chkactorddd1){
- sysf_messageBox("ACting은 동일한 예약일자가 아니면 Acting실시", "E001");
- return;
- }
- }
- }
-
- var ordddlong = ds_grd_prcpdetl.getColumn(kRows[1],"orddd");
- var orddd = ordddlong.substring(0,8);
- dsf_createDs("ds_chking");
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ]);
-
- var oParam = {};
- oParam.id = "TRMNI00108";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetActingChkData";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_chking=chking";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00108";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TRMNI00108") > -1){
- if(ds_chking.getColumn(0,"actingchk") > 0){
- sysf_messageBox("현재 입원 환자는 Acting을", "E001");
- return;
- }
- }
-
-
- var actorddd = ds_grd_prcpdetl.getColumn(kRows[1],"actorddd");
-
-
-
-
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"orddd", val:orddd}
- ,{col:"drugdd", val:actorddd}
- ,{col:"acting", val:"N"}
- ,{col:"prcpexecdeptcd", val:""}
- ,{col:"endyn", val:ds_grd_prcpdetl.getColumn(kRows[1],"endyn" )}
- ,{col:"act50yn", val:ds_grd_prcpdetl.getColumn(kRows[1],"act50yn" )}
- ,{col:"dracptyn", val:ds_grd_prcpdetl.getColumn(kRows[1],"dracptyn" )}
- ,{col:"dracptdt", val:ds_grd_prcpdetl.getColumn(kRows[1],"dracptdt" )}
- ]);
- //빈센트 병원의 경우 마이그레이션 데이터는 수익계산 인터페이스 호출하지 않음_20091027_SMY추가
- var fRow= ds_codelist.findRowExpr("cdgrupid == '077' && supcdid == '04' && cdid == '"+ sysf_getUserInfo("dutplceinstcd") +"'");
- if(ds_codelist.getColumn(fRow,"cdid")){
- dsf_makeValue(ds_send,"instflag", "string", "vincent");
- }
- dsf_createDs("ds_send_prcpdetl");
- ds_grd_prcpdetl.filter("flag == '1'");
- ds_grd_prcpdetl.applyChange();
- ds_send_prcpdetl.copyData(ds_grd_prcpdetl,true);
- ds_grd_prcpdetl.filter("");
- dsf_setFixVal(ds_send_prcpdetl, "execdeptcd:-");
- // trace(ds_send_prcpdetl.saveXML());
- //20081209 dhkim 액팅취소 호출
- var oParam = {};
- oParam.id = "TXMNI00107";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExePrcpActingCancel";
- oParam.inds = "refCond=ds_send_prcpdetl acting=ds_send";
- oParam.outds = "";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00107";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00107") > -1){
-
- //20091015 dhkim 액팅후 무조건 당일업무대상자리스트 refresh와 등록번호 새로세팅 후 처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
-
- //업무대상리스트 다시조회
- fbiztrgtman("acting");
-
- //등록번호 새로세팅
- ds_rghtreflist.setColumn(0,"pid", pid);
-
-
- //처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
- ds_grd_ordsper.rowposition = oRow;
- fordsper(actorddd);
-
-
- }
- }
- function cf_TRMNI00108(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function cf_TXMNI00107(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @ver : 2008.12.09
- * @by : dhkim
- * @desc : facting에 액팅, 변경내용저장, 특조전송 기능을
- * 액팅만 수행하도록 찢음
- */
- function fPrcpActing(prtyn){
-
- var iRow = ds_grd_biztrgtman.rowposition;
- var Row = ds_grd_prcpdetl.rowcount;
- var jRow= ds_grd_prcpdetl.rowposition;
- var oRow = ds_grd_ordsper.rowposition;
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist";
- //acting채크 시 환자 선택 여부 파악
- if(Row==0){
- sysf_messageBox("환자가 선택되지", "E007");
- return;
- }
- var chek = 0;
- var kRow = "0";
-
- for (var i=0; i<Row; i++){
- chek = chek + Number(utlf_transNullToEmpty(ds_grd_prcpdetl.getColumn(i,"flag")));
-
- if(ds_grd_prcpdetl.getColumn(i,"flag") == "1"){
- kRow = kRow +","+ i;
- }
- }
- // trace("chek == " + chek);
- if(chek==0){
- sysf_messageBox("하나 이상의 처방내역을", "C002");
- return;
- }
-
- var kRows = kRow.split(",");
- // trace("kRows.length == " + kRows.length);
- // trace("kRows[1] == " + kRows[1]);
- for(var i=1; i<kRows.length; i++){
- var exec = ds_grd_prcpdetl.getColumn(kRows[i],"execdd");
- var prcpclscd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpclscd");
- var execchk = utlf_getCurrentDate();
- var execord = exec.substr(0,8);
- var endyn = ds_grd_prcpdetl.getColumn(kRows[i],"endyn");
- var act50yn = ds_grd_prcpdetl.getColumn(kRows[i],"act50yn");
- var dracptyn = ds_grd_prcpdetl.getColumn(kRows[i],"dracptyn");
- var dracptdt = ds_grd_prcpdetl.getColumn(kRows[i],"dracptdt");
- var stat = ds_grd_prcpdetl.getColumn(kRows[i],"stat"); //20171214추가
-
- var absnyn = ds_grd_prcpdetl.getColumn(kRows[i],"absnyn"); //20190527 품절약유무 'Y'품절
- var prcpcd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpcd");
- if ( absnyn == 'Y') { //20190527 품절약유무 'Y'품절
- sysf_messageBox("품절약은 Acting할 수 없습니다.(처방코드 : "+ prcpcd + " )", "E");
- return;
- }
-
- var clincstdycd = utlf_transNullToEmpty(ds_grd_prcpdetl.getColumn(kRows[i],"clincstdycd")); //20180126 kya 임상시험번호
- //20091108_SMY추가
- var fRow= ds_codelist.findRowExpr("cdgrupid == '077' && supcdid == '04' && cdid == '"+ sysf_getUserInfo("dutplceinstcd") +"'");
- if(ds_codelist.getColumn(fRow,"cdid")){
- var mig = ds_grd_prcpdetl.getColumn(kRows[i],"mig");
- var prcpcd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpcd");
- var migflag = prcpcd.substr(0,1);
-
- if(migflag == '_'){
- sysf_messageBox("전환된 데이터는 Acting할 수 없습니다.(처방코드 : "+ prcpcd + " )", "E");
- return;
- }
- }
-
- ////시작
- //20160229 by kya , 예약일자를 당일로 변경한 후, 액팅하도록 알림메시지 줌
- var actorddd =ds_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- rcptyn = ds_grd_prcpdetl.getColumn(kRows[i],"rcptyn");
-
- //alert(" execchk.substr(0,8) = " + execchk.substr(0,8));
- //alert(" actorddd = " + actorddd );
- if ( execchk.substr(0,8) < actorddd ) {
- sysf_messageBox("예약일자가 미래입니다. 당일로 변경저장 후에 Acting을 실시하기 바랍니다.", "E");
- return;
- }
- // //끝.
- // Acting버튼 클릭시
- //alert("prcpclscd = " + prcpclscd );
-
- //20161219 임상항암 + 조제완료 + 실시일자일 경우, Acting 모듈 시행합니다.
- //20180126 임상 + + 조제완료 + 실시일자일 경우, Acting 모듈 시행합니다.
- //if( prcpclscd == "A7" && stat == "2" && exec != "-") {
- if ( clincstdycd != "-" && stat == "2" && exec != "-") {
-
- } else {
- if(exec != "-"){
- sysf_messageBox("Acting을 실시한 곳은 다시 Acting을", "E001");
- return;
- }
- }
-
-
- var stat = ds_grd_prcpdetl.getColumn(kRows[i],"stat");
- var prcpclscd = ds_grd_prcpdetl.getColumn(kRows[i],"prcpclscd");
- var cdnm = ds_grd_prcpdetl.getColumn(kRows[i],"cdnm");
- if(prcpclscd == "B4"){
- sysf_messageBox("혈액은 수혈 기록을 통해서만 Acting을 할 수 있습니다.", "E");
- return;
- }
-
- //20141014 kya 항암제 + 조제완료 => 실시완료됨
- if(prcpclscd == "A7"){ //항암
- if(stat != "2"){ //조제완료가 아니면
- sysf_messageBox("조제완료 되지 않은 항암제는 Acting을", "E001");
- return;
- }
- }
- //20150320 kya 임상항암도 항암제와 동일하게
- if(prcpclscd == "A5"){ //임상항암
- if(stat != "2"){ //조제완료가 아니면
- sysf_messageBox("조제완료 되지 않은 항암제는 Acting을", "E001");
- return;
- }
- }
- //20090313 dhkim 무균제 추가
- if(prcpclscd == "A9"){
- if(stat != "2"){
- sysf_messageBox("조제완료 되지 않은 무균제는 Acting을", "E001");
- return;
- }
- }
- if(cdnm == "마약"){
-
- //2012.11.16 by kya 부서확인 추가
- if (stat != "15" ) { //부서확인
- sysf_messageBox("부서확인 되지 않은 마약은 Acting을", "E001");
- return;
- }
- }
- } // for end
-
- if(kRows.length >= 3){
- var chkactorddd = ds_grd_prcpdetl.getColumn(kRows[1],"actorddd");
- for (i=1; i<kRows.length; i++){
- var chkactorddd1 = ds_grd_prcpdetl.getColumn(kRows[i],"actorddd");
- if(chkactorddd != chkactorddd1){
- sysf_messageBox("ACting은 동일한 예약일자가 아니면 Acting실시", "E001");
- return;
- }
- }
- }
-
- //20091015 dhkim 등록번호 변수저장
- var pid = ds_rghtreflist.getColumn(0,"pid");
-
- var prcpexecdeptcd = ds_main_leftref.getColumn(0,"exec");
-
- var ordddlong = ds_grd_prcpdetl.getColumn(kRows[1],"orddd");
- var orddd = ordddlong.substring(0,8);
-
- dsf_createDs("ds_chking");
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ]);
-
- var oParam = {};
- oParam.id = "TRMNI00108";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetActingChkData";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_chking=chking";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00108";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TRMNI00108") > -1){
- if(ds_chking.getColumn(0,"actingchk") > 0){
- sysf_messageBox("현재 입원 환자는 Acting을", "E001");
- return;
- }
- }
-
-
- //20141201 by kya acting + 주사라벨 동시
- //start
- var injlacting = utlf_transNullToEmpty(ds_main.getColumn(0,"injlacting"));
- if ( injlacting == "1")
- {
- //if ( rcptyn != "V" ) { //20151105 후불환자인경우, 라벨동시출력에서 제외함. 왜냐하면, 수익interface 오류발생함.
- //alert("주사라벨시작"); //20171016 후불환자포함시킴
- fPrintINJLabelNew();
- // }
- }
- //end
-
-
- dsf_createDsRow("ds_send",
- [{col:"pid", val:pid}
- ,{col:"orddd", val:orddd}
- ,{col:"drugdd", val:actorddd}
- ,{col:"acting", val:"Y"}
- ,{col:"prcpexecdeptcd", val:prcpexecdeptcd}
- ,{col:"endyn", val:ds_grd_prcpdetl.getColumn(kRows[1],"endyn" )}
- ,{col:"act50yn", val:ds_grd_prcpdetl.getColumn(kRows[1],"act50yn" )}
- ,{col:"dracptyn", val:ds_grd_prcpdetl.getColumn(kRows[1],"dracptyn" )}
- ,{col:"dracptdt", val:ds_grd_prcpdetl.getColumn(kRows[1],"dracptdt" )}
- ]);
- //빈센트 병원의 경우 마이그레이션 데이터는 수익계산 인터페이스 호출하지 않음_20091027_SMY추가
- var fRow= ds_codelist.findRowExpr("cdgrupid == '077' && supcdid == '04' && cdid == '"+ sysf_getUserInfo("dutplceinstcd") +"'");
- if(ds_codelist.getColumn(fRow,"cdid")){
- dsf_makeValue(ds_send,"instflag", "string", "vincent");
- }
-
- dsf_createDs("ds_send_prcpdetl");
- ds_grd_prcpdetl.filter("flag == '1'");
- ds_grd_prcpdetl.applyChange();
- ds_send_prcpdetl.copyData(ds_grd_prcpdetl,true);
- ds_grd_prcpdetl.filter("");
-
- //20090713 dhkim 출력여부추가
- if(utlf_isNull(prtyn)){
- prtyn = 'N';
- }
- dsf_makeValue(ds_send,"prtyn","string", prtyn);
- dsf_setTypeFormat(ds_send_prcpdetl, "prcpno:INT^prcphistno:INT^execprcpuniqno:INT^dgno:INT");
- //20081209 dhkim submission도 분리함
- var oParam = {};
- oParam.id = "TXMNI00106";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqExePrcpActing";
- oParam.inds = "refCond=ds_send_prcpdetl acting=ds_send";
- oParam.outds = "";
- oParam.async = false;
- oParam.callback = "cf_TXMNI00106";
- tranf_submit(oParam);
- if(arErrorCode.pop("TXMNI00106") > -1){ //정상인경우,
-
- //업무대상리스트 다시조회
- fbiztrgtman("acting");
-
- //등록번호 새로세팅
- ds_rghtreflist.setColumn(0,"pid", pid);
-
- //처방상세내역 재조회(진료내역 더블클릭과 동일이벤트)
- ds_grd_ordsper.rowposition = oRow;
- fordsper(actorddd);
- }
-
- }
- function cf_TXMNI00106(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @group :
- * @ver : 2007.05.16
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 예약일자 이전 날자 채크
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function rsrvdd(){
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist";
- var xPrcpDetlBKPath = "/root/hidden/main/prcpdetl/prcpdetllist";
- var sDetlGrupRow = ds_grd_prcpdetl.rowposition;
- var sDetlGrupBKRow = 0;
-
- //20170519 예약일자 변경 체크박스 수정
- //var chkdd = ds_grd_prcpdetl.getColumn(sDetlGrupRow,"flag");
- var chkdd = ds_grd_prcpdetl.getColumn(sDetlGrupRow,"rsflag"); //예약일자 변경체크박스 수정
-
- var setcordflag = ds_grd_prcpdetl.getColumn(sDetlGrupRow,"etcordflag"); // 원무예약구분
- var sprcpclscdnow = ds_grd_prcpdetl.getColumn(sDetlGrupRow,"prcpclscd"); // 구분
-
- var exec = ds_grd_prcpdetl.getColumn(sDetlGrupRow, "execdd");//2010.06.04 김달현 - column추가로 colnm참조로 변경
-
- if ( chkdd == "0" || utlf_isNull(chkdd) ) {
- sysf_messageBox("예약일자는 선택을 안하면 변경", "E001");
- ds_grd_prcpdetl.setColumn(sDetlGrupRow,"actorddd",ds_hidden_grd_prcpdetl.getColumn(sDetlGrupRow, "actorddd"));
- return;
- }
-
- if(exec != "-"){
- sysf_messageBox("Acting 실시후 예약일자 선택", "E001");
- ds_grd_prcpdetl.setColumn(sDetlGrupRow,"actorddd",ds_hidden_grd_prcpdetl.getColumn(sDetlGrupRow, "actorddd"));
- return;
- }
-
-
- //현제 일자 에서 선택한 일자가 이전 날자인지 아닌지 파악한다.
- var nowdate = utlf_getCurrentDate()
- if(ds_grd_prcpdetl.getColumn(sDetlGrupRow, "actorddd") < nowdate){
- sysf_messageBox("예약일자는 현재일 이전일자로 선택", "E001");
- ds_grd_prcpdetl.setColumn(sDetlGrupRow,"actorddd",ds_hidden_grd_prcpdetl.getColumn(sDetlGrupRow, "actorddd"));
-
- frsrvtm("actorddd");//2010.06.04 김달현 - 그리드 col의 추가로 colnm참조로 변경함
- return;
- }
-
-
- frsrvtm("actorddd");//2010.06.04 김달현 - 그리드 col의 추가로 colnm참조로 변경함
- }
- /**
- * @group :
- * @ver : 2007.05.22
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 처방전 acting chekbox 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMpsActing(){
- var mpsacting = utlf_transNullToEmpty(group3.group4.checkbox3.value);
-
- if(mpsacting=="1"){
- group3.group4.button11.enable = false;
- }else if(utlf_isNull(mpsacting)){
- group3.group4.button11.enable = true;
- }
- }
- /**
- * @group :
- * @ver : 2014.11.27
- * @by : 권영애
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 주사라벨 acting chekbox 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fINJLActing(){
- var injlacting = group3.group4.checkbox1.value;
-
- if(injlacting =="1"){
- group3.group4.button11.enable = false;
- }else if(utlf_isNull(injlacting)){
- group3.group4.button11.enable = true;
- }
- }
- /**
- * @group :
- * @ver : 2007.05.29
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 각각의 통계 부분 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fStats(flag){
-
- var execnm = ds_main_leftref.getColumn(0,"execnm");
- var execcd = ds_main_leftref.getColumn(0,"exec");
-
-
-
- //20090318 dhkim 주사실명칭 하드코딩을 간호부서기준자료코드와 로그인사용자정보로 변경함
- if(execcd != injDeptcd){
- return;
- }
-
-
-
- dsf_createDsRow("ds_send",
- [{col:"bizdd", val:ds_main_leftref.getColumn(0,"bizdd")}
- ,{col:"execflag", val:ds_main_leftref.getColumn(0,"execflag")}
- ,{col:"exec", val:ds_main_leftref.getColumn(0,"exec")}
- ]);
-
- if(flag == "allseq"){
- var chk = group3.opt_allseq.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","allseq");
- }
-
- if(flag == "A6"){
- var chk = group3.opt_inj.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","A6");
- }
-
- if(flag == "A7"){
- var chk = group3.opt_ant.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","A7");
- }
- //20150326 kya 임상항암처방 추가
- if(flag == "A5"){
- var chk = group3.opt_ant2.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","A5");
- }
-
- if(flag == "A71"){
- var chk = group3.opt_ant.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","A71");
- }
-
- if(flag == "A8"){
- var chk = group3.opt_prvn.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","A8");
- }
-
- if(flag == "B4"){
- var chk = group3.opt_blod.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","B4");
- }
-
- if(flag == "B5"){
- var chk = group3.opt_antdelive.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","B5");
- }
-
- //[20081215 dhkim]
- //ITC 변경개발요청 특정 경구약 주사실 액팅 가능
- //예외용법테이블에 등록된 경구약을 액팅가능함
- if(flag == "A2"){
- var chk = group3.opt_mouth.value;
- if(chk == "0"){
- sysf_messageBox("검색할 데이터가","I004");
- return;
- }
- dsf_makeValue(ds_send,"stats","string","A2");
- }
-
-
- //20090225 dhkim
- //통계건수클릭시 업무대상자리스트 조회조건에 플래그 추가하여 조회함
- fbiztrgtman("biztrgt", flag);
-
-
- }
-
- /**
- * @group :
- * @ver : 2007.05.30
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 미시행 주사내역 부분 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function finjsper(){
- var iRow = ds_grd_injsper.rowposition;
- var xBizInjSper = "/root/main/rghtlist/injsperlist";
-
- //조회기간을 추가함 20150528 by kya
- var sdate = ds_main_leftref.getColumn(0,"sdate");
- var edate = ds_main_leftref.getColumn(0,"edate");
-
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"orddd", val:ds_grd_injsper.getColumn(iRow,"orddd")}
- ,{col:"drugdd", val:ds_grd_injsper.getColumn(iRow,"actorddd")}
- ,{col:"depthngnm", val:ds_grd_injsper.getColumn(iRow,"depthngnm")}
- ,{col:"exec", val:ds_main_leftref.getColumn(0,"exec")}
- ,{col:"sdate", val:sdate}
- ,{col:"edate", val:edate}
- ]);
-
-
- var kRows = ds_grd_ordsper.rowcount;
- var xOresperPath = "/root/main/rghtlist/ordsperlist"
- for(p=0; p<kRows; p++){
- var drugdd = ds_send.getColumn(0,"drugdd");
- var depthngnm = ds_send.getColumn(0,"depthngnm");
- var orddd1 = ds_grd_ordsper.getColumn(p,"actorddd");
- var depthngnm1 = ds_grd_ordsper.getColumn(p,"depthngnm");
- if(drugdd == orddd1 && depthngnm == depthngnm1){
- ds_grd_ordsper.rowposition = p;
- }
- }
- //상세내역 조회 20151110
- fDetailsper();
-
- }
- /**
- * @group :
- * @ver : 2007.06.01
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자번호 조회 돋보기 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fPatSrch(){
- var objArg = new Object();
- objArg.arg_ds_send = ds_send;
- frmf_modal("SPPMC02500","SPPMC02500", objArg, "", 1, 150, 150, "", "", "", "", "", "M");
-
- //환자번호 copy
- var popupendflag = frmf_getParameter("SPPMC02500_popupendflag");
- trace( "popupendflag = " + popupendflag);
- if (popupendflag == "ok"){
- ds_rghtreflist.setColumn(0,"pid",ds_patinfolist.getColumn(0,"pid"));
-
-
- var pid = ds_rghtreflist.getColumn(0,"pid");
- if (!utlf_isNull(pid) && pid != " " && pid != "-"){
-
- //20090629 dhkim 7월 고시변경으로 인한 리턴값 추가
- var rtn = fpidref("new");
- if(!rtn){
- return ;
- }
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2007.05.30
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진료내용 부분 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fordsper(actorddd){
-
-
-
- var iRow = ds_grd_ordsper.rowposition;
- var xBizordsper = "/root/main/rghtlist/ordsperlist";
- var orddd = ds_main_leftref.getColumn(0,"bizdd");
-
- //20091015 dhkim 조회기준 일자추가
-
- if(utlf_isNull(actorddd)){
- actorddd = ds_grd_ordsper.getColumn(iRow,"actorddd");
- }
-
- dsf_createDsRow("ds_send",
- [{col:"pid", val:ds_rghtreflist.getColumn(0,"pid")}
- ,{col:"orddd", val:orddd}
- ,{col:"drugdd", val:actorddd}
- ,{col:"bizorddd", val:actorddd}
- ,{col:"dsper", val:"dsper"}
- ,{col:"grdflag", val: "O"}
- ]);
- //그리드구분자 추가 (당일업무대상자리스트클릭으로 조회시 : W, 진료내역클릭으로 조회시 : O)
-
- //상세내역조회 20151110
- fDetailsper();
- }
-
- /**
- * @group :
- * @ver : 2015.11.10
- * @by : 권영애
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진료상세내역조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDetailsper(actorddd){
- //2010.06.09 김달현 - colHidden에러 수정
- var prcpNmColHidden = group3.grd_prcpdetl.getRealColSize(group3.grd_prcpdetl.getBindCellIndex("body","prcpnm"));
- var prcpHngNmColHidden = group3.grd_prcpdetl.getRealColSize(group3.grd_prcpdetl.getBindCellIndex("body","prcphngnm"));
-
-
- //처방상세조회
- var oParam = {};
- oParam.id = "TRMNI00103";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetPrcpDetlData";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_grd_prcpdetl=prcpdetllist";
- oParam.async = false;
- oParam.callback = "cf_TRMNI00103";
- tranf_submit(oParam);
-
- //2010.06.09 김달현 - colHidden 에러 수정
- if(prcpNmColHidden == 0 && prcpHngNmColHidden == 0){
- group3.grd_prcpdetl.setFormatColProperty(group3.grd_prcpdetl.getBindCellIndex("body","prcpnm"),"size",225);
- }else if(prcpNmColHidden == 0){
- group3.grd_prcpdetl.setFormatColProperty(group3.grd_prcpdetl.getBindCellIndex("body","prcphngnm"),"size",227);
- }else if(prcpHngNmColHidden == 0){
- group3.grd_prcpdetl.setFormatColProperty(group3.grd_prcpdetl.getBindCellIndex("body","prcpnm"),"size",225);
-
- }
-
-
-
- dsf_copyDs(ds_hidden_main,ds_main,"replace");
- dsf_copyDs(ds_hidden_grd_prcpdetl,ds_grd_prcpdetl,"replace");
-
- var Row = ds_grd_prcpdetl.rowcount;
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist";
- var mixchk = 0;
-
- var rcptchk; //20090305 dhkim 후수납관련필드추가
- var endyn; //20090309 dhkim 마감여부 색상변경추가
-
- //처방상태 값에 따른 처방상세내역 리스트에 상태값 을 나타내는 로직 시작
- for(var i=0; i < ds_grd_prcpdetl.rowcount; i++){
-
- var execdd = ds_grd_prcpdetl.getColumn(i,"execrid");
- var blodcomstat = ds_grd_prcpdetl.getColumn(i,"blodcomstat");
- var execprcpstatcd = ds_grd_prcpdetl.getColumn(i,"execprcpstatcd");
- var prcpclscd = ds_grd_prcpdetl.getColumn(i,"prcpclscd");
- var drugno = ds_grd_prcpdetl.getColumn(i,"drugno");
- var cdnm = ds_grd_prcpdetl.getColumn(i,"cdnm");
- endyn = ds_grd_prcpdetl.getColumn(i,"endyn"); // 마감여부
- var etcprcpresncd = ds_grd_prcpdetl.getColumn(i,"etcprcpresncd"); // 수혈반납 및 폐기사유코드
- var blodcomstat = ds_grd_prcpdetl.getColumn(i,"blodcomstat"); // 성분제제상태
-
- //20090305 dhkim 후수납관련필드추가
- rcptchk = ds_grd_prcpdetl.getColumn(i,"rcptchk"); // 후수납상태
-
-
- //20090305 dhkim
- //항암 전송완료 상태로 보여주는 부분 후수납의 경우 230조건 제외할것
- //후수납 : rcptchk값이 V, Y, F일때는 230조건 제외,
- // rcptchk값이 R일때는 230조건
- //20090312 dhkim vip환자의 경우는 수납여부 체크하지 않음
- //20090313 dhkim vip환자와 당일선검사환자의 경우는 수납여부 체크하지 않음
- if(
- (
- (rcptchk == "R" && execprcpstatcd == "230")
- || (rcptchk == "V")
- || (rcptchk == "Y")
- //20090428 dhkim 후불 주석품
- || (rcptchk == "F")
- )
- && drugno != "0"
- && cdnm!="마약"
-
- //20090617 dhkim 조제완료가 아닌 약
- && execprcpstatcd != "310"
- && execprcpstatcd != "315"
- ){
- //alert(rcptchk + " " + execprcpstatcd + " " + drugno);
- ds_grd_prcpdetl.setColumn(i,"stat", 13); //전송완료
- }
-
-
- if(execprcpstatcd == "300"){
- ds_grd_prcpdetl.setColumn(i,"stat", 1); //조제보류
- }
- //alert('execprcpstatcd ' + execprcpstatcd + ' prcpclscd ' + prcpclscd);
- if(execprcpstatcd == "310" || execprcpstatcd == "315" &&
- (prcpclscd == "A7"
- //20090310 dhkim 무균약추가
- || prcpclscd == "A9"
- )
- ){
- //alert('execprcpstatcd ' + execprcpstatcd + ' prcpclscd ' + prcpclscd);
- ds_grd_prcpdetl.setColumn(i,"stat", 2); //조제완료
- var mixk = ds_grd_prcpdetl.getColumn(i,"mix");
- var actordddk = ds_grd_prcpdetl.getColumn(i,"actorddd");
- var rsrvtmk = ds_grd_prcpdetl.getColumn(i,"rsrvtm");
- var ordddk = ds_grd_prcpdetl.getColumn(i,"orddd");
- var drugnok = ds_grd_prcpdetl.getColumn(i,"drugno");//투약번호
-
-
-
- for (var r=0; r<ds_grd_prcpdetl.rowcount; r++){
- var mixr = ds_grd_prcpdetl.getColumn(r,"mix");
- var actordddr = ds_grd_prcpdetl.getColumn(r,"actorddd");
- var rsrvtmr = ds_grd_prcpdetl.getColumn(r,"rsrvtm");
- var ordddr = ds_grd_prcpdetl.getColumn(r,"orddd");
- var drugnor =ds_grd_prcpdetl.getColumn(r,"drugno");
- var execprcpstatcdr = ds_grd_prcpdetl.getColumn(r,"execprcpstatcd");
-
- if(mixk != "-" && execprcpstatcdr != "610" && mixk == mixr && actordddr == actordddk && rsrvtmr == rsrvtmk && ordddr == ordddk && drugnor == drugnok && drugnok != 0){
- ds_grd_prcpdetl.setColumn(i,"stat", 2); //조제완료
- }
- }
- }
-
- if(execprcpstatcd == "500" || execprcpstatcd == "505" || execprcpstatcd == "510"){
- ds_grd_prcpdetl.setColumn(i,"stat", 11); //접수
- }
- if(execprcpstatcd == "520" || execprcpstatcd == "525"){
- ds_grd_prcpdetl.setColumn(i,"stat", 4); //준비완료
- }
- if(execprcpstatcd == "540"){
- ds_grd_prcpdetl.setColumn(i,"stat", 7); //반납의뢰
- }
- if(execprcpstatcd == "550"){
- ds_grd_prcpdetl.setColumn(i,"stat",8); //반납완료
- }
- if(execprcpstatcd == "530"){
- if (blodcomstat == "8") {
- ds_grd_prcpdetl.setColumn(i,"stat", 14); //잔여폐기
- }
- else {
- ds_grd_prcpdetl.setColumn(i,"stat", 5); //불출.출고
- }
- }
- if(execprcpstatcd == "560"){
- if (etcprcpresncd == "07" || etcprcpresncd == "12") {
- ds_grd_prcpdetl.setColumn(i,"stat", 14); //잔여폐기
- }
- else {
- ds_grd_prcpdetl.setColumn(i,"stat", 9); //폐기의뢰
- }
- }
- if(execprcpstatcd == "570"){
- ds_grd_prcpdetl.setColumn(i,"stat", 10); //폐기완료
- }
- if(execprcpstatcd == "320"){
- ds_grd_prcpdetl.setColumn(i,"stat", 5); //불출.출고
- }
- //2012.11.14 by kya 부서확인 추가
- if(execprcpstatcd == "320N"){
- ds_grd_prcpdetl.setColumn(i,"stat", 15); //부서확인
- }
- if(prcpclscd =="B4"){
- if(execprcpstatcd == "610"){
- ds_grd_prcpdetl.setColumn(i,"stat", 12); //실시완료
- }
- }else{
- if(execprcpstatcd == "610"){
- ds_grd_prcpdetl.setColumn(i,"stat", 6); //시행완료
- }
- }
-
-
- var mix = ds_grd_prcpdetl.getColumn(i,"mix");
- var actorddd = ds_grd_prcpdetl.getColumn(i,"actorddd");
- var rsrvtm = ds_grd_prcpdetl.getColumn(i,"rsrvtm");
- var orddd = ds_grd_prcpdetl.getColumn(i,"orddd");
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var rgstdd = ds_grd_prcpdetl.getColumn(i,"rgstdd");
- var rgsttm = ds_grd_prcpdetl.getColumn(i,"rgsttm");
-
- //20090622 dhkim
- if(orddd.length > 8){
- orddd = orddd.substring(0, 8);
- }
-
- //20090903 dhkim 빈센트 오류사항 (믹스지정한 처방상태가 동일하지 않음)
- var stat = ds_grd_prcpdetl.getColumn(i,"stat");
- if(prcpclscd == "A7"){
-
- for(var k=0; k<Row; k++){
- var mixs = ds_grd_prcpdetl.getColumn(k,"mix");
- var actorddds = ds_grd_prcpdetl.getColumn(k,"actorddd");
- var rsrvtms = ds_grd_prcpdetl.getColumn(k,"rsrvtm");
- var orddds = ds_grd_prcpdetl.getColumn(k,"orddd");
-
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var _rgstdd = ds_grd_prcpdetl.getColumn(k,"rgstdd");
- var _rgsttm = ds_grd_prcpdetl.getColumn(k,"rgsttm");
-
-
- //20090622 dhkim
- if(orddds.length > 8){
- orddds = orddds.substring(0, 8);
- }
-
-
- //20091112 dhkim 믹스그룹화 시 rgstdd, rgsttm 조건 추가
- if(mix == mixs && mix != '-' && actorddds == actorddd && rsrvtms == rsrvtm && orddds == orddd && rgstdd == _rgstdd && rgsttm == _rgsttm){
- ds_grd_prcpdetl.setColumn(k,"prcpclscd", "A7");
-
- //20090903 dhkim 빈센트 오류사항 (믹스지정한 처방상태가 동일하지 않음)
- ds_grd_prcpdetl.setColumn(k,"stat", stat);
- }
- }
- }
-
- //20090526 dhkim 무균믹스추가
- if(prcpclscd == "A9"){
- for (var k=0; k<Row; k++){
- var mixs = ds_grd_prcpdetl.getColumn(k,"mix");
- var actorddds = ds_grd_prcpdetl.getColumn(k,"actorddd");
- var rsrvtms = ds_grd_prcpdetl.getColumn(k,"rsrvtm");
- var orddds = ds_grd_prcpdetl.getColumn(k,"orddd");
-
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var _rgstdd = ds_grd_prcpdetl.getColumn(k,"rgstdd");
- var _rgsttm = ds_grd_prcpdetl.getColumn(k,"rgsttm");
-
- //20090622 dhkim
- if(orddds.length > 8){
- orddds = orddds.substring(0, 8);
- }
-
- //20091112 dhkim 믹스그룹화 시 rgstdd, rgsttm 조건 추가
- if(mix == mixs && mix != '-' && actorddds == actorddd && rsrvtms == rsrvtm && orddds == orddd && rgstdd == _rgstdd && rgsttm == _rgsttm){
- ds_grd_prcpdetl.setColumn(k,"prcpclscd", "A9");
-
- //20090903 dhkim 빈센트 오류사항 (믹스지정한 처방상태가 동일하지 않음)
- ds_grd_prcpdetl.setColumn(k,"stat", stat);
- }
- }
- }
-
-
- //20090529 dhkim
- //혈액 상태중 반납의뢰, 통폐기의뢰, 잔여폐기의뢰, 출고, 접수, 준비완료, 반납완료, 통폐기완료, 잔여폐기완료 상태값 정의
- if(prcpclscd == "B4"){
- ds_grd_prcpdetl.setColumn(i,"stat", ds_grd_prcpdetl.getColumn(i,"bloodst"));
- }
-
- } //처방 상태값을 나타내는 로직 끝
- //조회기간을 추가함 20150528 by kya
- var sdate = ds_main_leftref.getColumn(0,"sdate");
- var edate = ds_main_leftref.getColumn(0,"edate");
-
- var seqno = ds_memolist.getColumn(0,"seqno");
- if(utlf_isNull(seqno)){
- //메모 데이타 없을시 이전 데이타 삭제
- group3.tar_memo.value="";
- }
-
- }
-
-
- /**
- * @group :
- * @ver : 2007.07.27
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 간호 기록 연결(값없을때)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fBaseMakeParameter() {
- var param = "";
- rowsep = "▩";
- colsep = "▦";
-
- //param = "recflag" + colsep + "dutplaccd" + colsep + "reclnkkey"+ rowsep+"I" + colsep + "31900" + colsep + "31900" + rowsep;
- param = "recflag" + colsep + "dutplaccd" + colsep + "reclnkkey"+ rowsep+"I" + colsep + "012" + colsep + "31900" + rowsep;
-
- return param;
- }
- /**
- * @group :
- * @ver : 2007.07.27
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 간호 기록 연결(값있을때)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMakeParameter() {
- var param = "";
- rowsep = "▩";
- colsep = "▦";
- param = "prcpflag" + colsep + "prcpnm" + rowsep;
-
- var acptyn ="";
- var prcpflag="";
- var prcpcd = "";
- var prcpnm = "";
- var prcpvol = "";
- var prcpvolunitflag="";
- var prcpqty = "";
- var prcpqtyunitflag = "";
- var prcptims = "";
- var drugmthdspccd = "";
- var abbrnm = "";
- var prcpdeliverfact = "";
-
- for(var i = 0; i < ds_grd_prcpdetl.rowcount; i++) {
- acptyn = ds_grd_prcpdetl.getColumn(i,"flag"); //채크여부
-
- if(acptyn == "1") {
- var datagrouplist =ds_grd_prcpdetl.getColumn(i,"datagroup");
- var datagroup = datagrouplist.split("/")
-
- prcpflag = ds_grd_prcpdetl.getColumn(i,"prcpclscd"); //주사 혈액등 구분
- prcpcd = ds_grd_prcpdetl.getColumn(i,"prcpcd");
- prcpnm = ds_grd_prcpdetl.getColumn(i,"prcpnm");
- prcpvol = datagroup[0]; //용량
- prcpvolunitflag = datagroup[1]; //단위
- prcpqty = datagroup[2]; //수량
- prcpqtyunitflag = datagroup[3]; //단위
- prcptims = datagroup[4]; //횟수
-
- abbrnm = datagroup[5]; //투약경로
-
- /*
- - 처방구분(prcpflag)
- A : 투약 (A2:경구, A4:외용, A6:주사)
- H : 처치 (F2:재활, G2:RT, H2:수술, H4:처치)
- T : 검사 (B2:진검, B4:수혈, B6:핵의학검체, C2:영상, C4:ANGIO, C6:핵의학영상(체내), D2: 병리, E2:기능)
- */
- // ① 투약 : 처방코드/처방명/일일용량/단위/일일수량/단위/일수/경로/용법
- // * 주사실의 경우 주사에서 내부적으로 구분됨(A7:항암 , A8:예방)
- if(prcpflag=="A2" || prcpflag == "A4" || prcpflag == "A6"|| prcpflag == "A7" || prcpflag == "A8") {
- //param += prcpflag.substr(0,1) + colsep + prcpnm + rowsep;
- param += "A" + colsep + prcpcd + "/" + prcpnm + "/" + prcpvol + "/" + prcpvolunitflag + "/" + prcpqty + "/" + prcpqtyunitflag + "/" + prcptims + "/" + abbrnm + rowsep;
-
- // ② 처치 : 처방명/일일수량/Remark(의사처방의 remark)
- } else if(prcpflag=="F2" || prcpflag=="G2" || prcpflag=="H2" || prcpflag=="H4") {
- prcpdelivefact = "";//model.getValue("root/main/patdetlinfo/prcpspec[" + i + "]/prcpdelivefact");
- param += "H" + colsep + prcpnm + "/" + prcpqty + prcpdeliverfact + rowsep;
-
- // ③ 검사 : 처방명/일일수량/Remark(의사처방의 remark)
- } else if(prcpflag=="B2" || prcpflag=="B4" || prcpflag=="B6" || prcpflag=="C2" || prcpflag=="C4" || prcpflag=="C6" || prcpflag=="D2" || prcpflag=="E2") {
- prcpdelivefact = "";//model.getValue("root/main/patdetlinfo/prcpspec[" + i + "]/prcpdelivefact");
- param += "T" + colsep + prcpnm + "/" + prcpqty + prcpdeliverfact + rowsep;
- }
- }
- }
- return param;
- }
- /**
- * @group :
- * @ver : 2007.09.04
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부위, 차수, LOT, MIX, AST 예약시간동시적용
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function frsrvtm(flag) {
- //15
- var Row = ds_grd_prcpdetl.rowcount;
- var jRow=ds_grd_prcpdetl.rowposition;
- var xhiddenPrcpDetlPath = "/root/hidden/main/prcpdetl/prcpdetllist"
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist"
-
- var rsrvtm = ds_grd_prcpdetl.getColumn(jRow,flag);
- var chek = 0
- for (i=0; i<Row; i++){
- chek = chek + ds_grd_prcpdetl.getColumn(i,"flag");
- }
-
- if(chek==0){
- return;
- }
-
- chek3 = ds_hidden_grd_prcpdetl.getColumn(jRow,"actorddd");
- chek5 = ds_hidden_grd_prcpdetl.getColumn(jRow,"mix");
- chek7 = ds_hidden_grd_prcpdetl.getColumn(jRow,"orddd");
-
- for (i=0; i<Row; i++){
- chek = ds_grd_prcpdetl.getColumn(i,"flag");
- chek2 = ds_hidden_grd_prcpdetl.getColumn(i,"actorddd");
- chek4 = ds_hidden_grd_prcpdetl.getColumn(i,"mix");
- chek6 = ds_hidden_grd_prcpdetl.getColumn(i,"orddd");
- if(chek==1 && flag == 15 && chek2 == chek3){
- ds_grd_prcpdetl.setColumn(i,flag, rsrvtm);
- }
- if(chek==1 && flag == 16 && chek2 == chek3){
- ds_grd_prcpdetl.setColumn(i,flag, rsrvtm);
- }
- if(chek==1 && flag != 15 && flag != 16){
- ds_grd_prcpdetl.setColumn(i,flag, rsrvtm);
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.09.10
-
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 혈액불출관리 연결
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fopr() {
- var pid = group3.group1.ipt_pid.value;
- frmf_setParameter("pid", pid);
- frmf_setParameter("SMMNR010_Param", "OPRC1");
- frmf_open("SMMNR01000","SMMNR01000","","","1","15","128","","","","","","M");
- }
- /**
- * @group :
- * @ver : 2007.10.15
-
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진료내역조회 연결
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fOpenPrcpSpec() {
- var pid = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"pid");
- var orddd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"orddd");
- //var param = pid + "▩" + "O" + "▩" + orddd;
- var param = pid;
-
- frmf_setParameter("SMMMO02500_cond", param);
- frmf_open("SMMMO02500","SMMMO02500","","","","","","","","","","","M");
- }
- /**
- * @desc : 처방 상세보기
- * @param : 전처방, 연속처방, 처방검색 탭버튼 눌렀을 경우 원복 orgflag => Y
- * @id : btn_detlvw
- * @event : DOMActivate
- * @return : void
- * @authur : 마정민 2007. 3. 12
- */
- function fDetlVw ( orgflag ) {
- var grdLeft = 835;//827;
- var grdWidht = 375;//367;
- var grdHeight = 138;
- var extnGrdLeft = 0;
- var extnGrdWidht = 1210;//1194;
- var extnGrdHeight = 375;
- var prcpcdCol = group3.grd_injsper.getBindCellIndex("body","orddd"); //처방코드 컬럼 index
- var prcpnmCol = group3.grd_injsper.getBindCellIndex("body","depthngnm"); //처방명 컬럼 index
- var prcpengnmCol = group3.grd_injsper.getBindCellIndex("body","prcpcd"); //처방영문명 컬럼 index
- var prcpspecCol = group3.grd_injsper.getBindCellIndex("body","prcpnm"); //처방내역 컬럼 index
-
- var lineX1 = grdLeft;
- var lineX2 = grdLeft + grdWidht;
- var extnLineX1 = extnGrdLeft;
- var extnLineX2 = lineX2;
-
- var prcpColsize = 50;
- var prcpnmColsize = 130;
- var prcpengnmColsize = 100;
- var prcpspecColsize = 230;
-
- if ( ds_init.getColumn(0,"detlvw" ) == "p" && orgflag != "y" ) {
- group3.grd_injsper.position = "absolute 0 327 1237 702";
- //group3.grd_injsper.position.left = extnGrdLeft;
- //group3.grd_injsper.position.width = extnGrdWidht;
- //group3.grd_injsper.position.height = extnGrdHeight;
-
- group3.line02.position = "absolute 586 322 1237 328";
- ds_init.setColumn(0,"detlvw", "m" );
-
- group3.grd_injsper.setFormatColProperty(prcpcdCol,"size", group3.grd_injsper.getRealColSize(prcpcdCol) + prcpColsize);
- if(group3.grd_injsper.getRealColSize(prcpnmCol) != 0) {
- group3.grd_injsper.setFormatColProperty(prcpnmCol,"size", group3.grd_injsper.getRealColSize(prcpnmCol) + prcpnmColsize);
- }
- if(group3.grd_injsper.getRealColSize(prcpengnmCol) != 0) {
-
- group3.grd_injsper.setFormatColProperty(prcpengnmCol,"size", group3.grd_injsper.getRealColSize(prcpengnmCol) + prcpengnmColsize);
- }
-
-
- group3.grd_injsper.setFormatColProperty(prcpspecCol,"size", group3.grd_injsper.getRealColSize(prcpspecCol) + prcpspecColsize);
- } else {
- group3.grd_injsper.position = "absolute 835 327 1237 465";
- //group3.grd_injsper.position.left = grdLeft;
- //group3.grd_injsper.position.width = grdWidht;
- //group3.grd_injsper.position.height = grdHeight;
- group3.line02.position = "absolute 835 322 1237 328";
- ds_init.setColumn(0,"detlvw", "p" );
-
- group3.grd_injsper.setFormatColProperty(prcpcdCol,"size", group3.grd_injsper.getRealColSize(prcpcdCol) - prcpColsize);
- group3.grd_injsper.setFormatColProperty(prcpnmCol,"size", group3.grd_injsper.getRealColSize(prcpnmCol) - prcpnmColsize);
- group3.grd_injsper.setFormatColProperty(prcpengnmCol,"size", group3.grd_injsper.getRealColSize(prcpengnmCol) - prcpengnmColsize);
- group3.grd_injsper.setFormatColProperty(prcpspecCol,"size", group3.grd_injsper.getRealColSize(prcpspecCol) -prcpspecColsize);
-
- }
- }
- /**
- * @group :
- * @ver : 2007.11.14
-
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 당일 업무대상자 리스트 상세보기
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDetlVwa ( orgflag ) {
- var grdLeft = 0;
- var grdWidht = 582;
- var grdHeight = 354;
- var extnGrdLeft = 0;
- var extnGrdWidht = 582;
- var extnGrdHeight = 599;
- if ( ds_init.getColumn(0,"detlvwa" ) == "p" && orgflag != "y" ) {
- group3.grd_biztrgtman.position.left = extnGrdLeft;
- group3.grd_biztrgtman.position.width = extnGrdWidht;
- group3.grd_biztrgtman.position.height = extnGrdHeight;
- ds_init.setColumn(0,"detlvwa", "m" );
- } else {
- group3.grd_biztrgtman.position.left = grdLeft;
- group3.grd_biztrgtman.position.width = grdWidht;
- group3.grd_biztrgtman.position.height = grdHeight;
- ds_init.setColumn(0,"detlvwa", "p" );
- }
- }
- /**
- * @group :
- * @ver : 2007.11.14
-
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 처방상세 내역 상세보기
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDetlVwb ( orgflag ) {
- var grdLeft = 0;
- var grdTop = 520;
- var grdWidht = 1194;
- var grdHeight = 217;
- var extnGrdLeft = 0;
- //var extnGrdTop = 136;
- var extnGrdTop = 161;
- var extnGrdWidht = 1194;
- var extnGrdHeight = 601;
-
- var groLeft = 0;
- //var groTop = 492;
- var groTop = 470;
- var groWidht = 1195;
- var groHeight = 50;
- var extnGroLeft = 0;
- var extnGroTop = 109;
- var extnGroWidht = 1195;
- var extnGroHeight = 50;
- if ( ds_init.getColumn(0,"detlvwb" ) == "p" && orgflag != "y" ) {
- group3.grd_prcpdetl.position.left = extnGrdLeft;
- group3.grd_prcpdetl.position.top = extnGrdTop;
- group3.grd_prcpdetl.position.width = extnGrdWidht;
- group3.grd_prcpdetl.position.height = extnGrdHeight;
-
- group3.group4.position.left = extnGroLeft;
- group3.group4.position.top = extnGroTop;
- group3.group4.position.width = extnGroWidht;
- group3.group4.position.height = extnGroHeight;
-
- group3.grd_injsper.visible = false;
-
-
- group3.grd_biztrgtman.visible = false;
- group3.caption10.visible = false;
- group3.button2.visible = false;
- group3.line7.visible = false;
-
- //20090723 dhkim 당일업무대상자 라벨 hidden하는부분 추가
- group3.group5.visible = false;
- ds_init.setColumn(0,"detlvwb", "m" );
-
- } else {
- group3.grd_prcpdetl.position.left = grdLeft;
- group3.grd_prcpdetl.position.top = grdTop;
- group3.grd_prcpdetl.position.width = grdWidht;
- group3.grd_prcpdetl.position.height = grdHeight;
-
- group3.group4.position.left = groLeft;
- group3.group4.position.top = groTop;
- group3.group4.position.width = groWidht;
- group3.group4.position.height = groHeight;
-
- group3.grd_injsper.visible = true;
-
-
- group3.grd_biztrgtman.visible = true;
- group3.caption10.visible = true;
- group3.button2.visible = true;
- group3.line7.visible = true;
-
- //20090723 dhkim 당일업무대상자 라벨 visible 하는부분 추가
- group3.group5.visible = true;
-
- ds_init.setColumn(0,"detlvwb", "p" );
- }
- }
- /**
- * @group :
- * @ver : 2007.11.20
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부위 기준자료 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fpartflaginfo(){
- dsf_createDsRow("ds_send",
- [{col:"baseclsflag", val:"J"}
- ,{col:"supbasetypecd", val:"JSA"}
- ]);
-
- var oParam = {};
- oParam.id = "TRMNI00106";
- oParam.service = "injroomapp.InjRoomPatMngt";
- oParam.method = "reqGetPartFlagList";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_init_partflaglist=partflaglist";
- oParam.async = false;
- //oParam.callback = "cf_TRMNI00106";
- tranf_submit(oParam);
- }
-
- /**
- * @group :
- * @ver : 2007.11.27
- * @by : 신혁춘
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : MIX 번호에따른 동시 선택
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function chkflag(){
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist"
- var iRow = ds_grd_prcpdetl.rowposition;
- var Row = ds_grd_prcpdetl.rowcount;
- var chk = ds_grd_prcpdetl.getColumn(iRow,"flag");
- var mix = ds_grd_prcpdetl.getColumn(iRow,"mix");
- var actorddd = ds_grd_prcpdetl.getColumn(iRow,"actorddd");
- var orddd = ds_grd_prcpdetl.getColumn(iRow,"orddd");
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var rgstdd = ds_grd_prcpdetl.getColumn(iRow,"rgstdd");
- var rgsttm = ds_grd_prcpdetl.getColumn(iRow,"rgsttm");
-
- if(orddd.length > 8){
- orddd = orddd.substring(0, 8);
- }
-
-
- if(chk == "1"){
- if(mix == "-"){
- return;
- }else{
- for(var i=0; i<Row; i++){
- var mixs = ds_grd_prcpdetl.getColumn(i,"mix");
- var actorddds = ds_grd_prcpdetl.getColumn(i,"actorddd");
- var orddds = ds_grd_prcpdetl.getColumn(i,"orddd");
-
- //20160411 by kya Mix에서 재료는 제외
- var prcpclscdnow = ds_grd_prcpdetl.getColumn(i,"prcpclscd");
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var _rgstdd = ds_grd_prcpdetl.getColumn(i,"rgstdd");
- var _rgsttm = ds_grd_prcpdetl.getColumn(i,"rgsttm");
-
- //20090716 dhkim 추가 (orddds는 시간까지 조회함)
- if(orddds.length > 8){
- orddds = orddds.substring(0, 8);
- }
-
- //20091112 dhkim 믹스그룹화 시 rgstdd, rgsttm 조건 추가
- //20160411 by kya Mix에서 재료는 제외
- //if(mix == mixs && actorddd == actorddds && orddd == orddds && rgstdd == _rgstdd && rgsttm == _rgsttm){
- if(mix == mixs && actorddd == actorddds && orddd == orddds && rgstdd == _rgstdd && rgsttm == _rgsttm && prcpclscdnow != "M2"){
- ds_grd_prcpdetl.setColumn(i,"flag", "1");
- }
- }
- }
- }
-
- if(chk == "0"){
- if(mix == "-"){
- return;
- }else{
- for(var i=0; i<Row; i++){
-
- var mixs = ds_grd_prcpdetl.getColumn(i,"mix");
- var actorddds = ds_grd_prcpdetl.getColumn(i,"actorddd");
- var orddds = ds_grd_prcpdetl.getColumn(i,"orddd");
-
- //20160411 by kya Mix에서 재료는 제외
- var prcpclscdnow = ds_grd_prcpdetl.getColumn(i,"prcpclscd");
-
- //20091112 dhkim 믹스그룹화 기준을 처방시간별로 변경(약제랑 기준 맞춤- 빈센트에서 오류발생함)
- var _rgstdd = ds_grd_prcpdetl.getColumn(i,"rgstdd");
- var _rgsttm = ds_grd_prcpdetl.getColumn(i,"rgsttm");
-
- //20090716 dhkim 추가 (orddds는 시간까지 조회함)
- if(orddds.length > 8){
- orddds = orddds.substring(0, 8);
- }
-
- //20091112 dhkim 믹스그룹화 시 rgstdd, rgsttm 조건 추가
- if(mix == mixs && actorddd == actorddds && orddd == orddds && rgstdd == _rgstdd && rgsttm == _rgsttm && prcpclscdnow != "M2"){
- ds_grd_prcpdetl.setColumn(i,"flag", "0");
- }
- }
- }
- }
- }
-
- /**
- * @date : 20090724
- * @author : dhkim
- * @desc : 예약변경하기전 진단이 있는지 체크하여 이전 진단이 존재하지 않으면 수진선택하도록 팝업호출
- */
- function fPopDiag(curRow){
-
- /*
- [fFindDiagInfo() 호출정보]
- 진료일 정보를 이용하여 이전 진단명이 존재 외래수진이력 조회 진단명이 없을 경우
- Parameter 값을 이용하여 수진이력 팝업 호출 및 return RESULT
- @param :
- ex) setParameter("preDiagCond", "Etc▦4189074▦20090715▦▦▦/root");
- - 공통
- , jobgubn : 작업구분 : HomeCare-> 가정간호, InjRoom -> 인공신장, Etc : 기타(외래,주사실,진료지원)
- , pid : 등록번호 -> 필수사항
- , orddd : 진료일자 -> 필수사항, 해당 진료일자 이전의 수진이력을 조회함.
- , orddeptcd : 진료과 -> 진료과가 없을 경우 모든 진료과 정보 조회
- , orddrid : 진료의 -> 진료의가 없을 경우 모든 진료의 정보 조회
- , resultXpath : 조회결과가 설정될 hidden Node Xpath -> ex) /root 로 넘어올 경우
- -> 결과는 /root/hidden/ordinfo 밑의 노드에 생성 됨.
-
- @return : setParameter()로 전달하므로 getParameter("preDiagResult") 로 받아야 함.
-
- ex) setParameter("preDiagResult", sPid+"▦"+sOrddd+"▦"+sIndd+"▦"+sCretno);
- 설명 : 등록번호▦진료일자▦입원일자▦cretno
- */
-
-
- //파라미터 세팅후 호출
- var pid = ds_grd_prcpdetl.getColumn(curRow,"pid");
- var orddd = ds_grd_prcpdetl.getColumn(curRow,"oprc_orddd");
- var orddeptcd = ds_grd_prcpdetl.getColumn(curRow,"oprc_orddeptcd");
- var orddrid = ds_grd_prcpdetl.getColumn(curRow,"oprc_orddrid");
- var retnPath = "ds";
- var setDiagParam = "Etc▦" + pid + "▦" + orddd + "▦" + orddeptcd + "▦" + orddrid + "▦" + retnPath;
-
- frmf_setParameter("preDiagCond", setDiagParam);
- fFindDiagInfo();//careCom.js
-
-
- //팝업호출 후 리턴값을 진단복사를 위한 수진키에 새로 세팅 (리턴값이 있을 경우만 세팅함)
- var getDiagParam = frmf_getParameter("preDiagResult").split("▦");
- var retPid = getDiagParam[0];
- var retOrddd = getDiagParam[1];
- var retIndd = getDiagParam[2];
- var retCretno = getDiagParam[3];
- var retGenrflagcd = getDiagParam[4];
-
- if(utlf_isNull(retPid)){
- return;//리턴값이 없으면 빠져나옴.
- }
-
- //그리드에 리턴값 세팅
- ds_grd_prcpdetl.setColumn(curRow,"pop_cretno", retCretno);
- ds_grd_prcpdetl.setColumn(curRow,"pop_genrflagcd", retGenrflagcd);
-
- if(retGenrflagcd != 'O'){
- ds_grd_prcpdetl.setColumn(curRow,"pop_orddd", retIndd);
- }else{
- ds_grd_prcpdetl.setColumn(curRow,"pop_orddd", retOrddd);
- }
-
- // alert(getDiagParam);
-
-
- }
- //미시행내역 화면 오픈
- function fOpenUndoPrcpList() {
- frmf_open("SMMNI00200","SMMNI00200","","","","","","","","","","","M");
- }
- //실시내역 화면 오픈
- function fOpenExecPrcpList() {
- var pid = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"pid");
- var orddd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"orddd");
- //var param = pid + "▩" + "O" + "▩" + orddd;
- var param = pid;
-
- frmf_setParameter("SMMNI00400_pid", param);
- frmf_open("SMMNI00400","SMMNI00400","","","","","","","","","","","M");
- }
- //처치등록관리 화면 오픈
- function fOpenCureReg() {
- var pid = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"pid");
- var orddd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"orddd");
- //var param = pid + "▩" + "O" + "▩" + orddd;
- var param = pid;
-
- frmf_setParameter("SMMNI00500_pid", param);
- frmf_open("SMMNI00500","SMMNI00500","","","","","","","","","","","M");
- }
- //예방주사접종이력 화면 오픈
- function fOpenPrvVacnList() {
- var pid = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"pid");
- var orddd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"orddd");
- //var param = pid + "▩" + "O" + "▩" + orddd;
- var param = pid;
-
- frmf_setParameter("SMMNI01200_pid", param);
- frmf_open("SMMNI01200","SMMNI01200","","","","","","","","","","","M");
- }
- //혈액불출관리 화면 오픈
- function fOpenBlodDelive() {
- frmf_open("SMMNR01000","SMMNR01000","","","","","","","","","","","M");
- }
- //마약처방관리 화면 오픈
- function fOpenNarcPrcp() {
- frmf_open("SMADT30400","SMADT30400","","","","","","","","","","","M");
- }
- //마약처방관리 화면 오픈
- function fOpenDrugInfo() {
- var prcpclscd = ds_grd_prcpdetl.getColumn(ds_grd_prcpdetl.rowposition,"prcpclscd");
-
- if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6" ) {
- dsf_createDsRow("ds_receivedata" , [
- {col: "srchdrugcd", val:ds_grd_prcpdetl.getColumn(ds_grd_prcpdetl.rowposition,"prcpcd")}
- ]);
- var objArg = new Object();
- objArg.arg_ds_hidden_receivedata = ds_receivedata;
- frmf_open("SMADB01900", "SMADB01900", objArg, null, null, null, null, null, null, null, null, null, "M");
- dsf_deleteDs("ds_receivedata");
-
-
- }
- }
- /**
- * 2010.03.05 dhkim
- * 환자라벨출력
- * rghtflag - false: 왼쪽환자그리드리스트클릭
- * true : 오른쪽환자조회화면버튼클릭
- */
- function fPrtLabel(rghtflag){
-
-
- dsf_createDs("ds_temp_prtlabel");
- if(rghtflag == true){
- dsf_makeValue(ds_temp_prtlabel,"rghtflag","string", "T");
- }else{
- dsf_makeValue(ds_temp_prtlabel,"rghtflag","string", "F");
- }
-
- fOpenLabelPrint_SMMNI00100(rghtflag);
-
- }
-
-
- //2010.03.05 dhkim 추가
- //환자라벨출력
- // rghtflag - false: 왼쪽환자그리드리스트클릭
- // true : 오른쪽환자조회화면버튼클릭
- function fOpenLabelPrint_SMMNI00100(rghtflag){
- var left, top, height, width;
- if(rghtflag==true){//라벨출력그룹위치 fix
- left = 650;
- top = 50;
- height = 61;
- width = 231;
- }else{//그리드 포커스에 맞게 이동
-
-
- left = system.screenToClientX(group3.grd_biztrgtman,lv_screenx);
- top = system.screenToClientY(group3.grd_biztrgtman,lv_screeny);
-
- height = 61;
- width = 231;
- }
-
- ds_main.setColumn(0,"cmpatprtcnt","1");
- group3.grp_prtlabel.ipt_cmpatprtcnt.setFocus();
-
- group3.grp_prtlabel.position.left = left;
- group3.grp_prtlabel.position.top = top;
- group3.grp_prtlabel.position.height = height;
- group3.grp_prtlabel.position.width = width;
- group3.grp_prtlabel.visible = true;
-
-
- }
- //2010.03.05 dhkim 추가
- //라벨출력실행
- function fPrintLabel_SMMNI00100(){
-
- var rghtflag = ds_temp_prtlabel.getColumn(0,"rghtflag");
- var pid, patnm, rgstno, sexage, btype;
-
- var roomcd = "";//외래라 roomcd없음
- var prtcnt = ds_main.getColumn(0,"cmpatprtcnt");
- orddd = utlf_getCurrentDate();//현재일자
-
-
- if(rghtflag=="T"){
- pid = ds_rghtreflist.getColumn(0,"pid");
- patnm = ds_rghtreflist.getColumn(0,"hngnm");
- sexage = ds_rghtreflist.getColumn(0,"gndrage");
- rgstno = ds_rghtreflist.getColumn(0,"rrgstno");
- btype = ds_rghtreflist.getColumn(0,"btype");
- }else if(rghtflag=="F"){
-
- pid = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"pid");
- //혈액형추가 20150427
- btype = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"btype");
- orddd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"orddd");
- patnm = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"hngnm");
- sexage = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"gndrage");
- rgstno = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"rrgstno");
- }
-
- if(utlf_isNull(pid)){
- sysf_messageBox("등록번호를 입력하세요.", "E999");
- return false;
- }
-
- // 환자 정보 라벨 출력
- if(prtcnt > 0){
- //1. 바코드 라벨 설정값 조회
- var scrnid = "SMMNI00100";
- dsf_createDsRow("ds_send",
- [{col:"scrnid", val:frmf_getScreenID()}
- ]);
-
-
-
- var oParam = {};
- oParam.id = "TRLLC90101";
- oParam.service = "diagtestapplib.LisCommon";
- oParam.method = "reqGetSetUpInfo";
- oParam.inds = "scrnid=ds_send";
- oParam.outds = "ds_barcdprntsetup=getSetUpInfo";
- oParam.async = false;
-
- tranf_submit(oParam); // 20090617 SATO 관련 추가
- lf_convertXmlToDs(ds_barcdprntsetup.getColumn(0,"prntsetupinfo"));
-
- //2. 바코드 라벨 환경설정
- var barcdRef = "/root/main/barcdprntsetup/prntsetupinfo/setupinfo";
- lzzfMakeBrcdPrntObjHanDo("CommAX");
- var portOpenTF = fSetNursBarcdInfo(barcdRef); // CareCom.js 바코드프린터별 환경설정(Zebra,SATO)
-
- //20171221
- //fPrtCarePatNameLabel(barcdRef, pid, btype, patnm, sexage, rgstno, "","처방:"+ orddd, prtcnt, portOpenTF,""); //CareCom.xjs 속함
- fPrtCarePatNameLabel_Inj(barcdRef, pid, btype, patnm, sexage, rgstno, "","처방:"+ orddd, prtcnt, portOpenTF,""); //주사실용을 만듦
- }
-
- group3.grp_prtlabel.visible = false;
-
- }
- //2010.03.05 dhkim 추가
- function fCancelPrint_SMMNI00100(){
-
- ds_main.setColumn(0,"cmpatprtcnt","1");
- group3.grp_prtlabel.visible = false;
- }
- //2017.12.21 주사실용 환자라벨 개발
- function fPrtCarePatNameLabel_Inj(barcdRef, pid, roomcd, patnm, sexage, rgstno, orddd, orddeptnm, prncnt, portOpenTF, btype, callBackFn){
-
- if(utlf_isNull(pid)) return;
- if(prncnt < 1) return;
-
- if( this.objects["ds_BarCodeNode"] != null ){
- this.objects["ds_BarCodeNode"].clearData();
- }else{
- var objDs = new Dataset("ds_BarCodeNode");
- this.addChild("ds_BarCodeNode", objDs);
- objDs.name = "ds_BarCodeNode";
- }
-
- dsf_makeValue(ds_BarCodeNode, "pid", "string", pid);
- dsf_makeValue(ds_BarCodeNode, "patnm", "string", patnm);
- dsf_makeValue(ds_BarCodeNode, "roomcd", "string", roomcd);
- dsf_makeValue(ds_BarCodeNode, "sexage", "string", sexage);
- dsf_makeValue(ds_BarCodeNode, "rgstno", "string", rgstno);
- dsf_makeValue(ds_BarCodeNode, "orddd", "string", utlf_transNullToEmpty(orddd).substr(0,4) + "/"+utlf_transNullToEmpty(orddd).substr(4,2) + "/" + utlf_transNullToEmpty(orddd).substr(6,2));
- dsf_makeValue(ds_BarCodeNode, "orddeptnm", "string", orddeptnm);
- dsf_makeValue(ds_BarCodeNode, "btype", "string", btype);
- /*
- 공통으로 추가된 fPrintRexbar 함수에서 Barcode Setting 정보 노드를 받을때
- '/setupinfo' 이전 까지만 기술하도록 처리가 되어있음.
- */
- barcdRef = barcdRef.replace("/setupinfo", "");
- var sOption = "copies=" + prncnt;
-
- rptf_printRexbar("RPMNI01003","","/root/BarCodeNode",ds_BarCodeNode, "", callBackFn, sOption);
-
- return;
-
- }
- //2010.06.04 김달현 추가
- //처방상세내역 Value Changed이벤트 발생시 호출함
- function fValueChangedGrdPrcpdetl(iRow, iCol){
- //20090529 dhkim 예방주사는 체크박스동일하게 체크한 내역 동일한값 세팅 안함. 주석처리함
- if(iCol == group3.grd_prcpdetl.getBindCellIndex("body","flag")){//체크박스선택
- chkflag();
- }else if(iCol == group3.grd_prcpdetl.getBindCellIndex("body","mix")){//Mix
- chkflag();
- }else if(iCol == group3.grd_prcpdetl.getBindCellIndex("body","actorddd")){//예약일자
- // 마이그레이션 데이터 예약일시 수정금지_20090607
- if(!utlf_isNull(ds_grd_prcpdetl.getColumn(iRow,"mig"))){
- sysf_messageBox("마이그레이션 데이터는 예약일시를 수정 하실 수 없습니다.", "I");
- ds_grd_prcpdetl.setColumn(iRow,"actorddd",ds_grd_prcpdetl.getColumn(iRow,"realactorddd"));
-
- return;
- }
-
- rsrvdd();//예약변경내역 유효성체크
-
- fPopDiag(iRow);
-
- }else if(iCol == group3.grd_prcpdetl.getBindCellIndex("body","rsrvtm")){//예약시간
- // 마이그레이션 데이터 예약일시 수정금지_20090607
- if(!utlf_isNull(group3.grd_prcpdetl.getBindCellIndex("body","mig"))){
- sysf_messageBox("마이그레이션 데이터는 예약일시를 수정 하실 수 없습니다.", "I");
- var realrsrvtm = ds_grd_prcpdetl.getColumn(iRow,"realrsrvtm");
- if(utlf_isNull(realrsrvtm)){
- realrsrvtm = "000000";
- }
- ds_grd_prcpdetl.setColumn(iRow,"rsrvtm", realrsrvtm);
- return;
- }
-
- //2010.06.04 김달현 - 그리드 컬럼의 추가가 빈번히 일어남에 따라 col idx가 아닌 colnm참조로 변경함.
- frsrvtm("rsrvtm");
-
- }else{
- return;
- }
- }
- //2010.06.04 김달현 추가
- //처방상세내역 Double Click이벤트 발생시 호출함
- function fOnDblClickGrdPrcpdetl(){
-
- //빈센트
- var fRow= ds_codelist.findRowExpr("cdgrupid == '077' && supcdid == '04' && cdid == '"+ sysf_getUserInfo("dutplceinstcd") +"'");
- if(ds_codelist.getColumn(fRow,"cdid")){
-
- if (group3.grd_prcpdetl.currentcol == group3.grd_prcpdetl.getBindCellIndex("body","prcpcd")) {
- // var prcpclscd = model.getValue ("/root/main/prcpdetl/prcpdetllist[" + grd_prcpdetl.row + "]/prcpclscdnow");
-
-
- dsf_createDsRow("ds_receivedata" , [
- {col: "srchdrugcd", val:ds_grd_prcpdetl.getColumn(ds_grd_prcpdetl.rowposition,"prcpcd")}
- ]);
- var objArg = new Object();
- objArg.arg_ds_hidden_receivedata = ds_receivedata;
- frmf_open("SMADB01900", "SMADB01900", objArg, null, null, null, null, null, null, null, null, null, "M");
- dsf_deleteDs("ds_receivedata");
- }
-
- }
-
-
- }
- //2010.06.04 김달현 추가
- //마우스오버 이벤트 발생시 호출함수 추가
- //전달사항 tooltiptext
- //처방명 tooltiptext (약제마스터의 혼동주의 세부항목 표시)
- function fOnMouseoverGrdPrcpdetl(jRow, jCol){
- var xPrcpDetlPath = "/root/main/prcpdetl/prcpdetllist";
-
- //전달사항
- if(jCol == group3.grd_prcpdetl.getBindCellIndex("body","prcpdelivefact")){
- group3.grd_prcpdetl.tooltiptext= ds_grd_prcpdetl.getColumn(jRow,"prcpdelivefact");
- }
-
- //처방한글명, 처방영문명(약제마스터의 혼동주의 세부항목 표시)
- else if(jCol == group3.grd_prcpdetl.getBindCellIndex("body","prcpnm") || jCol == group3.grd_prcpdetl.getBindCellIndex("body","prcphngnm")){
- femrViewWarnCnts(grd_prcpdetl, xPrcpDetlPath);//CareCom.js
- }
-
- else{
- group3.grd_prcpdetl.tooltiptext="";
- }
- }
- /**
- * @group :
- * @ver : 2014.06.27
- * @by : 권영애
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 상단정보올리기
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fTopofInfo(){
- //20140623 kya 주사실이 아니면 상단정보 안올림
- var srcdeptcd = ds_main_leftref.getColumn(0,"exec");
- //alert(" srcdeptcd = " + srcdeptcd);
-
- //20190514 중앙주사실 과 어린이센터 45병동(주사실) 추가함.
- //if (srcdeptcd != "3120000000" ) return;
- if (srcdeptcd != "3120000000" && srcdeptcd != "3050317000" ) return;
-
- if (ds_grd_ordsper.rowposition < 0) {
- //2011.05.03 cyw 상단정보 초기화
- appf_delPatientInfos();
- return;
- }
-
- var i = ds_grd_ordsper.rowposition ;
- //alert(" grd_ordsper.row = " + grd_ordsper.row);
-
- var xTrgtPath = "/root/main/rghtlist/ordsperlist";
- var ordtype = "O";
- var pid = utlf_transNullToEmpty(ds_rghtreflist.getColumn(0,"pid"));
- var orddd = utlf_transNullToEmpty(ds_grd_ordsper.getColumn(i,"actorddd")).substr(0, 8);
- var cretno = utlf_transNullToEmpty(ds_grd_ordsper.getColumn(i,"cretno"));
- var instcd = utlf_transNullToEmpty(ds_grd_ordsper.getColumn(i,"instcd"));
- var param = ordtype + "▦" + pid + "▦" + orddd + "▦" + cretno + "▦" + instcd + "▦" + '' + "▦" + '';
- //alert("param = " + param);
-
- frmf_setParameter("condparam", param);
- appf_initPatientInfo(param);
- //modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
-
- }
- /**
- * @group :
- * @ver : 2015.01.05
- * @by : 권영애
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서 기록관리
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetMediRec(){
-
- var pid = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"pid");
- var orddd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"orddd");
- var cretno = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"cretno");
- var ioflag = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"ordtype");
- var orddeptcd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"deptcd");
- var orddrid = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"orddrid");
- var patnm = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"hngnm");
- var gndrage = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"gndrage");
- var age = gndrage.substring(0,1);
- var sex = gndrage.substring(2);
- var suppdeptcd = "";//model.getValue("//root/send/globalinstance/instance1");
- var formdeptcd = "2010300000";
-
- //20131107 실시일자추가
- var execdd = ds_grd_biztrgtman.getColumn(ds_grd_biztrgtman.rowposition,"workdd");
- if (execdd == "00000000") {
- execdd = utlf_getCurrentDate();
- }
-
- frmf_setParameter("SPMMR05400_parm_pinfo", pid + "▦" + orddd + "▦" + cretno + "▦" + ioflag + "▦" + orddeptcd + "▦" + orddrid +"▦"+ patnm + "▦" + age + "▦" + sex + "▦" + suppdeptcd + "▦" + formdeptcd);
- frmf_setParameter("SPMMR05400_parm_formrecdd", execdd); //20131107 kya 추가
-
- frmf_open("SPMMR05400","SPMMR05400", "", "", "" , "", "", "", "", "" , "", "","M");
-
- }
-
- /* @group : 결과조회
- * @ver : 2007.06.14
- * @by : 장준원
- * @-----------------------------------
- * @type : function
- * @access : public
- * @desc : 사용자 환경설정 tab 세팅
- */
- function fSetUserTermInit(){
-
- var AnswData = fGetIntefeAnsw("063");
- //alert("AnswData = " + AnswData);
- if(!utlf_isNull(AnswData)){
- if(AnswData == "001"){
- ds_main_leftref.setColumn(0,"term", "1");
- }
- if(AnswData == "002"){
- ds_main_leftref.setColumn(0,"term", "15");
- }
- if(AnswData =="003"){
- ds_main_leftref.setColumn(0,"term", "30");
- }
- if(AnswData == "004"){
- ds_main_leftref.setColumn(0,"term", "60");
- }
- if(AnswData == "005"){
- ds_main_leftref.setColumn(0,"term", "91");
- }
- if(AnswData == "006"){
- ds_main_leftref.setColumn(0,"term", "182");
- }
- if(AnswData == "007"){
- ds_main_leftref.setColumn(0,"term", "365");
- }
- if(AnswData == "008"){
- ds_main_leftref.setColumn(0,"term", "730");
- }
- group3.group1.ipt_edate.value = utlf_getCurrentDate();
- var date2 = group3.group1.ipt_edate.value;
- var term = ds_main_leftref.getColumn(0,"term");
- group3.group1.ipt_sdate.value = date2.getAddDate(-term, "D").getDateFormat("YYYYMMDD") ;
-
- }else{
- //조회기간, Combo Box 초기화
- group3.group1.ipt_edate.value = utlf_getCurrentDate();
- var vRsrvdd = group3.group1.ipt_edate.value ;
- ds_main_leftref.setColumn(0,"term", "730");
- var term = ds_main_leftref.getColumn(0,"term");
- group3.group1.ipt_sdate.value = vRsrvdd.toDate().getAddDate(-term , "D").getDateFormat("YYYYMMDD") ;
- }
-
- }
-
- /****************************************************************************************
- * Components : Edit
- * Components ID : grp_sea.ipt_pid
- * Event : onkeyup
- * Argument : 01.obj : Object Event has occurred
- * : 02.e : Event Object
- * Description : 20200123 코로나바이러스 알림 호출 pid= '2199411'
- ****************************************************************************************/
- function fc_check_coronavirus()
- { //20200123 코로나바이러스 알림 호출 pid= '2199411'
-
- //select * from ast.aebmcode where instcd = '031' and suppdeptcd = '0000000000' and grupcdid = 'A100' ;
- lf_getAstCodeList([{dsNm: "ds_init_A1000", cdGrpId:"A1000", sortField: "dispseq", sortMehotd: "asc"}], true);
-
- var curddyn = ds_init_A1000.getColumn(1, "cdid"); //2번째 row 여서...
- //trace("curddyn = " + curddyn);
-
- if ( curddyn == 'Y') {
- var sPid = ds_rghtreflist.getColumn(0, "pid");
- frmf_setParameter("SPMMD00100_ifyn", "Y");
- frmf_setParameter("SPMMD00100_pid", sPid);
- var argxpt = system.clientToScreenX(this, 0) + 300;
- var argypt = system.clientToScreenY(this, 0) + 100;
-
- frmf_modal("SPMMO51000", "SPMMO51000", null, false, null, argxpt, argypt, null, null, null, null, null, "M");
- }
- }
- /**
- * @desc : 사용자 환경설정의 값을 조회한다.
- * @param : qestcd : 질문값
- * @return : Answcnt ( 답안값)
- */
- function fGetIntefeAnsw(qestcd){
- var sysMessageobj = frmf_getViewer("sysMessage");
- if(!utlf_isNull(sysMessageobj) && (sysMessageobj.isValidObject("ds_envinfo") || sysMessageobj.isValidObject("envinfo")))
- {
- var anstcnt = sysMessageobj.form.ds_envinfo.getColumn(ds_envinfo.findRow("qestcd",qestcd),"answcnt");
- return anstcnt;
- }else{
- var mmb_rsltref = "/root/userenv/answlist";
- var ref = "/root/userenv/cond"
- var answcnt = "";
- dsf_createDs("ds_userenv_answlist");
- dsf_createDs("ds_interface");
-
- dsf_makeValue(ds_userenv_answlist, "interqestcd", "string",qestcd);
- var oParam = {};
- oParam.id = "TRMMB01104";
- oParam.service = "prcpbaseapp.EnvInfoMngt";
- oParam.method = "reqGetInterfaceAnsw";
- oParam.inds = "req=ds_userenv_answlist";
- oParam.outds = "ds_interface=interface";
- oParam.async = false;
- oParam.callback = "cf_TRMMB01104";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRMMB01104") > -1){
- answcnt = ds_interface.getColumn(0,"answcnt")
- dsf_deleteDs("ds_userenv_answlist");
- return answcnt;
- }
- }
- }
- function cf_TRMMB01104(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }]]></Script>
|