1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139 |
- /*
-
- 외래간호일지(SMMNR03400.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var xCondPath = "/root/main/cond"; // 조건정보
- var xPamInfoPath = "/root/main/paminfo/pamlist"; // 환자정보
- var xSrchedStmtInfoPath = "/root/init/recinfo/stmtinfo"; // 조회된진술문정보
- var xSrchedAttrInfoPath = "/root/init/recinfo/attrinfo"; // 조회된속성정보
- var xInitGrupInfoPath = "/root/init/grupinfo/gruplist"; // 부서(용도)코드
- var xInitPatInfoPath = "/root/init/patinfo/patlist"; // 환자조회정보
- var xOpAnstInfoPath = "/root/init/opanstinfo/opanstlist"; // 수술마취 부서(용도)코드
- var xStmtInfoPath = "/root/main/stmtinfo/stmtlist"; // 진술문정보
- var xNursingRecordListPath = "/root/main/nursingrecordinfo/nursingrecordlist"; // 간호기록 내역
- var xNursingRecInfoPath = "/root/main/recinfo/nursingrecordlist"; // 간호기록 내역
- var xSignPath = "/root/main/signSaveData/saveDataList";//인증저장관련노드
- var srchFlag = "";
- var CmbNo = 1;
- var sPid = ""; // 환자번호
- var sIndd = ""; // 입원일자
- var sOrdDD = ""; // 진료일자
- var sCretNo = ""; // 환자 일자별 일련번호
- var sInstcd = ""; // 기관코드
- var sIOFlag = ""; // 입원/외래 구분
- var sOrdDeptCd = ""; // 진료과코드
- var sOrdDrId = ""; // 진료의사ID
- var sHngNm = ""; //환자명
- var sAge = ""; //환자나이
- var sRecFlag = ""; // 기록 구분
- var sGrupCd = ""; // 그룹코드
- var sRecLnkKey = ""; // 기록연계키
- var sPrcpFlag = ""; // 처방구분
- var sPrcpInfo = ""; // 처방정보
- var sPrcpNM = ""; // 처방명
- var sImagePath = "../../../emr/commonweb/images";
- var sPatInfo = ""; // 환자정보(상단정보 미존재-가정간호, 내시경)
- var sRecDateFlag = "";
- var DutPlceCD = "";
- var FreeTextOnlyUseYN ="";
- var gMenuGrupCd = "";
- var gStndColCnt = 13;
- var sTextAutoSave = "";
- var sAutoProcFlag = "false";
- var gSignRecYN = ""; //혈당기록의 경우 화면에서 타입2에 대한 재인증을 해야한다.그래서 타입2에서 인증저장한 흔적을 남겨야한다.20090625 김홍점
- //------------(20100622:경북대)
- var stmtcd1 = ""; //type2용 진술문번호-투약
- var stmtcd2 = ""; //type2용 진술문번호-검사
- var stmtcd3 = ""; //type2용 진술문번호-처치
- //------------(20100622:경북대)
- var signtime = "";
- var vsettime = "";
- /**
- * @group :
-
- * @ver : 2007.05.21
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 초기화
- * @param :pFlag : refresh하는 화면에서 init으로 넘겨줌.
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(pFlag){
- //zbcfGetCodeList(new Array("M0199"), new Array("/root/init/grupcdinfo/grupcdlist")); // 부서정보(기록구분)
- //var sSupCd = "00000005";
- //
-
- opener.javascript.setParameter("SMMNR03400_SignRecYN", "");
- if ( pFlag == "init" ){
- var openSID = opener.javascript.getScreenID() ;
- var opencdid = model.getValue(xInitGrupInfoPath+"[hngnm='"+openSID+"' and cdgrupid = '136']/paramcd");
- if ( !isNull(openSID) && ( isNull(opencdid) || (getScreenMenuParameter() != '010' && opencdid == "02" )) ){
- return;
- }
- } else{
- //20090415 용도부서코드 공통코드테이블에 데이터화. 김홍점
- //20090910 136 - 상단정보 바뀔때마다 타입2화면 refresh 할 opener의 SID khj
- model.makeValue("/root/send/cdgrupid","'054','136','T84'");
- submit("TRMNR03403");
- }
- signtime = model.getValue("/root/init/grupinfo/gruplist[cdgrupid ='T84']/paramcd");
-
- if(signtime == "" || signtime == null) {
- signtime = 0;
- }
-
- //-------------(20100622:경북대)
- if(submit("TRMNR03499")){
- stmtcd1 = model.getValue("/root/hidden2/stmtinfo/stmtcd1");
- stmtcd2 = model.getValue("/root/hidden2/stmtinfo/stmtcd2");
- stmtcd3 = model.getValue("/root/hidden2/stmtinfo/stmtcd3");
- }
- if (stmtcd1 == "") {
- messageBox( "간호type2용진술문에 대한 확인이 필요합니다.","I008");
- stmtcd1 = "00000001";
- stmtcd2 = "00000002";
- stmtcd3 = "00000003";
- }
- //alert(stmtcd1 + "/" + stmtcd2 + "/" + stmtcd3 );
- //-------------(20100622:경북대)
-
- gMenuGrupCd = getGlobalVariable("menugroupcd");
- gMenuGrupCd = (gMenuGrupCd.split("|"))[0];
-
- /*
- - 기록 구분 정보
- SMMNR03400_ParamBase : recflag▦dutplaccd▦reclnkkey => 기록구분▦부서코드▦기록연계키
- SMMNR03400_ParamPrcp : prcpflag▦prcpnm => 처방구분▦처방정보
- - 기록구분(recflag) :
- A : 일일입원실,
- B : 혈당기록,
- C : 특주-> 서울(012)의 경우 암센터주사실,
- D : DSC,
- E : 응급실,
- F : BMT주사실,
- G : 간호일지 (type2에서 사용하면 안됌)
- H : 가정간호,
- I : 주사실,
- L : 투석실,
- M : 분만간호
-
- N : Angio,
- O : 외래,
- P : 수술실,
- Q : 심도자실
- R : 회복실,
- S : 전문간호,
- T : 입원전검사
- U : APU 성분헌혈실
- W :병동
-
- V : 과내
- J :간클리닉
- K : 기관지
- X :내시경
- Y :부정맥
- Z :Echo
- 1 : DCC
- 2 : CT
-
- - 부서코드(dutplaccd) :
- //Not Used
- 12611 : 외래, 33100 : 기능검사, 31900 : 주사실,
- 34100 : DSC, 미정 : 전문간호, 50112 : 가정간호,
- 82015 : 응급실, 10900 : 마취과, 31170 : 회복실,
- 31400 : 투석실 00001 : 혈당기록
-
- //20080708 김홍점 수정
- 가정 001
- 간클리닉 002
- 기관지 003
- 내시경 004
- 병동 005
- 부정맥 006
- 분만 007
- 성분 008
- 외래 009
- 응급 010
- 전문 011
- 주사 012
- 통원 013
- 투석 014
- 혈당 015
- Echo 016
- 특주 017
- 입원전검사 018
- Angio 019
- 심도자실 020
- 수술 021 수술실 따로 떨어짐
- 과내 022
- BMT주사실 023
- DCC 024
- CT 025
- 분만 026 응급실환자가 분만실에서 처치를 받을경우
- 외래 027 병동환자가 외래에서 처치및 소수술을 받는경우
- 마취 900
- 회복 900
-
- - 처방구분(prcpflag)
- A : 투약
- H : 처치
- T : 검사 */
-
- var sPatSelUseYN="";
- var sParamInfo = "";
- var sPamInfo = "";
- var sParamPid = ""; // 141205 - AYS 추가
- var sParamRecflag = ""; // 141205 - AYS 추가
-
- if( !isNull(getScreenMenuParameter()) ){
- sPatSelUseYN = model.getValue(xInitGrupInfoPath+"[paramcd="+getScreenMenuParameter()+"]/patseluseyn");
- }
- grd_stmtinfo.fixedcellcheckbox(0, grd_stmtinfo.colRef("check")) = true;
- if ( sPatSelUseYN != "Y" ){
-
- model.removenode(xStmtInfoPath);
- //grd_stmtinfo.fixedcellcheckbox(0, grd_stmtinfo.colRef("check")) = true;
- // 환자정보 조회
-
- model.removenode("/root/main/paminfo");
- model.makenode("/root/main/paminfo");
- sPamInfo = getGlobalVariable("paminfo");
- setCSVToNode("/root/main/paminfo",sPamInfo,"pamlist");
-
- opt_pid.visible = true;
- ipt_srchpid.visible = false;
- btn_srchpid.visible = false;
- cmb_pid.visible = false;
- cap_settingrn.visible = false;
- cmb_settingrn.visible = false;
- cmb_pid_er.visible = false;
-
- caption4.attribute("left") = "340px";
- cmb_pid.attribute("left") = "428px";
-
- //환자정보 세팅
- sPid = model.getValue(xPamInfoPath+"/pid");
- sHngNm = model.getValue(xPamInfoPath+"/hngnm");
- sHngNm2 = model.getValue(xPamInfoPath+"/hngnm2");
- sAge = model.getValue(xPamInfoPath+"/age");
- sIOFlag = model.getValue(xPamInfoPath+"/ioflag"); // 입원/외래 구분
- if(sIOFlag == "I" || sIOFlag == "E" || sIOFlag == "D"){ // 입원
- sIndd = model.getValue(xPamInfoPath+"/indd"); // 진료일자
- sOrdDD = "-";
- //} else if(sIOFlag == "O"){ // 외래
- } else if(sIOFlag == "O" || sIOFlag == "S"){ // 외래,건진 20090707 김홍점 김영림 itc 요청서에 의한 반영
- sOrdDD = model.getValue(xPamInfoPath+"/orddd"); // 진료일자
- sIndd = "-";
- }
-
- sCretNo = model.getValue(xPamInfoPath+"/cretno"); // 환자 일자별 일련번호
- sInstcd = model.getValue(xPamInfoPath+"/instcd"); // 기관코드
- sOrdDeptCd = model.getValue(xPamInfoPath+"/orddeptcd"); // 진료과코드
- sOrdDrId = model.getValue(xPamInfoPath+"/medispclid"); // 진료의사ID
-
- if(checkOpener()){
- sParamInfo = opener.javascript.getParameter("SMMNR03400_ParamBase");
- sPrcpInfo = opener.javascript.getParameter("SMMNR03400_ParamPrcp");
- sTextAutoSave = opener.javascript.getParameter("SMMNR03400_ParamSaveText");
- //sRecFlag = getArrayData(sParamInfo,1,0); // 기록구분 20090409 김홍점
- DutPlceCD = getArrayData(sParamInfo,1,1); // 부서코드
- sParamRecflag = getArrayData(sParamInfo,1,0);
- sParamPid = ((getArrayData(sParamInfo,1,2)).split(","))[1]; // 신장실 투석환자와 상단환자 정보와 다를 시 window.close
- //sParamPid = (sParamPid.split(","))[1];
-
- if ( DutPlceCD == "014" && sParamRecflag =="L" && !isNull(sParamPid)){
- if( sParamPid != sPid ) {
- messageBox("혈액투석 선택환자와 상단환자가","E004");
- window.close();
- }
- }
-
- if ( !isNull(DutPlceCD) ){
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
- }
- if(DutPlceCD=="001"){
- //pid ▦ instcd ▦ hngnm ▦ age ▦ cretno ▦ ioflag ▦ orddeptcd ▩
- sPatInfo = opener.javascript.getParameter("SMMNR03400_HomeCare");
- opener.javascript.setParameter("SMMNR03400_HomeCare","");
- }
- if(DutPlceCD=="002" || DutPlceCD=="003" || DutPlceCD=="004" || DutPlceCD=="006" || DutPlceCD=="016" || DutPlceCD=="019" || DutPlceCD=="020" || DutPlceCD=="022" || DutPlceCD=="025"){//기능검사, 과내검사
- //pid ▦ instcd ▦ hngnm ▦ age ▦ cretno ▦ ioflag ▦ orddeptcd ▩
- sPatInfo = opener.javascript.getParameter("SMMNR03400_AST");
- opener.javascript.setParameter("SMMNR03400_AST","");
- }
-
- //opener.javascript.setParameter("SMMNR03400_ParamBase","");
- opener.javascript.setParameter("SMMNR03400_ParamPrcp","");
- opener.javascript.setParameter("SMMNR03400_ParamSaveText", "");
-
- if( getScreenMenuParameter()!= null && isNull(sParamInfo) ){
- DutPlceCD = getScreenMenuParameter();//20080705 김홍점
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
-
- if ( DutPlceCD == "021" && !isNull(getOperationInfo("oprsrvno")) ){//수술간호 메뉴에서 오픈시
- sRecLnkKey = getOperationInfo("oprsrvno") + "," + sInstcd;
- } else {
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;
- }
- } else if ( gMenuGrupCd == "MG00520000" ){//전문간호 메뉴그룹으로 들어왔을경우
- DutPlceCD = "011";
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;
- } else if ( gMenuGrupCd == "MG02030000" && DutPlceCD != "015" && DutPlceCD != "021" ){//마취 회복 메뉴그룹으로 들어왔을경우지만 혈당기록에서 띄울경우에는 혈당으로 떠야함.
- DutPlceCD = "900";
- }
-
- } else{
- if ( gMenuGrupCd == "MG00520000" ){//전문간호 메뉴그룹으로 들어왔을경우
- DutPlceCD = "011";
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;
- } else if ( gMenuGrupCd == "MG02030000" && DutPlceCD != "015" && DutPlceCD != "021" ){//마취 회복 메뉴그룹으로 들어왔을경우지만 혈당기록에서 띄울경우에는 혈당으로 떠야함.
- DutPlceCD = "900";
- } else if( getScreenMenuParameter()!= null && isNull(sParamInfo) ){
- DutPlceCD = getScreenMenuParameter();//20080705 김홍점
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
-
- if ( DutPlceCD == "021" && !isNull(getOperationInfo("oprsrvno")) ){//수술간호 메뉴에서 오픈시
- sRecLnkKey = getOperationInfo("oprsrvno") + "," + sInstcd;
- } else {
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;
- }
- }
- }
- if(sPamInfo == "" && sPatInfo == ""){
- messageBox("환자를 먼저","C002");
- return;
- }
-
- //else if ( sPamInfo != "" && DutPlceCD != "900" && DutPlceCD != "021" && DutPlceCD != "001" && DutPlceCD != "014"){
- // if ( sRecFlag == "B" ){
- // sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd+",B,015";//상단정보존재시 기록연계키를 생성
- // } else{
- // sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;//상단정보존재시 기록연계키를 생성
- // }
- //}
-
- if( isNull(DutPlceCD)){
- cmb_deptflag.disabled ="false";
- DutPlceCD = "015";
- sRecFlag = "B";//디폴트 혈당
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd+",B,015";//상단정보존재시 기록연계키를 생성
- } else if( DutPlceCD == "900" ){//수술(20080926 따로 떨어짐) 마취 회복에서 호출할경우 || 마취 회복 메뉴그룹으로 들어왔을경우
-
- /*
- //용도(부서) : 마취삭제, 회복으로 기본 셋팅_KNU_20110111_SMY
-
- //grp_opanst.visible = "true";
- model.removeNodeset(xOpAnstInfoPath);
- model.makeNode(xOpAnstInfoPath);
- copyNodeset(xOpAnstInfoPath, xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']");
- cmb_deptflag.disabled ="false";
- cmb_deptflag.choices.itemset.attribute("nodeset") = xOpAnstInfoPath;
-
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
-
- cmb_deptflag.refresh(); */
-
- //grp_opanst.visible = "true";
- model.removeNodeset(xOpAnstInfoPath);
- model.makeNode(xOpAnstInfoPath);
- copyNodeset(xOpAnstInfoPath, xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']");
- cmb_deptflag.disabled ="true";
- cmb_deptflag.choices.itemset.attribute("nodeset") = xOpAnstInfoPath;
-
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
- cmb_deptflag.refresh();
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
-
-
-
- } else if( DutPlceCD=="001"
- || DutPlceCD=="002"
- || DutPlceCD=="003"
- //|| DutPlceCD=="004"
- || DutPlceCD=="006"
- || DutPlceCD=="019"
- || DutPlceCD=="020"
- || DutPlceCD=="022"
- || DutPlceCD=="025"
- || DutPlceCD=="016" ){//가정간호,기능검사에서 호출할경우 상단정보가 없으므로 다시 세팅
- sPid = getArrayData(sPatInfo,1,0);
- sHngNm = getArrayData(sPatInfo,1,2);
- sAge = getArrayData(sPatInfo,1,3);
- sIOFlag = getArrayData(sPatInfo,1,6); // 입원/외래 구분
-
- if(sIOFlag == "I" || sIOFlag == "E" || sIOFlag == "D"){ // 입원
- sIndd = getArrayData(sPatInfo,1,4); // 진료일자
- sOrdDD = "-";
- //}else if(sIOFlag == "O"){ // 외래
- } else if(sIOFlag == "O" || sIOFlag == "S"){ // 외래,건진 20090707 김홍점 김영림 itc 요청서에 의한 반영
- sOrdDD = getArrayData(sPatInfo,1,4); // 진료일자
- sIndd = "-";
- }
-
- sCretNo = getArrayData(sPatInfo,1,5); // 환자 일자별 일련번호
- sInstcd = getArrayData(sPatInfo,1,1); // 기관코드
- sOrdDeptCd = getArrayData(sPatInfo,1,7); // 진료과코드
- sOrdDrId = getArrayData(sPatInfo,1,8); // 진료의사ID
-
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
- } else {
-
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
-
- //if ( sRecFlag == "B" ){
- // sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd+",B,015";//상단정보존재시 기록연계키를 생성
- //}else{
- // sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;//상단정보존재시 기록연계키를 생성
- //}
- //alert("sRecLnkKey:"+sRecLnkKey);
- if ( sPamInfo != "" && DutPlceCD != "900" && DutPlceCD != "021" && DutPlceCD != "001" && DutPlceCD != "014"){
- if ( sRecFlag == "B" ){
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd+",B,015";//상단정보존재시 기록연계키를 생성
- } else{
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;//상단정보존재시 기록연계키를 생성
- }
- } else if (sParamInfo != ""){
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
- }
- }
-
- // 조회조건 setting
- //sOrdDD = model.getValue(xPamInfoPath+"/orddd");
- model.setValue(xCondPath+"/grupcd",sGrupCd);
-
- model.setValue(xCondPath+"/recdateflag","A");
- model.setValue(xCondPath+"/certrecflag","C");
- model.setValue(xCondPath+"/fromdd",getCurrentDate());
- model.setValue(xCondPath+"/todd",getCurrentDate());
- model.setValue(xCondPath+"/dnarflag","%");
- model.setValue(xCondPath+"/sortseq","A");
- fSettingRecInfo();
- model.setValue(xCondPath+"/pid",sPid);
- model.setValue(xCondPath+"/pname",sHngNm2);
- model.setValue(xCondPath+"/age",sAge);
-
- model.toggle("stmtinfo");
- model.refresh();
-
- FreeTextOnlyUseYN = model.getValue(xInitGrupInfoPath+"[paramcd="+DutPlceCD+"]/freetextonlyuseyn");
-
- //if(DutPlceCD=="019" || DutPlceCD=="020"){//angio, 심도자실은 진술문은 존재하지않는다.Free Text 저장만 enable
- if( FreeTextOnlyUseYN != null && FreeTextOnlyUseYN== "Y" ){// 심도자실과 성가제외 angio 은 진술문은 존재하지않는다.Free Text 저장만 enable 성가 angio는 진술문 등록함.20090520 김홍점
- //btn_stmtsave.disabled = "true"; Free Text도 선택하여 진술문 인증저장버튼 이용.20091221 김홍점
- } else {
- if( !isNull(model.getValue(xCondPath+"/grupcd")) ){
- fMakeStmtList("true");
- }
- }
-
- if( sTextAutoSave != "" ){
- fFreeTextAutoSave();
- }
- } else {
- DutPlceCD = getScreenMenuParameter();
-
- opt_pid.visible = false;
- ipt_srchpid.visible = true;
- btn_srchpid.visible = true;
- cmb_pid.visible = false;
- cap_settingrn.visible = false;
- cmb_settingrn.visible = false;
- cmb_pid_er.visible = false;
- model.setFocus("ipt_srchpid");
-
- caption4.attribute("left") = "340px";
- cmb_pid.attribute("left") = "428px";
-
- if(DutPlceCD == "017") {
- suppdeptcd = aezfSetSuppDeptcd();
- cmb_pid.visible = true;
- cap_settingrn.visible = true;
- cmb_settingrn.visible = true;
- cmb_pid_er.visible = false;
- opt_pid.visible = false;
- opt_pname.visible = false;
- opt_age.visible = false;
- ipt_srchpid.visible = false;
- btn_srchpid.visible = false;
-
- caption4.attribute("left") = "530px";
- cmb_pid.attribute("left") = "618px";
-
- //2013.07.24 fSetItem() 함수로 빼냄
- /*
- //메인에 보여지는 화면 오브젝트를 가져온다.
- var mainObj = getMainViewer();
-
- model.makeNode("/root/tmp/cond");
-
- if(mainObj != null) {
- scrid = mainObj.javascript.getScreenID();
-
- if(scrid == "SMMNI02000") {
- model.makeValue("/root/tmp/cond/wardcd" , mainObj.model.getValue("/root/main/cond/wardcd" ));
- model.makeValue("/root/tmp/cond/settingrnid" , mainObj.model.getValue("/root/main/cond/settingrnid" ));
- model.makeValue("/root/tmp/cond/orddeptcd" , mainObj.model.getValue("/root/main/cond/orddeptcd" ));
- model.makeValue("/root/tmp/cond/medispclid" , mainObj.model.getValue("/root/main/cond/medispclid" ));
- model.makeValue("/root/tmp/cond/atdoctid" , mainObj.model.getValue("/root/main/cond/atdoctid" ));
- model.makeValue("/root/tmp/cond/indschacptstat" , mainObj.model.getValue("/root/main/cond/indschacptstat"));
- model.makeValue("/root/tmp/cond/prcpdd" , mainObj.model.getValue("/root/main/cond/prcpdd" ));
- model.makeValue("/root/tmp/cond/pid" , mainObj.model.getValue("/root/main/cond/pid" ));
- model.makeValue("/root/tmp/cond/rsrvinfoflag" , mainObj.model.getValue("/root/main/cond/rsrvinfoflag" ));
- model.makeValue("/root/tmp/cond/chk_prcpmixno" , mainObj.model.getValue("/root/main/cond/chk_prcpmixno" ));
- model.makeValue("/root/tmp/cond/hngnm" , mainObj.model.getValue("/root/main/cond/hngnm" ));
- model.makeValue("/root/tmp/cond/gndrage" , mainObj.model.getValue("/root/main/cond/gndrage" ));
- model.makeValue("/root/tmp/cond/rrgstno" , mainObj.model.getValue("/root/main/cond/rrgstno" ));
- model.makeValue("/root/tmp/cond/antcncryn" , mainObj.model.getValue("/root/main/cond/antcncryn" ));
- model.makeValue("/root/tmp/cond/drprcpetc2" , mainObj.javascript.drprcpetc2);
- }
- }
- */
-
- fSetItem();
- fSettingnurid();
- fGetPatList();
-
- fSetPatInitInfo();
-
-
- } else if (DutPlceCD == "010") {
- suppdeptcd = aezfSetSuppDeptcd();
- cmb_pid.visible = false;
- cap_settingrn.visible = false;
- cmb_settingrn.visible = false;
- cmb_pid_er.visible = true;
- opt_pid.visible = false;
- opt_pname.visible = false;
- opt_age.visible = false;
- ipt_srchpid.visible = false;
- btn_srchpid.visible = false;
- caption4.attribute("left") = "340px";
- cmb_pid.attribute("left") = "428px";
-
- //메인에 보여지는 화면 오브젝트를 가져온다.
- var mainObj = getMainViewer();
-
- if(mainObj != null) {
- scrid = mainObj.javascript.getScreenID();
-
- if(scrid == "SMMNE00100") {
- var sSrchData = "";
- var sSrchHeader = "flag▦orddept▦orddrid▦section▦fromorddd▦orddd▦wardcd▦outdt▦srchinstcd▩";
- var sSrchData = mainObj.model.getValue("/root/main/cond/indschacptstat") +"▦"
- + mainObj.model.getValue("/root/main/cond/orddeptcd") +"▦"
- + mainObj.model.getValue("/root/main/cond/medispclid") +"▦"
- + mainObj.model.getValue("/root/main/cond/section") +"▦"
- + getDateCalc(getCurrentDate().substr(0,8), 3, "-") +"▦"
- + getCurrentDate().substr(0,8) +"▦"
- + mainObj.model.getValue("/root/main/cond/wardcd") +"▦"
- + mainObj.model.getValue("/root/main/cond/outdt") +"▦"
- + mainObj.model.getValue("/root/main/cond/srchinstcd") +"▩";
-
- model.makeValue("/root/send/mainsearchinfo", sSrchHeader + sSrchData);
- }
- }
-
- submit("TRMNE00101");
-
- ///root/main/chemoinfo/
-
- fSetPatInitInfo();
- } else {
-
- }
-
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
-
- // 조회조건 setting
- //sOrdDD = model.getValue(xPamInfoPath+"/orddd");
- model.setValue(xCondPath+"/grupcd",sGrupCd);
-
- model.setValue(xCondPath+"/recdateflag","A");
- model.setValue(xCondPath+"/certrecflag","C");
- model.setValue(xCondPath+"/fromdd",getCurrentDate());
- model.setValue(xCondPath+"/todd",getCurrentDate());
- model.setValue(xCondPath+"/dnarflag","%");
- model.setValue(xCondPath+"/sortseq","A");
-
- fSettingRecInfo();
-
- if( isNull(DutPlceCD)){
- cmb_deptflag.disabled ="false";
- DutPlceCD = "015";
- sRecFlag = "B";//디폴트 혈당
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd+",B,015";//상단정보존재시 기록연계키를 생성
- } else if( DutPlceCD == "900" ){//수술(20080926 따로 떨어짐) 마취 회복에서 호출할경우 || 마취 회복 메뉴그룹으로 들어왔을경우
-
- /*
- //용도(부서) : 마취삭제, 회복으로 기본 셋팅_KNU_20110111_SMY
-
- //grp_opanst.visible = "true";
- model.removeNodeset(xOpAnstInfoPath);
- model.makeNode(xOpAnstInfoPath);
- copyNodeset(xOpAnstInfoPath, xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']");
- cmb_deptflag.disabled ="false";
- cmb_deptflag.choices.itemset.attribute("nodeset") = xOpAnstInfoPath;
-
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
-
- cmb_deptflag.refresh(); */
-
- //grp_opanst.visible = "true";
- model.removeNodeset(xOpAnstInfoPath);
- model.makeNode(xOpAnstInfoPath);
- copyNodeset(xOpAnstInfoPath, xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']");
- cmb_deptflag.disabled ="true";
- cmb_deptflag.choices.itemset.attribute("nodeset") = xOpAnstInfoPath;
-
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
- cmb_deptflag.refresh();
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
-
- } else if( DutPlceCD=="001"
- || DutPlceCD=="002"
- || DutPlceCD=="003"
- //|| DutPlceCD=="004"
- || DutPlceCD=="006"
- || DutPlceCD=="019"
- || DutPlceCD=="020"
- || DutPlceCD=="022"
- || DutPlceCD=="025"
- || DutPlceCD=="016" ){//가정간호,기능검사에서 호출할경우 상단정보가 없으므로 다시 세팅
-
- sPid = getArrayData(sPatInfo,1,0);
- sHngNm = getArrayData(sPatInfo,1,2);
- sAge = getArrayData(sPatInfo,1,3);
- sIOFlag = getArrayData(sPatInfo,1,6); // 입원/외래 구분
-
- if(sIOFlag == "I" || sIOFlag == "E" || sIOFlag == "D"){ // 입원
- sIndd = getArrayData(sPatInfo,1,4); // 진료일자
- sOrdDD = "-";
- //}else if(sIOFlag == "O"){ // 외래
- } else if(sIOFlag == "O" || sIOFlag == "S"){ // 외래,건진 20090707 김홍점 김영림 itc 요청서에 의한 반영
- sOrdDD = getArrayData(sPatInfo,1,4); // 진료일자
- sIndd = "-";
- }
-
- sCretNo = getArrayData(sPatInfo,1,5); // 환자 일자별 일련번호
- sInstcd = getArrayData(sPatInfo,1,1); // 기관코드
- sOrdDeptCd = getArrayData(sPatInfo,1,7); // 진료과코드
- sOrdDrId = getArrayData(sPatInfo,1,8); // 진료의사ID
-
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
- } else {
-
- sGrupCd = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/grupcd");
- //if ( sRecFlag == "B" ){
- // sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd+",B,015";//상단정보존재시 기록연계키를 생성
- //} else{
- // sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;//상단정보존재시 기록연계키를 생성
- //}
- //alert("sRecLnkKey:"+sRecLnkKey);
- if ( sPamInfo != "" && DutPlceCD != "900" && DutPlceCD != "021" && DutPlceCD != "001" && DutPlceCD != "014"){
- if ( sRecFlag == "B" ){
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd+",B,015";//상단정보존재시 기록연계키를 생성
- } else{
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;//상단정보존재시 기록연계키를 생성
- }
- } else if (sParamInfo != ""){
- sRecLnkKey = getArrayData(sParamInfo,1,2); //원무키 + 처방키
- }
- }
-
- // 조회조건 setting
- //sOrdDD = model.getValue(xPamInfoPath+"/orddd");
- model.setValue(xCondPath+"/grupcd",sGrupCd);
-
- model.setValue(xCondPath+"/recdateflag","A");
- model.setValue(xCondPath+"/certrecflag","C");
- model.setValue(xCondPath+"/fromdd",getCurrentDate());
- model.setValue(xCondPath+"/todd",getCurrentDate());
- model.setValue(xCondPath+"/dnarflag","%");
- model.setValue(xCondPath+"/sortseq","A");
- fSettingRecInfo();
- model.setValue(xCondPath+"/pid",sPid);
- model.setValue(xCondPath+"/pname",sHngNm2);
- model.setValue(xCondPath+"/age",sAge);
-
- model.toggle("stmtinfo");
- model.refresh();
-
- FreeTextOnlyUseYN = model.getValue(xInitGrupInfoPath+"[paramcd="+DutPlceCD+"]/freetextonlyuseyn");
-
- //if(DutPlceCD=="019" || DutPlceCD=="020"){//angio, 심도자실은 진술문은 존재하지않는다.Free Text 저장만 enable
- if( FreeTextOnlyUseYN != null && FreeTextOnlyUseYN== "Y" ){// 심도자실과 성가제외 angio 은 진술문은 존재하지않는다.Free Text 저장만 enable 성가 angio는 진술문 등록함.20090520 김홍점
- //btn_stmtsave.disabled = "true"; Free Text도 선택하여 진술문 인증저장버튼 이용 20091221 김홍점
- } else {
- if( !isNull(model.getValue(xCondPath+"/grupcd")) ){
- fMakeStmtList("true");
- }
- }
-
- if( sTextAutoSave != "" ){
- fFreeTextAutoSave();
- }
- }
- addComboItem("cmb_deptflag", "전체", "");
- var inrmdd = model.property("inrmdd");
- var inrmtm = model.property("inrmtm");
-
- if(inrmdd != null && inrmdd != "") {
-
- model.makeValue("/root/send/reqdata/pid", sPid);
- model.makeValue("/root/send/reqdata/indd", sIndd);
- model.makeValue("/root/send/reqdata/cretno", sCretNo);
- model.makeValue("/root/send/reqdata/origincd", model.getValue("/root/main/cond/grupcd"));
-
- submit("TRMNR03405");
-
- var existyn = model.getValue("/root/main/prerecinfo/prereclist/existyn");
-
- if(existyn == "Y") {
- rdo_recflag.value = "A";
- ipt_recdd.disabled = true;
- ipt_rectm.disabled = true;
- btn_recdt.disabled = true;
- } else {
- rdo_recflag.value = "U";
- ipt_recdd.value = inrmdd;
- ipt_rectm.value = inrmtm;
- ipt_recdd.disabled = false;
- ipt_rectm.disabled = false;
- btn_recdt.disabled = false;
- }
- }
-
- }
- /**
- * @group :
- * @ver : 2009.05.20
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 오픈시 자동 저장 처리
- * @param : sTextAutoSave --> 자동 저장시 필요 Parameter
- * @return : true , false
- * @---------------------------------------------------
- */
- function fFreeTextAutoSave(){
- var sTextRecFalg = getArrayData(sTextAutoSave, 0, 0); //기록구분
- var sTextOutoFlag = getArrayData(sTextAutoSave, 0, 1); //자동기록구분 ("A", "U");
- var sTextRecDt = getArrayData(sTextAutoSave, 0, 2); //기록시간
- var sTextRecStmt = getArrayData(sTextAutoSave, 0, 3); //기록문장
-
- if(sTextRecFalg == "") sTextRecFalg = "S";
- rdo_freetextdnarflag.value = sTextRecFalg;
- textarea4.value = sTextRecStmt;
- rdo_recflag.value = "U";
- if(sTextRecDt.length < 12){
- ipt_recdd.value = getCurrentDate();
- ipt_rectm.value = getCurrentTime();
- }else{
- ipt_recdd.value = sTextRecDt.substr(0, 8);
- ipt_rectm.value = sTextRecDt.substr(8, 4);
- }
-
- if(sTextAutoSave != ""){
- //fSaveTextStmtInfo();
- fSelTextStmtInfo();
- fSaveCareRec();
- opener.javascript.setParameter("SPMNR03400_Return", sAutoProcFlag);
- model.close();
- }
- }
- /**
- * @group :
- * @ver : 2008.07.08
- * @by : 김홍점
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수술마취회복 선택값
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGrpOpAnstSel(){
- // if( grd_opanst.row > 0 && grd_opanst.row < grd_opanst.rows-grd_opanst.fixedRows){
- // sGrupCd = model.getValue(xOpAnstInfoPath+"["+grd_opanst.row+"]/grupcd");
- // sRecFlag = model.getValue(xOpAnstInfoPath+"["+grd_opanst.row+"]/recflag");
- // grp_opanst.visible = "false";
- // }
- //수술마취회복이 부서코드가 900으로 넘어와 기록구분으로 그룹코드가 선택된다.
- sGrupCd = model.getValue("/root/main/cond/grupcd");
- sRecFlag = model.getValue(xInitGrupInfoPath+"[grupcd='"+sGrupCd+"']/recflag");
- if ( !isNull(getOperationInfo("oprsrvno")) && sRecFlag=="R" ){//회복선택시
- sRecLnkKey = sPid+"," + sInstcd + "," + getOperationInfo("oprsrvno") + "," +getOperationInfo("ophistno");
- }else if ( !isNull(getOperationInfo("oprsrvno")) && sRecFlag=="A" ){//마취선택시
- sRecLnkKey = getOperationInfo("oprsrvno") + "," +sInstcd;
- }
- // else if ( isNull(sRecLnkKey) ){
- // sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;
- // }
-
-
- }
- /**
- * @group :
- * @ver : 2007.05.21
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록정보 Setting
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingRecInfo(){
- var sRecDateFlag = model.getValue(xCondPath+"/recdateflag");
- if(sRecDateFlag == "A"){ // 자동
- model.setValue(xCondPath+"/recdd","");
- model.setValue(xCondPath+"/rectm","");
- btn_recdt.disabled = true;
- ipt_recdd.disabled = true;
- ipt_rectm.disabled = true;
- }else{ // 사용자 지정
- model.setValue(xCondPath+"/recdd",getCurrentDate());
- model.setValue(xCondPath+"/rectm",getCurrentTime().substr(0,4));
- ipt_recdd.disabled = false;
- ipt_rectm.disabled = false;
- btn_recdt.disabled = false;
- }
- ipt_recdd.refresh();
- ipt_rectm.refresh();
- rdo_recflag.refresh();
- }
- /**
- * @group :
- * @ver : 2007.05.22
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 진술문 리스트를 만듬
- * @param :pCheck : "false","true" 팝업으로 열릴때는 선택되도록 체크.
- * @return :
- * @---------------------------------------------------
- */
- function fMakeStmtList(pCheck){
-
- var iStmtRow = 1; // 진술문 순서
- var iAttrRow = 1; // 속성 순서
- var sAttrInfo = ""; // 속성정보
- var sAttrInfo2 = ""; // 속성정보2
- var sGrupNM = ""; // 그룹명
- var sStmtCnts = ""; // 진술문장
- var sAttrFlag = ""; // 속성구분
- var sAttrCD = "" // 속성코드
- var sPlnumChoiYN = ""; // 다중속성선택여부
- var sStmtCD = ""; // 진술문코드
- var sAttrCnt = 0; // 속성개수
- var sMaxAttrCnt = 0; // 최대 속성 개수
- var sAttrSeq = 0; // 속성순서
- var sCtrlID = "";
- // 해당 nodeset을 삭제하고 컬럼을 삭제함.
- var sColCnt = grd_stmtinfo.cols; // 컬럼개수
- var sStndColCnt = gStndColCnt; // 기준 그리드 컬럼 개수 1은 첫번째 속성컬럼
- var sGrdCap = ""; // 그리드 컬럼ID
- var sGrdCapText = ""; // 그리드 컬럼명
- if ( DutPlceCD =="014"){//소경화 10-15 16:29 시간이요...지정으로 default
- model.setValue(xCondPath+"/recdateflag","U");
- rdo_recflag.dispatch("xforms-value-changed");
- } else {
- model.setValue(xCondPath+"/recdateflag", "A");
- rdo_recflag.dispatch("xforms-value-changed");
-
- }
- if( FreeTextOnlyUseYN != null && FreeTextOnlyUseYN== "Y" ){//angio(성가 제외), 심도자실은 진술문은 존재하지않는다.Free Text 저장만 enable이므로 이하 리턴
- return;
- }
-
- model.removenodeset(xStmtInfoPath);
- // col hidden상태에서 removeColumn시 colHidden 안 먹는 버그로 인해 잠시...
- //sColCnt컬럼 갯수이므로 실제 컬럼index는 -1해준다.(컬럼index는 0부터시작)
- for(var iCol=(sColCnt-1); iCol> (sStndColCnt-1); iCol--){
- if( grd_stmtinfo.colHidden(iCol) )
- grd_stmtinfo.colHidden(iCol) = false;
- }
- for(var iCol=(sColCnt-1); iCol> (sStndColCnt-1); iCol--){
- grd_stmtinfo.deleteColumn(iCol,"false");
- }
-
- //grd_stmtinfo.refresh();
-
- sGrdCap = grd_stmtinfo.caption.split("^");
-
- for(var iCol = 0; iCol < sStndColCnt; iCol++){
- sGrdCapText += sGrdCap[iCol];
- if(iCol < (sStndColCnt-1)){
- sGrdCapText += "^";
- }
- }
- grd_stmtinfo.caption = sGrdCapText;
- model.removenode("/root/send");
- model.makeValue("/root/send/grupcd",model.getValue(xCondPath+"/grupcd"));
- model.removenode("/root/init/recinfo");
- if(submit("TRMNR03401")){
-
- var sStmtRowCnt = getNodesetCnt(model, xSrchedStmtInfoPath);
-
-
- // 최대 속성 개수 체크
- for(var iRow = 1; iRow <= sStmtRowCnt; iRow++){
- sStmtCD = model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/stmtcd");
- if( iRow == 1){
- //--------(20100622:경북대)
- //if(sStmtCD == "00000001" || sStmtCD == "00000002" || sStmtCD == "00000003"){// 처방관련 진술문은 제외
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){// 처방관련 진술문은 제외
- //--------(20100622:경북대)
- sMaxAttrCnt = eval(model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attrcnt"))-1;
- }else{
- sMaxAttrCnt = eval(model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attrcnt"));
- }
- }else{
- //--------(20100622:경북대)
- //if(sStmtCD == "00000001" || sStmtCD == "00000002" || sStmtCD == "00000003"){// 처방관련 진술문은 제외
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){// 처방관련 진술문은 제외
- //--------(20100622:경북대)
- sAttrCnt = eval(model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attrcnt"))-1;
- }else{
- sAttrCnt = eval(model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attrcnt"));
- }
- if( sMaxAttrCnt < sAttrCnt){
- sMaxAttrCnt = sAttrCnt;
- }
- }
- }
- model.setValue("/root/temp/maxattrcnt", sMaxAttrCnt);
-
- fAddGridColumn(1);
- // SET 별 진술문 정보
- for(var iRow = 1; iRow <= sStmtRowCnt; iRow++){
-
- sGrupNM = model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/grupnm");
- sStmtCnts = model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/stmtcnts");
- sStmtCD = model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/stmtcd");
- //----------(20100622:경북대)
- //if(sStmtCD == "00000001" || sStmtCD == "00000002" || sStmtCD == "00000003"){
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){
- //----------(20100622:경북대)
- continue; // 처방관련 진술문은 제외
- }else {
- grd_stmtinfo.addRow(false);
- iStmtRow = grd_stmtinfo.rows - grd_stmtinfo.fixedrows;
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/check", "false");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupcd", model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/grupcd"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupnm", sGrupNM);
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcd", sStmtCD);
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcnts", sStmtCnts);
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo1", model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attrinfo1"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo2", model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attrinfo2"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attressnyn", model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attressnyn"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/dnarflag", model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/dnarflag"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrcnt", model.getValue(xSrchedStmtInfoPath+"["+iRow+"]/attrcnt"));
- fSettingAttrInfo(iStmtRow);
-
- }
- }
-
-
-
- grd_stmtinfo.allstyle("data","background-color") = "#FFFFFF"; // 전체 바탕색을 흰색으로 설정.
- // 처방에 따른 입력창 Setting
- if(sPrcpInfo != "" && sPrcpInfo.split("▩").length > 2 ){
- var sPrcpCnt = sPrcpInfo.split("▩").length-2;
- var sPrcpFlag = "";
- var sTerm = "";
- for(var iPrcpRow=1; iPrcpRow <= sPrcpCnt; iPrcpRow++){
-
- grd_stmtinfo.addRow(false);
- iStmtRow = grd_stmtinfo.rows - grd_stmtinfo.fixedrows;
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupcd", "");
- sPrcpFlag = getArrayData(sPrcpInfo,iPrcpRow,0);
- if(sPrcpFlag == "A"){ //투약
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupnm", "투약");
- //----------(20100622:경북대)
- //sStmtCD = "00000001";
- sStmtCD = stmtcd1;
- //----------(20100622:경북대)
- }else if(sPrcpFlag == "H"){ // 처치
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupnm", "처치");
- //----------(20100622:경북대)
- //sStmtCD = "00000003";
- sStmtCD = stmtcd3;
- //----------(20100622:경북대)
- }else{
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupnm", "검사");
- //----------(20100622:경북대)
- //sStmtCD = "00000002";
- sStmtCD = stmtcd2;
- //----------(20100622:경북대)
- }
-
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcd", sStmtCD);
- sTerm = model.getValue(xSrchedStmtInfoPath+"[stmtcd ='"+sStmtCD+"']/stmtcnts").split(" ");
- sAttrInfo = model.getValue(xSrchedStmtInfoPath+"[stmtcd ='"+sStmtCD+"']/attrinfo2").split(" ");
-
- for(var i=0; i < sTerm.length; i++){
- if(sTerm[i] == "") {
- continue;
- }else{
- if(sTerm[i] != sAttrInfo[i]){
- sAttrSeq = eval( sAttrInfo[i].substr(1,1));
- if(sAttrSeq == 0){
- sStmtCnts = getArrayData(sPrcpInfo,iPrcpRow,1) + " ";
- sAttrInfo2 = getArrayData(sPrcpInfo,iPrcpRow,1) + " ";
- }else{
- sStmtCnts += sTerm[i];
- sAttrInfo2 += sAttrInfo[i];
- }
- }else{
- sStmtCnts += sTerm[i];
- sAttrInfo2 += sAttrInfo[i];
- }
-
- }
- }
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/check", pCheck);
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcnts", sStmtCnts);
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo1", model.getValue(xSrchedStmtInfoPath+"[stmtcd ='"+sStmtCD+"']/attrinfo1"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo2", sAttrInfo2);
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attressnyn", model.getValue(xSrchedStmtInfoPath+"[stmtcd ='"+sStmtCD+"']/attressnyn"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/dnarflag", model.getValue(xSrchedStmtInfoPath+"[stmtcd ='"+sStmtCD+"']/dnarflag"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrcnt", model.getValue(xSrchedStmtInfoPath+"[stmtcd ='"+sStmtCD+"']/attrcnt"));
- fSettingAttrInfo(iStmtRow);
-
- grd_stmtinfo.rowstyle(iStmtRow,"data","background-color") = "#ffff88";
- }
- }
- grd_stmtinfo.mergecells = "bycol";
- grd_stmtinfo.mergecol(0) = false;
- grd_stmtinfo.mergecol(1) = false;
- grd_stmtinfo.mergecol(5) = false;
- grd_stmtinfo.refresh();
- grd_stmtinfo.resizeCells();
- }
- }
- /**
- * @group :
- * @ver : 2007.04.25
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 속성 컬럼에 노드셋 설정
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingAttrInfo(pStmtRow){
- var sStmtCD = model.getValue(xStmtInfoPath+"["+pStmtRow+"]/stmtcd");
- var sAttrInfo = model.getValue(xStmtInfoPath+"["+pStmtRow+"]/attrinfo1").split("⊙");
- var sAttrCnt = 0;
- var sStndColCnt = gStndColCnt; // 기준 그리드 컬럼 개수
- var sMaxAttrCnt = model.getValue("/root/temp/maxattrcnt"); // 최대 속성 개수
-
- //-----------(20100622:경북대)
- //if(sStmtCD == "00000001" || sStmtCD == "00000002" || sStmtCD == "00000003" ){ // 처방
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){ // 처방
- //-----------(20100622:경북대)
- sAttrCnt = sAttrInfo.length-2;
- }else{
- sAttrCnt = sAttrInfo.length-1;
- }
-
- for(var i=0; i<sAttrCnt; i++){
- //-----------(20100622:경북대)
- //if(sStmtCD == "00000001" || sStmtCD == "00000002" || sStmtCD == "00000003" ){ // 처방
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){ // 처방
- //-----------(20100622:경북대)
- sAttrCD = sAttrInfo[(i+1)];
-
- }else{
- sAttrCD = sAttrInfo[i];
- }
- //grd_stmtinfo.cellstyle("background-image",pStmtRow,(sStndColCnt+3)+(3*i))="../../../com/commonweb/images/icon_btn.gif";
- //grd_stmtinfo.cellstyle("background-image",pStmtRow,0)="../../../emr/commonweb/images/event1.gif";
- model.makeValue(xStmtInfoPath+"["+pStmtRow+"]/attryn","▶");
-
- if(model.getValue(xSrchedAttrInfoPath+"[supcd='"+sAttrCD+"']/attrcd") != ""){
-
- sPlnumChoiYN = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCD+"']/plnumchoiyn");
- if(sPlnumChoiYN == "Y"){
-
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+1)+(3*i)) = true;
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+2)+(3*i)) = false;
- grd_stmtinfo.cellstyle("background-image",pStmtRow,(sStndColCnt+2)+(3*i))="../../../com/commonweb/images/icon_btn.gif";
- }else{
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+1)+(3*i)) = false;
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+2)+(3*i)) = true;
- }
- }else{
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+1)+(3*i)) = false;
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+2)+(3*i)) = true;
- }
- grd_stmtinfo.cellComboNodeset(pStmtRow,(sStndColCnt+1)+(3*i)) = xSrchedAttrInfoPath+"[supcd='"+sAttrCD+"']";
- model.setValue(xStmtInfoPath+"["+pStmtRow+"]/attrcd"+(i+1),sAttrCD);
- }
- // 속성개수가 최대 속성 개수보다 적은 진술문의 추가 속성 입력창은 읽기전용으로 설정
- for(var iAttrRow = sAttrCnt; iAttrRow < sMaxAttrCnt; iAttrRow++){
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+1)+(3*iAttrRow)) = true;
- grd_stmtinfo.isreadonly(pStmtRow,(sStndColCnt+2)+(3*iAttrRow)) = true;
- }
- }
- /**
- * @group :
- * @ver : 2007.04.25
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSrchCareRec(pFlag){
- if( isNull(model.getValue("/root/main/cond/grupcd"))){
- messageBox("용도(부서)를 먼저","C002");
- return;
- }
-
- if ( pFlag == "Y" && !fExistAddDNAR()) return;
-
- fDeSelect();
-
- DutPlceCD = getScreenMenuParameter();
-
- //항암주사실일경우에는 기록창으로 그냥 있도록 수정.
-
- model.toggle("recinfo");
- fSearchRecInfo();
-
- //if(DutPlceCD == "017") {
- // if(srchFlag == "1") {
- // fMakeStmtList("false");
- // } else if(srchFlag =="2") {
- // model.toggle("recinfo");
- // fSearchRecInfo();
- // }
- //
- //} else {
- // model.toggle("recinfo");
- // fSearchRecInfo();
- //}
-
-
- }
- /**
- * @group :
- * @ver : 2007.05.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 저장하기 않은 간호기록 내역 존재여부
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDeSelect(){
- if( !isNull(model.getValue(xStmtInfoPath+"[check = 'true']/check")) ){
- for(var idx = grd_stmtinfo.fixedRows ; idx <= grd_stmtinfo.rows-grd_stmtinfo.fixedRows ; idx++){
- model.setValue(xStmtInfoPath+"["+ idx +"]/check", "false");
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.05.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 저장하기 않은 간호기록 내역 존재여부
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fExistAddDNAR(){
-
- if ( !isNull(model.getValue(xStmtInfoPath+"[check = 'true']/check")) ){
- var returnMsg = messageBox("저장하지 않은 선택 내역이 존재합니다. ", "Q002");// 저장하시겠습니까?
- if ( returnMsg == 6 ) {
- return false; //이후 진행 안함.
- } else {
- return true; //이후진행
- }
- }
- return true; //이후진행
- }
- /**
- * @group :
- * @ver : 2007.04.26
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 다중 선택의 속성코드의 경우 멀티 선택 가능 화면을 호출한다.
- * @param : pCode : 속성 코드
- * @return :
- * @---------------------------------------------------
- */
- function fCallDetlAttrInfo(pRefPath){
- var sRtn_Msg = "";
- var sAttrInfo = "";
- setParameter("SPMNR03000_Param",model.getValue(pRefPath+"/attrcd"));
- modal("SPMNR03000");
- setParameter("SPMNR03000_Param","");
- sRtn_Msg = getParameter("SPMNR03000_Return");
-
- if(sRtn_Msg == "" ) return;
- sAttrInfo = sRtn_Msg.split("▦");
- model.setValue(pRefPath+"/attrval",sAttrInfo[0]);
- model.setValue(pRefPath+"/attrvalcd",sAttrInfo[1]);
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.06.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 간호일지 내역 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearchRecInfo(){
-
- model.removeNodeset(xNursingRecordListPath);
-
- if( isNull(sPid)){
- messageBox("환자를 먼저","C002");
- return;
- }
-
- var flag = model.property("flag");
- var sSrchHeader = "pid▦indd▦orddd▦cretno▦ioflag▦fromdd▦todd▦dnarflag▦sortseq▦recflag▦reclnkkey▦carediagflag▦type2▦flag▩";
- var sSrchData = sPid+"▦"
- +sIndd +"▦"
- +sOrdDD+"▦"
- +sCretNo+"▦"
- +sIOFlag+"▦"
- +model.getValue(xCondPath+"/fromdd")+"▦"
- +model.getValue(xCondPath+"/todd")+"▦"
- +model.getValue(xCondPath+"/dnarflag")+"▦"
- +model.getValue(xCondPath+"/sortseq")+"▦"
- +sRecFlag+"▦"
- +sRecLnkKey+"▦"
- +model.getValue(xCondPath+"/carediagflag")+"▦"
- + "Y" + "▦"
- + flag + "▩";
- model.makeValue("/root/send/srchinfo",sSrchHeader+sSrchData );
-
- if(submit("TRMNR03402")){
- fSettingRec();
- grd_carerecspec.resizeCells();
- }
- }
- /**
- * @group :
- * @ver : 2007.06.16
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록 setting
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingRec(){
- grd_carerecspec.mergecells = "byrestriccol";
- grd_carerecspec.mergecol(4)=false;
- grd_carerecspec.mergecol(5)=false;
- grd_carerecspec.mergecol(6)=false;
- var sCertKey = "";
- var sInterpRecYN = "";
- for(var iRow=grd_carerecspec.fixedrows; iRow<=grd_carerecspec.rows-grd_carerecspec.fixedrows; iRow++){
- sInterpRecYN = model.getValue(xNursingRecordListPath+"["+iRow+"]/interprecyn");
- sCertKey = model.getValue(xNursingRecordListPath+"["+iRow+"]/certkey");
- if(sCertKey == ""){
- if(sInterpRecYN == "N"){
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_unLock.gif";
- }else{
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_unLock_add.gif";
- }
- }else{
- if(sInterpRecYN == "N"){
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_Lock.gif";
- }else{
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_Lock_add.gif";
- }
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.06.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 통합기록용인증로직
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fViewSign(pFreeTextPath){
- Sign.certreload = false ; // 전자서명 호출시 인증저장 버튼을 누를때마다 인증서가 뜨도록 처리
- var signRecDD = "";
- model.removenodeset("/root/send/signdata");
-
- var sUpNodepath = (pFreeTextPath == null || pFreeTextPath == "" ? "/root/main/nursingrecordinfo" : pFreeTextPath );
-
- for( var idx = 1 ; idx <= getNodesetCount( sUpNodepath + "/recddlist"); idx++ ){
- signRecDD = model.getValue(sUpNodepath + "/recddlist["+ idx +"]/recdd");
- model.removenodeset(xSignPath);
- model.makeNode(xSignPath);
- if(getNodesetCount(sUpNodepath + "/totnursingrecordlist[recdd='"+ signRecDD +"']")>0 ){
- copyNodeset(xSignPath,sUpNodepath + "/totnursingrecordlist[recdd='"+ signRecDD +"']");
- if(Sign.signprocess() == true){
- var sSignDataRowCnt = eval(getNodesetCount("/root/send/signdata")) + 1;
-
- // 전자인증 관련 환자 인적 정보를 보내줌.
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/status", "i");
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/pid", sPid );//등록번호
- if( sIOFlag =="O" || sIOFlag =="S" ){
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddd", sOrdDD);//입원일자(입원,응급)/진료일자(외래)
- }else{
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddd", sIndd);//입원일자(입원,응급)/진료일자(외래)
- }
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signno", "");//서명번호
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/cretno", sCretNo); //생성번호
-
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/recdd",signRecDD);// 실제 기록이 이루어진 기록일자
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/rectm","000000");//실제 기록이 이루어진 기록시간
-
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/recsaveflag","Y"); //전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signflag","02" ); //서명자료구분 (01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signgenrflag",sIOFlag );//외래/입원구분(코드정의서 M0010 참조)
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/formcd","0000002432" ); //각 기록지별 서식코드
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddeptcd", sOrdDeptCd); //진료부서코드
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddrid", sOrdDrId ); //진료의사ID
- // 인증할 데이터 정보(미기록 노드 제거된 정보)
- // 미기록 노드 제거전 원본 노드 정보 : Sign.signedInfos[3]
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signbfcnts", Sign.signedInfos[1]);
- // 공인인증 처리후 데이터
- // model.makeValue("/root/send/signdata/signaftcnts", Sign.signedInfos[2]);
-
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/screenid", getScreenID());
- }
- // else{
- // return;
- // }
- } else{
- sSignDataRowCnt = eval(getNodesetCount("/root/send/signdata")) + 1;
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/status", "d"); //삭제 상태
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/pid", sPid );//등록번호
- if( sIOFlag =="O" || sIOFlag =="S"){
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddd", sOrdDD);//입원일자(입원,응급)/진료일자(외래)
- }else{
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/orddd", sIndd);//입원일자(입원,응급)/진료일자(외래)
- }
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signno", "");//서명번호
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/cretno", sCretNo); //생성번호
-
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signflag","02" ); //서명자료구분 (01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signgenrflag",sIOFlag );//외래/입원구분(코드정의서 M0010 참조)
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/signbfcnts", "삭제");
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/formcd","0000002432" ); //각 기록지별 서식코드
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/recdd",signRecDD);// 실제 기록이 이루어진 기록일자
- model.makeValue("/root/send/signdata["+sSignDataRowCnt+"]/rectm","000000");// 실제 기록이 이루어진 기록일자
- }
- }
- if ( getNodesetCount("/root/send/signdata") < 1 ){
- return;
- }
-
- // submit("TXMNR00904");
- if(submit("TXMNR00904")){
- gSignRecYN = "Y";
- }
- }
- /**
- * @group :
- * @ver : 2007.06.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 인증로직
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSign(){
- Sign.certreload = true ; // 전자서명 호출시 인증저장 버튼을 누늘때마다 인증서가 뜨도록 처리
- if( vsettime == "") {
- Sign.certchkflag = "Y";
- } else {
- var res2 = getTimeInterval(vsettime, getCurrentTime(), 'hhmmss');
-
- if(res2 > signtime* 60 || res2 < 0) {
- Sign.certchkflag = "Y";
- } else {
- Sign.certchkflag = "N";
- }
- }
- if(Sign.signprocess() == true){
- vsettime = getCurrentTime();
- // 전자인증 관련 환자 인적 정보를 보내줌.
- model.makeValue("/root/send/signdata/pid", sPid );//등록번호
- if( sIOFlag =="O" || sIOFlag =="S" ){
- model.makeValue("/root/send/signdata/orddd", sOrdDD);//입원일자(입원,응급)/진료일자(외래)
- }else{
- model.makeValue("/root/send/signdata/orddd", sIndd);//입원일자(입원,응급)/진료일자(외래)
- }
- model.makeValue("/root/send/signdata/signno", "");//서명번호
- model.makeValue("/root/send/signdata/cretno", sCretNo); //생성번호
-
- if ( sRecDateFlag == "U" ){
- model.makeValue("/root/send/signdata/recdd",model.getValue(xCondPath+"/recdd"));// 실제 기록이 이루어진 기록일자
- model.makeValue("/root/send/signdata/rectm",model.getValue(xCondPath+"/rectm"));//실제 기록이 이루어진 기록시간
-
- } else {
- model.makeValue("/root/send/signdata/recdd",getCurrentDate());// 실제 기록이 이루어진 기록일자
- model.makeValue("/root/send/signdata/rectm",getCurrentTime());//실제 기록이 이루어진 기록시간
-
- }
- model.makeValue("/root/send/signdata/recsaveflag","Y"); //전자서명 인적정보 변경여부(기록일시 변경되는 경우 : Y, 그외 : N)
- model.makeValue("/root/send/signdata/signflag","02" ); //서명자료구분 (01 : 진료, 02 : 간호, 03 : LIS, 04 : 진료지원)
- model.makeValue("/root/send/signdata/signgenrflag",sIOFlag );//외래/입원구분(코드정의서 M0010 참조)
- model.makeValue("/root/send/signdata/formcd","0000002432" ); //각 기록지별 서식코드0000002464(타입2)->0000002432(간호일지) 20080827 김영림itc 협의완료
- model.makeValue("/root/send/signdata/orddeptcd", sOrdDeptCd); //진료부서코드
- model.makeValue("/root/send/signdata/orddrid", sOrdDrId ); //진료의사ID
- model.makeValue("/root/send/signdata/dispyn", "N"); //기록뷰어에는 조회안되도록
- // 인증할 데이터 정보(미기록 노드 제거된 정보)
- // 미기록 노드 제거전 원본 노드 정보 : Sign.signedInfos[3]
- model.makeValue("/root/send/signdata/signbfcnts", Sign.signedInfos[1]);
- // 공인인증 처리후 데이터
- model.makeValue("/root/send/signdata/signaftcnts", Sign.signedInfos[2]);
- }else{
- return false;
- }
- model.makeValue("/root/send/signdata/screenid", getScreenID());
- return true;
- }
- /**
- * @group :
- * @ver : 2007.06.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 인증데이터 생성함수
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMake_SignData(){
- Sign.addnode("/root/main/signSaveData");
-
-
- }
- /**
- * @group :
- * @ver : 2009.12.18
- * @by : khj
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록 저장 시간 적용
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fRecDTAppend(){
- sRecDateFlag = model.getValue(xCondPath+"/recdateflag"); // (A : 자동, U : 지정)
- var sRecDate = model.getValue(xCondPath+"/recdd");
- var sRecTime = model.getValue(xCondPath+"/rectm");
-
- var iSelectedRows = grd_stmtinfo.selectedRows;
- var iAppendRow = 0;
-
- for ( var idx = 0 ; idx < iSelectedRows ; idx++){
-
- iAppendRow = grd_stmtinfo.selectedRow(idx);
-
- if( sRecDateFlag == "U" ){
- model.makeValue(xStmtInfoPath+"["+iAppendRow+"]/recdtflag", "U" );
- model.setValue(xStmtInfoPath+"["+iAppendRow+"]/recdt", sRecDate+sRecTime+"00");
- model.setValue(xStmtInfoPath+"["+iAppendRow+"]/check", "true" );
- }
- }
-
-
-
- var inrmdd = model.property("inrmdd");
- if(inrmdd == "" || inrmdd == null) {
- model.setValue(xCondPath+"/recdateflag", "A");
- rdo_recflag.dispatch("xforms-value-changed");
- rdo_recflag.refresh();
- } else {
- //for(var i = grd_stmtinfo.fixedRows; i < grd_stmtinfo.rows; i++) {
- // chkyn = grd_stmtinfo.valueMatrix(i, grd_stmtinfo.colRef("check"));
- //
- // if(chkyn == "true") {
- //
- // model.makeValue(xStmtInfoPath+"["+i+"]/recdtflag", "U" );
- // model.setValue(xStmtInfoPath+"["+i+"]/recdt", sRecDate+sRecTime+"00");
- // model.setValue(xStmtInfoPath+"["+i+"]/check", "true" );
- // }
- //}
- }
- grd_stmtinfo.refresh();
- }
- /**
- * @group :
- * @ver : 2007.06.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록 저장
- * @param : pFlag : TempSave : 임시저장, CertSave : 인증저장
- * @return :
- * @---------------------------------------------------
- */
- function fSaveCareRec(pFlag){
- var sAttrEssnYN = ""; // 선택 : C, 필수 : E
- var sAttrinfo1 = "";
- var sArrtCnt = 0;
- var sRecInfoHeader = "stmtspec▦attrinfo▦status▦origincd▦stmtcd▦dnarflag▦recoriginflag▦recdtflag▦recdt▦"
- +"pid▦indd▦cretno▦instcd▦ioflag▦orddeptcd▦recflag▦reclnkkey▦diagstmtcd▦orddd▦dnarnm▦usernm▦deptflagnm▩"; // 저장 정보
- var sRecInfo = ""; // 저장 정보
- var sStmtInfo = ""; // 완성된 진술문 정보
-
- var sAttrInptYN = "N";
- var sSaveData = "";
- sRecDateFlag = model.getValue(xCondPath+"/recdateflag"); // (A : 자동, U : 지정)
- var sRecDate = "";
- var sStmtCnts = "";
- var sSrchToolStatus = "T";//타입2에서 저장한것을 구분
- var sGrupCD = "";
- var sDNARFlag = "";
- var sDiagStmtCd = "";
- var sDNARNm ="";
- var sDTAllAppYN = "N";
-
- if(sRecDateFlag == "U"){
- //기록건별 시간적용으로 변경 됨에 따른 추가 20091218 김홍점
- // var rtnMsg = messageBox("적용하지 않은 지정 기록시간이 존재합니다.\n 저장할 모든 기록을 지정한 시간으로 ","Q009"); //Q009=적용 하시겠습니까?
- // if ( rtnMsg != 6 ){
- // sRecDate = "";
- // return;
- // }
- //
- // sDTAllAppYN = "Y";
- sRecDate = model.getValue(xCondPath+"/recdd")+model.getValue(xCondPath+"/rectm") + "00";
- if(isValidDateTime(sRecDate,"YYYYMMDDhhmmss")== false){
- messageBox("기록 시간이 유효하지","E007");
- return;
- }
-
- } else {
- sRecDate = getCurrentDate() + getCurrentTime();
- }
- if(sPid == ""){
- messageBox("환자를 먼저","C002");
- return;
- }
-
- model.removenode("/root/send");
-
- sGrupCD = model.getValue(xCondPath+"/grupcd");
- for(var iRow=grd_stmtinfo.fixedrows; iRow<=grd_stmtinfo.rows-grd_stmtinfo.fixedrows; iRow++){
- if(model.getValue(xStmtInfoPath+"["+iRow+"]/check") == "true"){
- sAttrEssnYN = model.getValue(xStmtInfoPath+"["+iRow+"]/attressnyn");
- // if(sGrupCD == ""){
- // sSrchToolStatus = "J"; // 처방
- // }
- if(sAttrEssnYN == "E" && fExistAttrInput(xStmtInfoPath+"["+iRow+"]") == "N"){
- sStmtCnts = model.getValue(xStmtInfoPath+"["+iRow+"]/stmtcnts");
- messageBox(sStmtCnts+" 진술문은 속성이","I003");
- return;
- }
- sDNARNm = "";
- sStmtInfo = fMakeStmt(xStmtInfoPath+"["+iRow+"]");
- sDNARFlag = model.getValue(xStmtInfoPath+"["+iRow+"]/dnarflag");
- sDiagStmtCd = model.getValue(xStmtInfoPath+"["+iRow+"]/diagstmtcd");
- if ( !isNull(sDiagStmtCd)){
- sDNARNm = model.getValue("/root/init/dnarflag/itemset[itemcd = '"+sDNARFlag+"']/itemnm");
- }
- sRecInfo += getArrayData(sStmtInfo,0,0) +"▦" // 진술문장
- + getArrayData(sStmtInfo,0,1) + "▦" // 속성정보
- + "I▦" // 상태
- + sGrupCD + "▦" // 출처코드
- + model.getValue(xStmtInfoPath+"["+iRow+"]/stmtcd")+"▦" // 진술문코드
- + model.getValue(xStmtInfoPath+"["+iRow+"]/dnarflag") + "▦" // dnar 구분
- + sSrchToolStatus +"▦" // 기록 출처 구분
- + ( isNull(model.getValue(xStmtInfoPath+"["+iRow+"]/recdt")) || sDTAllAppYN =="Y" ? sRecDateFlag
- : model.getValue(xStmtInfoPath+"["+iRow+"]/recdtflag") ) + "▦" // 기록시간 구분
- + ( isNull(model.getValue(xStmtInfoPath+"["+iRow+"]/recdt")) || sDTAllAppYN =="Y" ? sRecDate
- : model.getValue(xStmtInfoPath+"["+iRow+"]/recdt") ) + "▦" // 기록시간 구분
- // + sRecDate+"▦" // 기록시간
- + sPid+"▦" // 환자번호
- + sIndd+"▦" // 입원일자
- + sCretNo+"▦" // 환자 일자별 일련번호
- + sInstcd+"▦" // 기관코드
- + sIOFlag+"▦" // 입원/외래 구분
- + sOrdDeptCd+"▦" // 진료과코드
- + sRecFlag+"▦" // 기록구분
- + sRecLnkKey+"▦" // 기록연계키
- + model.getValue(xStmtInfoPath+"["+iRow+"]/diagstmtcd")+"▦" // 간호진단
- + sOrdDD +"▦"
- + ( isNull(sDNARNm) ? "" : sDNARNm) +"▦" // dnar 구분
- + getUserName() +"▦" // 작성자
- + (cmb_deptflag.label =="병동" ? "" : "["+cmb_deptflag.label+"]") + "▩"; // 용도
-
- }
- }
- if(sRecInfo == ""){
- messageBox("선택된 진술문이","I004");
- return;
- }
- model.makeValue("/root/send/saveData", sRecInfoHeader+sRecInfo);
-
- // 조회조건
- var sSrchHeader = "pid▦indd▦orddd▦cretno▦ioflag▦fromdd▦todd▦dnarflag▦sortseq▦recflag▦reclnkkey▦carediagflag▦type2▩";
- var sSrchData = sPid+"▦"
- +sIndd+"▦"
- +sOrdDD+"▦"
- +sCretNo+"▦"
- +sIOFlag+"▦"
- +model.getValue(xCondPath+"/fromdd")+"▦"
- +model.getValue(xCondPath+"/todd")+"▦"
- +model.getValue(xCondPath+"/dnarflag")+"▦"
- +model.getValue(xCondPath+"/sortseq")+"▦"
- +sRecFlag+"▦"
- +sRecLnkKey+"▦"
- +model.getValue(xCondPath+"/carediagflag")+"▦"
- +"Y▩";
- model.makeValue("/root/send/srchinfo",sSrchHeader+sSrchData );
- model.removeNode("/root/main/signSaveData");
- model.makeNode("/root/main/signSaveData");
- setCSVToNode("/root/main/signSaveData", sRecInfoHeader+sRecInfo, "saveDataList");
- //인증저장
- var msg = "";
-
- if( !isNull(sTextAutoSave) ){
- msg = 6;
- }else{
- msg = messageBox( '[ ' + sHngNm + ' ] 간호일지 Type || 기록내역의 인증저장을', 'Q004');//실행 하시겠습니까? yes=6, no=7
- }
-
- if(Number(msg) == 6){//예
-
- if (!fSign()) return;
-
- activateMyWindow();
-
- if(submit("TXMNR03401")){
- fViewSign();
- gSignRecYN = "Y";
- fSrchCareRec("N");
- // fDeSelect();
- // model.toggle("recinfo");
- // fSettingRec();
- }
-
- }else {
- return;
- }
-
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.06.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 필수 입력 진술문 내의 속성이 모두 입력되었는지 여부
- * @param : pPath : 속성 path
- * @return :
- * @---------------------------------------------------
- */
- function fExistAttrInput(pPath){
- var sAttrCnt = model.getValue(pPath+"/attrcnt");
- var sStmtCD = model.getValue(pPath+"/stmtcd");
- //--------(20100622:경북대)
- //if(sStmtCD == "00000001" || sStmtCD == "00000002" || sStmtCD == "00000003"){
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){
- //--------(20100622:경북대)
- sAttrCnt--;
- }
- for(var iAttrRow=1; iAttrRow <= sAttrCnt; iAttrRow++){
- if(model.getValue(pPath+"/attrval"+iAttrRow) == ""){
- return "N";
- }
- }
- return "Y";
- }
- /**
- * @group :
- * @ver : 2007.06.15
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 입력받은 속성정보를 가지고 완성된 진술문장을 만든다.
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMakeStmt(pStmtPath){
- var sStmtInfo = model.getValue(pStmtPath+"/stmtcnts"); // 실제 진술문
- var sAttrInfo1 = model.getValue(pStmtPath+"/attrinfo1");
- var sAttrInfo2 = model.getValue(pStmtPath+"/attrinfo2");
- var sAttrCnt = model.getValue(pStmtPath+"/attrcnt");
- var sStmtCnts = ""; // 완성된 문장
- var sAttrInfo = ""; // 기록을 원하는 속성명
- var sAttrSeq = 0; // 속성 위치
- var sAttrCd = ""; // 속성코드
- var sAttrNM = ""; // 속성명 (combo)
- var sAttrFlag = ""; // 속성 구분
- var sAttrVal = ""; // 입력된 속성명
- var sUnitNM = ""; // 단위명
- var sPlNumChoiYN = ""; // 속성 멀티 입력 여부
- var sStmtCd = ""; // 진술문 코드
- var sTmpAttrNM = ""; // 속성을 제외한 기호
-
- var sAttrNmSep = "";
- if(sAttrCnt > 0){
- for( var idx = 0 ; idx < sAttrCnt ; idx++ ){
- sAttrSeq = idx + 1;
- sAttrVal = model.getValue(pStmtPath+"/attrval"+sAttrSeq);
- sAttrCd = model.getValue(pStmtPath+"/attrcd"+sAttrSeq); // 속성 성격을 찾기 위해 사용 (combo인지, input 상자인지)
- sAttrFlag = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCd+"']/attrflag");
- if(sAttrFlag == "C" || sAttrFlag == "A"){ // C : 코드속성, A : 사정도구 -> 입력도구 : combo
- sPlNumChoiYN = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCd+"']/plnumchoiyn");
- if(sPlNumChoiYN == "Y"){ // 멀티 입력 여부
- sAttrInfo += sAttrVal+"⊙";
- sAttrNM = sAttrVal;
- }else{
- sAttrNM = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrVal+"']/attrnm");
- if(sAttrNM != ""){
- sAttrInfo += sAttrNM+"⊙";
- }else if(sAttrVal != "" && sAttrNM == ""){
- sAttrInfo += sAttrVal+"⊙";
- sAttrNM = sAttrVal;
- }
- }
- }else if(sAttrFlag == "F"){ // F : 특수속성 -> 입력도구 : input
- sAttrInfo += sAttrVal+"⊙";
-
- sAttrNM = sAttrVal;
-
- }else if(sAttrFlag == "V" ){ // V : 수치속성 -> 입력도구 : input값 + 단위명
- sUnitNM = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCd+"']/unitnm");
- if(sAttrVal != ""){
- sAttrInfo += sAttrVal + sUnitNM +"⊙";
- sAttrNM = sAttrVal + sUnitNM;
- }else{
- sAttrInfo += "⊙";
- sAttrNM = "";
- }
- }
-
- sAttrInfo2 = sAttrInfo2.setReplaceWord("@"+idx, sAttrNM);
-
- }
- }else{
- sAttrInfo2 = model.getValue(pStmtPath+"/stmtcnts");
- }
- return sAttrInfo2+"▦"+sAttrInfo+"▩";
- }
-
- function fMakeStmt_old(pStmtPath){
- var sStmtInfo = model.getValue(pStmtPath+"/stmtcnts").split(" "); // 실제 진술문
- var sAttrInfo1 = model.getValue(pStmtPath+"/attrinfo1").split("⊙");
- var sAttrInfo2 = model.getValue(pStmtPath+"/attrinfo2").split(" ");
- var sStmtCnts = ""; // 완성된 문장
- var sAttrInfo = ""; // 기록을 원하는 속성명
- var sAttrSeq = 0; // 속성 위치
- var sAttrCd = ""; // 속성코드
- var sAttrNM = ""; // 속성명 (combo)
- var sAttrFlag = ""; // 속성 구분
- var sAttrVal = ""; // 입력된 속성명
- var sUnitNM = ""; // 단위명
- var sPlNumChoiYN = ""; // 속성 멀티 입력 여부
- var sStmtCd = ""; // 진술문 코드
- var sTmpAttrNM = ""; // 속성을 제외한 기호
-
- var sAttrNmSep = "";
- if(sAttrInfo2.length > 1){
- for(var i=0; i<sStmtInfo.length; i++){
- sStmtCd = model.getValue(pStmtPath+"/stmtcd");
- if( !isNull(sStmtInfo[i]) && !isNull(sAttrInfo2[i]) && sStmtInfo[i] == sAttrInfo2[i]){
- //------------(20100622:경북대)
- //if(sStmtCd == "00000001" || sStmtCd == "00000002" || sStmtCd == "00000003"){ // 처방의 경우
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){ // 처방의 경우
- //------------(20100622:경북대)
- if(i < sStmtInfo.length-2){
- sAttrInfo += sStmtInfo[i] + " ";
- }else{
- sAttrInfo += sStmtInfo[i] +"⊙";
- }
- }
- sStmtCnts += sStmtInfo[i]+" "; // 속성이 아닌 경우
- // }else if( !isNull(sStmtInfo[i]) && !isNull(sAttrInfo2[i]) && sStmtInfo[i] != sAttrInfo2[i]){
- }else{
-
- //---------(20100622:경북대)
- //if(sStmtCd == "00000001" || sStmtCd == "00000002" || sStmtCd == "00000003"){ // 처방의 경우
- if(sStmtCD == stmtcd1 || sStmtCD == stmtcd2 || sStmtCD == stmtcd3){ // 처방의 경우
- //---------(20100622:경북대)
- sAttrSeq = (!isNull(sAttrInfo2[i]) && (sAttrInfo2[i].substr(1,1)).isNumber()? eval(sAttrInfo2[i].substr(1,1)) : 0);
- }else{
- sAttrSeq = (!isNull(sAttrInfo2[i]) && (sAttrInfo2[i].substr(1,1)).isNumber() ? eval(sAttrInfo2[i].substr(1,1))+1 : 0);
- }
- sAttrCd = model.getValue(pStmtPath+"/attrcd"+sAttrSeq); // 속성 성격을 찾기 위해 사용 (combo인지, input 상자인지)
- sAttrFlag = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCd+"']/attrflag");
- sAttrVal = model.getValue(pStmtPath+"/attrval"+sAttrSeq);
- //sTmpAttrNM = sStmtInfo[i].replace(model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCd+"']/attrnm"),"");
- if(sAttrFlag == "C" || sAttrFlag == "A"){ // C : 코드속성, A : 사정도구 -> 입력도구 : combo
- sPlNumChoiYN = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCd+"']/plnumchoiyn");
- if(sPlNumChoiYN == "Y"){ // 멀티 입력 여부
- if(sAttrVal != "") sStmtCnts += sAttrVal+sTmpAttrNM+" ";
- sAttrInfo += sAttrVal+"⊙";
- }else{
- sAttrNM = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrVal+"']/attrnm");
- if(sAttrNM != ""){
- sStmtCnts += sAttrNM+sTmpAttrNM+" ";
- sAttrInfo += sAttrNM+"⊙";
- }else if(sAttrVal != "" && sAttrNM == ""){
- sStmtCnts += sAttrVal+sTmpAttrNM+" ";
- sAttrInfo += sAttrVal+"⊙";
- }
- }
- }else if(sAttrFlag == "F"){ // F : 특수속성 -> 입력도구 : input
- if(sAttrVal != "") sStmtCnts += sAttrVal +sTmpAttrNM+ " ";
- sAttrInfo += sAttrVal+"⊙";
- }else if(sAttrFlag == "V" ){ // V : 수치속성 -> 입력도구 : input값 + 단위명
- sUnitNM = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCd+"']/unitnm");
- if(sAttrVal != ""){
- sStmtCnts += sAttrVal + sUnitNM +sTmpAttrNM+ " ";
- sAttrInfo += sAttrVal + sUnitNM +"⊙";
- }else{
- sAttrInfo += "⊙";
- }
- }
- }
- }
- }else{
- sStmtCnts = model.getValue(pStmtPath+"/stmtcnts");
- }
- return sStmtCnts+"▦"+sAttrInfo+"▩";
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 인증 기록 설정
- * @param : pFlag ( setinfo : set, stmtinfo : 진술문 검색)
- * @return :
- * @---------------------------------------------------
- */
- function fSettingCertImg(pFlag){
- var sInterpRecYN = ""; // 기록삽입여부
- var sCertSelYN = ""; // 인증선택여부
- var sCertKey = "";
- var sImagePath = "../../../emr/commonweb/images";
- switch(pFlag){
- case "S" : // 전체선택
- for(var iRow=grd_carerecspec.fixedrows; iRow<=grd_carerecspec.rows-grd_carerecspec.fixedrows; iRow++){
- if(model.getValue(xNursingRecordListPath+"["+iRow+"]/fstrgstrid") != getUserId()){
- continue;
- }
- sInterpRecYN = model.getValue(xNursingRecordListPath+"["+iRow+"]/interprecyn");
- sCertSelYN = model.getValue(xNursingRecordListPath+"["+iRow+"]/certselyn");
- sCertKey = model.getValue(xNursingRecordListPath+"["+iRow+"]/certkey");
- if(sCertKey == "" && sCertSelYN == "N"){
- if(sInterpRecYN == "N"){
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_LockRequest.gif";
- }else{
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_LockRequest_add.gif";
- }
- model.setValue(xNursingRecordListPath+"["+iRow+"]/certselyn","Y");
- }
- }
- break;
- case "C" : // 전체취소
- for(var iRow=grd_carerecspec.fixedrows; iRow<=grd_carerecspec.rows-grd_carerecspec.fixedrows; iRow++){
- if(model.getValue(xNursingRecordListPath+"["+iRow+"]/fstrgstrid") != getUserId()){
- continue;
- }
- sInterpRecYN = model.getValue(xNursingRecordListPath+"["+iRow+"]/interprecyn");
- sCertKey = model.getValue(xNursingRecordListPath+"["+iRow+"]/certkey");
- sCertSelYN = model.getValue(xNursingRecordListPath+"["+iRow+"]/certselyn");
- if(sCertKey == "" && sCertSelYN == "Y"){
- if(sInterpRecYN == "N"){
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_unLock.gif";
- }else{
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_unLock_add.gif";
- }
- model.setValue(xNursingRecordListPath+"["+iRow+"]/certselyn","N");
- }
- }
- break;
- case "R" : // row별로 선택시
- var iRow = grd_carerecspec.row;
- var iCol = grd_carerecspec.col;
- if(iCol != 4) return;
- if(model.getValue(xNursingRecordListPath+"["+iRow+"]/fstrgstrid") != getUserId()){
- messageBox("다른 사람의 기록은 인증처리","E001");
- return;
- }
- sInterpRecYN = model.getValue(xNursingRecordListPath+"["+iRow+"]/interprecyn");
- sCertKey = model.getValue(xNursingRecordListPath+"["+iRow+"]/certkey");
- sCertSelYN = model.getValue(xNursingRecordListPath+"["+iRow+"]/certselyn");
- if(sCertKey == "" && sCertSelYN == "Y"){
- if(sInterpRecYN == "N"){
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_unLock.gif";
- }else{
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_unLock_add.gif";
- }
- model.setValue(xNursingRecordListPath+"["+iRow+"]/certselyn","N");
- }else if(sCertKey == "" && sCertSelYN == "N"){
- if(sInterpRecYN == "N"){
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_LockRequest.gif";
- }else{
- grd_carerecspec.cellstyle("background-image",iRow,4)=sImagePath+"/btn_LockRequest_add.gif";
- }
- model.setValue(xNursingRecordListPath+"["+iRow+"]/certselyn","Y");
- }
- break;
- }
- }
- /**
- * @group :
- * @ver : 2007.06.16
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 팝업메뉴 SETTING
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingPopUpMenu(){
- if(event.button == 3){
- if(grd_carerecspec.isCell(event.target) && grd_carerecspec.mouseRow >= grd_carerecspec.fixedrows){
- var iRow = grd_carerecspec.row;
- if(model.getValue(xNursingRecordListPath+"["+iRow+"]/certkey") == ""){
- window.setPopupMenu(true, "/root/temp/popmenu/nursrec_befcret/menu", "name", "func", false);
- }else{
- window.setPopupMenu(true, "/root/temp/popmenu/nursrec_aftcret/menu", "name", "func", false);
- }
- }else{
- window.setPopupMenu(false);
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.06.16
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 다중 입력 창의 경우 팝업 호출
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCallAttrPopUp(){
- var iCol = grd_stmtinfo.col;
- var iRow = grd_stmtinfo.row;
-
- if(iCol > gStndColCnt && (iCol-gStndColCnt)%3 == 2){
- var iAttrNo = (iCol-gStndColCnt+1)/3;//icol은 갯수가 아닌 index이므로 +1 해준다.
- var sRtn_Msg = "";
- var sAttrInfo = "";
- var sAttrCD = model.getValue(xStmtInfoPath+"["+iRow+"]/attrcd"+iAttrNo);
- var sYN = model.getValue(xSrchedAttrInfoPath+"[attrcd='"+sAttrCD+"']/plnumchoiyn");
- if ( sYN != "Y" ){
- return;
- }
- setParameter("SPMNR03000_Param",sAttrCD);
- modal("SPMNR03000");
- setParameter("SPMNR03000_Param","");
- sRtn_Msg = getParameter("SPMNR03000_Return");
-
- if(sRtn_Msg == "" ) return;
- sAttrInfo = sRtn_Msg.split("▦");
- model.setValue(xStmtInfoPath+"["+iRow+"]/attrval"+iAttrNo,sAttrInfo[0]);
- model.setValue(xStmtInfoPath+"["+iRow+"]/attrvalcd"+iAttrNo,sAttrInfo[1]);
- model.setValue(xStmtInfoPath+"["+iRow+"]/check","true");
-
- if( model.getValue(xStmtInfoPath+"["+iRow+"]/check") == "true" ){
- grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#ffff88";
- // grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }else{
- grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }
-
- grd_stmtinfo.refresh();
- }
- }
- /**
- * @group :
- * @ver : 2007.06.18
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 선택시 선택 버튼 체크 넣기/풀기
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fClickedGridRow(){
- var iRow = grd_stmtinfo.row;
- var iCol = grd_stmtinfo.col;//col은 0부터 시작하므로 15번째 컬럼은 14가 됨.
- var sAttrInfo = model.getValue(xStmtInfoPath+"["+iRow+"]/attrinfo1").split("⊙");
- if ( iRow > 0 && iRow <= grd_stmtinfo.rows - grd_stmtinfo.fixedRows ){
- //if(iCol < gStndColCnt){
- if(iCol <= grd_stmtinfo.colRef("check")){
- //시간적용의 추가로 인하여 체크박스만 선택했을때 자동 체크
- // if(iCol == 0 || iCol == colRef("check")) return;
-
- // if(model.getValue(xStmtInfoPath+"["+iRow+"]/check") == "true"){
- // model.setValue(xStmtInfoPath+"["+iRow+"]/check","false");
- // }else{
- // model.setValue(xStmtInfoPath+"["+iRow+"]/check","true");
- // }
- if( model.getValue(xStmtInfoPath+"["+iRow+"]/check") == "true" ){
- grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#ffff88";
- // grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }else{
- grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }
-
- }else if(iCol >= gStndColCnt && (iCol-gStndColCnt)%3 == 2 ){
- fCallAttrPopUp();
- }
- }
- grd_stmtinfo.refresh();
- }
- /**
- * @group :
- * @ver : 2007.07.18
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드의 값이 변경되면 선택버튼 체크 넣기
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChangedGridRow(){
- var iRow = grd_stmtinfo.row;
- var iCol = grd_stmtinfo.col;
- if(iCol >= gStndColCnt && (iCol-gStndColCnt)%3 == 1 ){
- if(model.getValue(xStmtInfoPath+"["+iRow+"]/check") == "true"){
- //model.setValue(xStmtInfoPath+"["+iRow+"]/check","false");
- }else{
- model.setValue(xStmtInfoPath+"["+iRow+"]/check","true");
- }
- if( model.getValue(xStmtInfoPath+"["+iRow+"]/check") == "true" ){
- grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#ffff88";
- // grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }else{
- grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }
- }
- grd_stmtinfo.refresh();
- }
- /**
- * @group :
- * @ver : 2007.06.18
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 간호기록 수정
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fUpdtNursingRecord(){
- var iRow = grd_carerecspec.row;
- if(iRow < 1) return;
-
- if(model.getValue(xNursingRecordListPath+"["+iRow+"]/fstrgstrid") != getUserId()){
- messageBox("다른 사람의 기록은 수정","E001");
- return;
- }
-
- if(model.getValue(xNursingRecordListPath+"["+iRow+"]/dnarflag") == "2N"){
- messageBox( "간호진단은 수정할 수 없습니다. 삭제 후에 신규 등록","I008");
- return;
- }
-
- var dnarflag = model.getValue(xNursingRecordListPath+"["+iRow+"]/dnarflag");
-
- var sParam_Header = "recdd▦rectm▦dnarflag▦stmtspec▦fstrgstrnm▦certkey▦recverno▦stmtcd▦origincd▦recoriginflag▦carerecno▦dnarnm▦deptflagnm▦pid▦indd▦orddd▦cretno▦instcd▦ioflag▦orddeptcd▦orddrid▦hngnm▦homeyn▩";
- var sParam_Data = model.getValue(xNursingRecordListPath+"["+iRow+"]/recdd")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/rectm")+"▦"
- + dnarflag+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/stmtspec")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/fstrgstrnm")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/signno")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/recverno")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/stmtcd")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/origincd")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/recoriginflag")+"▦"
- + model.getValue(xNursingRecordListPath+"["+iRow+"]/carerecno")+"▦"
- + model.getValue("/root/init/dnarflag/itemset[itemcd = '"+dnarflag+"']/itemnm")+"▦"
- + (cmb_deptflag.label =="병동" ? "" : "["+cmb_deptflag.label+"]")+"▦"
- + sPid + "▦"
- + sIndd + "▦"
- + sOrdDD + "▦"
- + sCretNo + "▦"
- + sInstcd + "▦"
- + sIOFlag + "▦"
- + sOrdDeptCd + "▦"
- + sOrdDrId + "▦"
- + sHngNm + "▦"
- + ( DutPlceCD=="001" ? "Y" : "") +"▩";//가정간호인지 아닌지의 여부를 판단하기 위해추가.. 20090401 가정간호가 상단정보를 올리면서 상단정보의 진료일정을 읽지 못하도록 막아야함.20090403 김홍점
- setParameter("SMMNR02800_Param",sParam_Header+sParam_Data);
- modal("SMMNR02800");
- if(getParameter("SMMNR02800_ReturnFlag") == "Y"){
- fSrchCareRec(); // 기록조회
- }
- if(getParameter("SMMNR02800_SignRecYN") == "Y"){
- gSignRecYN = "Y";
- }
-
- }
- /**
- * @group :
- * @ver : 2007.05.14
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록저장된 데이타중 기록일시 일괄 수정
- * @param : status : T time 수정
- * @return :
- * @---------------------------------------------------
- */
- function fStmtListRecdt(){
-
-
- if(sPid == ""){
- messageBox("환자를 먼저","C002");
- return;
- }
- modal("SMMNR01300");
- var sRtnMsg = getParameter("SMMNR01300_Return");
- if(sRtnMsg == "") return;
- var sTmpInfo = sRtnMsg.split("▩");
- var sRecDTInfo = sTmpInfo[1].split("▦");
- var sSaveHeader = "status▦recdt▦prerecdd▦"
- +"pid▦indd▦cretno▦instcd▦ioflag▦orddd▦carerecno▩"; // 저장 정보
- var sSaveData = "";
- var sStmtCDList = "";
- var sDNARFlagList = "";
- var sCareRecNoList = "";
- var iSignRow = 0;
- var sDNARFlag = "";
- var sDNARNm = "";
- var sNotSave ="";
-
- var selectRows = grd_carerecspec.selectedRows;
-
- model.removeNode("/root/main/signSaveData");
- model.makeNode(xSignPath);
-
- for( var iRow = 0; iRow < selectRows ; iRow++ ){
- // if(grd_carerecspec.isSelected(iRow) == true){
- if(model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/fstrgstrid") != getUserId()){
- sNotSave += "["+model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/stmtspec")+"]\n";
- continue;
- } else {
- sSaveData += "T▦"
- + sRecDTInfo[1] +"▦"
- + model.getValue(xNursingRecordListPath+"["+ grd_carerecspec.selectedRow(iRow) +"]/recdd") +"▦"
- + sPid +"▦"
- + sIndd +"▦"
- + sCretNo +"▦"
- + sInstcd +"▦"
- + sIOFlag +"▦"
- + sOrdDD +"▦"
- + model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/carerecno") +"▩";
-
-
- iSignRow++;
-
- model.makeValue(xSignPath + "[" + iSignRow + "]/stmtspec", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/stmtspec"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/status", "U");
- model.makeValue(xSignPath + "[" + iSignRow + "]/origincd", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/origincd"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/stmtcd", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/stmtcd"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/dnarflag", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/dnarflag"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/recoriginflag", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/recoriginflag"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/recdtflag", sRecDTInfo[0]);
- model.makeValue(xSignPath + "[" + iSignRow + "]/recdt", sRecDTInfo[1]);
- model.makeValue(xSignPath + "[" + iSignRow + "]/pid", sPid);
- model.makeValue(xSignPath + "[" + iSignRow + "]/indd", sIndd);
- model.makeValue(xSignPath + "[" + iSignRow + "]/cretno", sCretNo);
- model.makeValue(xSignPath + "[" + iSignRow + "]/instcd", sInstcd);
- model.makeValue(xSignPath + "[" + iSignRow + "]/ioflag", sIOFlag);
- model.makeValue(xSignPath + "[" + iSignRow + "]/orddeptcd", sOrdDeptCd);
- model.makeValue(xSignPath + "[" + iSignRow + "]/recflag", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/recflag"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/reclnkkey", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/reclnkkey"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/diagstmtcd", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/diagstmtcd"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/orddd", sOrdDD);
-
- model.makeValue(xSignPath + "[" + iSignRow + "]/dnarnm", grd_carerecspec.labelMatrix(grd_carerecspec.selectedRow(iRow),grd_carerecspec.colRef("dnar")));
-
- model.makeValue(xSignPath + "[" + iSignRow + "]/usernm", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/fstrgstrnm"));
- model.makeValue(xSignPath + "[" + iSignRow + "]/deptflagnm", (cmb_deptflag.label =="병동" ? "" : "["+cmb_deptflag.label+"]"));
-
- }
- // }
- }
- // 조회 데이터
- var sSrchHeader = "pid▦indd▦orddd▦cretno▦ioflag▦fromdd▦todd▦dnarflag▦sortseq▦recflag▦reclnkkey▦carediagflag▦type2▩";
- var sSrchData = sPid+"▦"
- + sIndd+"▦"
- + sOrdDD +"▦"
- + sCretNo+"▦"
- + sIOFlag+"▦"
- + model.getValue(xCondPath+"/fromdd")+"▦"
- + model.getValue(xCondPath+"/todd")+"▦"
- + model.getValue(xCondPath+"/dnarflag")+"▦"
- + model.getValue(xCondPath+"/sortseq")+"▦"
- + sRecFlag+"▦"
- + sRecLnkKey+"▦"
- + model.getValue(xCondPath+"/carediagflag")+"▦"
- +"Y▩";
- model.removenode("/root/send");
- model.makeValue("/root/send/saveData", sSaveHeader+sSaveData);
- model.makeValue("/root/send/srchinfo", sSrchHeader+sSrchData);
- //인증저장
- var msg = messageBox( '[ ' + sHngNm + ' ] 간호일지 Type || 기록내역의 인증저장을', 'Q004');//실행 하시겠습니까? yes=6, no=7
-
- if(Number(msg) == 6 && sSaveData != ""){//예
-
- if (!fSign()) return;
- activateMyWindow();
-
- if(submit("TXMNR03402")){
- fViewSign();
- gSignRecYN = "Y";
- //deleteSelectedRows(grd_carerecspec,"false");
- if ( sNotSave != ""){
- messageBox("다른 사람이 기록한 "+sNotSave+" 수정","E001");
- }
- fSettingRec();
-
- }
-
- }else {
- if ( sNotSave != ""){
- messageBox("다른 사람이 기록한 "+sNotSave+" 수정","E001");
- }
- return;
- }
-
- }
- /**
- * @group :
- * @ver : 2007.06.18
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 간호기록 삭제
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDelNursingRecord(){
- var selectRows = grd_carerecspec.selectedRows;
- var sNotSave = "";
- var sSaveData="";
- var sDiagStmtCd = "";
- var sDNARNm ="";
-
- if(selectRows < 1) return;
-
- if(sPid == ""){
- messageBox("환자를 먼저","C002");
- return;
- }
- // 저장데이터
- var sSaveHeader = "status▦carerecno▦pid▦indd▦orddd▦cretno▦instcd▦recdt▦certkey▩";
- for( var iRow = 0; iRow < selectRows ; iRow++ ){
- if(model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/fstrgstrid") != getUserId()){
- sNotSave += "["+model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/stmtspec")+"]\n";
- continue;
- } else {
- sSaveData += "D▦"
- + model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/carerecno")+"▦"
- + sPid+"▦"
- + sIndd +"▦"
- + sOrdDD +"▦"
- + sCretNo +"▦"
- + sInstcd +"▦"
- + (model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/recdd")
- + model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/rectm")+"00") +"▦"
- + model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/certkey")+"▩";
-
- model.removeNode(xSignPath);
- model.makeNode(xSignPath);
- model.makeValue(xSignPath + "/stmtspec", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/stmtspec"));
- model.makeValue(xSignPath + "/status", "D");
- model.makeValue(xSignPath + "/origincd", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/origincd"));
- model.makeValue(xSignPath + "/stmtcd", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/stmtcd"));
- model.makeValue(xSignPath + "/dnarflag", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/dnarflag"));
- model.makeValue(xSignPath + "/recoriginflag", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/recoriginflag"));
- model.makeValue(xSignPath + "/recdtflag", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/recdtflag"));
- model.makeValue(xSignPath + "/recdt", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/recdd")
- + model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/rectm")+"00" );
- model.makeValue(xSignPath + "/pid", sPid);
- model.makeValue(xSignPath + "/indd", sIndd);
- model.makeValue(xSignPath + "/cretno", sCretNo);
- model.makeValue(xSignPath + "/instcd", sInstcd);
- model.makeValue(xSignPath + "/ioflag", sIOFlag);
- model.makeValue(xSignPath + "/orddeptcd", sOrdDeptCd);
- model.makeValue(xSignPath + "/recflag", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/recflag"));
- model.makeValue(xSignPath + "/reclnkkey", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/reclnkkey"));
- model.makeValue(xSignPath + "/diagstmtcd", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/diagstmtcd"));
- model.makeValue(xSignPath + "/orddd", sOrdDD);
-
- model.makeValue(xSignPath + "/dnarnm", grd_carerecspec.labelMatrix(grd_carerecspec.selectedRow(iRow),grd_carerecspec.colRef("dnar")));
- model.makeValue(xSignPath + "/usernm", model.getValue(xNursingRecordListPath+"["+grd_carerecspec.selectedRow(iRow)+"]/fstrgstrnm"));
- model.makeValue(xSignPath + "/deptflagnm", (cmb_deptflag.label =="병동" ? "" : "["+cmb_deptflag.label+"]"));
- }
- }
-
- // 조회 데이터
- var sSrchHeader = "pid▦indd▦orddd▦cretno▦ioflag▦fromdd▦todd▦dnarflag▦sortseq▦recflag▦reclnkkey▦carediagflag▦type2▩";
- var sSrchData = sPid+"▦"
- + sIndd+"▦"
- + sOrdDD +"▦"
- + sCretNo+"▦"
- + sIOFlag+"▦"
- + model.getValue(xCondPath+"/fromdd")+"▦"
- + model.getValue(xCondPath+"/todd")+"▦"
- + model.getValue(xCondPath+"/dnarflag")+"▦"
- + model.getValue(xCondPath+"/sortseq")+"▦"
- + sRecFlag+"▦"
- + sRecLnkKey+"▦"
- + model.getValue(xCondPath+"/carediagflag")+"▦"
- +"Y▩";
- model.removenode("/root/send");
- model.makeValue("/root/send/saveData", sSaveHeader+sSaveData);
- model.makeValue("/root/send/srchinfo", sSrchHeader+sSrchData);
- //인증저장
- var msg = messageBox( '[ ' + sHngNm + ' ] 간호일지 Type || 기록내역의 인증저장을', 'Q004');//실행 하시겠습니까? yes=6, no=7
-
- if(Number(msg) == 6 && sSaveData != ""){//예
-
- if (!fSign()) return;
-
- activateMyWindow();
-
- if(submit("TXMNR03402")){
- fViewSign();
- gSignRecYN = "Y";
- //deleteSelectedRows(grd_carerecspec,"false");
- if ( sNotSave != ""){
- messageBox("다른 사람이 기록한 "+sNotSave+" 삭제","E001");
- }
- fSettingRec();
-
- }
-
- }else {
- if ( sNotSave != ""){
- messageBox("다른 사람이 기록한 "+sNotSave+" 삭제","E001");
- }
- return;
- }
- }
- /**
- * @group :
- * @ver : 2007.06.20
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서별 SET 조회 화면 호출
- * @param : "grupcd▦grupnm▦stmtcd▦stmtcnts▦attrinfo1▦attrinfo2▦attressnyn▦dnarflag▦attrcnt▦diagstmtcd▩";
- * @return :
- * @---------------------------------------------------
- */
- function fCallDeptSet(){
- setParameter("SPMNR03700_Param", getUserInfo("dutplcecd"));
- modal("SPMNR03700");
- if(swt_recinfo.selectedIndex == 1){
- return;
- }
- var sStmtInfo = getParameter("SPMNR03700_Return");
- var sStmtCnt = sStmtInfo.split("▩").length-1;
- var sMaxAttrCnt = model.getValue("/root/temp/maxattrcnt");
- var sAttrCnt = 0;
- var iStmtRow = 0;
- var sStndColCnt = gStndColCnt; // 기준 그리드 컬럼 개수
- if(sStmtCnt < 2) return;
- for(var iRow = 1; iRow < sStmtCnt; iRow++){
- sAttrCnt = getArrayData(sStmtInfo,iRow,8);
- if(sMaxAttrCnt < sAttrCnt){
- sMaxAttrCnt = sAttrCnt;
- }
- }
- sAttrCnt = eval(model.getValue("/root/temp/maxattrcnt"));
- model.setValue("/root/temp/maxattrcnt", sMaxAttrCnt);
- fAddGridColumn(sAttrCnt+1);
- for(var iRow = 1; iRow < sStmtCnt; iRow++){
- grd_stmtinfo.addRow(false);
- iStmtRow = grd_stmtinfo.rows - grd_stmtinfo.fixedrows;
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/check", "true");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupcd", getArrayData(sStmtInfo,iRow,0));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupnm", getArrayData(sStmtInfo,iRow,1));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcd", getArrayData(sStmtInfo,iRow,2));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcnts", getArrayData(sStmtInfo,iRow,3));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo1", getArrayData(sStmtInfo,iRow,4));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo2", getArrayData(sStmtInfo,iRow,5));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attressnyn", getArrayData(sStmtInfo,iRow,6));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/dnarflag", getArrayData(sStmtInfo,iRow,7));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrcnt", getArrayData(sStmtInfo,iRow,8));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/diagstmtcd", getArrayData(sStmtInfo,iRow,9));
- fSettingAttrInfo(iStmtRow);
-
- if( model.getValue(xStmtInfoPath+"["+iStmtRow+"]/check") == "true" ){
- grd_stmtinfo.rowstyle(iStmtRow,"data","background-color") = "#ffff88";
- // grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }else{
- grd_stmtinfo.rowstyle(iStmtRow,"data","background-color") = "#FFFFFF";
- }
- }
- grd_stmtinfo.refresh();
- grd_stmtinfo.resizeCells();
- }
- /**
- * @group :
- * @ver : 2007.06.20
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 컬럼 추가
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fAddGridColumn(pAttrRow){
- var sMaxAttrCnt = model.getValue("/root/temp/maxattrcnt");
- var sComboChoice = "";
- var sItemset = "";
- var sCmbID = "";
- var colName = "";
- var sStndColCnt = gStndColCnt; // 기준 그리드 컬럼 개수
- var sAttrInfo = ""; // 속성정보
- var sAttrCnt = 0; // 속성개수
- for(iAttrRow = pAttrRow; iAttrRow <= sMaxAttrCnt; iAttrRow++){
- grd_stmtinfo.addColumn("ref:attrcd"+iAttrRow+"; type:output;", "false");
- sCmbID = "grd_cmb"+CmbNo;
- CmbNo++;
- grd_stmtinfo.addColumn("ref:attrval"+iAttrRow+"; type:combo; editmode:input; id:"+sCmbID, "false");
- colName = eval(sCmbID);
- sComboChoice = colName.createChild("xforms:choices","");
- sItemset = sComboChoice.createChild("xforms:itemset", "nodeset:"+xSrchedAttrInfoPath+"[plnumchoiyn!='Y']");
- sItemset.createChild("xforms:label", "ref:attrnm");
- sItemset.createChild("xforms:value", "ref:attrcd");
- //icon_fill_pattern.gif
- grd_stmtinfo.addColumn("ref:attrvalcd"+iAttrRow+";", "false");
-
- //grd_stmtinfo.caption = grd_stmtinfo.caption+"^"+iAttrRow+"^속성정보^";
- grd_stmtinfo.caption = grd_stmtinfo.caption+"^^속성정보^";
-
- grd_stmtinfo.colhidden((sStndColCnt+0)+(3*(iAttrRow-1))) = true;
- grd_stmtinfo.colhidden((sStndColCnt+1)+(3*(iAttrRow-1))) = false;
- grd_stmtinfo.colhidden((sStndColCnt+2)+(3*(iAttrRow-1))) = false;
-
- grd_stmtinfo.colwidth((sStndColCnt+0)+(3*(iAttrRow-1))) = 0;
- grd_stmtinfo.colwidth((sStndColCnt+1)+(3*(iAttrRow-1))) = 135;
- grd_stmtinfo.colwidth((sStndColCnt+2)+(3*(iAttrRow-1))) = 15;
- grd_stmtinfo.mergecol((sStndColCnt+1)+(3*(iAttrRow-1))) = false;
- grd_stmtinfo.mergecol((sStndColCnt+2)+(3*(iAttrRow-1))) = false;
- }
- grd_stmtinfo.refresh();
- if((grd_stmtinfo.rows - grd_stmtinfo.fixedrows) < 1){
- model.removenodeset(xStmtInfoPath);
- }else{
- var sStmtCnt = grd_stmtinfo.rows - grd_stmtinfo.fixedrows;
- for(var iStmtRow = 1; iStmtRow <= sStmtCnt; iStmtRow++){
- sAttrCnt = eval(model.getValue(xStmtInfoPath+"["+iStmtRow+"]/attrcnt"));
- // 속성개수가 최대 속성 개수보다 적은 진술문의 추가 속성 입력창은 읽기전용으로 설정
- for(var iAttrRow = sAttrCnt; iAttrRow < sMaxAttrCnt; iAttrRow++){
- grd_stmtinfo.isreadonly(iStmtRow,(sStndColCnt+1)+(3*iAttrRow)) = true;
- grd_stmtinfo.isreadonly(iStmtRow,(sStndColCnt+2)+(3*iAttrRow)) = true;
- }
- }
- }
- grd_stmtinfo.refresh();
- }
- /**
- * @group :
- * @ver : 2007.04.24
- * @by : 이은영
- * khj Free Text 선택하여 그리드에 붙이도록 수정 20091218
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기록 저장
- * @param : Free Text 기록 선택 부분
- * @return :
- * @---------------------------------------------------
- */
- function fSelTextStmtInfo(){
- var sSelYN = "N";
- var sAttrinfo1 = "";
- var sArrtCnt = 0;
- // var sRecInfoHeader = "stmtspec▦attrinfo▦status▦origincd▦stmtcd▦dnarflag▦recoriginflag▦recdtflag▦recdt▦"
- // +"pid▦indd▦cretno▦instcd▦ioflag▦orddeptcd▦recflag▦reclnkkey▦diagstmtcd▦orddd▦dnarnm▦usernm▦deptflagnm▩"; // 저장 정보
- // var sStmtInfo = ""; // 저장 정보
- // var sAttrInptParamInfo = ""; // 속성창 입력 정보
- // var sAttrInptYN = "N";
- // var sSaveData = "";
- sRecDateFlag = model.getValue(xCondPath+"/recdateflag"); // (A : 자동, U : 지정)
- //var sRecDateFlag = "A"; // (A : 자동, U : 지정)
- var sRecDate = "";
- var sDNARFlag = ""; //DNAR 구분
- var sDNARNm = ""; //DNAR 구분
- var sStmtDiagCd = ""; // 진단코드
- var sStmtCnts = "";
- var sLnkStmt = ""; // 링크된 진술문
- var sGrupCD = ""; // 그룹코드
- var sStmtDiagInfo = "";
- // if(sRecDateFlag == "U"){
- // sRecDate = model.getValue(xCondPath+"/recdd")+model.getValue(xCondPath+"/rectm") + "00";
- // if(isValidDateTime(sRecDate,"YYYYMMDDhhmmss")== false){
- // messageBox("기록 시간이 유효하지","E007");
- // return;
- // }
- // } else {
- // sRecDate = getCurrentDate() + getCurrentTime();
- // }
-
- if(sPid == ""){
- messageBox("환자를 먼저","C002");
- return;
- }
- if( model.getValue("/root/main/cond/freetextdnarflag") == ""
- || model.getValue("/root/main/cond/freetextsrchcnts") == ""){
- messageBox("선택된 FreeText의 SNDAR이 선택되지 않았거나 저장할 데이터가","I004");
- return;
- }
-
- grd_stmtinfo.addRow(false);
- iStmtRow = grd_stmtinfo.rows - grd_stmtinfo.fixedrows;
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/check", "true");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupcd", model.getValue("/root/main/cond/grupcd"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/grupnm", "");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcd", "--------");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/stmtcnts", model.getValue("/root/main/cond/freetextsrchcnts"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo1", "");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrinfo2", "");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attressnyn", "");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/dnarflag", model.getValue("/root/main/cond/freetextdnarflag"));
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/attrcnt", "0");
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/diagstmtcd", "");
- if ( sRecDateFlag == "U" ){
- model.setValue(xStmtInfoPath+"["+iStmtRow+"]/recdt", ipt_recdd.value+ipt_rectm.value+"00");
- model.makeValue(xStmtInfoPath+"["+iStmtRow+"]/recdtflag", "U");
-
- }
- fSettingAttrInfo(iStmtRow);
-
- if( model.getValue(xStmtInfoPath+"["+iStmtRow+"]/check") == "true" ){
- grd_stmtinfo.rowstyle(iStmtRow,"data","background-color") = "#ffff88";
- // grd_stmtinfo.rowstyle(iRow,"data","background-color") = "#FFFFFF";
- }else{
- grd_stmtinfo.rowstyle(iStmtRow,"data","background-color") = "#FFFFFF";
- }
-
- grd_stmtinfo.bottomRow = iStmtRow;
- model.setValue("/root/main/cond/freetextsrchcnts","");
- model.setValue("/root/main/cond/freetextdnarflag","");
-
- model.refresh();
-
- /* sStmtInfo += model.getValue("/root/main/cond/freetextsrchcnts")+"▦"
- + "▦"
- + "I▦"
- + model.getValue("/root/main/cond/grupcd")+"▦"
- + "--------"+"▦"
- + model.getValue("/root/main/cond/freetextdnarflag")+"▦"
- + "T▦"
- + sRecDateFlag+"▦"
- + sRecDate+"▦"
- + sPid+"▦"
- + sIndd+"▦"
- + sCretNo+"▦"
- + sInstcd+"▦"
- + sIOFlag+"▦"
- + sOrdDeptCd+"▦"
- + sRecFlag+"▦"
- + sRecLnkKey+"▦"
- + "▦" // 간호진단
- + sOrdDD +"▦"
- + (model.getValue("/root/main/cond/freetextdnarflag") == "2N" ? "N" : "") +"▦" // dnar 구분
- + getUserName() +"▦" // 작성자
- + (cmb_deptflag.label =="병동" ? "" : "["+cmb_deptflag.label+"]") + "▩"; // 용도
-
- sSaveData = sStmtInfo;
-
- model.makeValue("/root/send/saveData", sRecInfoHeader+sSaveData);
- var sSrchHeader = "pid▦indd▦orddd▦cretno▦ioflag▦fromdd▦todd▦dnarflag▦sortseq▦recflag▦reclnkkey▦carediagflag▦type2▩";
- var sSrchData = sPid+"▦"
- +sIndd+"▦"
- +sOrdDD+"▦"
- +sCretNo+"▦"
- +sIOFlag+"▦"
- +model.getValue(xCondPath+"/fromdd")+"▦"
- +model.getValue(xCondPath+"/todd")+"▦"
- +model.getValue(xCondPath+"/dnarflag")+"▦"
- +model.getValue(xCondPath+"/sortseq")+"▦"
- +sRecFlag+"▦"
- +sRecLnkKey+"▦"
- +model.getValue(xCondPath+"/carediagflag")+"▦"
- +"Y▩";
- model.makeValue("/root/send/srchinfo",sSrchHeader+sSrchData );
-
- model.removeNode("/root/main/signSaveData");
- model.makeNode("/root/main/signSaveData");
- setCSVToNode("/root/main/signSaveData", sRecInfoHeader+sSaveData, "saveDataList");
-
- // model.removenodeset(xNursingRecInfoPath);
- model.removeNodeset("/root/main/recinfo");
-
- var msg = "";
- //인증저장
- if(sTextAutoSave != ""){
- msg = 6;
- }else{
- msg = messageBox( '[ ' + sHngNm + ' ] 간호일지 Type || 기록내역의 인증저장을', 'Q004');//실행 하시겠습니까? yes=6, no=7
- }
-
- if(Number(msg) == 6){//예
-
- if (!fSign()) return;
- if(submit("TXMNR00701", false)){
- fViewSign("/root/main/recinfo");
- gSignRecYN = "Y";
- if(getNodesetCount("/root/main/recinfo/nursingrecordlist")>0 ){
- model.makeNode(xNursingRecordListPath);
- // copyNodesetType(xNursingRecordListPath,xNursingRecInfoPath,"replace", model, model);
- copyNodeset("/root/main/nursingrecordinfo","/root/main/recinfo");
- grd_carerecspec.rebuild();
- }
-
- model.setValue("/root/main/cond/freetextsrchcnts", "");
- model.setValue("/root/main/cond/freetextdnarflag", "");
- textarea4.refresh();
-
- if(sRecDate == ""){
- sRecDate = getCurrentDate() + getCurrentTime(); // 현재시간
- }
- var iRecDDRow = grd_carerecspec.findRow(sRecDate.substr(0,8),1,17,false,true);
- var iRecTMRow = grd_carerecspec.findRow(sRecDate.substr(8,4),iRecDDRow,18,false,true);
- //grd_carerecspec.topRow = iRecTMRow;
- fDeSelect();
- model.toggle("recinfo");
- fSettingRec();
- sAutoProcFlag = "true";
- }
- }else {
- return;
- } */
-
- }
- /**
- * @group :
- * @ver : 2009.12.22
- * @by : khj
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자정보 조회
- * @param : 환자정보 조회 pPidFlag : P 등록번호 입력
- * @return :
- * @---------------------------------------------------
- */
- function fSrchPatInfo(pPidFlag){
- // if( isNull(model.getValue(xCondPath+"/srch_pid")) ){
- // messageBox("환자를 먼저","C002");
- // return;
- // }
- if ( isNull(pPidFlag) ){
- model.makeValue("/root/hidden/pidpopupinfo/checkfnexam", "1");
- model.makeValue("/root/hidden/pidpopupinfo/autoflag", "Y");
-
- model.makeValue("/root/hidden/pidpopupinfo/srchcond", '2');
-
- model.removeNodeset("/root/main/patinfo/patinfolist");
- model.makeNode("/root/main/patinfo/patinfolist");
- modal("SPPMC02500", "1","150", "150", "SPPMC02500", "/root/hidden/pidpopupinfo", "/root/send");
- model.resetInstanceNode("/root/source");
- //환자번호 copy
- var popupendflag = model.getValue("/root/main/popupendflag");
-
- if (popupendflag == "ok")
- {
- model.setValue(xCondPath+"/srch_pid", model.getValue("/root/main/patinfo/patinfolist/pid"));
- }else {
- return;
- }
-
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/pid",model.getValue(xCondPath+"/srch_pid"));
- model.makeValue("/root/send/workflag",DutPlceCD );
-
- model.removenode("/root/init/patinfo");
- model.setValue(xCondPath+"/pname", "");
- model.setValue(xCondPath+"/age","");
- model.setValue(xCondPath+"/pid","");
- sPid = ""; // 환자번호
- sIndd = ""; // 입원일자
- sOrdDD = ""; // 진료일자
- sCretNo = ""; // 환자 일자별 일련번호
- sInstcd = ""; // 기관코드
- sIOFlag = ""; // 입원/외래 구분
- sOrdDeptCd = ""; // 진료과코드
- sOrdDrId = ""; // 진료의사ID
- sHngNm = ""; //환자명
- sAge = ""; //환자나이
- sRecLnkKey = ""; // 기록연계키
- if(submit("TRMNR03404")){
- sIOFlag = model.getValue(xInitPatInfoPath+"/ioflag"); // 입원/외래 구분
- if ( isNull(sIOFlag)
- && ( DutPlceCD == "026" || DutPlceCD == "027" ) ){
-
- messageBox("환자정보가 존재하지 않습니다. ","I007");
- model.setFocus("ipt_srchpid");
- model.setValue(xCondPath+"/srch_pid", "");
- ipt_srchpid.refresh();
- return;
-
- }
- // if ( DutPlceCD == "027" && sIOFlag != "I" ){
- //
- // messageBox("[병동] 재원중인 환자가 아닙니다.","I007");
- // model.setValue(xCondPath+"/srch_pid", "");
- // model.setFocus("ipt_srchpid");
- // ipt_srchpid.refresh();
- // return;
- //
- // }
- //환자정보 세팅
- sPid = model.getValue(xInitPatInfoPath+"/pid");
- sHngNm = model.getValue(xInitPatInfoPath+"/hngnm");
- sAge = model.getValue(xInitPatInfoPath+"/age");
- sIOFlag = model.getValue(xInitPatInfoPath+"/ioflag"); // 입원/외래 구분
-
-
- if(sIOFlag == "I" || sIOFlag == "E" || sIOFlag == "D"){ // 입원
- sIndd = model.getValue(xInitPatInfoPath+"/indd"); // 진료일자
- sOrdDD = "-";
- }else if(sIOFlag == "O" || sIOFlag == "S"){ // 외래,건진 20090707 김홍점 김영림 itc 요청서에 의한 반영
- sOrdDD = model.getValue(xInitPatInfoPath+"/orddd"); // 진료일자
- sIndd = "-";
- }
-
- sCretNo = model.getValue(xInitPatInfoPath+"/cretno"); // 환자 일자별 일련번호
- sInstcd = getUserInfo("dutplceinstcd"); // 기관코드
- sOrdDeptCd = model.getValue(xInitPatInfoPath+"/orddeptcd"); // 진료과코드
- sOrdDrId = model.getValue(xInitPatInfoPath+"/medispclid"); // 진료의사ID
- sRecLnkKey = model.getValue(xInitPatInfoPath+"/reclnkkey"); //pid||','||indd||','||cretno||','||instcd
-
- model.setValue(xCondPath+"/pname", sHngNm);
- model.setValue(xCondPath+"/age",sAge);
- model.setValue(xCondPath+"/pid",sPid);
-
- model.refresh();
- }
- }
- function fcolwidth() {
- var cnt = 0;
- for ( var i = 0; i < grd_stmtinfo.cols; i++ ) {
- cnt =+ cnt + grd_stmtinfo.colWidth(i)
- }
- // alert( cnt);
- var wid = grd_stmtinfo.attribute("width");
- var allcnt = wid.substr(0,3);
-
- var checkcnt = allcnt - cnt;
- // alert(checkcnt);
- var stmtcnt = grd_stmtinfo.colWidth(grd_stmtinfo.colRef("stmtcnts"));
-
- if ( allcnt > (cnt+25) ) {
- if ( checkcnt > 300 ) {
- grd_stmtinfo.colWidth(grd_stmtinfo.colRef("stmtcnts")) = stmtcnt + 300 ;
- grd_stmtinfo.refresh();
- } else {
- grd_stmtinfo.colWidth(grd_stmtinfo.colRef("stmtcnts")) = stmtcnt + checkcnt - 25 ;
- grd_stmtinfo.refresh();
- }
- }
- }
- function fSetPatInfo() {
- var pid = "";
- var indd= "";
- var cretno="";
- var instcd = "";
- var orddd= "";
- var ordtype = "";
-
- var idx = cmb_pid.focusIndex + 1;
-
- if(idx < 1) {
- return;
- }
-
- //----------(20080913)
- var ioflag = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/inptcretno") ;
- var detstatus = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/detstatus") ;
- //if ( ioflag != "") { //입원정보를 기준으로 상단에 반영
- if(detstatus == "외래") {
- pid = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/pid") ;
- indd = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/otptorddd") ;
- cretno = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/otptcretno") ;
- instcd = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/instcd");
- orddd = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/otptorddd"); //처방일(orddd)
- ordtype = "O";
- }
- else { //외래정보를 기준으로 상단에 반영
- pid = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/pid") ;
- indd = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/prcpdd") ;
- cretno = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/inptcretno") ;
- instcd = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/instcd");
- orddd = model.getValue("/root/main/chemoinfo/chemolist["+idx+"]/prcpdd"); //처방일(orddd)
- //=======================================================================================================
- ordtype = "I"; //--> 'D' (테스트) ==> '상단정보parameter값이 잘못 설정 되었습니다' 로 나옴
- //=======================================================================================================
- }
- //----------(20080913)
- // 상단 세팅을 위한 파라미터
- condparam = ordtype + "▦" + pid + "▦" + indd + "▦" + cretno + "▦" + instcd+ "▦" + orddd;
- setParameter("condparam", condparam);
- modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
-
- }
- function fSetPatInfoER() {
- var pid = "";
- var indd= "";
- var cretno="";
- var instcd = "";
- var orddd= "";
- var ordtype = "";
-
- var idx = cmb_pid_er.focusIndex + 1;
-
- if(idx < 1) {
- return;
- }
-
- pid = model.getValue("/root/main/nursemainlist/nursemaininfo["+idx+"]/pid") ;
- indd = model.getValue("/root/main/nursemainlist/nursemaininfo["+idx+"]/indd") ;
- cretno = model.getValue("/root/main/nursemainlist/nursemaininfo["+idx+"]/cretno") ;
- instcd = model.getValue("/root/main/nursemainlist/nursemaininfo["+idx+"]/instcd");
- orddd = model.getValue("/root/main/cnursemainlist/nursemaininfo["+idx+"]/indd");
- ordtype = "E";
- // 상단 세팅을 위한 파라미터
- condparam = ordtype + "▦" + pid + "▦" + indd + "▦" + cretno + "▦" + instcd+ "▦" + orddd;
- setParameter("condparam", condparam);
- modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
-
- }
- function fSetPatInitInfo() {
-
- var sPatSelUseYN="";
- var sParamInfo = "";
- var sPamInfo = "";
-
- // 환자정보 조회
- model.removenode("/root/main/paminfo");
- model.makenode("/root/main/paminfo");
- sPamInfo = getGlobalVariable("paminfo");
- setCSVToNode("/root/main/paminfo",sPamInfo,"pamlist");
-
-
-
- //환자정보 세팅
- sPid = model.getValue(xPamInfoPath+"/pid");
- sHngNm = model.getValue(xPamInfoPath+"/hngnm");
- sHngNm2 = model.getValue(xPamInfoPath+"/hngnm2");
- sAge = model.getValue(xPamInfoPath+"/age");
- sIOFlag = model.getValue(xPamInfoPath+"/ioflag"); // 입원/외래 구분
- if(sIOFlag == "I" || sIOFlag == "E" || sIOFlag == "D"){ // 입원
- sIndd = model.getValue(xPamInfoPath+"/indd"); // 진료일자
- sOrdDD = "-";
- // } else if(sIOFlag == "O"){ // 외래
- }else if(sIOFlag == "O" || sIOFlag == "S"){ // 외래,건진 20090707 김홍점 김영림 itc 요청서에 의한 반영
- sOrdDD = model.getValue(xPamInfoPath+"/orddd"); // 진료일자
- sIndd = "-";
- }
-
- if(sPamInfo != "") {
- cmb_pid.value = sPid;
- }
- sCretNo = model.getValue(xPamInfoPath+"/cretno"); // 환자 일자별 일련번호
- sInstcd = model.getValue(xPamInfoPath+"/instcd"); // 기관코드
- sOrdDeptCd = model.getValue(xPamInfoPath+"/orddeptcd"); // 진료과코드
- sOrdDrId = model.getValue(xPamInfoPath+"/medispclid"); // 진료의사ID
-
- if ( gMenuGrupCd == "MG00520000" ){//전문간호 메뉴그룹으로 들어왔을경우
- DutPlceCD = "011";
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;
- } else if ( gMenuGrupCd == "MG02030000" && DutPlceCD != "015" && DutPlceCD != "021" ){//마취 회복 메뉴그룹으로 들어왔을경우지만 혈당기록에서 띄울경우에는 혈당으로 떠야함.
- DutPlceCD = "900";
- } else if( getScreenMenuParameter()!= null && isNull(sParamInfo) ){
- DutPlceCD = getScreenMenuParameter();//20080705 김홍점
- sRecFlag = model.getValue(xInitGrupInfoPath+"[paramcd='"+DutPlceCD+"' and cdgrupid = '054']/recflag");
-
- if ( DutPlceCD == "021" && !isNull(getOperationInfo("oprsrvno")) ){//수술간호 메뉴에서 오픈시
- sRecLnkKey = getOperationInfo("oprsrvno") + "," + sInstcd;
- } else {
- sRecLnkKey = sPid+"," +(sOrdDD == "-" ? sIndd : sOrdDD )+"," +sCretNo+"," +sInstcd;
- }
- }
- }
- function fSetItem(){
-
- //메인에 보여지는 화면 오브젝트를 가져온다.
- var mainObj = getMainViewer();
-
- model.makeNode("/root/tmp/cond");
-
- if(mainObj != null) {
- scrid = mainObj.javascript.getScreenID();
-
- if(scrid == "SMMNI02000") {
- model.makeValue("/root/tmp/cond/wardcd" , mainObj.model.getValue("/root/main/cond/wardcd" ));
- model.makeValue("/root/tmp/cond/settingrnid" , mainObj.model.getValue("/root/main/cond/settingrnid" ));
- model.makeValue("/root/tmp/cond/orddeptcd" , mainObj.model.getValue("/root/main/cond/orddeptcd" ));
- model.makeValue("/root/tmp/cond/medispclid" , mainObj.model.getValue("/root/main/cond/medispclid" ));
- model.makeValue("/root/tmp/cond/atdoctid" , mainObj.model.getValue("/root/main/cond/atdoctid" ));
- model.makeValue("/root/tmp/cond/indschacptstat" , mainObj.model.getValue("/root/main/cond/indschacptstat"));
- model.makeValue("/root/tmp/cond/prcpdd" , mainObj.model.getValue("/root/main/cond/prcpdd" ));
- model.makeValue("/root/tmp/cond/pid" , mainObj.model.getValue("/root/main/cond/pid" ));
- model.makeValue("/root/tmp/cond/rsrvinfoflag" , mainObj.model.getValue("/root/main/cond/rsrvinfoflag" ));
- model.makeValue("/root/tmp/cond/chk_prcpmixno" , mainObj.model.getValue("/root/main/cond/chk_prcpmixno" ));
- model.makeValue("/root/tmp/cond/hngnm" , mainObj.model.getValue("/root/main/cond/hngnm" ));
- model.makeValue("/root/tmp/cond/gndrage" , mainObj.model.getValue("/root/main/cond/gndrage" ));
- model.makeValue("/root/tmp/cond/rrgstno" , mainObj.model.getValue("/root/main/cond/rrgstno" ));
- model.makeValue("/root/tmp/cond/antcncryn" , mainObj.model.getValue("/root/main/cond/antcncryn" ));
- model.makeValue("/root/tmp/cond/drprcpetc2" , mainObj.javascript.drprcpetc2);
- }
- }
- }
- // 환자정보
- function fGetPatList(){
-
- var wardcd = model.getValue("/root/tmp/cond/wardcd");
- if(wardcd == null || wardcd == ""){
- fSetItem();
- }
-
- model.makeNode("/root/send/reqdata");
- model.copyNode("/root/send/reqdata", "/root/tmp/cond");
-
- submit("TRMNI02003");
-
-
- }
- // 내환자 셋팅정보 조회
- function fSettingnurid(){
-
- var wardcd = model.getValue("/root/tmp/cond/wardcd");
- if(wardcd == null || wardcd == ""){
- fSetItem();
- }
-
- model.makeValue("/root/send/reqdata/wardcd", model.getValue("/root/tmp/cond/wardcd") );
-
- if(submit("TRMNW10910") == true){
- var settingnurid = model.getValue("/root/init/settinginfo/settingrn[settingrnid='" + getUserInfo("userid") +"']/settingrnid");
-
- model.setValue("/root/main/cond/settingrnid", settingnurid);
- model.makeValue("/root/tmp/cond/settingrnid", model.getValue("/root/main/cond/settingrnid"));
- }
- cmb_settingrn.refresh();
- }
- function fprtlnm(){
- var pid = model.getValue("/root/main/cond/srch_pid");
- var chemo = getNodesetCount("/root/main/chemoinfo/chemolist");
- var prtlnm = "";
-
- if (pid != ""){
- if(chemo > 0){
- prtlnm = model.getValue("/root/main/chemoinfo/chemolist[pid = '" + pid +"']/prtlnm");
- model.setValue("/root/init/prtlinfo/prtllist/prtlnm", prtlnm);
- model.refresh();
- }
- }
- }
|