12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177 |
- /*
-
- 투약시간 기준관리(SMMNW075.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var dept_tims = "";
- var dept_prcpcd = "";
- var dept_direccd = "";
- var xDtimList = "/root/main/mnrmdtim/mnrmdtimList";
- var xMechList = "/root/main/picmmech/picmmechList";
- var xDeptList = "/root/main/deptdtim/deptdtimList";
- var xSapList = "/root/main/sapinfo/saplist/saplist";
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 병동코드 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(){
-
- //수액기준자료관리 정리
- model.removenodeset("/root/main/sapinfo/saplist/saplist");
-
- //공통코드
- zbcfGetCodeList(new Array("A0017"), new Array("/root/init/A0017list"));
- model.removenode("/root/init/init");
- model.removenode("/root/main/deptdtim");
-
- //병동(부서) 리스트 조회
- submit("TRMNR00601");
-
- //화면 초기화
- var cnt = getNodesetCount("/root/init/init/ward");
- model.makeValue("/root/init/init/ward1/wardcd", "ALL");
- model.makeValue("/root/init/init/ward1/wardnm", "공통");
- for(var i = 1; i <= cnt; i++){
- model.makenode("/root/init/init/ward1[" + (i+1) + "]");
- model.copynode("/root/init/init/ward1[" + (i+1) + "]","/root/init/init/ward[" + i + "]");
- }
- model.setValue("/root/init/A0017list", "N");
- model.setValue("/root/init/baseflaglist", "N");
- model.setValue("/root/init/deptcdList", getUserInfo("dutplcecd"));
-
- fmthdChange("mthdcd"); //용법코드 조회 후 콤보박스에 저장
- fDeptSerch(); //투약시간기준관리(부서별)
-
- //------------------------------------
- // superuser id인 경우
- // 추후 superuser ID로 변경될 예정
- //------------------------------------
-
- //1. 투약기준시간관리
- var userid = getUserId();
- var btnActiveFlag = true;
-
- //------------------------------------(20080811)
- //권한 정해지면 다시 작업함 일단 전체 품
- //-------(20080912) 소경화 선생님 ID
- //db화 해야 할것 같음(간호공통에 등록해야할것 같음)
- //alert(userid);
-
- //-------------------------------------------------(20081208)
- //프로그램사용권한으로 막는다고 정의함(20081208) 따라서 사용자로는 막지 않음
- //즉, 모든 사용자가 슈퍼유저임
- //if(userid == "96030294" || userid == "DEV503") {
- //
-
- if(getScreenMenuParameter() == "SU") {
- btnActiveFlag = false; //superuser 만 버튼 사용가능
- } else {
- btnActiveFlag = true;
- }
- //} else {
- // //투약기준시간관리
- // cmb_dept.disabled = true // super user id 가 아니면 부서콤보를 고정시킴
- // cmb_dept.value = getUserInfo("dutplcecd"); // super user id 가 아니면 부서정보를 로그인자 정보로 설정한다.
- //
- // //수액기준시간관리
- // cmb_sapdept.disabled= true // super user id 가 아니면 부서콤보를 고정시킴
- // cmb_sapdept.value = getUserInfo("dutplcecd"); // super user id 가 아니면 부서정보를 로그인자 정보로 설정한다.
- //
- // messageBox("슈퍼 유저가 아니므로 부서정보를 변경할수 없습니다. " +
- // getUserInfo("dutplcenm") + "(" + getUserInfo("dutplcecd") + ")" ,"E999");
- //}
- //-------------------------------------------------(20081208)
-
- //------------------------------------
- //test용으로 일단 전부 활성화시킴
- //btnActiveFlag = false
-
- btn_init.disabled = btnActiveFlag; //공통&용법 초기화버튼
- btn_dtimcon.disabled = btnActiveFlag; //공통&용법 적용버튼
- btn_mthdadd.disabled = btnActiveFlag; //공통&용법 추가버튼
- btn_mthddel.disabled = btnActiveFlag; //공통&용법 삭제버튼
- btn_mthdsave.disabled = btnActiveFlag; //공통&용법 저장버튼
- btn_mechcon.disabled = btnActiveFlag; //공통&약품 적용버튼
- btn_mechadd.disabled = btnActiveFlag; //공통&약품 추가버튼
- btn_mechdel.disabled = btnActiveFlag; //공통&약품 삭제버튼
- btn_mechsave.disabled = btnActiveFlag; //공통&약품 저장버튼
-
- // btn_deptcon.disabled = false; //부서 적용버튼
- // btn_deptdel.disabled = false; //부서 삭제버튼
- // btn_deptsave.disabled = false; //부서 저장버튼
- // btn_apply.disabled = false; //적용 버튼
- //------------------------------------
- model.refresh();
-
- //--------(20080514)
- //fMechSerch("grdclick"); //화면 open 시 공통&약품도 조회함(막음(20080520)
-
- //--------(20080519)
- grd_dtimList.frozenCols = grd_dtimList.colRef("direccd")+1;
- grd_mechList.frozenCols = grd_mechList.colRef("prcpcd")+1;
- grd_deptList.frozenCols = grd_deptList.colRef("direccd")+1;
-
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 용법코드 조회 후 콤보박스에 저장
- * @param : direccd
- * @return : mthdcd
- * @---------------------------------------------------
- */
- function fmthdChange(flg){
-
- cmb_deptBaseflg.value = cmb_baseflg.value;
- var direccd = model.getValue("/root/init/A0017list");
- var mthdcd = model.getValue("/root/init/mthdcdlist");
-
- model.removenode("/root/send");
- model.makeValue("/root/send/direccd", direccd);
- model.makeValue("/root/send/mthdcd", mthdcd);
-
- if(flg=="mthdcd") {
- model.removenode("/root/init/mthdcdlist");
- model.setValue("/root/init/mthdcdlist_1/basecnt","");
- model.makeValue("/root/send/flg", "mthdcd");
- submit("TRMNR07501"); //용법구분에 따른 용법코드추출
- //용법구분과 공통&약품과는 관계가 없다.(20080520이전) ==> 관계있음(20080520)
- model.removenodeset("/root/main/picmmech/picmmechList");
- fSearch();// 용법별 조회
-
- }else if(flg=="basecnt"){
- fSearch();// 용법별 조회
- //용법과 약품코드는 관계가 없으므로 조회기능을 막는다.(20080519)
- fMechSerch("direccd");// 약품코드별 조회
- }
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간관리 저장(공통/용법)
- * 단일 저장
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimSave() {
-
- var cnt = grd_dtimList.rows - 1;
- var chkcnt = 0;
- var rowstatus = "";
-
- var direccd = "";
- var baseflag = "";
- var exectims = "";
-
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var comyn = "";
- var grpno = "";
-
- var prcpcd = "";
- var deptcd = "";
-
- //공통&용법 그리드 check row 체크
- for(var i = 1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/mnrmdtim/mnrmdtimList["+i+"]/status"))=="true"){
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- messageBox("저장할 항목을 ","C002");
- return;
- }
-
- var sData = fSaveHeader();
-
- for(var i = 1; i <= cnt; i++){
- rowstatus = grd_dtimList.rowstatus(i);
-
- //1:insert 2:update 3:insert&new : (20080517)
- if(rowstatus == "1" || rowstatus == "3" || rowstatus == "2" ){
- direccd = model.getValue(xDtimList + "[" + i + "]/direccd");
- baseflag = model.getValue(xDtimList + "[" + i + "]/baseflag");
- exectims = model.getValue(xDtimList + "[" + i + "]/exectims");
- drugtmspec = model.getValue(xDtimList + "[" + i + "]/drugtmspec");
- drugtmspecspl = drugtmspec.split(" ");
- drugtmspeccal = model.getValue(xDtimList + "[" + i + "]/drugtmspeccal");
- drugtmspeccalspl = drugtmspeccal.split(" ");
- comnyn = model.getValue(xDtimList + "[" + i + "]/comnyn");
- grpno = model.getValue(xDtimList + "[" + i + "]/grpno");
- //----------------------------------------------------------------------------------
- //등록또는 수정시 서버로직에서 삭제후 신규등록으로 처리(기준시간(pk)이 변경될수가 있으므로)
- //row가 다르면 일련번호가 1부터 시작
- //----------------------------------------------------------------------------------
- for(var j = 0; j < exectims; j++){
- sData += direccd + "▦"; // 용법코드
- sData += "ALL" + "▦"; // 처방코드
- sData += "ALL" + "▦"; // 부서코드
- sData += (j+1) + "▦"; // 일련번호
- sData += baseflag + "▦"; // 기준구분
- sData += drugtmspecspl[j] + "▦"; // 지정시간
- sData += parseInt(drugtmspeccalspl[j] / 2400) + "▦"; // 기준일수
- sData += drugtmspeccalspl[j] + "▦"; // 실제시간
- sData += exectims + "▦"; // 수행횟수
- sData += comnyn + "▦"; // 기본값여부
- sData += drugtmspec + "▦"; // 투여시간text표시
- sData += drugtmspeccal + "▦"; // 투여시간text표시(24시간 기준)
- sData += grpno + "▦"; // 그룹번호(20080515)
- sData += "fDtimSave" + "▩"; // 코드구분자
- }
- chkcnt++
- }
- }
-
- if(chkcnt == 0){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
-
- //------------------test
- submit("TXMNR07501");
- //model.setValue("/root/init/mthdcdlist", "");
- fSearch(); //공통&용법 조회
- }
- function fDtimSave_OLD(){
- var apnttm;
- var basedayno;
- var orgtm;
- var baseflag = model.getValue("/root/init/A0017list");
- var direccd = model.getValue("/root/init/mthdcdlist");
- var exectims = model.getValue("/root/init/mthdcdlist_1/basecnt");
- var comnyn = model.getValue("/root/hidden/comnyn");
- var drugtmspec = "";//투여시간 text 형시으로 표시
- var drugtmspeccal = "";//투여시간 text 형시으로 표시(익일시간 추가)
- if(baseflag == ""){
- messageBox("기준구분을 ","C002");
- return;
- }
- if(direccd == ""){
- messageBox("용법종류를 ","C002");
- return;
- }
- if(exectims == ""){
- messageBox("투약회수를 ","C002");
- return;
- }
- var time = "";
- var day = "";
- drugtmspec = "";
- for (var i=1 ; i<=exectims ; i++){
- time = grd_mnrmdtim.valueMatrix(1,i);
- day = grd_mnrmdtim.valueMatrix(2,i);
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- if(day == "0" || day == ""){
- drugtmspec += time;
- drugtmspeccal += time;
- }else{
- drugtmspec += time;
-
- time = (Number(time) + Number(day) * 2400);
- drugtmspeccal += Number(time);
- }
- }
- var sData = "";
- //헤드
- sData = "direccd"; // 용법코드
- sData += "▦prcpcd"; // 처방코드
- sData += "▦deptcd"; // 부서코드
- sData += "▦seqno"; // 일련번호
- sData += "▦baseflag"; // 기준구분
- sData += "▦apnttm"; // 지정시간
- sData += "▦basedayno"; // 기준일수
- sData += "▦orgtm"; // 실제시간
- sData += "▦exectims"; // 수행횟수
- sData += "▦comnyn"; // 공통여부
- sData += "▦drugtmspec"; // 투여시간text표시
- sData += "▦drugtmspeccal"; // 코드구분자
- sData += "▦flg"; // 투여시간text표시(24시간 기준)
- sData += "▩"; // Record(Row) 분리기호
-
-
- for(var i=1 ; i<=exectims ; i++){
- apnttm = grd_mnrmdtim.valueMatrix(1,i);
- basedayno = grd_mnrmdtim.valueMatrix(2,i);
-
- if(basedayno == "") {
- basedayno = "0";
- orgtm = apnttm;
- }else if(basedayno == "0"){
- orgtm = apnttm;
- }else if(basedayno == "1"){
- orgtm = Number(apnttm) + 2400;
- }else{}
- orgtm = fCarec_GetFillZeno(orgtm,4,0);
- if(!((grd_mnrmdtim.valueMatrix(2,i) == "") ||(grd_mnrmdtim.valueMatrix(2,i) == "0")||(grd_mnrmdtim.valueMatrix(2,i) == "1"))){
- messageBox("Day 항목은 0 또는 1 만 ","C001");
- return;
- }
- //data
- sData += direccd +"▦";
- sData += "ALL" +"▦";
- sData += "ALL" +"▦";
- sData += i +"▦";
- sData += baseflag +"▦";
- sData += apnttm +"▦";
- sData += basedayno +"▦";
- sData += orgtm +"▦";
- sData += exectims +"▦";
- sData += comnyn +"▦";
- sData += drugtmspec +"▦";
- sData += drugtmspeccal+"▦";
- sData += "fDtimSave" +"▩";
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData" ,sData );
- submit("TXMNR07501");
- model.setValue("/root/init/mthdcdlist", "");
- fSearch();
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간 저장을 위한 header
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveHeader() {
- var sData = "";
-
- sData = ""
- sData += "direccd" ;// 용법코드
- sData += "▦prcpcd" ;// 처방코드
- sData += "▦deptcd" ;// 부서코드
- sData += "▦seqno" ;// 일련번호
- sData += "▦baseflag" ;// 기준구분
- sData += "▦apnttm" ;// 지정시간
- sData += "▦basedayno" ;// 기준일수
- sData += "▦orgtm" ;// 실제시간
- sData += "▦exectims" ;// 수행횟수
- sData += "▦comnyn" ;// 공통여부
- sData += "▦drugtmspec" ;// 투여시간text표시
- sData += "▦drugtmspeccal" ;// 투여시간text표시(24시간 기준)
- sData += "▦grpno" ;// 그룹번호(20080515)
- sData += "▦flg" ;// 코드구분자
- sData += "▩" ;// Record(Row) 분리기호
-
- return sData;
- }
- /**
- * @group :
- * @ver : 2007.04.27
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(용법별)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fSearch(){
-
- var direccd = model.getValue("/root/init/mthdcdlist");
- if(direccd == "") direccd = "%";
- for (var i=1 ; i<=13 ; i++){
- grd_mnrmdtim.valueMatrix(1,i) = "";
- grd_mnrmdtim.valueMatrix(2,i) = "";
- }
- model.removenodeset("/root/main/mnrmdtim/mnrmdtimList");
- model.removenode("/root/send");
- model.makeValue("/root/send/baseflag", model.getValue("/root/init/A0017list"));
- model.makeValue("/root/send/direccd",direccd);
- submit("TRMNR07504");
-
- grd_dtimList.clearStatus();
- grd_dtimList.refresh();
-
- }
- /**
- * @group :
- * @ver : 2007.04.27
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(약품코드별)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fMechSerch(gubun){
- model.removenodeset("/root/main/picmmech/picmmechList");
- model.removenode("/root/send");
- model.makeValue("/root/send/baseflag", model.getValue("/root/init/A0017list"));
- if (gubun=="direccd"){
- var direccd = model.getValue("/root/init/mthdcdlist");
- model.makeValue("/root/send/direccd",direccd);
- }else if(gubun=="grdclick"){
-
- //공통 용법이 변경되면 공통 약품이 변경된어야 한다.
- var direccd = grd_dtimList.valueMatrix(grd_dtimList.row, 1);
- var direccd = grd_dtimList.valueMatrix(grd_dtimList.row, grd_dtimList.colRef("direccd") );
- model.makeValue("/root/send/direccd",direccd);
- }
- submit("TRMNR07505");
- grd_mechList.clearStatus();
- grd_mechList.refresh();
- }
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(약품코드별) 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMechApply(){
-
- var pGrdmnrmdtim = grd_mnrmdtim; //설정입력그리드
- var pPathmnrmdtim = "/root/main/dtiminfo/dtim"; //설정입력그리드 path
-
- var pGrdmechList = grd_mechList; //설정반영그리드
- var pPathmechList = "/root/main/picmmech/picmmechList"; //설정반영그리드 path
- //체크
- // if(pGrdmnrmdtim.rows < 3){
- // messageBox("공통투약시간에 설정되지않았습니다.","E999");
- // return;
- // }
- if(model.getValue("/root/init/mthdcdlist_1/basecnt") == ""){
- messageBox("공통투약시간에 설정되지않았습니다.","E999");
- return;
- }
- if(pGrdmechList.row < 1){
- return;
- }
- //---------------------------------
- // 투약시간 설정값 추출
- //---------------------------------
- var drugtmspec = "";; //투여시간 text 형시으로 표시(화면용)
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(자료용)(24시간기준)
- var day = "";
- //var dtim_tims = model.getValue(pPathdtimList + "[" + pGrdtimList.row + "]/exectims"); //투약회수
- var dtim_tims = model.getValue("/root/init/mthdcdlist_1/basecnt"); //투약회수
-
- //설정입력그리드를 돌면서 시간(n row)을 한줄의 텍스트로 만듬
- for (var i = 1 ; i <= dtim_tims ; i++){
- time = pGrdmnrmdtim.valueMatrix(1,i);
- day = pGrdmnrmdtim.valueMatrix(2,i);
- if(time.length != 4){
- messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
-
- //-----------------------------------------------
- //설정반영그리드에 반영
- //신규가 아니면 수정으로 처리한다.(20080519)
- //-----------------------------------------------
- var rowstatus = pGrdmechList.rowstatus(pGrdmechList.row);
- if (rowstatus == "1" || rowstatus == "3") {
- } else {
- pGrdmechList.rowstatus(pGrdmechList.row) = "2"; //수정으로상태변경
- }
- model.setValue(pPathmechList + "[" + pGrdmechList.row + "]/status", "true" ); //check
- model.setValue(pPathmechList + "[" + pGrdmechList.row + "]/exectims", dtim_tims ); //투여회수
- model.setValue(pPathmechList + "[" + pGrdmechList.row + "]/drugtmspec", drugtmspec ); //투약시간
- model.setValue(pPathmechList + "[" + pGrdmechList.row + "]/drugtmspeccal", drugtmspeccal ); //투약시간
- rdo_comnyn.disabled = true; //공통&약품인 경우는 무조건 'Y'이므로 수정할수 없다.
- model.refresh();
- }
-
- function fMechApply_OLD(){
- if(grd_mechList.row<1){
- return;
- }
-
- var cnt = grd_mechList.rows-1;
- var chkcnt =0;
- for(var i=1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/status"))=="true"){
- chkcnt++;
- }
- }
- if(chkcnt<1){
- messageBox("적용할 항목을 ","C002");
- return;
- }
-
- var direccd = model.getValue("/root/init/mthdcdlist");
- var exectims = model.getValue("/root/init/mthdcdlist_1/basecnt");
- var drugtmspec = ""; //투여시간 text 형시으로 표시
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(24시간기준)
- var time = "";
- var day = "";
-
- for (var i=1 ; i<=exectims ; i++){
- if(i==1){
- drugtmspec = grd_mnrmdtim.valueMatrix(1,i);
- }else{
- drugtmspec = drugtmspec + " " + grd_mnrmdtim.valueMatrix(1,i);
- }
- }
- for (var i=1 ; i <= exectims ; i++){
- time = grd_mnrmdtim.valueMatrix(1,i);
- day = grd_mnrmdtim.valueMatrix(2,i);
- if(i != 1) {
- drugtmspeccal += " ";
- }
- if(day == "0" || day == ""){
- drugtmspeccal += time;
- }else{
- time = (Number(time) + Number(day) * 2400);
- drugtmspeccal += Number(time);
- }
- }
- for(var i=1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/picmmech/picmmechList["+i+"]/status")) == "true"){
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/direccd", direccd );
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/exectims", exectims );
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/drugtmspec", drugtmspec );
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/drugtmspeccal", drugtmspeccal );
- }
- }
-
- for(var j=1 ;j < grd_dtimList.rows ; j++){
- model.setValue("/root/main/mnrmdtim/mnrmdtimList["+j+"]/status", "");
- }
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.04.17
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간 삭제
- * @param : dtim : 용법별 , mech : 약품코드별 , dept : 부서별
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimDelete(gubun) {
- var cntrows ;
- var chkcnt = 0;
- var xpathDtim;
-
- //삭제 버튼 구분
- if(gubun=="dtim"){// 용법별
- cntrows = grd_dtimList.rows-1;
- xpathGubun = "/root/main/mnrmdtim/mnrmdtimList";
- }else if(gubun=="mech"){// 약품코드별
- cntrows = grd_mechList.rows-1;
- xpathGubun = "/root/main/picmmech/picmmechList";
- }else if(gubun=="dept"){// 부서별
- cntrows = grd_deptList.rows-1;
- xpathGubun = "/root/main/deptdtim/deptdtimList";
- }
- var chkstatus ;
- for(var i=0 ;i <= cntrows ; i++){
- chkstatus = model.getValue(xpathGubun+"["+i+"]/status");
-
- if(chkstatus =="true"){
- chkcnt = chkcnt+1;
- }
- }
- if(chkcnt < 1){
- messageBox("삭제할 항목을 ","C002");
- return;
- }
- var sData = "";
-
- sData = "";
- sData += "direccd" ;// 용법코드
- sData += "▦prcpcd" ;// 처방코드
- sData += "▦deptcd" ;// 부서코드
- sData += "▦baseflag" ;// 기준구분
- sData += "▦exectims" ;// 수행횟수
- sData += "▦flg" ;// 코드구분자
- sData += "▦grpno" ;// 그룹번호
- sData += "▩" ;// Record(Row) 분리기호
-
- var direccd = "";
- var prcpcd = "";
- var deptcd = "";
- var baseflag = "";
- var exectims = "";
- var grpno = "";
- var delcnt = 0; //삭제건수 여부
- var pGrd;
-
- for(var i=1 ;i <= cntrows ; i++){
-
- chkstatus = model.getValue(xpathGubun+"[" + i +"]/status");
-
- if (chkstatus =="true"){
-
- if(gubun == "dtim"){
- pGrd = grd_dtimList; //공통&용법별조회
- }else if(gubun == "mech"){
- pGrd = grd_mechList; //공통&약품코드별조회
- }else if(gubun == "dept"){
- pGrd = grd_deptList; //부서&(용법||약품)별조회
- }else{}
- //상태체크
- // var rowstatus = pGrd.rowstatus(i);
- // if(rowstatus == "1" || rowstatus == "3") {
- //// pGrd.deleteRow(i); //신규row는 그냥 삭제함 , 넘어가고 재조회시 없어짐
- // } else {
-
- direccd = model.getValue(xpathGubun+"["+i+"]/direccd");
- prcpcd = model.getValue(xpathGubun+"["+i+"]/prcpcd");
- deptcd = model.getValue(xpathGubun+"["+i+"]/deptcd");
- baseflag = model.getValue(xpathGubun+"["+i+"]/baseflag");
- exectims = model.getValue(xpathGubun+"["+i+"]/exectims");
- grpno = model.getValue(xpathGubun+"["+i+"]/grpno");
-
- //if (direccd == "" || direccd == "ALL") {
- // sData += "ALL" + "▦";
- //} else {
- sData += direccd + "▦";
- //}
- if (prcpcd == "" || prcpcd == "ALL") {
- sData += "ALL" + "▦";
- } else {
- sData += prcpcd + "▦";
- }
- if (deptcd == "" || deptcd == "ALL") {
- sData += "ALL" + "▦";
- } else {
- sData += deptcd + "▦";
- }
- sData += baseflag + "▦";
- sData += exectims + "▦";
- sData += "fDtimDelete" + "▦";
- sData += grpno + "▩";
-
- /*
- sData += model.getValue(xpathGubun+"["+i+"]/direccd") + "▦";
- if(gubun=="dept"){
- if((model.getValue(xpathGubun+"["+i+"]/prcpcd"))=="" ) {
- sData += "ALL" + "▦";
- }else
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }else{
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }
- sData += model.getValue(xpathGubun+"["+i+"]/deptcd") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/baseflag") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/exectims") + "▦";
- sData += "fDtimDelete" + "▦";
- sData += "" + "▩";
- */
- delcnt += 1; //삭제건수 증가
- // }
- }
- }
- // //삭제건수 체크
- // if (delcnt <= 0) return;
-
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
-
- //-------------(test)
- //return;
- submit("TXMNR07501");
-
- if(gubun == "dtim"){
- fSearch(); //공통&용법별조회
- }else if(gubun == "mech"){
- fMechSerch("direccd"); //공통&약품코드별조회
- }else if(gubun == "dept"){
- fDeptSerch(); //부서&(용법||약품)별조회
- }else{}
- }
- function fDtimDelete_OLD(gubun) {
- var cnt ;
- var chkcnt = 0;
- var xpathDtim;
-
- //삭제 버튼 구분
- if(gubun=="dtim"){// 용법별
- cnt = grd_dtimList.rows-1;
- xpathGubun = "/root/main/mnrmdtim/mnrmdtimList";
- }else if(gubun=="mech"){// 약품코드별
- cnt = grd_mechList.rows-1;
- xpathGubun = "/root/main/picmmech/picmmechList";
- }else if(gubun=="dept"){// 부서별
- cnt = grd_deptList.rows-1;
- xpathGubun = "/root/main/deptdtim/deptdtimList";
- }
- for(var i=1 ;i <= cnt ; i++){
- if((model.getValue(xpathGubun+"["+i+"]/status"))=="true"){
- chkcnt = chkcnt+1;
- }
- }
- if(chkcnt < 1){
- messageBox("삭제할 항목을 ","C002");
- return;
- }
- var sData = "direccd" ;// 용법코드
- sData += "▦prcpcd" ;// 처방코드
- sData += "▦deptcd" ;// 부서코드
- sData += "▦baseflag" ;// 기준구분
- sData += "▦exectims" ;// 수행횟수
- sData += "▦flg" ;// 코드구분자
- sData += "▩" ;// Record(Row) 분리기호
-
- for(var i=1 ;i <= cnt ; i++){
- if ((model.getValue(xpathGubun+"["+i+"]/status"))=="true"){
- sData += model.getValue(xpathGubun+"["+i+"]/direccd") + "▦";
- if(gubun=="dept"){
- if((model.getValue(xpathGubun+"["+i+"]/prcpcd"))=="" ) {
- sData += "ALL" +"▦";
- }else
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }else{
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }
- sData += model.getValue(xpathGubun+"["+i+"]/deptcd") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/baseflag") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/exectims") + "▦";
- sData += "fDtimDelete" + "▩";
- }
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
- submit("TXMNR07501");
-
- if(gubun == "dtim"){
- fSearch();//용법별 조회
- }else if(gubun == "mech"){
- fMechSerch("direccd");//약품코드별 조회
- }else if(gubun == "dept"){
- fDeptSerch();//부서별 조회
- }else{}
- }
- /**
- * @group :
- * @ver : 2007.04.17
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 공통 & 약품코드별 저장
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fMechSave() {
-
- var cnt = grd_mechList.rows-1;
- var chkcnt = 0;
- var rowstatus = "";
-
- var direccd = "";
- var baseflag = "";
- var exectims = "";
-
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var comyn = "";
- var grpno = "";
-
- var prcpcd = "";
- var deptcd = "";
-
- for(var i = 1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/picmmech/picmmechList["+i+"]/status"))=="true"){
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/hngnm")) == ""){
- messageBox("잘못된 약품코드입니다 다시 ","C001");
- return;
- }
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/drugtmspec")) == ""){
- messageBox("투약시간이 적용되지 않았습니다. 다시 ","C001");
- return;
- }
-
- // if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/direccd")) == ""){
- // messageBox("적용버튼을 누른후 ","C001");
- // return;
- // }
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- var sData = fSaveHeader();
- for(var i = 1; i <= cnt; i++){
- rowstatus = grd_mechList.rowstatus(i);
-
- //1:insert 2:update 3:insert&new : (20080517)
- if(rowstatus == "1" || rowstatus == "3" || rowstatus == "2" ){
-
- direccd = model.getValue(xMechList + "[" + i + "]/direccd");
- prcpcd = model.getValue(xMechList + "[" + i + "]/prcpcd");
-
- baseflag = model.getValue(xMechList + "[" + i + "]/baseflag");
- //baseflag = "-";
-
- exectims = model.getValue(xMechList + "[" + i + "]/exectims");
- drugtmspec = model.getValue(xMechList + "[" + i + "]/drugtmspec");
- drugtmspecspl = drugtmspec.split(" ");
- drugtmspeccal = model.getValue(xMechList + "[" + i + "]/drugtmspeccal");
- drugtmspeccalspl = drugtmspeccal.split(" ");
- comnyn = "Y";
- grpno = model.getValue(xMechList + "[" + i + "]/grpno");
-
- //----------------------------------------------------------------------------------
- //등록또는 수정시 서버로직에서 삭제후 신규등록으로 처리(기준시간(pk)이 변경될수가 있으므로)
- //row가 다르면 일련번호가 1부터 시작
- //----------------------------------------------------------------------------------
- for(var j = 0; j < exectims; j++){
-
- //sData += "ALL" +"▦"; // 용법코드
- sData += direccd +"▦"; // 용법코드
- sData += prcpcd +"▦"; // 처방코드
- sData += "ALL" +"▦"; // 부서코드
- sData += (j+1) +"▦"; // 일련번호
- sData += baseflag +"▦"; // 기준구분
- sData += drugtmspecspl[j] +"▦"; // 지정시간
- sData += parseInt(drugtmspeccalspl[j] / 2400) +"▦"; // 기준일수
- sData += drugtmspeccalspl[j] +"▦"; // 실제시간
- sData += exectims +"▦"; // 수행횟수
- sData += comnyn +"▦"; // 기본값여부
- sData += drugtmspec +"▦"; // 투여시간text표시
- sData += drugtmspeccal +"▦"; // 투여시간text표시(24시간 기준)
- sData += grpno +"▦"; // 그룹번호(20080515)
- sData += "fDtimSave" +"▩"; // 코드구분자
- /*
- sData += grd_mechList.valueMatrix(i,3) +"▦"; // 용법코드
- sData += grd_mechList.valueMatrix(i,1) +"▦"; // 처방코드
- sData += "ALL" +"▦"; // 부서코드
- sData += '1' +"▦"; // 일련번호
- sData += model.getValue("/root/init/A0017list") +"▦"; // 기준구분
- sData += "" +"▦"; // 지정시간
- sData += "" +"▦"; // 기준일수
- sData += "" +"▦"; // 실제시간
- sData += grd_mechList.valueMatrix(i,4) +"▦"; // 수행횟수
- sData += model.getValue("/root/hidden/comnyn") +"▦"; // 기본값여부
- sData += grd_mechList.valueMatrix(i,5) +"▦"; // 투여시간text표시
- sData += grd_mechList.valueMatrix(i,6) +"▦"; // 투여시간text표시(24시간 기준)
- sData += grd_mechList.valueMatrix(i,colgrpno) +"▦"; // 그룹번호(20080515)
- sData += "fDtimSave" +"▩"; // 코드구분자
- */
- }
- chkcnt++
- }
- }
-
- if(chkcnt == 0){
- messageBox("저장할 항목을 ","C002");
- return;
- }
-
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
-
- //-----------(test)
- //return;
- submit("TXMNR07501");
- fMechSerch("grdclick"); // 공통&약품코드별 조회
- }
- function fMechSave_OLD() {
- var cnt = grd_mechList.rows-1;
- var chkcnt =0;
- for(var i = 1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/picmmech/picmmechList["+i+"]/status"))=="true"){
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- var sData = "direccd" ;//용법코드
- sData += "▦prcpcd" ;//처방코드
- sData += "▦deptcd" ;//부서코드
- sData += "▦seqno" ;//일련번호
- sData += "▦baseflag" ;//기준구분
- sData += "▦apnttm" ;//지정시간
- sData += "▦basedayno" ;//기준일수
- sData += "▦orgtm" ;//실제시간
- sData += "▦exectims" ;//수행횟수
- sData += "▦comnyn" ;//공통여부
- sData += "▦drugtmspec" ;//투여시간text표시
- sData += "▦drugtmspeccal";//투여시간text표시
- sData += "▦flg" ;//코드구분자
- sData += "▩" ;//Record(Row) 분리기호
- for(var i = 1; i <= cnt; i++){
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/status")) == "true"){
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/prcpcd")) == ""){
- messageBox("약품코드를 ","C001");
- return;
- }
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/hngnm")) == ""){
- messageBox("잘못된 약품코드입니다 다시 ","C001");
- return;
- }
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/direccd")) == ""){
- messageBox("적용버튼을 누른후 ","C001");
- return;
- }
-
- sData += grd_mechList.valueMatrix(i,3) +"▦";
- sData += grd_mechList.valueMatrix(i,1) +"▦";
- sData += "ALL" +"▦";
- sData += '1' +"▦";
- sData += model.getValue("/root/init/A0017list") +"▦";
- sData += "" +"▦";
- sData += "" +"▦";
- sData += "" +"▦";
- sData += grd_mechList.valueMatrix(i,4) +"▦";
- sData += model.getValue("/root/hidden/comnyn") +"▦";
- sData += grd_mechList.valueMatrix(i,5) +"▦";
- sData += grd_mechList.valueMatrix(i,6) +"▦";
- sData += "fDtimSave" +"▩";
- }
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
- submit("TXMNR07501");
- fMechSerch("direccd"); // 약품코드별 조회
- }
- /**
- * @group :
- * @ver : 2007.04.17
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서별(용법 또는 약품) 저장
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptSave() {
-
- var cnt = grd_deptList.rows - 1;
- var chkcnt = 0;
- var rowstatus = "";
-
- var direccd = "";
- var baseflag = "";
- var exectims = "";
-
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var comyn = "";
- var grpno = "";
- var prcpcd = "";
- var deptcd = "";
-
- //부서&(용법 || 약품) 그리드 check row 체크
- for(var i = 1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/deptdtim/deptdtimList["+i+"]/status"))=="true"){
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- var sData = fSaveHeader();
- for(var i = 1; i <= cnt; i++){
-
- rowstatus = grd_deptList.rowstatus(i);
-
- //1:insert 2:update 3:insert&new : (20080517)
- if(rowstatus == "1" || rowstatus == "3" || rowstatus == "2" ){
-
- direccd = model.getValue(xDeptList + "[" + i + "]/direccd");
- prcpcd = model.getValue(xDeptList + "[" + i + "]/prcpcd");
- baseflag = model.getValue(xDeptList + "[" + i + "]/baseflag");
- deptcd = model.getValue("/root/init/deptcdList");
- exectims = model.getValue(xDeptList + "[" + i + "]/exectims");
- drugtmspec = model.getValue(xDeptList + "[" + i + "]/drugtmspec");
- drugtmspecspl = drugtmspec.split(" ");
- drugtmspeccal = model.getValue(xDeptList + "[" + i + "]/drugtmspeccal");
- drugtmspeccalspl = drugtmspeccal.split(" ");
- comnyn = "Y"; //기본값여부 ('N'->'Y'(20080517)
- grpno = model.getValue(xDtimList + "[" + i + "]/grpno");
-
- //----------------------------------------------------------------------------------
- //등록또는 수정시 서버로직에서 삭제후 신규등록으로 처리(기준시간(pk)이 변경될수가 있으므로)
- //row가 다르면 일련번호가 1부터 시작
- //----------------------------------------------------------------------------------
- for(var j = 0; j < exectims; j++){
- //if (direccd == "") {
- // sData += "ALL" + "▦"; // 용법코드
- //} else {
- sData += direccd + "▦"; // 용법코드
- //}
- if (prcpcd == "") {
- sData += "ALL" + "▦"; // 처방코드
- } else {
- sData += prcpcd + "▦"; // 처방코드
- }
- sData += deptcd + "▦"; // 부서코드
- sData += (j+1) + "▦"; // 일련번호
- sData += baseflag + "▦"; // 기준구분
- sData += drugtmspecspl[j] + "▦"; // 지정시간
- sData += parseInt(drugtmspeccalspl[j] / 2400) + "▦"; // 기준일수
- sData += drugtmspeccalspl[j] + "▦"; // 실제시간
- sData += exectims + "▦"; // 수행횟수
- sData += comnyn + "▦"; // 기본값여부 ('N'->'Y'(20080517)
- sData += drugtmspec + "▦"; // 투여시간text표시
- sData += drugtmspeccal + "▦"; // 투여시간text표시(24시간 기준)
- sData += grpno + "▦"; // 그룹번호(20080515)
- sData += "fDtimSave" + "▩"; // 코드구분자
- }
- chkcnt++
- }
- }
- if(chkcnt == 0){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
-
- //-------------(test)
- //return;
- submit("TXMNR07501");
- fDeptSerch(); // 부서(용법 || 약품코드) 조회
- }
- function fDeptSave_OLD() {
- var cnt = grd_deptList.rows - 1;
- var chkcnt = 0;
- var rowstatus = "";
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var exectims = "";
- var sData = "direccd▦" ; // 용법코드
- sData += "prcpcd▦" ; // 처방코드
- sData += "deptcd▦" ; // 부서코드
- sData += "seqno▦" ; // 일련번호
- sData += "baseflag▦" ; // 기준구분
- sData += "apnttm▦" ; // 지정시간
- sData += "basedayno▦" ; // 기준일수
- sData += "orgtm▦" ; // 실제시간
- sData += "exectims▦" ; // 수행횟수
- sData += "comnyn▦" ; // 공통여부
- sData += "drugtmspec▦" ; // 투여시간text표시
- sData += "drugtmspeccal▦"; // 투여시간text표시(24시간 기준)
- sData += "flg▩" ; // 코드구분자
- for(var i = 1; i <= cnt; i++){
- rowstatus = grd_deptList.rowstatus(i);
- if(rowstatus == "1" || rowstatus == "3"){
- exectims = model.getValue(xDeptList + "[" + i + "]/exectims");
- drugtmspec = model.getValue(xDeptList + "[" + i + "]/drugtmspec");
- drugtmspecspl = drugtmspec.split(" ");
- drugtmspeccal = model.getValue(xDeptList + "[" + i + "]/drugtmspeccal");
- drugtmspeccalspl = drugtmspeccal.split(" ");
- for(var j = 0; j < exectims; j++){
- sData += model.getValue(xDeptList + "[" + i + "]/direccd") + "▦";
- sData += "ALL" + "▦";
- sData += model.getValue("/root/init/deptcdList") + "▦";
- sData += (j+1) + "▦";
- sData += model.getValue(xDeptList + "[" + i + "]/baseflag") + "▦";
- sData += drugtmspecspl[j] + "▦";
- sData += parseInt(drugtmspeccalspl[j] / 2400) + "▦";
- sData += drugtmspeccalspl[j] + "▦";
- sData += exectims + "▦";
- sData += "N" + "▦";
- sData += drugtmspec + "▦";
- sData += drugtmspeccal + "▦";
- sData += "fDtimSave" + "▩";
- }
- chkcnt++
- }
- }
- if(chkcnt == 0){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
- submit("TXMNR07501");
- fDeptSerch(); // 약품코드별 조회
- }
-
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 약품코드명 조회
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fPrcpSerch(){
- var calcscorcd;
- var colidx1 = grd_mechList.colRef("prcpcd");
- var colidx2 = grd_mechList.colRef("hngnm");
-
- //if(grd_mechList.col==1){ (20080519)
- if (grd_mechList.col == colidx1) {
- //calcscorcd = grd_mechList.valueMatrix(grd_mechList.row,1);
- calcscorcd = grd_mechList.valueMatrix(grd_mechList.row, colidx1);
-
- for(var i=0 ;grd_mechList.rows-1;i++ ){
-
- //if(calcscorcd == (grd_mechList.valueMatrix(i,1))){
- if(calcscorcd == (grd_mechList.valueMatrix(i,colidx1))){
- if(i == grd_mechList.row){
- break;
- }
- messageBox("약품이 ","E006");
- return;
- }
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/calcscorcd", calcscorcd);
- submit("TRMNR07506");
-
- if(model.getValue("/root/hidden/mech/hngnm") == ""){
- //grd_mechList.valueMatrix(grd_mechList.row,2) = "";
- grd_mechList.valueMatrix(grd_mechList.row,colidx2) = "";
- messageBox("조회된 약품코드가 ","I004");
- }else {
- //grd_mechList.valueMatrix(grd_mechList.row,2) = model.getValue("/root/hidden/mech/hngnm");
- grd_mechList.valueMatrix(grd_mechList.row,colidx2) = model.getValue("/root/hidden/mech/hngnm");
- }
- model.refresh();
- }
- }
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서별 설정에 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptApply(){
-
- var dtimrows = grd_dtimList.rows;
- var mechrows = grd_mechList.rows;
- var deptrows = grd_deptList.rows;
-
- var direcd_Array = new Array;
- var prcpcd_Array = new Array;
- var k = 1, l = 1;
- var prcpcd = "";
- var direccd = "";
- var exectims = "";
- var dept_prcpcd = "";
- var dept_direccd = "";
- var dept_exectims = "";
- var chk_direcd = "false";
- var chk_prcpcd = "false";
- var direcdcnt = 0;
- var prcpcdcnt = 0;
- var row = 0;
-
- for(var i = 1; i <= dtimrows; i++){
- if((model.getValue(xDtimList + "[" + i + "]/status")) == "true"){
- direcd_Array[direcd_Array.length] = i;
- model.setValue(xDtimList + "[" + i + "]/status", "false");
- }
- }
- for(var j = 1; j <= mechrows; j++){
- if((model.getValue(xMechList + "[" + j + "]/status")) == "true"){
- prcpcd_Array[prcpcd_Array.length] = j;
- model.setValue(xMechList + "[" + j + "]/status", "false");
- }
- }
- if(direcd_Array.length + prcpcd_Array.length == 0){
- messageBox("적용할 항목을 ","C002");
- return;
- }
- //용법코드별 적용
- for(k = 0; k < direcd_Array.length; k++){
- direccd = model.getValue(xDtimList + "[" + direcd_Array[k] + "]/direccd");
- exectims = model.getValue(xDtimList + "[" + direcd_Array[k] + "]/exectims");
- //부서별 초기값설정 그리드 약품코드 중복체크
- for(l = 1; l < deptrows; l++){
-
- dept_prcpcd = model.getValue(xDeptList + "[" + l + "]/prcpcd");
- dept_direccd = model.getValue(xDeptList + "[" + l + "]/direccd");
- dept_exectims = model.getValue(xDeptList + "[" + l + "]/exectims");
-
- if(dept_prcpcd == "" && direccd == dept_direccd && exectims == dept_exectims){
- messageBox(direccd + "용법이 ","E006");
- chk_direcd = "true";
- }
- }
- if(chk_direcd == "false"){
- direcdcnt++;
- grd_deptList.addrow(false);
- row = grd_deptList.rows-1;
-
- model.copynode(xDeptList + "[" + row + "]", xDtimList + "[" + direcd_Array[k] + "]");
- model.makeValue(xDeptList + "[" + row + "]/prcpcd", "");
- model.makeValue(xDeptList + "[" + row + "]/hngnm", ""); //--(20081117)
- model.makeValue(xDeptList + "[" + row + "]/status", "");
- model.makeValue(xDeptList + "[" + row + "]/comnyn", "Y");
- }
- chk_direcd = "false";
- }
-
- //약품코드별 적용
- //alert ( prcpcd_Array.length ) ;
-
- for(k = 0; k < prcpcd_Array.length; k++){
- prcpcd = model.getValue(xMechList + "[" + prcpcd_Array[k] + "]/prcpcd");
- exectims = model.getValue(xMechList + "[" + prcpcd_Array[k] + "]/exectims");
-
- //부서별 초기값설정 그리드 약품코드 중복체크
- for(l = 1; l <= deptrows; l++){
-
- dept_prcpcd = model.getValue(xDeptList + "[" + l + "]/prcpcd");
- dept_direccd = model.getValue(xDeptList + "[" + l + "]/direccd");
- dept_exectims = model.getValue(xDeptList + "[" + l + "]/exectims");
-
- if(dept_direccd == "" && prcpcd == dept_prcpcd && exectims == dept_exectims){
- messageBox(prcpcd + "약품이 ","E006");
- chk_prcpcd = "true";
- }
- }
-
- if(chk_prcpcd == "false"){
- prcpcdcnt++;
- grd_deptList.addrow(false);
- row = grd_deptList.rows-1;
-
- model.copynode(xDeptList + "[" + row + "]", xMechList + "[" + prcpcd_Array[k] + "]");
- //model.makeValue(xDeptList + "[" + row + "]/direccd", "");
- model.makeValue(xDeptList + "[" + row + "]/status", "");
- model.makeValue(xDeptList + "[" + row + "]/comnyn", "Y");
- }
- chk_prcpcd = "false";
- }
- grd_deptList.refresh();
- }
- /**
- * @group :
- * @ver : 2007.05.09
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서별 리스트 클릭시
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDeptListClick(){
- var row = grd_deptList.row;
-
- if(grd_deptList.col != 0){
- //그리드 초기화
- for (var i=1 ; i<=13 ; i++){
- grd_deptdtim.valueMatrix(1,i)="";
- grd_deptdtim.valueMatrix(2,i)="";
- }
-
- var exectims = model.getValue("/root/main/deptdtim/deptdtimList[" + row + "]/exectims");
- var timscount = model.getValue("/root/main/deptdtim/deptdtimList[" + row + "]/drugtmspec");
- var timscountextt = model.getValue("/root/main/deptdtim/deptdtimList[" + row + "]/drugtmspeccal");
- var prcpcd = model.getValue("/root/main/deptdtim/deptdtimList[" + row + "]/prcpcd");
- var direccd = model.getValue("/root/main/deptdtim/deptdtimList[" + row + "]/direccd");
-
- for(var i= 1 ; i< 13 ;i++){
- grd_deptdtim.colHidden(i) = true;
- }
- for(var i= 1 ; i<= exectims ;i++){
- grd_deptdtim.colHidden(i) = false; //그리드 활성화
- }
- var array_timscount = timscount.split(" ");
- var array_timscounpartextt = timscountextt.split(" ");
- var cnt = array_timscount.length;
-
- dept_tims = exectims;
- dept_prcpcd = prcpcd;
- dept_direccd = direccd;
-
- for(var i = 0; i < cnt; i++){
- var a = array_timscount[i];
- var b = array_timscounpartextt[i];
- grd_deptdtim.valueMatrix(1,i+1) = a;
- grd_deptdtim.valueMatrix(2,i+1) = parseInt(b/2400);
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.05.09
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(부서별)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptSerch(){
-
-
- cmb_baseflg.value = cmb_deptBaseflg.value;
- var deptcd = model.getValue("/root/init/deptcdList");
- var baseflaglist = model.getValue("/root/init/baseflaglist");
-
- if(baseflaglist == ""){
- baseflaglist = "%";
- }
-
- model.removenode("/root/main/deptdtim");
- model.removenode("/root/send");
- model.makeValue("/root/send/baseflag", baseflaglist);
- model.makeValue("/root/send/deptcd", deptcd);
- submit("TRMNR07507");
- grd_deptList.clearStatus();
- grd_deptList.refresh();
- }
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(부서별) 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptlistApply(){
- var pGrddeptdtim = grd_deptdtim; //설정입력그리드
- var pPathdeptdtim = "/root/main/dtiminfo/dtim"; //설정입력그리드 path
-
- var pGrddeptList = grd_deptList; //설정반영그리드
- var pPathdeptList = "/root/main/deptdtim/deptdtimList"; //설정반영그리드 path
- //체크
- if(pGrddeptdtim.rows < 3){
- messageBox("공통투약시간에 설정되지않았습니다.","E999");
- return;
- }
- if(pGrddeptList.row < 1){
- return;
- }
-
- //---------------------------------
- // 투약시간 설정값 추출
- //---------------------------------
- var cntrows = pGrddeptList.rows;
-
- var drugtmspec = ""; //투여시간 text 형시으로 표시(화면용)
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(자료용)(24시간기준)
- var day = ""; //일수
- var time = ""; //시간
- //var dtim_tims = model.getValue(pPathdeptList + "[" + grd_deptList.row + "]/exectims"); //투약회수
- var dtim_tims = dept_tims;
- //설정입력그리드를 돌면서 시간(n row)을 한줄의 텍스트로 만듬
- for (var i = 1 ; i <= dtim_tims ; i++){
- time = pGrddeptdtim.valueMatrix(1,i);
- day = pGrddeptdtim.valueMatrix(2,i);
- if(time.length != 4){
- messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
-
- //-----------------------------------------------
- //설정반영그리드에 반영
- //신규가 아니면 수정으로 처리한다.(20080519)
- //-----------------------------------------------
- //pGrddeptList 클릭시 dept_tims , dept_prcpcd , dept_direccd 에 값이 반영됨
- for(var j = 1 ; j < cntrows ; j++){
- if( dept_tims == model.getValue(pPathdeptList + "[" + j + "]/exectims") &&
- dept_prcpcd == model.getValue(pPathdeptList + "[" + j + "]/prcpcd") &&
- dept_direccd == model.getValue(pPathdeptList + "[" + j + "]/direccd") ) {
-
- var rowstatus = pGrddeptList.rowstatus(pGrddeptList.row);
- if (rowstatus == "1" || rowstatus == "3") {
- } else {
- pGrddeptList.rowstatus(pGrddeptList.row) = "2"; //수정으로상태변경
- }
- model.setValue(pPathdeptList + "[" + j + "]/status", "true" ); //check
- model.setValue(pPathdeptList + "[" + j + "]/drugtmspec", drugtmspec );
- model.setValue(pPathdeptList + "[" + j + "]/drugtmspeccal", drugtmspeccal );
- }
- }
- model.refresh();
- }
-
- function fDeptlistApply_OLD(){
- if(grd_deptList.row < 1){
- return;
- }
-
- var cnt = grd_deptList.rows;
- var drugtmspec = "";; //투여시간 text 형시으로 표시
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시
- var day = "";
- for (var i = 1 ; i <= dept_tims ; i++){
- time = grd_deptdtim.valueMatrix(1,i);
- day = grd_deptdtim.valueMatrix(2,i);
- if(time.length != 4){
- messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
- for(var j = 1 ; j < cnt ; j++){
- if(dept_tims == model.getValue("/root/main/deptdtim/deptdtimList[" + j + "]/exectims") &&
- dept_prcpcd == model.getValue("/root/main/deptdtim/deptdtimList[" + j + "]/prcpcd") &&
- dept_direccd == model.getValue("/root/main/deptdtim/deptdtimList[" + j + "]/direccd")){
- model.setValue("/root/main/deptdtim/deptdtimList[" + j + "]/drugtmspec", drugtmspec);
- model.setValue("/root/main/deptdtim/deptdtimList[" + j + "]/drugtmspeccal", drugtmspeccal);
- }
- }
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준관리 조회
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetSapList(){
- model.removenodeset("/root/main/sapinfo/saplist/saplist");
- model.removenode("/root/send");
- model.makeValue("/root/send/deptcd",model.getValue("/root/main/cond/deptcd"));
- model.makeValue("/root/send/drugcd",model.getValue("/root/main/cond/drugcd"));
- model.makeValue("/root/send/drugnm",model.getValue("/root/main/cond/drugnm"));
- submit("TRMNR07508");
- // var rows = grd_saplist.rows;
- // for(var i = 2; i <= rows; i++){
- // grd_saplist.isReadOnly(i, 2) = true;
- // }
- //-------------------(20080910)
- var yellow = "#ffff00";
- var white = "#ffffff";
- var sPathSapInfo = "/root/main/sapinfo/saplist/saplist";
- var rows = grd_saplist.rows-1;
-
- //부서가 공통이 아닌경우
- //해당부서에 수액정보가 등록되지 않은 경우는 공통부서정보를 표시하여 저장한다.
- if (model.getValue("/root/main/cond/deptcd") != "ALL") {
- for(var row = 1; row <= rows; row++){
- //자료선택여부
- if (model.getValue(sPathSapInfo + "[" + row + "]/ordflag") == "2") {
- grd_saplist.cellstyle("background-color",row,1,row,grd_saplist.cols-1 ) = yellow;
- } else {
- grd_saplist.cellstyle("background-color",row,1,row,grd_saplist.cols-1) = white;
- }
- }
- out_sapmsg.value = "노란색은 공통부서자료입니다.";
- out_sapmsg.visible = true;
- } else {
- for(var row = 1; row <= rows; row++){
- grd_saplist.cellstyle("background-color",row,1,row,grd_saplist.cols-1) = white;
- }
- out_sapmsg.value = "";
- out_sapmsg.visible = false;
- }
- //-------------------(20080910)
- grd_saplist.clearStatus();
- grd_saplist.refresh();
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준관리 저장
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveSapInfo(flag){
-
- var sPathSapInfo = "/root/main/sapinfo/saplist/saplist";
- var rows = grd_saplist.rows-1;
-
- // //약품코드 확인
- // for(var i = 1; i < rows; i++){
- // if((grd_saplist.rowStatus(i+1) == 1 || grd_saplist.rowStatus(i+1) == 3) &&
- // model.getValue("/root/main/sapinfo/saplist/saplist[" + i + "]/drugnm") == ""){
- // grd_saplist.deleteRow(i+1);
- // }
- // }
- // grd_saplist.rebuildStyle();
- var sSateData = "";
-
- //저장 자료 생성
- var savecnt = 0;
- var savestatus = "";
- var sHeader = "m▦rownum▦drugcd▦deptcd▦commyn▦sapyn▦ioyn▦sapnoyn▦status▩"
- var sData = "";
-
- rows = grd_saplist.rows-1;
- for(var i = 1; i <= rows; i++){
- //자료선택여부
- if (model.getValue(sPathSapInfo + "[" + i + "]/chk") == "true") {
- savestatus = "";
- if ( flag == "del") {
- //부서조회인데, 공통자료를 가져온것이므로 삭제대상이 아니다.
- if ( model.getValue(sPathSapInfo + "[" + i + "]/status") == "I" ) {
- } else {
- savestatus = "d";
- }
- } else {
- if ( model.getValue(sPathSapInfo + "[" + i + "]/status") == "I" ) {
- savestatus = "i";
- } else {
- savestatus = "u";
- }
- }
- if (savestatus != "") {
- sData += savestatus + "▦";
- sData += i + "▦";
- sData += model.getValue(sPathSapInfo + "[" + i + "]/drugcd") + "▦";
- sData += cmb_sapdept.value + "▦";
-
- if ( model.getValue(sPathSapInfo + "[" + i + "]/commyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- if ( model.getValue(sPathSapInfo + "[" + i + "]/sapyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- if ( model.getValue(sPathSapInfo + "[" + i + "]/ioyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- if ( model.getValue(sPathSapInfo + "[" + i + "]/sapnoyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- sData += "" + "▩";
-
- savecnt ++;
- }
- }
- }
- if (savecnt <= 0 ) {
- messageBox("저장할 자료가 존재하지 않습니다.","E999");
- return;
- }
- model.removenode("/root/send");
- //model.makeValue("/root/send/saplist", grd_saplist.getUpdateData());
- model.makeValue("/root/send/saplist", sHeader + sData);
- model.makeValue("/root/send/deptcd",model.getValue("/root/main/cond/deptcd"));
- model.makeValue("/root/send/drugcd",model.getValue("/root/main/cond/drugcd"));
- model.makeValue("/root/send/drugnm",model.getValue("/root/main/cond/drugnm"));
-
- //test
- //return;
- if(submit("TXMNR07502")){
- messageBox("성공적으로","I001");
-
- //---------------(20080910)
- fGetSapList(); //저장후 재조회
- //---------------(20080910)
- }
- grd_saplist.rebuild();
- }
- function fSaveSapInfo_OLD(){
- var rows = grd_saplist.rows-1;
- for(var i = 1; i < rows; i++){
- if((grd_saplist.rowStatus(i+1) == 1 || grd_saplist.rowStatus(i+1) == 3) &&
- model.getValue("/root/main/sapinfo/saplist/saplist[" + i + "]/drugnm") == ""){
- grd_saplist.deleteRow(i+1);
- }
- }
- grd_saplist.rebuildStyle();
- var sSateData = "";
-
- model.removenode("/root/send");
- model.makeValue("/root/send/saplist", grd_saplist.getUpdateData());
- model.makeValue("/root/send/deptcd",model.getValue("/root/main/cond/deptcd"));
- model.makeValue("/root/send/drugcd",model.getValue("/root/main/cond/drugcd"));
-
- //test
- return;
- if(submit("TXMNR07502")){
- messageBox("성공적으로","I001");
- }
- grd_saplist.rebuild();
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 약품정보 조회(수액기준관리)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDrugDbClick(flag){
-
- model.setValue("/root/temp/receivedata/receiveref", "/root/temp/druginfo");
- modal("SPADB60100",0,100,150,"SPADB60100","/root/temp/receivedata","/root/temp/receivedata");
-
- var drugcd = model.getValue("/root/temp/druginfo");
- var drugnm = "";
- var row = 0;
-
- if(drugcd != ""){
- model.removenode("/root/send");
- model.makeValue("/root/send/calcscorcd", drugcd);
- submit("TRMNR07506");
- drugnm = model.getValue("/root/hidden/mech/hngnm");
- if(drugnm == ""){
- messageBox("약품 유효기간이 지났습니다.","E999");
- return;
- }
-
- if(flag == "sap"){
- //row = grd_saplist.row-1;
- row = grd_saplist.row;
- model.setValue(xSapList + "[" + row + "]/drugcd", drugcd);
- model.setValue(xSapList + "[" + row + "]/drugnm", drugnm);
- }else if(flag == "mthd"){
- row = grd_mechList.row;
- model.setValue(xMechList + "[" + row + "]/prcpcd", drugcd);
- model.setValue(xMechList + "[" + row + "]/hngnm", drugnm);
- }else if(flag == "dept"){
- row = grd_deptList.row;
- model.setValue(xDeptList + "[" + row + "]/prcpcd", drugcd);
- model.setValue(xDeptList + "[" + row + "]/hngnm", drugnm);
- }
- model.setValue("/root/temp/druginfo", "");
- }
-
- //용법구분이 주사제인 경우는 '투약횟수'를 입력할수 있음.
- // if(cmb_baseflg.value == 'I'){
- // var rowstatus = grd_mechList.rowstatus(grd_mechList.row);
- // if (rowstatus == "1" || rowstatus == "3") {
- // cmb_exectims.disabled = false;
- // }
- // }else{
- // cmb_exectims.disabled = true;
- // }
-
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준자료관리-조회조건 항목 중 약품정보
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDrugDbClick1(){
- model.setValue("/root/temp/receivedata/receiveref", "/root/temp/druginfo");
- model.setValue("/root/temp/receivedata/srchflag", "1");
- model.setValue("/root/temp/receivedata/srchcnts", model.getValue("/root/main/cond/drugnm"));
- model.setValue("/root/temp/receivedata/drugkind","");
-
- modal("SPADB60100",0,100,150,"SPADB60100","/root/temp/receivedata","/root/temp/receivedata");
-
- var drugcd = model.getValue("/root/temp/druginfo");
- var drugnm = "";
- var row = 0;
-
- if(drugcd != ""){
- model.removenode("/root/send");
- model.makeValue("/root/send/calcscorcd", drugcd);
- submit("TRMNR07506");
- drugnm = model.getValue("/root/hidden/mech/hngnm");
- if(drugnm == ""){
- messageBox("약품 유효기간이 지났습니다.","E999");
- return;
- }
- model.setValue("/root/main/cond/drugcd", drugcd);
- model.setValue("/root/main/cond/drugnm", drugnm);
- model.setValue("/root/temp/druginfo", "");
- }
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준관리 삭제
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fClickSapDelete(){
- var row = grd_saplist.row;
- if(model.getValue("/root/main/sapinfo/saplist/saplist[" + (row-1) + "]/delcheck") == "true"){
- if(grd_saplist.rowStatus(row) == "2"){
- grd_saplist.rowStatus(row) = 4;
- }else if(grd_saplist.rowStatus(row) == "3" || grd_saplist.rowStatus(row) == "1"){
- grd_saplist.deleteRow(row);
- }else{}
- }else if(model.getValue("/root/main/sapinfo/saplist/saplist[" + (row-1) + "]/delcheck") == "false"){
- grd_saplist.rowStatus(row) = 2;
- }else{}
- grd_saplist.refresh();
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간 추가
- * @param : dtim : 용법별만 있음(mech : 약품코드별 , dept : 부서별)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimAdd() {
-
- var pGrd = grd_dtimList;
- var xpathDtim;
- var oldrow = pGrd.row;
- var newrow;
-
- //ROW 추가
- if (oldrow < 1 ) return false;
-
- //insertrow후 반드시 refresh할것
- pGrd.insertRow(oldrow, "below", false);
- pGrd.refresh();
-
- newrow = pGrd.row;
- //alert( oldrow + "/" + newrow );
-
- model.copyNode("/root/main/mnrmdtim/mnrmdtimList["+newrow+"]", "/root/main/mnrmdtim/mnrmdtimList["+oldrow+"]");
- model.setValue("/root/main/mnrmdtim/mnrmdtimList["+newrow+"]/status","true");
- model.setValue("/root/main/mnrmdtim/mnrmdtimList["+newrow+"]/comnyn","N");
- model.setValue("/root/main/mnrmdtim/mnrmdtimList["+newrow+"]/grpno","");
- model.setValue("/root/main/mnrmdtim/mnrmdtimList["+newrow+"]/saveflag","I"); //--------(20080911)
-
- model.refresh();
- return true;
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 공통/용법 그리드 클릭시 상세정보 display
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fgrddtimlist_ondelayclick() {
- if(grd_dtimList.col != 0){
- for (var i=1 ; i<=13 ; i++){
- grd_mnrmdtim.valueMatrix(1,i)="";
- grd_mnrmdtim.valueMatrix(2,i)="";
- }//그리드 초기화
- //var dtims = grd_dtimList.valueMatrix(grd_dtimList.row,2);
- //var timscount = grd_dtimList.valueMatrix(grd_dtimList.row,3);
-
- var dtims = grd_dtimList.valueMatrix(grd_dtimList.row,grd_dtimList.colref("exectims") );
- var timscount = grd_dtimList.valueMatrix(grd_dtimList.row,grd_dtimList.colref("drugtmspec") );
- var timscountextt = model.getValue("/root/main/mnrmdtim/mnrmdtimList["+grd_dtimList.row+"]/drugtmspeccal");
-
- for (var i= 1 ; i< 13 ;i++) grd_mnrmdtim.colHidden(i) = true;
- for (var i= 1 ; i<= dtims ;i++) grd_mnrmdtim.colHidden(i) = false; //그리드 활성화
-
- //cmb_exectims.value = dtims;
-
- var array_timscount = timscount.split(" ");
- var array_timscounpartextt = timscountextt.split(" ");
- var cnt = array_timscount.length;
-
- for(var i = 0 ; i < cnt ; i++){
- var a = array_timscount[i];
- var b = array_timscounpartextt[i];
-
- grd_mnrmdtim.valueMatrix(1,i+1) = a; //시간
- grd_mnrmdtim.valueMatrix(2,i+1) = parseInt(b/2400); //일수
- }
- cmb_exectims.value = dtims; //투약회수
- rdo_comnyn.value = model.getValue("/root/main/mnrmdtim/mnrmdtimList["+grd_dtimList.row+"]/comnyn"); //default
- cmb_direccd.value = model.getValue("/root/main/mnrmdtim/mnrmdtimList["+grd_dtimList.row+"]/direccd"); //용법코드
-
- //용법구분이 주사제인 경우는 '투약횟수'를 입력할수 있음.
- cmb_exectims.disabled = true;
- if(cmb_baseflg.value == 'I'){
- var rowstatus = grd_dtimList.rowstatus(grd_dtimList.row);
- if (rowstatus == "1" || rowstatus == "3") {
- cmb_exectims.disabled = false;
- }
- }
- //공통&용법인 경우는 수정가능하다.
- rdo_comnyn.disabled = false;
-
- //---------------(20080813)
- if ( model.getValue("/root/main/mnrmdtim/mnrmdtimList["+grd_dtimList.row+"]/saveflag") == "I") {
- cmb_exectims.disabled = false;
- } else {
- cmb_exectims.disabled = true;
- }
- //---------------
- }
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 공통/약품 그리드 클릭시 상세정보 display
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fgrdmechList_ondelayclick() {
- if(grd_dtimList.col != 0){
- for (var i=1 ; i<=13 ; i++){
- grd_mnrmdtim.valueMatrix(1,i)="";
- grd_mnrmdtim.valueMatrix(2,i)="";
- }//그리드 초기화
- //var dtims = grd_dtimList.valueMatrix(grd_dtimList.row,2);
- //var timscount = grd_dtimList.valueMatrix(grd_dtimList.row,3);
-
- var dtims = grd_mechList.valueMatrix(grd_mechList.row,grd_mechList.colref("exectims") );
- var timscount = grd_mechList.valueMatrix(grd_mechList.row,grd_mechList.colref("drugtmspec") );
- var timscountextt = model.getValue("/root/main/picmmech/picmmechList["+grd_mechList.row+"]/drugtmspeccal");
-
- for (var i= 1 ; i< 13 ;i++) grd_mnrmdtim.colHidden(i) = true;
- for (var i= 1 ; i<= dtims ;i++) grd_mnrmdtim.colHidden(i) = false; //그리드 활성화
-
- //cmb_exectims.value = dtims;
-
- var array_timscount = timscount.split(" ");
- var array_timscounpartextt = timscountextt.split(" ");
- var cnt = array_timscount.length;
-
- for(var i = 0 ; i < cnt ; i++){
- var a = array_timscount[i];
- var b = array_timscounpartextt[i];
-
- grd_mnrmdtim.valueMatrix(1,i+1) = a; //시간
- grd_mnrmdtim.valueMatrix(2,i+1) = parseInt(b/2400); //일수
- }
- cmb_exectims.value = dtims; //투약회수
- rdo_comnyn.value = model.getValue("/root/main/picmmech/picmmechList["+grd_mechList.row+"]/comnyn"); //default
- cmb_direccd.value = model.getValue("/root/main/picmmech/picmmechList["+grd_mechList.row+"]/direccd"); //용법코드
-
- cmb_exectims.disabled = true; //투약횟수 수정불가
- rdo_comnyn.disabled = true; //default 수정불가
- }
- }
- /**
- * @group :
- * @ver : 2008.05.15
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(공통/용법별) 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimApply(){
-
- var pGrdmnrmdtim = grd_mnrmdtim; //설정입력그리드
- var pPathmnrmdtim = "/root/main/dtiminfo/dtim"; //설정입력그리드 path
-
- var pGrddtimList = grd_dtimList; //설정반영그리드
- var pPathdtimList = "/root/main/mnrmdtim/mnrmdtimList"; //설정반영그리드 path
- //체크
- // if(pGrdmnrmdtim.rows < 3){
- // messageBox("공통투약시간에 설정되지않았습니다.","E999");
- // return;
- // }
- if(model.getValue("/root/init/mthdcdlist_1/basecnt") == ""){
- messageBox("공통투약시간에 설정되지않았습니다.","E999");
- return;
- }
- if(pGrddtimList.row < 1){
- return;
- }
- //---------------------------------
- // 투약시간 설정값 추출
- //---------------------------------
- //var cnt = pGrd.rows;
- var drugtmspec = "";; //투여시간 text 형시으로 표시(화면용)
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(자료용)(24시간기준)
- var day = ""; //일수
- var time = ""; //시간
- //var dtim_tims = model.getValue(pPathdtimList + "[" + pGrdtimList.row + "]/exectims"); //투약회수
- var dtim_tims = model.getValue("/root/init/mthdcdlist_1/basecnt"); //투약회수
-
- //설정입력그리드를 돌면서 시간(n row)을 한줄의 텍스트로 만듬
- for (var i = 1 ; i <= dtim_tims ; i++){
- time = pGrdmnrmdtim.valueMatrix(1,i);
- day = pGrdmnrmdtim.valueMatrix(2,i);
- if(time.length != 4){
- messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
- //-----------------------------------------------
- //설정반영그리드에 반영
- //신규가 아니면 수정으로 처리한다.(20080519)
- //-----------------------------------------------
- var rowstatus = pGrddtimList.rowstatus(pGrddtimList.row);
- if (rowstatus == "1" || rowstatus == "3") {
- } else {
- pGrddtimList.rowstatus(pGrddtimList.row) = "2"; //update
- }
-
- //--------(20080812)
- if (model.getValue(pPathdtimList + "[" + pGrddtimList.row + "]/saveflag") == "I") {
- var baseflag = cmb_baseflg.value; //용법(20080812)
- pGrddtimList.rowstatus(pGrddtimList.row)= "1"; //insert
- model.setValue(pPathdtimList + "[" + pGrddtimList.row + "]/baseflag", baseflag);
- //alert(baseflag);
- }
- //---------
- var comnyn = model.getValue("/root/hidden/comnyn");
-
- model.setValue(pPathdtimList + "[" + pGrddtimList.row + "]/comnyn", comnyn ); //default
- model.setValue(pPathdtimList + "[" + pGrddtimList.row + "]/status", "true" ); //check
- model.setValue(pPathdtimList + "[" + pGrddtimList.row + "]/exectims", dtim_tims ); //투여회수
- model.setValue(pPathdtimList + "[" + pGrddtimList.row + "]/drugtmspec", drugtmspec ); //투약시간
- model.setValue(pPathdtimList + "[" + pGrddtimList.row + "]/drugtmspeccal", drugtmspeccal ); //투약시간
- model.refresh();
- }
|