12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886 |
- /*
- (SMMNB06300_투약work list.xrw - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var xCondPath = "/root/main/cond";
- var xPatInfoPath = "/root/main/paminfo/pamlist";
- var xWardDrugListPath = "/root/main/warddruginfo/warddruglist";
- var xHiddenWardDrugPath = "/root/hidden/warddruginfo/warddruglist";
- var xWardPatList = "/root/main/wardpatinfo/wardpatlist";
- //----------------(20080801)
- //var xCaption = "환자정보^구분^마약구분^처방코드^처방명^1일용량^단위^1일수량^단위^1일횟수^경로^용법^처방Remark^처방의^처방시간^처방희망일"; //16개
- //var colDataidx = 16; //coldataidx이상의 컬럼은 일자data컴럼
- //var xCaption = "환자정보^구분^Mix^마약구분^처방코드^처방명^1일용량^단위^1일수량^단위^1일횟수^경로^용법^처방Remark^처방의^처방시간^처방적용일"; //16개
- //var colDataidx = 17; //마약구분추가
- //var xCaption = "선택^환자정보^구분^Mix^마약구분^처방코드^처방명^1일용량^단위^1일수량^단위^1일횟수^경로^용법^처방Remark^처방의^처방시간^처방적용일"; //16개
- //var colDataidx = 18; //선택항목추가(20080910)
- //----(20080919)
- //var xCaption = "^환자정보^구분^Mix^마약구분^처방코드^처방명^1일용량^단위^1일수량^단위^1일횟수^경로^용법^처방Remark^처방의^처방일시^처방적용일^prcpdd^prcpno"; //20개
- //var colDataidx = 20; //prcpdd,prcpno추가(20080910)
- var xCaption = "^환자정보^구분^승인^Mix^마약구분^처방코드^처방명\n[* : 혼동주의/고위험 약제]^1회용량^1일용량^단위^1회수량^1일수량^단위^1일횟수^경로^용법^처방Remark^처방의^처방일시^처방적용일^prcpdd^prcpno^처방명ast^처방명출력용"; //25개
- var colDataidx = 25; //prcpddast추가(20081121) drprcpetc7, drprcpetc8추가(김병국20110102) 23->25변경
- //----------------------------
- var testcnt=0;
- /**
- * @group :
- * @ver : 2007.07.11
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약work list 초기값 셋팅 및 초기조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(){
- grd_patlist.fixedcellcheckbox(0,0) = true;
- grd_patlist.mergecells = "bycol";
- grd_patlist.mergecol(0) = false;
- grd_patlist.mergecol(2) = false;
- grd_patlist.mergecol(3) = false;
- grd_patlist.mergecol(4) = false;
- // 정리
- model.removeNodeSet("/root/hidden/warddruginfo");
- model.removeNodeSet("/root/main/warddruginfo");
- // 환자정보 조회
- var sPamInfo = getGlobalVariable("paminfo");
- setCSVToNode("/root/main/paminfo",sPamInfo,"pamlist");
- //------------------(20080801)
- var sWardCd = "";
- var sRoomCD = "";
- var sPid = "";
- var sPatNm = "";
- var sDd = "";
-
- //--------------(20080804)
- // 값있으면 투약기록에서 호출
- // 값이 없으면 메뉴에서 호출
- var openchk = opener.javascript.getParameter("SMMNR06300_Param");
- //-------------
- //if(checkOpener()){
- if( !isNull(openchk) && openchk != "null" ){
- sWardCd = opener.javascript.getParameter("SMMNR06300_Param");
- sRoomCD = opener.javascript.getParameter("SMMNR06300_Param1");
- sPid = opener.javascript.getParameter("SMMNR06300_Param2");
- sPatNm = opener.javascript.getParameter("SMMNR06300_Param3");
- sDd = opener.javascript.getParameter("SMMNR06300_Param4");
- }else{
- sWardCd = ( isNull(getPatientInfoDetail("wardcd")) ? getUserInfo("dutplcecd") : getPatientInfoDetail("wardcd"));
- sRoomCD = model.getValue(xPatInfoPath+"/roomcd");
- sPid = model.getValue(xPatInfoPath+"/pid");
- sPatNm = model.getValue(xPatInfoPath+"/hngnm");
- }
-
- fGetWardList(); //병동콤보
- model.makeValue("/root/main/cond/orddd", getCurrentDate());// 기준일에 현재날짜(디폴트);
- model.makeValue("/root/main/cond/wardcd", sWardCd);
- fGetRoomList(); //병동에 대한 병실콤보
- fGetZoneList(); //ER의 구역 콤보 //------------(20080608)
- fnZoneDisp("init"); //----------------------(20080910)
- if ( isNull(model.getValue("/root/init/ward[wardcd ='"+ sWardCd +"']/wardnm")) ){
- return;
- }
- model.makeValue("/root/main/cond/roomcd", sRoomCD);
- fGetPatList(); //환자명콤보
- //-----------------------------(20080906)
- fSetsettingrnid();
- //-----------------------------(20080906)
- //if(checkOpener()){
- model.makeValue("/root/main/cond/pid", sPid);
- model.makeValue("/root/main/cond/hngnm", sPatNm);
- if ( !isNull(sPid) ){
- model.setValue(xWardPatList+"[pid = '"+ sPid +"']/check", "true");
- }
-
-
- if(!isNull(openchk) && openchk != "null" ){
- model.makeValue("/root/main/cond/orddd", sDd);
-
- model.refresh();
-
- fClickDrugListBefore(); //------------(20081117)
-
- fWorkListQuery();
- //fSettingLine();
- //------------------------(20080910)
- //투약기록에서 넘어온 값을 투약worklist에서 표시한다.
- var sflagChk = opener.javascript.getParameter("SMMNR06300_Param5");
- var sPathDrug = "/root/main/warddruginfo/warddruglist";
- var sCount = 0;
-
- var rows = getNodesetCount(xWardDrugListPath);
-
- if (sflagChk.substr(0,1) == "Y") {
- var sPrcpdd = "";
- var sPrcpno = "";
- sCount = sflagChk.substr(1, sflagChk.length-1);
-
- for (var row=1;row<= rows;row++ ) {
- sPrcpdd = model.getValue(sPathDrug + "[" + row + "]/prcpdd");
- sPrcpno = model.getValue(sPathDrug + "[" + row + "]/prcpno");
-
- //alert(row + "/" + sPrcpdd + "/" + sPrcpno);
-
- //선택된 자료만 출력한다.
- if (fnFindParam(sPrcpdd,sPrcpno,sCount) == true) {
- model.makeValue(sPathDrug + "[" + row + "]/prtchk","true");
- } else {
- model.makeValue(sPathDrug + "[" + row + "]/prtchk","false");
- }
- }
- } else {
- //--------------------(20080927)
- if ( rows >= 1) {
- model.makeValue("/root/main/cond/multicheck","true");
- for (var row=1;row<= rows;row++ ) {
- model.makeValue(sPathDrug + "[" + row + "]/prtchk","true");
- }
- }
- //--------------------(20080927)
- }
- fClickDrugListAfter(); //------------(20081117)
-
- //------------------------(20080910)
- } else {
- fClickDrugListBefore(); //------------(20081117)
-
- fWorkListQuery();
- //fSettingLine();
-
- fClickDrugListAfter();
- }
- //------------------(20080801)
-
- model.refresh();
- }
- //---------------------------(20080910)
- //파리미터에서 값을 찾는다.
- function fnFindParam(sPrcpDd,sPrcpNo,sCount) {
- for (var row=6;row<=sCount;row++) {
- sParamNm = "SMMNR06300_Param" + row;
- sParamValue = opener.javascript.getParameter(sParamNm);
- var sParamArr = sParamValue.split("/");
-
- //alert(sPrcpDd + "/" + sParamArr[0] + "/" + sPrcpNo + "/" + sParamArr[1]);
-
- if ( sPrcpDd == sParamArr[0] && sPrcpNo == sParamArr[1] ) {
- //alert("true");
- return true;
- }
- }
- return false;
- }
- //---------------------------(20080910)
- /**
- * @group :
- * @ver : 2008.09.06
- * @by :
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 내환자가 설정되어 있으면 자동으로 내환자설정시키기(성공)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetsettingrnid(){
- var sUserId = getUserId();
- var sUserIdFind = ""
-
- for(i = 1; i <= getNodesetCount("/root/main/wardpatinfo/settingrn"); i++ ) {
- sUserIdFind = model.getValue("/root/main/wardpatinfo/settingrn["+ i +"]/settingrnid");
- if (sUserId == sUserIdFind) {
- model.makeValue("/root/main/cond/settingrnid", sUserIdFind);
- model.refresh();
- fGetPatList();
- return;
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.06.08
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : ER의 응급 리스트 조회 CareCom.js로 빼냄
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- /*function fGetZoneList(){
- submit("TRMNR06302");
- }*/
- /**
- * @group :
- * @ver : 2007.06.23
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 병동 리스트 조회
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetWardList(){
- submit("TRMNR00601");
- }
- /**
- * @group :
- * @ver : 2007.06.23
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약기록 병동별 병실 리스트 조회
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetRoomList(){
- model.makeValue("/root/main/cond/roomcd", "");
- model.resetInstanceNode("/root/send/reqdata");
- model.copynode("/root/send/reqdata", xCondPath);
- submit("TRMNR00602");
- }
- /**
- * @group :
- * @ver : 2007.07.11
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : com_hngnm 내용 검색
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetPatList(){
- model.resetInstanceNode("/root/send/reqdata");
- model.copynode("/root/send/reqdata", xCondPath);
- submit("TRMNR00603");
- grd_patlist.fixedcellischeck(0,0) = false;
- model.removeNodeSet("/root/hidden/warddruginfo");
- model.removeNodeSet("/root/main/warddruginfo");
- grd_druglist.rebuild();
- }
- /**
- * @group :
- * @ver : 2007.07.11
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- var fstdispcol=0, lstdispcol=0; // 20090629
- function fWorkListQuery(){
- model.resetInstanceNode("/root/send/reqdata");
- var pid = model.getValue("/root/main/cond/pid");
- var indd = "";
- var cretno = "";
- var sHeader = "pid▦indd▦cretno▩"
- var sContents = "";
- var forcnt = 0;
- if( !isNull(pid)){
- indd = model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + pid + "']/indd");
- cretno = model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + pid + "']/cretno");
-
- model.makeValue("/root/main/cond/indd", indd);
- model.makeValue("/root/main/cond/cretno",cretno);
- //alert(pid + "/" + indd + "/" + cretno );
- sContents = pid + "▦" + indd + "▦" + cretno + "▩";
- forcnt++;
- } else {
- for ( var idx = 1 ; idx <= getNodesetCount(xWardPatList) ; idx++ ){
- if ( model.getValue(xWardPatList + "["+ idx +"]/check") == "true" ){
- sContents += model.getValue("/root/main/wardpatinfo/wardpatlist["+ idx +"]/pid") + "▦"
- + model.getValue("/root/main/wardpatinfo/wardpatlist["+ idx +"]/indd") + "▦"
- + model.getValue("/root/main/wardpatinfo/wardpatlist["+ idx +"]/cretno") + "▩";
- forcnt++;
- }
- }
- }
- if ( forcnt < 1 ){
- return;
- }
-
- var orddd = model.getValue("/root/main/cond/orddd");
- var yorddd = getDateAddc(orddd,-1);
- var torddd = getDateAddc(orddd,1);
-
- model.makeValue("/root/main/cond/yorddd", yorddd);
- model.makeValue("/root/main/cond/torddd", torddd);
-
- model.copynode("/root/send/reqdata", xCondPath);
- model.makeValue("/root/send/reqdata/reqpidcond", sHeader + sContents);
-
- if(submit("TXMNR06301")){
- model.makeValue("/root/send/reqdata/pidseqno", model.getValue("/root/hidden/pidseqnoinfo/pidseqnoinfo/pidseqno"));
-
- }else {
- return;
- }
- //----------------------------
- // 조회전 화면 정리
- //----------------------------
-
- model.removeNodeSet("/root/hidden/warddruginfo");
- model.removeNodeSet("/root/main/warddruginfo");
- for (var col= (grd_druglist.cols-1);col>=colDataidx;col--) {
- grd_druglist.deleteColumn(col);
- }
- grd_druglist.caption = xCaption;
- grd_druglist.refresh();
- if(submit("TRMNR06301")){
-
- var inst_cnt = 0;
- var prev_prcpno = "";
- var drugtmspec = "";
- var drugtmspeccal = "";
- var medrbaseexistyn = "";
- var prcpno = "";
- var mod = "";
- var quotient = "";
- var prcpvol = "";
- var prcpvolunitflag = "";
- var prcpqty = "";
- var prcpqtyunitflag = "";
- var carebasedd = "";
- var carebasetm = "";
- var ast = "";
- var aprvstat = "";
- var tempddtm = "";
- var tempdd = "";
- var temptm = "";
-
- var addCol_Array = new Array;
- //1.일자추출 -컬럼추가(화면 data)
- var cnt = getNodesetCount("/root/hidden/warddruginfo/warddruglist");
-
- //---------------------------------------
- //alert("계산시작:" + cnt);(20080801)
- if ( cnt <= 0 ) {
- messageBox("조회된자료가 없습니다.","E999");
- return;
- }
- //---------------------------------------
- for(var i = 1; i <= cnt; i++){
- //alert("i=" +i);
-
- tempddtm = model.getValue("/root/hidden/warddruginfo/warddruglist[" + i + "]/ddtm");
- //--------------------------------------------------(20080610)
- //투약된일자(절대일자),변경되일자(절대일자) YYYYMMDDSSMM00
- //희망일+설정된시간대==> 절대시간대로 변경한다.(로직) SSMM
- //alert("0927:"+ tempddtm);
-
- if ( tempddtm.length == 4) {
- tempdd = model.getValue("/root/hidden/warddruginfo/warddruglist[" + i + "]/prcphopedd");
- temptm = tempddtm;
- //alert("A:" + "/" +tempdd + "/" + temptm);
- tempdd = getDateAddc(tempdd, parseInt(tempddtm / 2400));
- temptm = tempddtm % 2400;
- //alert("B:" + "/" +tempdd + "/" + temptm);
-
- temptm = Math.abs(Number(temptm)).toString();
- temptm = fCarec_GetFillZeno(temptm, 4,0);
-
- tempddtm = tempdd + "" + temptm + "" + '00';
- }
- //alert("tempddtm=" + tempddtm);
-
- //계산된 일자 기록
- //alert(tempddtm);
- model.makeValue("/root/hidden/warddruginfo/warddruglist[" + i + "]/ddtm_calc",tempddtm);
- //--------------------------------------------------
- tempdd = tempddtm.substr(0,8);
- //alert("i배열=" + tempdd);
-
- //일자배열에 저장
- careIsSearchString(addCol_Array,tempdd);
-
- }
-
- //alert("1:" + addCol_Array.length);
-
- if (addCol_Array.length <= 0) {
- messageBox("일자정보가 없습니다.","E999");
- return;
- }
- //일자 정렬(오름차순)
- var addCol_Arr = new Array;
- addCol_Arr = sortHashKeysArray(addCol_Array);
- //alert("2:" + addCol_Arr.length);
-
- //2.그리드에 컬럼추가
- var pGrd = grd_druglist;
- var sGrdheader = "";
- //-------------------------------------------------------
- //컬럼을 늘리기 위해서 빈 row를 만든다.
- //model.duplicate(a,b): b->a 인데, 주의 a는 한단계위임)
- //-------------------------------------------------------
-
- model.duplicate("/root/main","/root/temp/warddruginfo");
-
- var tempColIdx;
-
- fstdispcol = Number(colDataidx)+1; // 20090629
-
- for(var k = 1; k <= addCol_Arr.length; k++){
-
- tempColIdx = Number(colDataidx)+Number(k);
- pGrd.addColumn("ref:dispdd" + tempColIdx + "; type:output; ", false);
- //pGrd.colWidth(pGrd.cols - 1) = 150;
- pGrd.colWidth(pGrd.cols) = 150;
-
- //------------------------------(20080802)
- //---(20080802) YYYYMMDD
- //일자
- //sGrdheader += addCol_Arr[k-1].toString() + "^"; //YYYYMMDD
- var sTempDt = addCol_Arr[k-1].toString();
- sTempDt = sTempDt.substr(0,4) + "-" + sTempDt.substr(4,2) + "-" + sTempDt.substr(6,2);
- sGrdheader += sTempDt + "^"; //YYYY-MM-DD
- //------------------------------
- }
- lstdispcol = tempColIdx; // 20090629
-
- sGrdheader = sGrdheader.substr(0,sGrdheader.length-1); // 마지막 "^" 제거
- pGrd.caption = pGrd.caption + "^" + sGrdheader;
-
- //alert("3:" + pGrd.caption);
- pGrd.refresh();
- //3.hidden data -> 화면 data)
- var preprcpno = "";
- var nowprcpno = "";
- var hiddenPath = "/root/hidden/warddruginfo/warddruglist";
- var dispPath = "/root/main/warddruginfo/warddruglist";
- var inst_cnt = 0;
- var tempdd = "";
-
- var cnt = getNodesetCount("/root/hidden/warddruginfo/warddruglist");
-
- //헤더를 만들기 위해 있더 자료 삭제
- pGrd.deleteRow(1);
-
- for(var i = 1; i <= cnt; i++){
- nowprcpno = model.getValue(hiddenPath + "[" + i + "]/prcpno");
-
- //prcpno가 다르면 row 추가
- if (preprcpno != nowprcpno) {
-
- pGrd.addRow(false,false);
- //row 추가
- //alert("row추가:" + preprcpno + "/" + nowprcpno);
-
- inst_cnt++;
-
- //model.makeValue(dispPath + "[" + inst_cnt + "]", "");
-
- //-----------------------------(20080801)
- //일반적인 공통사항 복사
- // var disppatinfo = model.getValue(hiddenPath + "[" + i + "]/roomcd") + " " +
- // model.getValue(hiddenPath + "[" + i + "]/patnm") + " " +
- // model.getValue(hiddenPath + "[" + i + "]/sexage") + " " +
- // model.getValue(hiddenPath + "[" + i + "]/pid") + " ";
- //-------------(20080922)
- //var disppatinfo = model.getValue(hiddenPath + "[" + i + "]/pid") + " " +
- // model.getValue(hiddenPath + "[" + i + "]/patnm") + " " +
- // model.getValue(hiddenPath + "[" + i + "]/roomcd") + " " +
- // model.getValue(hiddenPath + "[" + i + "]/sexage");
- if (model.getValue(hiddenPath + "[" + i + "]/roomcd") == "ERBD") {
- var disppatinfo = model.getValue(hiddenPath + "[" + i + "]/pid").toString().replace(" ","") + " " +
- model.getValue(hiddenPath + "[" + i + "]/patnm").toString().replace(" ","") + " " +
- model.getValue(hiddenPath + "[" + i + "]/bedposcnts").toString().replace(" ","") + " " +
- model.getValue(hiddenPath + "[" + i + "]/sexage").toString().replace(" ","") + " " ;
- } else {
- var disppatinfo = model.getValue(hiddenPath + "[" + i + "]/pid").toString().replace(" ","") + " " +
- model.getValue(hiddenPath + "[" + i + "]/patnm").toString().replace(" ","") + " " +
- model.getValue(hiddenPath + "[" + i + "]/roomcd").toString().replace(" ","") + " " +
- model.getValue(hiddenPath + "[" + i + "]/sexage").toString().replace(" ","") + " " ;
- }
- //-------------(20080922)
- //-----------------------------(20080801)
-
- var dispprcpkindnm = model.getValue(hiddenPath + "[" + i + "]/prcpkindnm");
- var dispprcpmixno = model.getValue(hiddenPath + "[" + i + "]/prcpmixno");
- var dispprcpcd = model.getValue(hiddenPath + "[" + i + "]/prcpcd");
- var dispprcpnm = model.getValue(hiddenPath + "[" + i + "]/prcpnm");
-
- //----------------------------(20080917)
- if ( dispprcpmixno != '-' && dispprcpmixno != '') {
- dispprcpnm = "(" + dispprcpmixno + ")" + dispprcpnm;
- }
- //----------------------------(20080917)
-
- var dispprcpvol = model.getValue(hiddenPath + "[" + i + "]/prcpvol");
- var dispprcpvolunitflag = model.getValue(hiddenPath + "[" + i + "]/prcpvolunitflag");
- var dispprcpqty = model.getValue(hiddenPath + "[" + i + "]/prcpqty");
- var dispprcpqtyunitflag = model.getValue(hiddenPath + "[" + i + "]/prcpqtyunitflag");
- var dispprcptims = model.getValue(hiddenPath + "[" + i + "]/prcptims");
- var dispabbrnm = model.getValue(hiddenPath + "[" + i + "]/abbrnm");
- var dispdrugmthdspccd = model.getValue(hiddenPath + "[" + i + "]/drugmthdspccd");
- var dispprcpdelivefact = model.getValue(hiddenPath + "[" + i + "]/prcpdelivefact");
- var disporddrnm = model.getValue(hiddenPath + "[" + i + "]/orddrnm");
- var dispfstrgstdt = model.getValue(hiddenPath + "[" + i + "]/fstrgstdt");
- var dispprcphopedd = model.getValue(hiddenPath + "[" + i + "]/prcphopedd");
- var dispspcldrug = model.getValue(hiddenPath + "[" + i + "]/spcldrug"); //(2008081)
- var dispprcpdd = model.getValue(hiddenPath + "[" + i + "]/prcpdd"); //(20080910)
- var dispprcpno = model.getValue(hiddenPath + "[" + i + "]/prcpno"); //(20080910)
- //----------------------------(20081121)
- var dispprcpnmast = model.getValue(hiddenPath + "[" + i + "]/prcpnmast");
- var dispprcpnmprt = model.getValue(hiddenPath + "[" + i + "]/prcpnmprt");
- var ast = model.getValue(hiddenPath + "[" + i + "]/ast");
- var aprvstat = model.getValue(hiddenPath + "[" + i + "]/aprvstat");
- var tims = model.getValue(hiddenPath + "[" + i + "]/tims"); // 20090629
- var mthdcd = model.getValue(hiddenPath + "[" + i + "]/mthdcd"); // 20090629
- var orgprcpclscd = model.getValue(hiddenPath + "[" + i + "]/orgprcpclscd"); // 20090629
- var roomcd = model.getValue(hiddenPath + "[" + i + "]/roomcd"); // 20090629
- var patnm = model.getValue(hiddenPath + "[" + i + "]/patnm"); // 20090629
- var pid = model.getValue(hiddenPath + "[" + i + "]/pid"); // 20090629
- var prtchk = model.getValue(hiddenPath + "[" + i + "]/prtchk"); // 20090629
-
- var prcphngnm = model.getValue(hiddenPath + "[" + i + "]/prcphngnm"); // 20090714
- var prcpclscd = model.getValue(hiddenPath + "[" + i + "]/prcpclscd"); // 20091023
-
- var drprcpetc7 = model.getValue(hiddenPath + "[" + i + "]/drprcpetc7"); // 20110202_KNUH_Start
- var drprcpetc8 = model.getValue(hiddenPath + "[" + i + "]/drprcpetc8"); // 20110202_KNUH_Start
- var zonecd = model.getValue(hiddenPath + "[" + i + "]/zonecd"); // 20110211_KNUH
- var pid = model.getValue(hiddenPath + "[" + i + "]/pid").toString().replace(" ",""); //20110907
-
- var sexage = model.getValue(hiddenPath + "[" + i + "]/sexage"); //20111230_KNUH_Start 성별/나이(정보추가)
- var orddeptnm = model.getValue(hiddenPath + "[" + i + "]/orddeptnm"); //20111230_KNUH_Start 부서명(정보추가)
-
- //----------------------------(20081121)
- model.makeValue(dispPath + "[" + inst_cnt + "]/prtchk", prtchk ); //(20080910)
- model.makeValue(dispPath + "[" + inst_cnt + "]/patinfo", disppatinfo );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpkindnm", dispprcpkindnm );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpmixno", dispprcpmixno );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpcd", dispprcpcd );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpnm", dispprcpnm );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpvol", dispprcpvol );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpvolunitflag", dispprcpvolunitflag );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpqty", dispprcpqty );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpqtyunitflag", dispprcpqtyunitflag );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcptims", dispprcptims );
- model.makeValue(dispPath + "[" + inst_cnt + "]/abbrnm", dispabbrnm );
- model.makeValue(dispPath + "[" + inst_cnt + "]/drugmthdspccd", dispdrugmthdspccd );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpdelivefact", dispprcpdelivefact );
- model.makeValue(dispPath + "[" + inst_cnt + "]/orddrnm", disporddrnm );
- model.makeValue(dispPath + "[" + inst_cnt + "]/fstrgstdt", dispfstrgstdt );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcphopedd", dispprcphopedd );
- model.makeValue(dispPath + "[" + inst_cnt + "]/spcldrug", dispspcldrug ); //(2008081)
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpdd", dispprcpdd ); //(20080910)
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpno", dispprcpno ); //(20080910)
- //-----------(20081121)
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpnmast", dispprcpnmast );
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpnmprt", dispprcpnmprt );
- //-----------(20081121)
- model.makeValue(dispPath + "[" + inst_cnt + "]/ast", ast );
- model.makeValue(dispPath + "[" + inst_cnt + "]/aprvstat", aprvstat );
-
- model.makeValue(dispPath + "[" + inst_cnt + "]/tims" , tims); // 20090629
- model.makeValue(dispPath + "[" + inst_cnt + "]/prtabbrnm" , dispabbrnm); // 20090629
- model.makeValue(dispPath + "[" + inst_cnt + "]/orgprcpclscd", orgprcpclscd); // 20090629
- model.makeValue(dispPath + "[" + inst_cnt + "]/viewroomcd" , roomcd); // 20090629
- model.makeValue(dispPath + "[" + inst_cnt + "]/patnm" , patnm); // 20090629
- model.makeValue(dispPath + "[" + inst_cnt + "]/astyn" , ast); // 20090629
- model.makeValue(dispPath + "[" + inst_cnt + "]/pid" , pid); // 20090629
-
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcphngnm" , prcphngnm); // 20090714
- model.makeValue(dispPath + "[" + inst_cnt + "]/prcpclscd" , prcpclscd); // 20091023
-
- model.makeValue(dispPath + "[" + inst_cnt + "]/drprcpetc7" , drprcpetc7); // 20110202_KNUH_Start
- model.makeValue(dispPath + "[" + inst_cnt + "]/drprcpetc8" , drprcpetc8); // 20110202_KNUH_Start
- model.makeValue(dispPath + "[" + inst_cnt + "]/zonecd" , zonecd); // 20110211_KNUH
- model.makeValue(dispPath + "[" + inst_cnt + "]/pid" , pid); // 20110211_KNUH
-
- model.makeValue(dispPath + "[" + inst_cnt + "]/orddeptnm" , orddeptnm); //20111230_KNUH_Start 성별/나이(정보추가)
- model.makeValue(dispPath + "[" + inst_cnt + "]/sexage" , sexage); //20111230_KNUH_Start 부서명(정보추가)
-
- model.makeValue(dispPath + "[" + inst_cnt + "]/roomcd" , model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + pid + "']/roomcd")); //20111230_KNUH_Start 부서명(정보추가)
-
-
-
- // for(var k = 1; k <= addCol_Arr.length; k++){
- // tempColIdx = Number(colDataidx)+Number(k);
- // model.makeValue(dispPath + "[" + inst_cnt + "]/dispdd" + tempColIdx,"");
- // }
- //alert("경로:" + dispPath + "[" + inst_cnt + "]/patinfo");
- //now prcpno -> before prcpno
- preprcpno = nowprcpno;
- }
- tempdd = model.getValue(hiddenPath + "[" + i + "]/ddtm_calc");
- tempdd = tempdd.substr(0,8);
- //일자컬럼찾기
- var colindex = fnCaptionFind(tempdd);
- //alert("colindex:" + colindex + "/inst_cnt:" + inst_cnt);
-
- //컬럼이 있는 경우복사
- if (colindex > 0) {
- //이번자료
- var temptm1 = model.getValue(hiddenPath + "[" + i + "]/ddtm_calc");
- //0919
- //alert ("temptm1:" + temptm1);
- temptm1 = fCarec_GetFillZeno(temptm1.substr(8,4), 4,0);
- //0919
- //alert ("temptm1:" + temptm1); //0000 인경우도 아직 살아있음
-
- //기존그리드자료
- var temptm2 = model.getValue(dispPath + "[" + inst_cnt + "]/dispdd"+colindex);
- if (temptm2.length > 0) {
- temptm2 = temptm2 + " " + temptm1;
- } else {
- temptm2 = temptm1;
- }
- //alert (temptm2 + "/" + temptm1);
-
- //sort 해야함
- temptm2 = temptm2.replace(":",""); //(20080804);
- //alert("1:" +temptm2);
- temptm2 = sortHashKeysString(temptm2);
- //alert("2:" +temptm2);
-
- //-----------------------------------(20080801)
- // 0900 -> 09:00
-
- temptm2 = temptm2.replace(":","");
- var disp1temptm2 = temptm2.split(" ");
- var disp2temptm2 = "";
- var disp3temptm2 = "";
- //0919
- //alert(disp1temptm2);
-
- for (var t=0;t<disp1temptm2.length;t++) {
-
- disp2temptm2 = disp1temptm2[t];
- disp2temptm2 = disp2temptm2.replace(":","");
-
- if (disp2temptm2 != "") {
- //alert("1:"+ disp2temptm2);
- disp2temptm2 = disp2temptm2.substr(0,2) + ":" + disp2temptm2.substr(2,2);
- //alert("2:"+ disp2temptm2);
- if (t == (disp1temptm2.length-1)) {
- disp3temptm2 += disp2temptm2;
- } else {
- disp3temptm2 += disp2temptm2 + " ";
- }
- }
- //alert("3:" + disp3temptm2);
- }
-
- //alert(temptm2 + "/" + disp3temptm2);
- temptm2 = disp3temptm2;
- //-----------------------------------
-
- //정리된 시간대 반영
- model.makeValue(dispPath + "[" + inst_cnt + "]/dispdd"+colindex,temptm2);
- }
- }
- pGrd.refresh();
- model.refresh();
-
-
- /* ------------------------------------(같은처방인경우 합치는 기능 막음):요청사항, 구현은 되었음
- //--------------------------------------------------------------
- //4.머지(화면에서)
- //처방적용일이 다르고, 약제,용량,수량,횟수,경로,용법이 같으면
- //처방번호가 달라도 row n개를 1개로 합친다.
- //--------------------------------------------------------------
-
- var preprcpcd = "";
- var preprcpvol = "";
- var preprcpqty = "";
- var preprcptims = "";
- var preabbrnm = "";
- var predrugmthdspccd = "";
- var nowprcpcd = "";
- var nowprcpvol = "";
- var nowprcpqty = "";
- var nowprcptims = "";
- var nowabbrnm = "";
- var nowdrugmthdspccd = "";
- var delrowyn = "";
-
- var cnt = getNodesetCount("/root/main/warddruginfo/warddruglist");
- for(var i = 1; i <= cnt; i++){
- model.makeValue(dispPath + "[" + i + "]/delrowyn","N");
- }
- for(var i = 1; i <= cnt; i++){
- preprcpcd = model.getValue(dispPath + "[" + i + "]/prcpcd");
- preprcpvol = model.getValue(dispPath + "[" + i + "]/prcpvol");
- preprcpqty = model.getValue(dispPath + "[" + i + "]/prcpqty");
- preprcptims = model.getValue(dispPath + "[" + i + "]/prcptims");
- preabbrnm = model.getValue(dispPath + "[" + i + "]/abbrnm");
- predrugmthdspccd= model.getValue(dispPath + "[" + i + "]/drugmthdspccd");
- delrowyn = model.getValue(dispPath + "[" + i + "]/delrowyn");
- if (delrowyn == "Y") continue;
- for (var j=1;j<=cnt;j++) {
- if (j==i) continue;
-
- nowprcpcd = model.getValue(dispPath + "[" + j + "]/prcpcd");
- nowprcpvol = model.getValue(dispPath + "[" + j + "]/prcpvol");
- nowprcpqty = model.getValue(dispPath + "[" + j + "]/prcpqty");
- nowprcptims = model.getValue(dispPath + "[" + j + "]/prcptims");
- nowabbrnm = model.getValue(dispPath + "[" + j + "]/abbrnm");
- nowdrugmthdspccd = model.getValue(dispPath + "[" + j + "]/drugmthdspccd");
-
- if ( nowprcpcd == preprcpcd &&
- nowprcpvol == preprcpvol &&
- nowprcpqty == preprcpqty &&
- nowprcptims == preprcptims &&
- nowabbrnm == preabbrnm &&
- nowdrugmthdspccd == predrugmthdspccd ) {
-
- preprcpcd = nowprcpcd;
- preprcpvol = nowprcpvol;
- preprcpqty = nowprcpqty;
- preprcptims = nowprcptims;
- preabbrnm = nowabbrnm;
- predrugmthdspccd = nowdrugmthdspccd;
-
- model.makeValue(dispPath + "[" + j + "]/delrowyn","Y");
-
- for (var col=colDataidx+1;col<=pGrd.cols;col++ ) {
- var temptm1 = model.getValue(dispPath + "[" + j + "]/dispdd"+col);
- var temptm2 = model.getValue(dispPath + "[" + i + "]/dispdd"+col);
- var temptm = "";
- //상위loop = 상위loop || ' ' || 하위loop
- if (temptm2.length >0 && temptm1.length >0 ) {
- temptm = temptm2 + " " + temptm1;
- } else if (temptm2.length >0) {
- temptm = temptm2;
- } else if (temptm1.length >0) {
- temptm = temptm1;
- } else {
- temptm = "";
- }
- //정렬
- if (temptm != "") temptm = sortHashKeysString(temptm);
- //값반영
- model.makeValue(dispPath + "[" + i +"]/dispdd" + col,temptm);
- }
- }
- }
- }
- //--------------------------------------------------------------
- //5. 그리드 정리1
- //합쳐진 row는 숨긴다.
- //--------------------------------------------------------------
- //for(var i = 1; i <= cnt; i++){
- // var delflag = model.getValue(dispPath + "[" + i + "]/delrowyn");
- // if (delflag == "Y") pGrd.rowHidden(i) = true;
- //}
- //return;
- for(var i = 1; i <=cnt ; i++){
- var delflag = model.getValue(dispPath + "[" + i + "]/delrowyn");
- if (delflag == "Y") {
- grd_druglist.deleteRow(i);
- i--;
- }
- }
- */
- //--------------------------------------------------------------
- //6. 그리드 정리2
- //합쳐진 col는 숨긴다.
- //--------------------------------------------------------------
- if (grd_druglist.rows <= 1 ) return;
- var fromdd = model.getValue("/root/main/cond/orddd"); //조회일자
- var todd = getDateAddc(fromdd,1); //조회일자+1
- var sCaption = grd_druglist.caption.split("^");
- //------------------(20080802)
- //--------------------------------------------------------------
- //7. 해당하는 자료만 나오도록 한다.(컬럼)
- //--------------------------------------------------------------
- var sCaptionDt = "";
- for(var i = (sCaption.length-1) ; i >= colDataidx ; i--){
-
- sCaptionDt = sCaption[i];
- sCaptionDt = sCaptionDt.replace("-","");
- sCaptionDt = sCaptionDt.replace("-",""); //막지말것
-
- if (sCaptionDt >= fromdd && sCaptionDt <= todd) {
- } else {
- grd_druglist.deleteColumn(i);
- }
- }
- grd_druglist.refresh();
- //------------------(20080802)
-
- //------------------(20080802)
- //--------------------------------------------------------------
- //8. 해당하는 자료만 나오도록 한다.(row)
- //--------------------------------------------------------------
- var rows = getNodesetCount(xWardDrugListPath);
- if (rows <= 1) return;
-
- var rowidx = 1;
- for (var row=1;row<= rows;row++ ) {
- if ( grd_druglist.ValueMatrix(rowidx,colDataidx ) == "" &&
- grd_druglist.ValueMatrix(rowidx,colDataidx+1) == "") {
- grd_druglist.deleteRow(rowidx);
- rowidx --;
- } else {
- rowidx ++;
- }
- }
- //------------------(20080802)
- grd_druglist.refresh();
- //------------------(20080804)
- // var srows = getNodesetCount("/root/main/warddruginfo/warddruglist");
- //
- //
- // for(var i = (sCaption.length-1) ; i >= colDataidx ; i--){
- //
- // sCaptionDt = sCaption[i];
- // sCaptionDt = sCaptionDt.replace("-","");
- // sCaptionDt = sCaptionDt.replace("-",""); //막지말것
- //
- // //---------------------(20080803)
- // if (sCaptionDt >= fromdd && sCaptionDt <= todd) {
- // } else {
- // grd_druglist.deleteColumn(i);
- // }
- //
- // //---------------------(20080802)
- // // fromdd 이상부터만 조회한다.
- // //alert( sCaptionDt + "/" + fromdd);
- // //if (sCaptionDt >= fromdd) {
- // //} else {
- // // grd_druglist.deleteColumn(i);
- // //}
- // //---------------------(20080802)
- // }
- //------------------(20080804)
- //grd_druglist.refresh();
- // model.makeValue("/root/main/cond/title", "투약 work list(" + rdo_drugflag.label + ")");
- // model.makeValue("/root/main/cond/printdd", getCurrentDate());
- // model.makeValue("/root/main/cond/printtm", getCurrentTime().substr(0,4));
- // if(cnt > 0){
- // exeReportPreview("RPMNR06301", "XMLSTR" , "" , "" , "false" , "false", "", "", "", "false");
- // }else{
- // resetReportPreview();
- // messageBox("출력할 내용이","I004");
- // }
- //-----------------------------(20080801)미작업분
- //마약,향정신성인 경우
- //if(spcldrug == "M"){
- //if( spcldrug == "M" || spcldrug == "H" ){
- // grd_druglist.cellstyle("font-weight",i+1,1,i+1,grd_colcnt-3) = "bold";
- // grd_druglist.cellstyle("font-weight",i+1,grd_colcnt-1,i+1,grd_colcnt-1) = "bold";
- //}
-
- var pGrd = grd_druglist;
- var pGrdCnt = getNodesetCount(xWardDrugListPath);
- var pGrdFlag = false;
- var pGrdValue = "";
- if (pGrdCnt <= 0 ) return;
-
- var pPatinfo = "";
-
- for (var t=1;t<=pGrdCnt;t++) {
- pGrdValue = model.getValue("root/main/warddruginfo/warddruglist[" + t + "]/spcldrug");
-
- pGrdFlag = false;
- if (pGrdValue == "M" || pGrdValue == "H") pGrdFlag = true;
-
- if (pGrdFlag == true) {
- pGrd.cellstyle("font-weight",t,1,t,pGrd.cols-1) = "bold";
- }
- //--------------------(20081117)
- //머지된것중에서 동일한 경우는 색상변경으로 보이지 않게함
- if (pPatinfo == model.getValue("root/main/warddruginfo/warddruglist[" + t + "]/patinfo")) {
- pGrd.cellStyle("color", t, pGrd.colref("patinfo")) = "white";
- } else {
- pPatinfo = model.getValue("root/main/warddruginfo/warddruglist[" + t + "]/patinfo");
-
- //20110907_KNUH_Start 환자별 구분선 추가(빨간색)
- if(t !=1){
- grd_druglist.rowStyle(t-1, "all", "border-bottom-color") = "#ff0000";
- grd_druglist.rowStyle(t-1, "all", "border-top-width") = "3";
- }
- }
- //--------------------(20081117)
- }
- //-----------------------------
- }
- grd_druglist.refresh();
-
-
- }
- /**
- * @---------------------------------------------------
- * @desc : 배열에 문자가 있는지 확인하여 없으면 배열에 추가
- * @param : strSrc - 전체 문장
- * @param : strFind - 찾을 문장
- * @return : boolean
- * @---------------------------------------------------
- */
- function fnCaptionFind(strFind) {
-
- var pGrd = grd_druglist;
- var sGrdCap1 = pGrd.caption.split("^");
- var col_index = "0";
- var sDT = "";
-
- for (var col1=0; col1 < sGrdCap1.length; col1++) {
- //---------------(20080802)
- //if (sGrdCap1[col1] == strFind) {
- sDT = sGrdCap1[col1];
- sDT = sDT.replace("-","");
- sDT = sDT.replace("-",""); //풀지말것
- //alert(sDT + "/" + strFind);
-
- if (sDT == strFind) {
- col_index = col1;
- col_index ++;
- break;
- }
- }
- return col_index;
- }
- /**
- * @---------------------------------------------------
- * @desc : 배열에 문자가 있는지 확인하여 없으면 배열에 추가
- * @param : strSrc - 전체 문장
- * @param : strFind - 찾을 문장
- * @return : boolean
- * @---------------------------------------------------
- */
- function careIsSearchString(strSrc, strFind){
- var flag = false;
- for(var i = 0; i < strSrc.length; i++){
- if (strFind.length != 8) {
- if(fCarec_GetFillZeno(strFind,4,0) == fCarec_GetFillZeno(strSrc[i],4,0)){
- flag = true;
- break;
- }
- } else {
- if(strFind == strSrc[i]){
- flag = true;
- break;
- }
- }
- }
- if (flag != true) {
- if (strFind.length != 8) {
- strSrc[strSrc.length] = fCarec_GetFillZeno(strFind,4,0);
- } else {
- strSrc[strSrc.length] = strFind;
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.06.23
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 정렬
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function sortHashKeysArray(sColArray){
- var temp;
- //배열안의 내용 정렬
- for(i = 0; i < sColArray.length; i++){
- for(j = 0; j < sColArray.length; j++){
- if(sort2(sColArray[i],sColArray[j]) == false){
- temp = sColArray[i];
- sColArray[i] = sColArray[j];
- sColArray[j] = temp;
- }
- }
- }
- return sColArray;
- }
- function sortHashKeysString(sColString){
- var sColArray = new Array;
-
- //string -> 배열로
- var sCol = sColString.split(" ");
- var temp = "";
- for(var i = 0; i < sCol.length; i++){
- //sColArray[i] = Number(sCol[i]);
- sColArray[i] = fCarec_GetFillZeno(sCol[i],4,0);
- sColArray[i] = sColArray[i].toString().replace(":",""); //-----(20080919)
- }
- //배열 정렬
- for(var i = 0; i < sColArray.length; i++){
- for(var j = 0; j < sColArray.length; j++){
- if(sort2(sColArray[i],sColArray[j]) == false){
- temp = fCarec_GetFillZeno(sColArray[i],4,0);
- sColArray[i] = fCarec_GetFillZeno(sColArray[j],4,0);
- sColArray[j] = fCarec_GetFillZeno(temp,4,0);
- }
- }
- }
- //중복제거
- sColString = "";
- for(var i = 0; i < sColArray.length; i++){
- if ( sColArray[i] == "") continue;
- for(var j = i+1; j < sColArray.length; j++){
- if ( sColArray[i] == sColArray[j]) sColArray[j] = "";
- }
- }
- //배열 -> string
- sColString = "";
- for(var i = 0; i < sColArray.length; i++){
- //if (sColArray[i] == "0000") continue; //---0919
- sColString += sColArray[i] + " ";
- }
- //마지막 " " 제거
- sColString = sColString.substr(0,sColString.length-1);
- //string 리턴
- return sColString;
- }
- //--------------------(20080605)
- // 음수끼리의 정렬은 반대임(기능추가)
- // -1800 < -2000 임 시간이므로
- //--------------------
- function sort2(a,b){
- // 두변수가 전부 음수인 경우(음수,음수) -1800 < -2000
- if ( parseInt(a) < 0 && parseInt(b) < 0 ) {
- if(parseInt(a) < parseInt(b)){
- return true;
- }else if(parseInt(a) > parseInt(b)){
- return false;
- }else{
- var sort = new Array(a,b);
- sort.sort();
- return (sort[0] == a)? false:true;
- }
- } else {
- //그외경우 (음수,양수/양수,음수/양수,양수)
- if(parseInt(a) > parseInt(b)){
- return true;
- }else if(parseInt(a) < parseInt(b)){
- return false;
- }else{
- var sort = new Array(a,b);
- sort.sort();
- return (sort[0] == a)? false:true;
- }
- }
- }
- /**
- * @group :
- * @ver : 20080.06.12
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fWorkListPrint() {
- var pGrd = grd_druglist;
- var stitle1 = "";
- var stitle2 = "";
- var stitle3 = ""; //--(20080923)
-
- if (pGrd.rows <= 1) {
- messageBox("자료가 존재하지 않습니다.","E999");
- return;
- }
- //-----------------------------(20080801)
- //stitle1 = com_wardcd.label;
- //stitle2 = "전체";
- //stitle3 = "전체";
-
- //if (com_roomcd.label.replace("-","") != "") stitle2 = com_roomcd.label + " 호";
- //if (ipt_pid.label != "") stitle2 = opt_hngnm.label;
- //if (rdo_drugflag.label != "") stitle3 = rdo_drugflag.label;
- //model.makeValue("/root/main/cond/title", "투약 work list(" + stitle1 + "-" + stitle2 + "-" + stitle3 + ")");
- //-----------------------------(20080801)
- //-----------------------------(20081119)
- model.makeValue("/root/main/cond/title", "투약 work list");
- //-----------------------------(20081119)
- //-------------(20080802)
- var tempdd = model.getValue("/root/main/cond/orddd"); //printdtfr
- model.makeValue("/root/main/cond/printdtfr", tempdd);
-
- var colindex = fnCaptionFind(tempdd);
- colindex --;
- var sGrdCap1 = pGrd.caption.split("^");
-
- tempdd = "";
- if (sGrdCap1.length > (colindex+1)) {
- tempdd = sGrdCap1[colindex+1];
- tempdd = tempdd.replace("-","");
- tempdd = tempdd.replace("-",""); //주석처리하지말것
-
- model.makeValue("/root/main/cond/printdtto", tempdd);
- }
- //-------------(20080802)
-
- model.makeValue("/root/main/cond/printdd", getCurrentDate());
- model.makeValue("/root/main/cond/printtm", getCurrentTime().substr(0,4));
- model.removeNodeSet("/root/main/prtinfo");
- model.makeNode("/root/main/prtinfo/cond");
- model.copynode("/root/main/prtinfo/cond", "/root/main/cond");
-
- var rows = getNodesetCount(xWardDrugListPath);
- var sPathTemp = "/root/main/prtinfo/warddruginfo/warddruglist";
- var sPathDrug = "/root/main/warddruginfo/warddruglist";
- //------------(20081117)
- var sTempPid = ipt_pid.value;
- //------------(20081117)
- //--------------(20080910)
- var prtflag = false;
- var makerow = 0;
- //--------------(20080910)
-
- var sPathTemp2 = "/root/main/prtinfo/warddruginfo/warddruglist";
- var sPathDrug2 = "/root/main/warddruginfo/warddruglist";
-
- model.makeNode(sPathTemp2);
-
- copyNodesetType(sPathTemp2, sPathDrug2 + "[prtchk='true']");
-
- if(getNodesetCount(sPathTemp2) > 0 ) {
- prtflag = true;
- } else {
- prtflag = false;
- }
-
- /*
- for (var row=1;row<= rows;row++ ) {
-
- //----------------------------(20080910)
- //선택된 자료만 출력한다.
- if (model.getValue(sPathDrug + "[" + row + "]/prtchk") != "true") {
- continue;
- }
- makerow ++;
- prtflag = true;
- //----------------------------
-
- model.makeNode(sPathTemp + "[" + makerow + "]");
-
-
- //---------(20080923)
- //model.makeValue(sPathTemp + "[" + makerow + "]/patinfo", model.getValue(sPathDrug + "[" + row + "]/patinfo"));
- var vpatinfo = new Array;
- vpatinfo = model.getValue(sPathDrug + "[" + row + "]/patinfo").toString().split(" ");
- var vTemp = "";
- for (var i=0;i<vpatinfo.length;i++) {
- vTemp += vpatinfo[i].toString() + "\n";
- }
- model.makeValue(sPathTemp + "[" + makerow + "]/patinfo", vTemp);
- //---------(20080923)
-
- //---------(20081117)
- //전부이런형태로 출력한다.
- //if (sTempPid != "") {
- // model.makeValue(sPathTemp + "[" + makerow + "]/pid", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/pid"));
- // model.makeValue(sPathTemp + "[" + makerow + "]/patnm", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/patnm"));
- // model.makeValue(sPathTemp + "[" + makerow + "]/sexage", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/sexage"));
- // model.makeValue(sPathTemp + "[" + makerow + "]/roomcd1", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/roomcd") + '호');
- // model.makeValue(sPathTemp + "[" + makerow + "]/orddeptnm", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/orddeptnm"));
- //}
- //---------(20081117)
- sTempPid = vpatinfo[0];
- //alert(sTempPid);
- //---------(20081119)
-
- model.makeValue(sPathTemp + "[" + makerow + "]/pid1", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/pid"));
- model.makeValue(sPathTemp + "[" + makerow + "]/patnm1", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/patnm"));
- model.makeValue(sPathTemp + "[" + makerow + "]/sexage1", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/sexage"));
- model.makeValue(sPathTemp + "[" + makerow + "]/roomcd1", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/roomcd") + '호');
- model.makeValue(sPathTemp + "[" + makerow + "]/orddeptnm1", model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + sTempPid + "']/orddeptnm"));
- //---------(20081119)
-
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpkindnm", model.getValue(sPathDrug + "[" + row + "]/prcpkindnm"));
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpmixno", model.getValue(sPathDrug + "[" + row + "]/prcpmixno"));
- //------------(20080801)
- if ( model.getValue(sPathDrug + "[" + row + "]/spcldrug") == "M" ) { //마약
- model.makeValue(sPathTemp + "[" + makerow + "]/spcldrug", "Y");
- } else if ( model.getValue(sPathDrug + "[" + row + "]/spcldrug") == "H" ) {
- model.makeValue(sPathTemp + "[" + makerow + "]/spcldrug", "Y"); //향정신성
- } else {
- model.makeValue(sPathTemp + "[" + makerow + "]/spcldrug", "N"); //그외
- }
- //-------------
-
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpcd", model.getValue(sPathDrug + "[" + row + "]/prcpcd"));
-
- //-----------------------(20080804)
- //model.makeValue(sPathTemp + "[" + row + "]/prcpnm", model.getValue(sPathDrug + "[" + row + "]/prcpnm"));
- var sMixno = model.getValue(sPathDrug + "[" + row + "]/prcpmixno");
- //if (sMixno != "") {
- // model.makeValue(sPathTemp + "[" + makerow + "]/prcpnm", "(" + sMixno + ")" + model.getValue(sPathDrug + "[" + row + "]/prcpnm"));
- //} else {
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpnm", model.getValue(sPathDrug + "[" + row + "]/prcpnm"));
- //}
- //-----------------------
-
- //model.makeValue(sPathTemp + "[" + row + "]/prcpvol", model.getValue(sPathDrug + "[" + row + "]/prcpvol"));
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpvol", model.getValue(sPathDrug + "[" + row + "]/prcpvol") + "" +
- model.getValue(sPathDrug + "[" + row + "]/prcpvolunitflag"));
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpvolunitflag",model.getValue(sPathDrug + "[" + row + "]/prcpvolunitflag"));
-
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpqty", model.getValue(sPathDrug + "[" + row + "]/prcpqty") + "" +
- model.getValue(sPathDrug + "[" + row + "]/prcpqtyunitflag"));
-
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpqtyunitflag",model.getValue(sPathDrug + "[" + row + "]/prcpqtyunitflag"));
-
- model.makeValue(sPathTemp + "[" + makerow + "]/prcptims", model.getValue(sPathDrug + "[" + row + "]/prcptims"));
- model.makeValue(sPathTemp + "[" + makerow + "]/abbrnm", model.getValue(sPathDrug + "[" + row + "]/abbrnm"));
- model.makeValue(sPathTemp + "[" + makerow + "]/drugmthdspccd", model.getValue(sPathDrug + "[" + row + "]/drugmthdspccd"));
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpdelivefact", model.getValue(sPathDrug + "[" + row + "]/prcpdelivefact"));
- model.makeValue(sPathTemp + "[" + makerow + "]/orddrnm", model.getValue(sPathDrug + "[" + row + "]/orddrnm"));
- model.makeValue(sPathTemp + "[" + makerow + "]/fstrgstdt", model.getValue(sPathDrug + "[" + row + "]/fstrgstdt"));
- model.makeValue(sPathTemp + "[" + makerow + "]/prcphopedd", model.getValue(sPathDrug + "[" + row + "]/prcphopedd"));
-
- model.makeValue(sPathTemp + "[" + makerow + "]/drprcpetc7", model.getValue(sPathDrug + "[" + row + "]/drprcpetc7"));
- model.makeValue(sPathTemp + "[" + makerow + "]/drprcpetc8", model.getValue(sPathDrug + "[" + row + "]/drprcpetc8"));
-
-
- //-----------------(20080802)
- model.makeValue(sPathTemp + "[" + makerow + "]/dispdd1", grd_druglist.ValueMatrix(row,colDataidx ) );
- model.makeValue(sPathTemp + "[" + makerow + "]/dispdd2", grd_druglist.ValueMatrix(row,colDataidx+1) );
- //model.makeValue(sPathTemp + "[" + row + "]/dispdd1", grd_druglist.ValueMatrix(row,colindex ));
- //model.makeValue(sPathTemp + "[" + row + "]/dispdd2", grd_druglist.ValueMatrix(row,colindex+1 ));
- //-----------------(20080802)
- //-----------------------(20081121)
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpnmast", model.getValue(sPathDrug + "[" + row + "]/prcpnmast"));
-
- //-----------------------(20081217)
- if (sMixno != "") {
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpnmprt", "(" + sMixno + ")" + model.getValue(sPathDrug + "[" + row + "]/prcpnmprt"));
- } else {
- model.makeValue(sPathTemp + "[" + makerow + "]/prcpnmprt", model.getValue(sPathDrug + "[" + row + "]/prcpnmprt"));
- }
- //-----------------------(20081217)
-
- //model.makeValue(sPathTemp + "[" + makerow + "]/prcpnmprt", model.getValue(sPathDrug + "[" + row + "]/prcpnmprt"));
- //-----------------------(20081121)
- model.makeValue(sPathTemp + "[" + makerow + "]/zonecd", model.getValue(sPathDrug + "[" + row + "]/zonecd"));
- }
- */
-
- //------------------------(20080910)
- if ( prtflag == true ) {
- //exeReportPreview("RPMNR06301", "XMLSTR" , "/root/temp/prtinfo" , "" , "false" , "false", "", "", "", "false");
- //-----------(20081118)
- //통합함
- //if (sTempPid == "") {
- // exeReportPreview("RPMNR06301", "XMLSTR" , "/root/main/prtinfo");
- //} else {
- //exeReportPreview("RPMNR06302", "XMLSTR" , "/root/main/prtinfo");
-
- exeReportPreview("RPMNR06302", "XMLSTR", "/root/main/prtinfo", "", "true", "", "", "", "", "", "", "grp_report"); //미리보기 없이 출력 김홍점
- //}
- //-----------(20081117)
- } else {
- messageBox("출력할 내용이","I004");
- }
- //------------------------(20080910)
- }
- function fWorkListPrint_OLD(){
- var pid = model.getValue("/root/main/cond/pid");
- var indd = "";
- var cretno = "";
- if(pid != ""){
- indd = model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + pid + "']/indd");
- cretno = model.getValue("/root/main/wardpatinfo/wardpatlist[pid ='" + pid + "']/cretno");
- model.makeValue("/root/main/cond/indd", indd);
- model.makeValue("/root/main/cond/cretno", cretno);
- }
- model.resetInstanceNode("/root/send/reqdata");
- var orddd = model.getValue("/root/main/cond/orddd");
- var yorddd = getDateAddc(orddd,-1);
- var torddd = getDateAddc(orddd,1);
- model.makeValue("/root/main/cond/yorddd", yorddd);
- model.makeValue("/root/main/cond/torddd", torddd);
- model.copynode("/root/send/reqdata", xCondPath);
- model.removeNodeSet("/root/hidden/warddruginfo");
- model.removeNodeSet("/root/main/warddruginfo");
- if(submit("TRMNR06301")){
- var cnt = getNodesetCount("/root/hidden/warddruginfo/warddruglist");
- var inst_cnt = 0;
- var prev_prcpno = "";
- var drugtmspec = "";
- var drugtmspeccal = "";
- var medrbaseexistyn = "";
- var prcpno = "";
- var mod = "";
- var quotient = "";
- var prcpvol = "";
- var prcpvolunitflag = "";
- var prcpqty = "";
- var prcpqtyunitflag = "";
- var carebasedd = "";
- var carebasetm = "";
- for(var i = 1; i <= cnt; i++){
- prcpno = model.getValue(xHiddenWardDrugPath + "[" + i + "]/prcpno");
- drugtmspec = model.getValue(xHiddenWardDrugPath + "[" + i + "]/drugtmspec");
- medrbaseexistyn = model.getValue(xHiddenWardDrugPath + "[" + i + "]/medrbaseexistyn");
- if(medrbaseexistyn == "Y"){
- carebasedd = drugtmspec.substr(0,8);
- carebasetm = drugtmspec.substr(8,4);
- if(carebasedd == orddd){
- mod = carebasetm;
- quotient = 0;
- }else if(carebasedd == orddd){
- mod = carebasetm;
- quotient = 1;
- }else{}
- }else if(medrbaseexistyn == "N"){
- mod = fCarec_GetFillZeno(parseInt(Number(drugtmspec) % 2400),4,0);
- quotient = parseInt(Number(drugtmspec) / 2400);
- }
- if(i == 1 || prev_prcpno != prcpno){
- inst_cnt++;
- prcpvol = model.getValue(xHiddenWardDrugPath + "[" + i + "]/prcpvol");
- prcpvolunitflag = model.getValue(xHiddenWardDrugPath + "[" + i + "]/prcpvolunitflag");
- prcpqty = model.getValue(xHiddenWardDrugPath + "[" + i + "]/prcpqty");
- prcpqtyunitflag = model.getValue(xHiddenWardDrugPath + "[" + i + "]/prcpqtyunitflag");
- model.makeNode(xWardDrugListPath + "[" + inst_cnt + "]");
- model.copynode(xWardDrugListPath + "[" + inst_cnt + "]", xHiddenWardDrugPath + "[" + i + "]");
- model.makeValue(xWardDrugListPath + "[" + inst_cnt + "]/prcpvolnm", prcpvol + prcpvolunitflag);
- model.makeValue(xWardDrugListPath + "[" + inst_cnt + "]/prcpqtynm", prcpqty + prcpqtyunitflag);
- model.makeNode(xWardDrugListPath + "[" + inst_cnt + "]/drugtmspeccal");
- model.makeNode(xWardDrugListPath + "[" + inst_cnt + "]/tdrugtmspeccal");
- if(quotient == 0){
- model.makeValue(xWardDrugListPath + "[" + inst_cnt + "]/drugtmspeccal", mod);
- }else if(quotient == 1){
- model.makeValue(xWardDrugListPath + "[" + inst_cnt + "]/tdrugtmspeccal", mod);
- }else{}
- prev_prcpno = model.getValue(xHiddenWardDrugPath + "[" + i + "]/prcpno");
- }else{
- drugtmspeccal = model.getValue(xWardDrugListPath + "[" + inst_cnt + "]/drugtmspeccal");
- tdrugtmspeccal = model.getValue(xWardDrugListPath + "[" + inst_cnt + "]/tdrugtmspeccal");
- if(quotient == 0){
- model.makeValue(xWardDrugListPath + "[" + inst_cnt + "]/drugtmspeccal", drugtmspeccal + " " + mod);
- }else if(quotient == 1){
- model.makeValue(xWardDrugListPath + "[" + inst_cnt + "]/tdrugtmspeccal", tdrugtmspeccal + " " + mod);
- }else{}
- }
- }
-
- model.makeValue("/root/main/cond/title", "투약 work list(" + rdo_drugflag.label + ")");
- model.makeValue("/root/main/cond/printdd", getCurrentDate());
- model.makeValue("/root/main/cond/printtm", getCurrentTime().substr(0,4));
- if(cnt > 0){
- exeReportPreview("RPMNR06301", "XMLSTR" , "" , "" , "false" , "false", "", "", "", "false");
- }else{
- resetReportPreview();
- messageBox("출력할 내용이","I004");
- }
- }
- }
- /* --------------------------------------------------*/
- /* type : function */
- /* access : public */
- /* desc : 환자정보 가져오기(20080801) */
- /* param : 검색구분 */
- /* return : */
- /* --------------------------------------------------*/
- function fSearchPatInfo(qryflag) {
- var sPath1 = "/root/main/cond";
- var sPath2 = "/root/main/patinfo/patinfolist";
-
- model.removenodeset("/root/temp/pidinfo");
- model.makeValue("/root/temp/pidinfo/pid", model.getValue(sPath1 + "/pid_search"));
- model.makeValue("/root/temp/pidinfo/srchcond","1");
- //modal("SPPMC02500", 1,10, 10, "SPPMC02500", "/root/temp", "/root/send"); 17863430
- //modal("../../../pam/commonweb/xrw/SPPMC02500", qryflag,"150", "150", "SPPMC02500", "/root/source", "/root/send");
- modal("SPPMC02500", qryflag,"150", "150", "SPPMC02500", "/root/temp/pidinfo", "/root/send");
-
- //환자번호 copy
- var popupendflag = model.getValue("/root/main/popupendflag");
- if (popupendflag == "ok"){
- //model.makeValue(sPath1 + "/pid_search", model.getValue(sPath2 + "/pid") );
- model.makeValue(sPath1 + "/pid", model.getValue(sPath2 + "/pid") );
- model.makeValue(sPath1 + "/hngnm", model.getValue(sPath2 + "/hngnm") );
- } else {
- model.makeValue(sPath1 + "/pid", "" );
- model.makeValue(sPath1 + "/hngnm", "" );
- }
- model.refresh();
- }
-
- //---------------------------(20080910)
- function fnZoneDisp(pFlag) {
-
- //응급의료센터(2280200000)인 경우
- //병동정보대신에 구역정보가 보임)(20080620)
- if ( !isNull(model.getValue("/root/code/codeinfo/codelist[cdgrupid ='002' and cdid ='"+com_wardcd.value+"']/cdid")) ) {
- cap_roomcd.visible = false;
- com_roomcd.visible = false;
- //caption17.visible = false;
- //cmb_settingrn.visible = false;
- cap_Zone.visible = true;
- cmb_Zone.visible = true;
-
- var zonecd = model.getValue("/root/main/paminfo/pamlist/sectioncd");
- if( !isNull(zonecd) && zonecd != "-" ){
- cmb_Zone.value = model.getValue("/root/main/paminfo/pamlist/sectioncd");
- } else {
- cmb_Zone.value = "-";
- }
-
- } else {
- cap_roomcd.visible = true;
- com_roomcd.visible = true;
- //caption17.visible = true;
- //cmb_settingrn.visible = true;
- cap_Zone.visible = false;
- cmb_Zone.visible = false;
- if ( pFlag != "init"){
- fGetRoomList();
- model.makeValue("/root/main/cond/pid", "");
- model.makeValue("/root/main/cond/hngnm", "");
- model.makeValue("/root/main/cond/indd", "");
- model.makeValue("/root/main/cond/cretno", "");
- model.makeValue("/root/main/cond/roomcd", "");
- model.makeValue("/root/main/cond/settingrnid", "");
- model.makeValue("/root/main/cond/zonecd", "");
- model.removeNodeSet("/root/hidden/warddruginfo");
- model.removeNodeSet("/root/main/warddruginfo");
- grd_druglist.rebuild();
-
- }
- }
- //fGetPatList();
- }
- //---------------------------(20080910)
-
-
- //-------------------(20081117)
- function fClickDrugListBefore() {
- grd_druglist.visible = false;
- bolall.visible = false; //전체선택버튼
- //grpalert.visible = true;
- callLoadingWindow("");
- }
- function fClickDrugListAfter() {
- grd_druglist.visible = true;
- bolall.visible = true; //전체선택버튼
- //grpalert.visible = false;
- removeLoadingWindow();
- }
-
- //--------원무팀의 입원등록에서 사용하는 것 이용함
- function callLoadingWindow(msg){
- //20080703 이동식 추가
- //환자정보 조회 중 상태 표시
- body.createChild("xforms:iviewer", "id:ivr_progress; src:../../../com/commonweb/xrw/SPZZZ00400_로딩중화면.xrw; left:435px; top:339px; width:330px; height:120px;");
- var ivrObjt = document.all("ivr_progress");
- if( msg == '' || msg == '-' ){
- msg = "투약worklist 조회 중 입니다...";
- }
- ivrObjt.model.makeValue("/root/main/msg", msg);
- ivrObjt.model.refresh();
- }
- function removeLoadingWindow(){
- //20080703 이동식 추가
- //환자정보 조회 중 상태 표시 지우기
- body.removeChild("ivr_progress");
- }
- function WaitLoadingWindow(idx) {
- var msg = "투약worklist 조회 중 입니다...";
- //var msg = "투약기록 조회(" + idx + ") 중 입니다...";
- var ivrObjt = document.all("ivr_progress");
- model.setFocus("ivr_progress");
- ivrObjt.model.setFocus("caption75");
-
- ivrObjt.model.makeValue("/root/main/msg", msg);
- ivrObjt.model.refresh();
- //model.setFocus("output33");
- model.refresh();
- }
- //-------------------(20081117)
- /**
- * @group :
- * @ver : 2009.06.29
- * @by : JA
- * @---------------------------------------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약카드 출력 (A2:경구, A4:외용, A60:주사, A61:수액)
- (SMMNR06000.js:fClickDrugPrint)-> 일괄출력기능으로 변경_20090629
- * @param : sLineFlag : "Y" - 투약worklist에서 호출 시 투약카드에 점선기능 추가
- * @return :
- * @---------------------------------------------------------------------------------
- */
- function fAllDrugCardPrint(sLineFlag){
- model.removeNodeSet("/root/send/medicard/warddruglist");
- model.makeNode("/root/send/medicard");
- var prt_row = "1";
- var prt_col = "1";
- var rows = grd_druglist.rows-1;
- var prcpclscd = "";
- var tims = "";
- var mthdcd = "";
- var prcpmixno = "";
- var drugbasetmspec = "";
- var pid = ""; // 20090629
- var prcphopedd = ""; // 처방적용일_20091023
-
- var medicardcnt = 1; //경구
- //var medicardcnt5 = 1; //주사
- //var medicardcnt7 = 1; //외용
-
- var prtTims_Array = new Array;
- var prtMthd_Array = new Array;
- var prtBaseTims_Array = new Array;
- var prtMix_Array = new Array;
- var prtPid_Array = new Array; // 20090629
- var k=1;
- model.removeNodeSet("/root/send/medicard");
- for(var i = 1; i <= rows; i++){
- drugbasetmspec = "";
- if(model.getValue(xWardDrugListPath + "[" + i + "]/prtchk") == "true"){
- // alert(model.getValue(xWardDrugListPath + "[" + i + "]/prtchk")+"\n"+model.getValue(xWardDrugListPath + "[" + i + "]/pid")+"\n"+model.getValue(xWardDrugListPath + "[" + i + "]/prcpcd"));
-
- orgprcpclscd = model.getValue(xWardDrugListPath + "[" + i + "]/orgprcpclscd");
- prcpclscd = model.getValue(xWardDrugListPath + "[" + i + "]/prcpclscd"); // 20091023 //원본 prcpclscd = model.getValue(xWardDrugListPath + "[" + i + "]/orgprcpclscd");
- tims = model.getValue(xWardDrugListPath + "[" + i + "]/tims");
- mthdcd = model.getValue(xWardDrugListPath + "[" + i + "]/mthdcd");
- prcpmixno = model.getValue(xWardDrugListPath + "[" + i + "]/prcpmixno");
- pid = model.getValue(xWardDrugListPath + "[" + i + "]/pid"); // 20090629
- prcphopedd = model.getValue(xWardDrugListPath + "[" + i + "]/prcphopedd");// 처방적용일_20091023
- orddd = model.getValue("/root/main/cond/orddd"); // 조회조건의 업무일자_20091023
- prcpmixno = model.getValue(xWardDrugListPath + "[" + i + "]/prcpmixno"); // 20091230추가
- for(var j=fstdispcol; j<=lstdispcol; j++){
- if(model.getValue(xWardDrugListPath + "[" + i + "]/dispdd"+j)!=""){
- drugbasetmspec += model.getValue(xWardDrugListPath + "[" + i + "]/dispdd"+j)+" ";
- }
- }
-
- //경구
- /*원본_20090629_경구약은 따로따로 출력되어도 됨_신미진ITC
- if(prcpclscd == "A2"){
- alert(pid+"\n"+isSearchArrayIndex2(prtBaseTims_Array, drugbasetmspec, prtMthd_Array, mthdcd, prtPid_Array, pid));
- if(isSearchArrayIndex2(prtBaseTims_Array, drugbasetmspec, prtMthd_Array, mthdcd, prtPid_Array, pid) == -1){
- prtBaseTims_Array[medicardcnt] = drugbasetmspec;
- prtMthd_Array[medicardcnt] = mthdcd;
- prtPid_Array[medicardcnt] = pid // 20090629
- model.makevalue(xWardDrugListPath + "[" + i + "]/soding", medicardcnt);
- medicardcnt++;
- }else{
- model.makeValue(xWardDrugListPath + "[" + i + "]/soding", isSearchArrayIndex2(prtBaseTims_Array, drugbasetmspec, prtMthd_Array, mthdcd, prtPid_Array, pid));
- }
- }
- */
- if(prcphopedd == orddd && prcpmixno == ""){ // 업무일자와 처방적용일자가 동일 한 경우에만 출력, 믹스된 주사제외(믹스주사제 모두 제외여부 확인 필요!!!!!)
- // 주사
- // 수액제외(prcpclscd:A61)_20091023
- if(orgprcpclscd == "A6" && prcpclscd != "A61"){ // 원본 if(prcpclscd == "A6"){
- if(prcpmixno == "" || isSearchArrayIndex(prtMix_Array, prcpmixno, prtPid_Array, pid) == -1){
- prtMix_Array[medicardcnt] = prcpmixno;
- prtPid_Array[medicardcnt] = pid // 20090629
- model.makeValue(xWardDrugListPath + "[" + i + "]/soding", medicardcnt);
- medicardcnt++;
- }else{
- model.makeValue(xWardDrugListPath + "[" + i + "]/soding", isSearchArrayIndex(prtMix_Array, prcpmixno, prtPid_Array, pid));
- }
- }
- //외용
- if(orgprcpclscd == "A2" || orgprcpclscd == "A4"){ // 원본 if(prcpclscd == "A2" || prcpclscd == "A4"){
- model.makeValue(xWardDrugListPath + "[" + i + "]/soding", medicardcnt);
- medicardcnt++;
- }
- }
-
- // 투약카드 출력 시 사용
- var drugtmspect = "";
- var drugtmspectime = "";
- var tmpdrugtmspect = "";
- var drugtmspectlist = "";
- var tims = "";
- var space;
- drugbasetmspec= drugbasetmspec.replace(":","");
- drugtmspect = drugbasetmspec.split(" ");
- tims = model.getValue(xWardDrugListPath + "[" + i + "]/tims");
- // 횟수별 시간공백지정
- if(tims < 4){
- space = " ";
- }else{
- space = " ";
- }
- /*
- for(var j=1; j<drugtmspect.length; j++){
- drugtmspect[j] = drugtmspect[j].replace(":","");
- if(drugtmspect[j].substr(0,2) == "00"){
- drugtmspect[j] = "24" + drugtmspect[j].substr(2,2);
- }
- }
- */
- // Sort기능
- var tempmin=0, tempmax=0;
- for(var j=1; j<drugtmspect.length; j++){
- if(Number(drugtmspect[j-1]) > Number(drugtmspect[j])){
- tempmin = drugtmspect[j];
- drugtmspect[j] = drugtmspect[j-1];
- drugtmspect[j-1] = tempmin;
- }
- }
- for(var j=0; j<drugtmspect.length; j++){
- if(Number(drugtmspect[j]) > Number(drugtmspect[j+1])){
- tempmax = drugtmspect[j];
- drugtmspect[j] = drugtmspect[j+1];
- drugtmspect[j+1] = tempmax;
- }
- }
-
- // 시간형식 설정(ex.1600 -> 4P)
- for(var j=0; j<drugtmspect.length; j++){
- if(drugtmspect[j] != ""){
- drugtmspect[j] = drugtmspect[j].replace(":","");
- if(drugtmspect[j].substr(0,2) == "00"){
- drugtmspect[j] = "24" + drugtmspect[j].substr(2,2);
- }
- tmpdrugtmspect = Number(drugtmspect[j]);
- if(tmpdrugtmspect > 1200){
- if(tmpdrugtmspect >= 1300){
- tmpdrugtmspect = tmpdrugtmspect - 1200;
- }
- if(tmpdrugtmspect < 1000){
- tmpdrugtmspect = "0"+ String(tmpdrugtmspect);
- }
- if(String(tmpdrugtmspect).substr(2,2) == "00"){
- drugtmspectime += String(tmpdrugtmspect).substr(0,2) + "P" + space;
- }else{
- drugtmspectime += String(tmpdrugtmspect).substr(0,2) + ":" + String(tmpdrugtmspect).substr(2,2) + "P" + space;
- }
- }else if(tmpdrugtmspect <= 1200){
- if(tmpdrugtmspect < 1000){
- tmpdrugtmspect = "0"+ String(tmpdrugtmspect);
- }
- if(String(tmpdrugtmspect).substr(2,2) == "00"){
- drugtmspectime += String(tmpdrugtmspect).substr(0,2) + "A" + space;
- }else{
- drugtmspectime += String(tmpdrugtmspect).substr(0,2) + ":" + String(tmpdrugtmspect).substr(2,2) + "A" + space;
- }
- }
- }
- model.makeValue(xWardDrugListPath + "[" + i + "]/tempdrugtmspeccal", drugtmspectime);
- } // end for 투약카드
- } // end if check
- } // end for
- for(var j = 1; j <= rows; j++){
- if(model.getValue(xWardDrugListPath + "[" + j + "]/prtchk") == "true"){
- model.makeValue(xWardDrugListPath + "[" + j + "]/last" , medicardcnt-1);
- model.makeValue(xWardDrugListPath + "[" + j + "]/row" , "1");
- model.makeValue(xWardDrugListPath + "[" + j + "]/col" , "1");
- model.makeValue(xWardDrugListPath + "[" + j + "]/sLineFlag" , sLineFlag); // 20090629
- model.makeValue(xWardDrugListPath + "[" + j + "]/check" , model.getValue(xWardDrugListPath + "[" + j + "]/prtchk")); // 20090629
-
- model.makeNode ("/root/send/medicard");
- model.duplicate("/root/send/medicard", xWardDrugListPath + "[" + j + "]");
- }
- }
-
- if(medicardcnt > 1){
- exeReportPreview("RPMNR00602", "XMLSTR" , "" , "" , "true" , "", "", "", "", "true"); // 미리보기 기능 없음
- // exeReportPreview("RPMNR00602", "XMLSTR", ""); // 미리보기 기능 있음 TEST용
- } else{
- if(prcpclscd == "A61"){
- messageBox("수액은 출력되지 않습니다.","I");
- }else{
- messageBox("투약카드 출력항목이 아닙니다","I");
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.06.25
- * @by : 최경용
- * @--------------------------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 문자열 검색(배열)
- -> SMMNR06000.js에서 투약카드 출력을 위해 가져옴.
- * @param :
- * @return :
- * @--------------------------------------------------------------------
- */
- function isSearchArrayIndex(baseCol_Array, sData, prtPid_Array, pid){
- for(var i = 0; i <= baseCol_Array.length; i++){
- if((baseCol_Array[i]) == sData && prtPid_Array[i] == pid){
- return i;
- }
- }
- return -1;
- }
- function isSearchArrayIndex2(baseCol_Array1, sData1, baseCol_Array2, sData2, prtPid_Array, pid){
- for(var i = 0; i <= baseCol_Array1.length; i++){
- if(baseCol_Array1[i] == sData1 && baseCol_Array2[i] == sData2 && prtPid_Array[i] == pid){
- return i;
- }
- }
- return -1;
- }
- function fSettingLine() {
- var firstpid="";
- var pid ="";
-
- if(grd_druglist.rows > grd_druglist.fixedRows) {
- firstpid = grd_druglist.valueMatrix(1, grd_druglist.colRef("pid"));
- }
-
- for(var i = grd_druglist.fixedRows; i < grd_druglist.rows; i++){
- pid = grd_druglist.valueMatrix(i, grd_druglist.colRef("pid"));
-
- if(firstpid != pid) {
- firstpid = pid;
- //grd_test
- grd_druglist.rowStyle(i-1, "all", "border-bottom-color") = "#ff0000";
- grd_druglist.rowStyle(i-1, "all", "border-top-width") = "3";
- }
- }
- grd_druglist.refresh();
- }
|