12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/*
-
- 통증관리기록(SMMNR00900.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var sCondPath = "/root/main/cond";
- var xChartHeaderListPath = "/root/main/chartheaderlist";
- var xTMSettingListPath = "/root/temp/clincobsrecinfo/tmsettinglist";
- var xPamInfoPath = "/root/main/paminfo/pamlist"; // 환자정보
- var xPrcpInfoPath1 = "/root/main/searchinfo/prcplist1"; // 처방정보(fromdd)
- var xPrcpInfoPath2 = "/root/main/searchinfo/prcplist2"; // 처방정보(fromdd+1)
- var xPrcpInfoPath3 = "/root/main/searchinfo/prcplist3"; // 처방정보(fromdd+2)
- var xPrcpInfoPath4 = "/root/main/searchinfo/prcplist4"; // 처방정보(fromdd+3)--> srchdd
- var xPainInfoPath1 = "/root/main/searchinfo/painlist1"; //통증정보(fromdd)
- var xPainInfoPath2 = "/root/main/searchinfo/painlist2"; //통증정보(fromdd+1)
- var xPainInfoPath3 = "/root/main/searchinfo/painlist3"; //통증정보(fromdd+2)
- var xPainInfoPath4 = "/root/main/searchinfo/painlist4"; //통증정보(fromdd+3)--> srchdd
- var xTotPainInfoPath = "/root/main/searchinfo/totpainlist"; //통증조회(그래프를 그리기 위한 4일간의 모든 통증기록)
- var xTPRInfoPath = "/root/main/searchinfo/tprlist"; //TPR vs조회
- var xChkObsPartInfoPath = "/root/main/searchinfo/obspartlist"; //통증부위--> 그래프 체크박스에 나타낼 통증부위
- var xPainCountInfoPath = "ds_main_searchinfo_paincount"; //점수가7점이상이 3회이상인경우
- var sHeader = new Array();
- var sFormerHeader = new Array();
- var sPid = ""; // 환자번호
- var sIndd = ""; // 입원일자
- var sCretNo = ""; // 환자 일자별 일련번호
- var sInstcd = ""; // 기관코드
- var sIOFlag = ""; // 입원/외래 구분
- var sWardCD = ""; // 병동코드
- var sRoomCD = ""; // 병실코드
- var sJobKindCD = ""; // 직급코드
- var sIndschacptstat = "";
- var sDschdd = "";
- var sChartItem = new Array();
- var sLineColor = new Array("14518476" , "65535" , "16746598", "16777096" , "65280" , "255" , "12290303" , "2263176" , "2263295" ,"7829367", "10040234" , "4521932","12320716");
- //var sLineColor = new Array(0xcc88dd , 0xff0000 , 0x00ff00 , 0x0000ff , 0x4400cc , 0x6688ff , 0x888822 , 0xff8822 , 0xffff00, 0x88ffff, 0xe5f3c2, 0x6699ff );
- var sCheckColor = new Array("#cc88dd" , "#ffff00" , "#6688ff", "#88ffff" , "#00ff00" , "#ff0000" , "#ff88bb" , "#888822" , "#ff8822" ,"#777777", "#aa3399" , "#ccff44","#ccffbb");
- var sPatNm = "";
- var sSexAge = "";
- var sDutplcecd = "";
- var sOrdDeptcd = "";
- var sMedispclid = "";
- var sUserFlag = "";
- var sUserDeptCd = "";
- var sUserId = "";
- //var sSpParamInfo = "";
- //var sParamInfo = "";
- //var sChartNum = 1;
- //응급의료센터 관련 변수_경북대 (2011.05.03 Ahn)
- var eERDEPTCD = "";
- var eERFLAG = "";
- var eSECTIONCD = "";
- var sSectioncd ="";
- var arErrorCode = new HashArray();
- //temp/cond/roomcdgrup/roomcdgruplist => ds_data_roomcdgruplist
- //temp/cond/patientgrup/patientgruplist => ds_data_patientgruplist
- //temp/cond/wardcdgrup/wardcdgruplist => ds_data_wardcdgruplist
- //temp/cond/settingpatient/settingpatientlist => ds_data_settingpatientlist
- /**
- * @group :
-
- * @ver : 2007.06.27
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(pFlag){
- for( var idx = 0 ; idx < sCheckColor.length ; idx++){
- sLineColor[idx];// = RgbToGraph(sCheckColor[idx]);
- }
-
- var sPamInfo = "";
- //var sParamInfo = "";
- //var sSpParamInfo = "";
-
- if(pFlag == "init" || pFlag == "reset"){
- //fMakeChart("init24hours");
- fMakeChart("init4days");
- }
- if(pFlag == "init"){
-
- //사용자 직급구분에 따른 화면 제어 플래그 설정
- sJobKindCD = sysf_getUserInfo("jobkindcd"); // 직급코드
- sUserDeptCd = sysf_getUserInfo("dutplcecd");
- sUserId = sysf_getUserInfo("userid");
- //---------(20101204) 경북대
- //추가
- var ssflag = "";
- if(sysf_getUserInfo("dutplceinstcd") != '032' && sysf_getUserInfo("dutplceinstcd") != '031') {
- //경북대가 아니면
- if( sJobKindCD == "0330" || sJobKindCD == "0310"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- } else if(sysf_getUserInfo("dutplceinstcd") == '032' || sysf_getUserInfo("dutplceinstcd") == '031') {
- //경북대이면 03%로 체크한다.
- if( sJobKindCD.substring(0, 2) == "03"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- }
-
- //----------------------------
- //응급의료센터 부서코드 추출_ 경북대 (2011.05.03 Ahn)
- ds_send.setColumn(0, "cdgrupid", "'002'");
- ds_send.setColumn(0, "srchdd", utlf_getCurrentDate()); // 조회기준일자
-
- var oParam = {};
- oParam.id = "TRMNW00001";
- oParam.service = "wardcareapp.WardCareMngt";
- oParam.method = "reqGetNursHardCdInfo";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_code_codeinfo_codelist=codelist";
- oParam.async = false;
- oParam.callback = "cf_TRMNW00001";
- tranf_submit(oParam);
-
- if( arErrorCode.pop("TRMNW00001") > -1 ){
- eERDEPTCD = ds_code_codeinfo_codelist.getColumn(ds_code_codeinfo_codelist.findRow("cdgrupid", "002"), "cdid");
- }
-
-
- //원본:의사의 경우만
- //if(sJobKindCD == "0330" || sJobKindCD == "0310" || sUserId=="20700469"){//20700469 는 테스트용 김홍점
- if(ssflag=="Y") {
- //---------(20101204) 경북대
- sUserFlag = "2";
- }else{
- sUserFlag = "1";
- }
- ds_main_cond.setColumn(0, "srchflag", sUserFlag);
-
- }else{
- // sParamInfo = "";
- }
-
- // model.setValue(sCondPath+"/cmbstatusx", "0");
- // model.setValue(sCondPath+"/cmbstatusy", "0");
-
- ds_main_cond.setColumn(0, "vwctrl_button", "4days");
-
- //상단정보 존재 여부 체크
- // 환자정보 조회
- sPamInfo = sysf_getGlobalVariable("paminfo");
-
- dsf_setCSVToDs("ds_main_paminfo_pamlist",sPamInfo);
- if( utlf_isNull(sPamInfo) ){
- //2008-05-14
- fChkTgtPatInfo("disable");
- // model.toggle("case_4daysstnd");
- fSettingPamInfo(sUserFlag);
-
- //messageBox("환자를 선택하십시요","I");
- return;
- }else{
- fChkTgtPatInfo("able");
-
- }
-
- ds_main_paminfo_pamlist.addColumn("sectioncd", "string");
-
- sPid = ds_main_paminfo_pamlist.getColumn(0, "pid"); // 환자번호
- sCretNo = ds_main_paminfo_pamlist.getColumn(0, "cretno"); // 환자 일자별 일련번호
- sInstcd = ds_main_paminfo_pamlist.getColumn(0, "instcd"); // 기관코드
- sIOFlag = ds_main_paminfo_pamlist.getColumn(0, "ioflag"); // 입원/외래 구분
- sWardCD = ds_main_paminfo_pamlist.getColumn(0, "wardcd"); // 병동코드
- sRoomCD = ds_main_paminfo_pamlist.getColumn(0, "roomcd"); // 병실코드
- sIndschacptstat = ds_main_paminfo_pamlist.getColumn(0, "indschacptstat"); //입퇴원구분코드
- sDschdd = ds_main_paminfo_pamlist.getColumn(0, "dschdd"); // 퇴원일자
- sPatNm = ds_main_paminfo_pamlist.getColumn(0, "hngnm"); // 환자명
- sSexAge = ds_main_paminfo_pamlist.getColumn(0, "sex"); +"/"+ ds_main_paminfo_pamlist.getColumn(0, "age"); // 성별
- sOrdDeptcd = ds_main_paminfo_pamlist.getColumn(0, "orddeptcd");
- sMedispclid = ds_main_paminfo_pamlist.getColumn(0, "medispclid");
- sSectioncd = ds_main_paminfo_pamlist.getColumn(0, "sectioncd"); // 응급실 구역정보 추가(2011.05.04 ahn)
-
-
- if(sIOFlag == "O"){
- sIndd = ds_main_paminfo_pamlist.getColumn(0, "orddd"); // 진료일자
- }else{
- sIndd = ds_main_paminfo_pamlist.getColumn(0, "indd"); // 입원일자
- }
-
- ds_main_cond.setColumn(0, "pid", sPid);
-
- ds_main_patinfo.setColumn(0, "pid", sPid);
- ds_main_patinfo.setColumn(0, "indd", sIndd);
- ds_main_patinfo.setColumn(0, "cretno", sCretNo);
- ds_main_patinfo.setColumn(0, "ordtype", sIOFlag);
- ds_main_patinfo.setColumn(0, "indschacptstat", sIndschacptstat);
- ds_main_patinfo.setColumn(0, "dschdd", sDschdd);
- ds_main_patinfo.setColumn(0, "wardcd", sWardCD);
- ds_main_patinfo.setColumn(0, "roomcd", sRoomCD);
- ds_main_patinfo.setColumn(0, "patnm", sPatNm);
- ds_main_patinfo.setColumn(0, "sexage", sSexAge);
- ds_main_patinfo.setColumn(0, "orddeptcd", sOrdDeptcd);
- ds_main_patinfo.setColumn(0, "medispclid", sMedispclid);
- ds_main_patinfo.setColumn(0, "sectioncd", sSectioncd); // 응급실 구역정보 추가(2011.05.04 ahn)
-
-
- //퇴원/입원 환자 구분에 따른 화면 제어
- if(sIndschacptstat == "D"){
- group1.rdo_srchflag.visible = false; //퇴원환자 조회구분 숨기기
- group1.grp_oderinpatinfo.visible = false;
- group1.grp_inpatinfo.visible = false;
- group1.grp_outpatinfo.visible = true;
- ds_main_cond.setColumn(0, "recdd", sDschdd);
- }else{
- if(pFlag == "init" || pFlag == "reset"){
- fSettingUserTypeSrch(sUserFlag);
- }
-
- var sRecdate = "";
- // var sRectime = "";
-
- if(utlf_getCurrentTime().substr(0,4) < "0700"){
- sRecdate = getDateCalc(utlf_getCurrentDate(),1,"-");
- }else{
- sRecdate = utlf_getCurrentDate();
- }
-
- ds_main_cond.setColumn(0, "recdd", sRecdate);
-
- if(pFlag == "init"){
-
- if( sUserFlag == "2"){
- //진료과 정보 조회
- lf_mmbfGetDeptCodeComboList(ds_temp_cond_deptgrup_deptgruplist_dept , "D"); //부서코드 콤보
-
- } else {
- //병동코드 조회
- fGetCareComWardList(); //ds_data_wardcdgruplist를 받아옴
- //내환자 조회
- fGetSettingPatientList(); //ds_data_settingpatientlist를 받아옴
-
- }
- }
- if(pFlag == "reset" || pFlag == "init"){
- if(sUserFlag == "2"){
- lf_mmbfGetUserComboList(ds_temp_cond_doctlist_medispcl_usercombo , sOrdDeptcd, "0330", "", "M");
- lf_mmbfGetUserComboList(ds_temp_cond_doctlist_atdoct_usercombo, sOrdDeptcd, "0330", "", "A");
- frmf_addComboItem("group1.grp_oderinpatinfo.cmb_medispcllist", "전체", "-", "above"); //의사콤보 전체항목 추가
- frmf_addComboItem("group1.grp_oderinpatinfo.cmb_atdoctlist", "전체", "-", "above");//의사콤보 전체항목 추가
- //model.setValue("/root/temp/cond/doctlist/atdoct", "-");
- fGetCareComDeptPatList(sOrdDeptcd, sMedispclid , '-', ds_init.getColumn(0, "mypatsrchflag")); //ds_data_patientgruplist를 받아옴
-
- group1.grp_oderinpatinfo.cmb_deptlist.value = sOrdDeptcd;
- group1.grp_oderinpatinfo.cmb_medispcllist.value = sMedispclid;
- group1.grp_oderinpatinfo.cmb_atdoctlist.value = "-";
- group1.grp_oderinpatinfo.cmb_oderpatlist.value = sPid;
- group1.grp_oderinpatinfo.ipt_orderpid.value = sPid;
- }else{
-
- // 응급실일 경우 (2011.05.04 Ahn)
- //alert(sectioncd);
- fGetWardChngInfo("Y", sWardCD, sSectioncd);
- fGetCareComRoomList(sWardCD); //ds_data_roomcdgruplist를 받아옴
-
- if(eERFLAG == "Y"){ // 응급실 환자 조회 (2011.05.04 Ahn)
- fGetCareComPatList(sWardCD, sRoomCD, group1.grp_inpatinfo.cmb_zone.value); //ds_data_patientgruplist를 받아옴
- }else{
- fGetCareComPatList(sWardCD, sRoomCD); //ds_data_patientgruplist를 받아옴
- }
-
- group1.grp_inpatinfo.cmb_wardlist.value = sWardCD;
- group1.grp_inpatinfo.cmb_roomlist.value = sRoomCD;
- group1.grp_inpatinfo.cmb_patlist.value = sPid;
- group1.grp_inpatinfo.ipt_pid.value = sPid;
- group1.grp_inpatinfo.cmb_mypatlist.value = sPid;
- if(eERFLAG == "Y"){
- group1.grp_inpatinfo.cmb_erpat.value = sPid; // 응급실 환자 지정 (2011.05.04 Ahn)
- }
-
- }
- }else if(pFlag == "patinit"){
- group1.grp_inpatinfo.cmb_mypatlist.value = sPid;
- if(eERFLAG == "Y"){
- group1.grp_inpatinfo.cmb_erpat.value = sPid; // 응급실 환자 지정 (2011.05.04 Ahn)
- }
- }
- }
-
-
- fSearch("4days");
- var vsinfo = utlf_transNullToEmpty(ds_main_searchinfo_tprlist.getColumn(0, "bodyinfo")) + "\n" + utlf_transNullToEmpty(ds_main_searchinfo_tprlist.getColumn(0, "vsinfo"));
-
- ds_temp.setColumn(0, "vsinfo", vsinfo);
- }
- function cf_TRMNW00001(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @group :
- * @ver : 2008.10.14
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 사용자별 조회 조건 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingUserTypeSrch(pFlag){
- if( pFlag == "1"){
- group1.grp_outpatinfo.visible = false;
- group1.grp_oderinpatinfo.visible = false;
- group1.grp_inpatinfo.visible = true;
- }else{
- group1.grp_outpatinfo.visible = false;
- group1.grp_oderinpatinfo.visible = true;
- group1.grp_inpatinfo.visible = false;
- }
- }
- /**
- * @group :
- * @ver : 2008.10.14
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 사용자별 조회 조건 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChangUserTypeSrch(pFlag){
-
- fTPRviewInit();
- fSettingUserTypeSrch(pFlag);
- var sSettingId1 = "-";
- var sSettingId2 = "-";
- if( pFlag == "1"){
- fGetWardChngInfo("Y", "", ""); // 병동 조회조건으로 초기화
- //병동코드 조회
- fGetCareComWardList(); //ds_data_wardcdgruplist를 받아옴
- //내환자 조회
- fGetSettingPatientList(); //ds_data_settingpatientlist를 받아옴
- fGetCareComRoomList(sUserDeptCd); //ds_data_roomcdgruplist를 받아옴
-
- ds_main_cond.setColumn(0, "wardcdgruplist", sUserDeptCd);
-
- }else{
- //진료과 정보 조회
- lf_mmbfGetDeptCodeComboList(ds_temp_cond_deptgrup_deptgruplist_dept , "D"); //부서코드 콤보
- //---------(20101204) 경북대
- //추가
- var ssflag = "";
- if(sysf_getUserInfo("dutplceinstcd") != '032' && sysf_getUserInfo("dutplceinstcd") != '031') {
- //경북대가 아니면
- if( sJobKindCD == "0330" || sJobKindCD == "0310"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- } else if(sysf_getUserInfo("dutplceinstcd") == '032' || sysf_getUserInfo("dutplceinstcd") == '031') {
- //경북대이면 03%로 체크한다.
- if( sJobKindCD.substring(0, 2) == "03"){
- ssflag = "Y";
- }else{
- ssflag = "N";
- }
- }
- //원본:의사의 경우만
- //if(sJobKindCD == "0330" || sJobKindCD == "0310"){
- if(ssflag=="Y") {
- //---------(20101204) 경북대
- lf_mmbfGetUserComboList(ds_temp_cond_doctlist_medispcl_usercombo , sUserDeptCd, "0330", "", "M");
- lf_mmbfGetUserComboList(ds_temp_cond_doctlist_atdoct_usercombo, sUserDeptCd, "0330", "", "A");
- frmf_addComboItem("group1.grp_oderinpatinfo.cmb_medispcllist", "전체", "-", "above"); //의사콤보 전체항목 추가
- frmf_addComboItem("group1.grp_oderinpatinfo.cmb_atdoctlist", "전체", "-", "above");//의사콤보 전체항목 추가
- if( !utlf_isNull(ds_temp_cond_doctlist_medispcl_usercombo.getColumn(ds_temp_cond_doctlist_medispcl_usercombo.findRow("userid", sUserId), "userid")) ){
- sSettingId1 = sUserId
- }
- if( !utlf_isNull(ds_temp_cond_doctlist_atdoct_usercombo.getColumn(ds_temp_cond_doctlist_atdoct_usercombo.findRow("userid", sUserId), "userid")) ){
- sSettingId2 = sUserId
- }
- fGetCareComDeptPatList(sUserDeptCd, sSettingId1 , sSettingId2, ds_init.getColumn(0, "mypatsrchflag")); //ds_data_patientgruplist를 받아옴
- ds_main_cond.setColumn(0, "dept", sUserDeptCd);
- ds_main_cond.setColumn(0, "medispcl", sSettingId1);
- ds_main_cond.setColumn(0, "atdoct", sSettingId2);
-
- }else{
- ds_main_cond.setColumn(0, "dept", "-");
- ds_main_cond.setColumn(0, "medispcl", "");
- ds_main_cond.setColumn(0, "atdoct", "");
-
- }
- }
- }
-
- /**
- * @group :
- * @ver : 2008.09.01
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 초기 param 존재 하지 않을 경우 환자 선택화면 설정
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingPamInfo(pFlag){
- ds_main_cond.setColumn(0, "recdd", utlf_getCurrentDate());
-
- fChangUserTypeSrch(pFlag);
- }
- /**
- * @group :
- * @ver : 2007.07.11
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 이전/이후 날짜 Setting
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDateCalc(pFlag, pVWFlag, pTerm){
- switch(pVWFlag){
- case "24hours" :
- ds_main_cond.setColumn(0, "recdd", getDateCalc(ds_main_cond.getColumn(0, "recdd"),1,pFlag));
- break;
- case "4days" :
- ds_main_cond.setColumn(0, "recdd", getDateCalc(ds_main_cond.getColumn(0, "recdd"),4,pFlag));
- break;
- }
- }
- /**
- * @group :
- * @ver : 2007.07.11
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 화면 전환
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fChageView(pFlag){
- ds_main_cond.setColumn(0, "vwctrl_button", pFlag);
-
- switch(pFlag){
- // case "24hours" :
- // model.toggle("case_24hoursstnd");
- // //그래프 체크박스 숨김,보임 설정
- // if(model.getValue(sCondPath+"/vwctrl_24hours") == "A"){
- // grp_chkbox.visible = true;
- // }else{
- // grp_chkbox.visible = false;
- // }
- //
- // chk_hourschartinfo.visible = true;
- // chk_dayschartinfo.visible = false;
- // obj_4dayschart.visible = false;
- // obj_24hourschart.visible = true;
- // btn_4daysvw.visible = true;
- // btn_24hoursvw.visible = false;
- // grd_timelist24hours.visible = true;
- // grd_timelist.visible = false;
- // grp_hide.visible = true;
- // model.setValue(sCondPath+"/hourschartinfo","1 2 3 4");
- // break;
- case "4days" :
- // model.toggle("case_4daysstnd");
- //그래프 체크박스 숨김,보임 설정
- // if(model.getValue(sCondPath+"/vwctrl_4days") == "A"){
- // grp_chkbox.visible = true;
- // }else{
- // grp_chkbox.visible = false;
- // }
- // chk_hourschartinfo.visible = false;
- // chk_dayschartinfo.visible = true;
- obj_4dayschart.visible = true;
- // obj_24hourschart.visible = false;
- // btn_4daysvw.visible = false;
- // btn_24hoursvw.visible = true;
- // grd_timelist24hours.visible = false;
- grd_timelist.visible = true;
- // grp_hide.visible = false;
- // model.setValue(sCondPath+"/dayschartinfo","1 2 3 4");
- break;
- }
- }
- /**
- * @group :
- * @ver : 2008.07.30
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 화면 초기화
- * @return :
- * @---------------------------------------------------
- */
- function fTPRviewInit(){
- if( ds_data_patientgruplist.rowcount < 0){
- return;
- }
- fInitTopInfo();
-
- ds_data_patientgruplist.clearData();
- ds_main_cond.setColumn(0, "patientgruplist", "");
- ds_main_cond.setColumn(0, "patientgruplist", "");
-
- ds_main_searchinfo_prcplist1.clearData();
- ds_main_searchinfo_prcplist2.clearData();
- ds_main_searchinfo_prcplist3.clearData();
- ds_main_searchinfo_prcplist4.clearData();
- ds_main_searchinfo_painlist1.clearData();
- ds_main_searchinfo_painlist2.clearData();
- ds_main_searchinfo_painlist3.clearData();
- ds_main_searchinfo_painlist4.clearData();
- ds_main_searchinfo_totpainlist.clearData();
- ds_main_searchinfo_paincount.clearData();
- ds_main_searchinfo_tprlist.clearData();
-
- ds_main_searchinfo_obspartlist.clearData();
- //샘플화면 emr_ercarexp -> SMMNE02303
- var sProp="col="+ds_main_searchinfo_obspartlist.rowcount+",row=1,cellspacing=15,vcellspacing=2,itemWidth=-1,itemHeight=20,overflow='visible'";
- grp_chkbox.chk_dayschartinfo.setInitComp(sProp, ds_main_searchinfo_obspartlist,"obspartid","obspartnm","fn_mChkEvent");
-
- grd_timelist.visible = false;
- group1.cpt_vsinfo.value = "";
- //fMakeChart("init24hours");
- fMakeChart("init4days");
- if(ds_main_patinfo.rowcount > 0){
- ds_main_patinfo.setColumn(0, "pid", "");
- ds_main_patinfo.setColumn(0, "indd", "");
- ds_main_patinfo.setColumn(0, "cretno", "");
- ds_main_patinfo.setColumn(0, "ordtype", "");
- ds_main_patinfo.setColumn(0, "indschacptstat", "");
- ds_main_patinfo.setColumn(0, "dschdd", "");
- ds_main_patinfo.setColumn(0, "eroutdd", "");
- ds_main_patinfo.setColumn(0, "patnm", "");
- ds_main_patinfo.setColumn(0, "sexage", "");
- ds_main_patinfo.setColumn(0, "wardcd", "");
- ds_main_patinfo.setColumn(0, "roomcd", "");
- }
- sPid = "";
- sIndd = "";
- sCretNo = "";
- sInstcd = "";
- sIOFlag = "";
- sWardCD = "";
- sRoomCD = "";
- sIndschacptstat = "";
- sDschdd = "";
- sOrdDeptcd = "";
- sMedispclid = "";
- ds_main_cond.setColumn(0, "pid", "");
- fChkTgtPatInfo("disable");
- }
- /**
- * @group :
- * @ver : 2008.07.02
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc :
- * @param : 환자 선택 여부확인
- * @return :
- * @---------------------------------------------------
- */
- function fChkTgtPatInfo(pFlag){
- switch(pFlag){
- case "disable":
- btn_4dayrefresh.enable = false;
- btn_4daysvwctrl.enable = false;
- // btn_24hoursvw.enable = false;
- btn_4daybefore.enable = false;
- btn_4dayafter.enable = false;
- break;
- case "able":
- btn_4dayrefresh.enable = true;
- btn_4daysvwctrl.enable = true;
- // btn_24hoursvw.enable = true;
- btn_4daybefore.enable = true;
- btn_4dayafter.enable = true;
- break;
- }
- }
- /**
- * @group :
- * @ver : 2008.04.28
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 환자 선택시 상단정보 변경
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetParam(pFlag, pIndex){
-
- if(ds_main_paminfo_pamlist.rowcount > 0){
- ds_main_paminfo_pamlist.clearData();
- }
-
- var sOrdtype = "";
- var sPid = "";
- var sIndd = "";
- var sCretno = "";
- var sInstcd = "";
- var param = "";
-
- if(pFlag == "SrchPat"){
- sOrdtype = ds_data_patientgruplist.getColumn(pIndex, "ordtype");
- sPid = ds_data_patientgruplist.getColumn(pIndex, "pid");
- sIndd = ds_data_patientgruplist.getColumn(pIndex, "indd");
- sCretno = ds_data_patientgruplist.getColumn(pIndex, "cretno");
- sInstcd = ds_data_patientgruplist.getColumn(pIndex, "instcd");
-
- group1.grp_inpatinfo.cmb_mypatlist.value = "";
- }else if(pFlag == "SettingPat"){
- sOrdtype = ds_data_settingpatientlist.getColumn(pIndex, "ordtype");
- sPid = ds_data_settingpatientlist.getColumn(pIndex, "pid");
- sIndd = ds_data_settingpatientlist.getColumn(pIndex, "indd");
- sCretno = ds_data_settingpatientlist.getColumn(pIndex, "cretno");
- sInstcd = ds_data_settingpatientlist.getColumn(pIndex, "instcd");
- }
-
- param = sOrdtype + "▦"
- + sPid + "▦"
- + sIndd + "▦"
- + sCretno + "▦"
- + sInstcd + "▦"
- + "▦" ;
-
- //frmf_setParameter("condparam", param);
-
- //modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
- appf_initPatientInfo(param); //상단정보 셋팅
-
- if(pFlag == "SrchPat"){
- fInitialize("patinit");
- }else if(pFlag == "SettingPat"){
- fInitialize("reset");
- }
- }
-
- /**
- * @group :
- * @ver : 2007.07.11
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 시작일자 계산
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCalStartDate(pDate, pTimeFlag){
- var sStartDT = pDate.toDate("YYYYMMDDhhmmss");
- var sTime = "";
- var sRemainder = 0;
-
- if(pTimeFlag != 1 ){
- sRemainder = eval(pDate.substr(10,2))%pTimeFlag;
- }
- sStartDT.setMinutes(sStartDT.getMinutes()-sRemainder);
-
- return sStartDT;
- }
- /**
- * @group :
- * @ver : 2007.07.11
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 크기 조절(펼치기/ 접기)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fControlGridSize(pFlag){
- switch(pFlag){
- // case "24hours" : // 24시간 화면
- // if(model.getValue(sCondPath+"/vwctrl_24hours") == "A"){ // 펼치기
- // btn_24hoursvwctrl.value = "접기";
- // model.setValue(sCondPath+"/vwctrl_24hours","I");
- // document.all.item("obj_24hourschart").visible = false;
- // document.all.item("obj_24hourschart").refresh();
- // //grd_24hoursheader.visible = false;
- //
- // grp_chkbox.visible = false;
- // chk_hourschartinfo.visible = false;
- // chk_dayschartinfo.visible = false;
- //
- //
- // }else{
- // btn_24hoursvwctrl.value = "펼치기";
- // model.setValue(sCondPath+"/vwctrl_24hours","A");
- // document.all.item("obj_24hourschart").visible = true;
- // document.all.item("obj_24hourschart").refresh();
- // //grd_24hoursheader.visible = true;
- // chk_hourschartinfo.visible = true;
- //
- // grp_chkbox.visible = true;
- // chk_hourschartinfo.visible = true;
- // chk_dayschartinfo.visible = false;
- //
- // }
- // btn_24hoursvwctrl.refresh();
- // //fCreateHeader(pFlag);
- // break;
- case "4days" : // 4일기준 화면
- if(ds_main_cond.getColumn(0, "vwctrl_4days") == "A"){ // 펼치기
- btn_4daysvwctrl.text = "접기";
- ds_main_cond.setColumn(0, "vwctrl_4days", "I");
- obj_4dayschart.visible = false;
- //grd_4dayschartheader.visible = false;
-
- // grp_chkbox.visible = false;
- // chk_hourschartinfo.visible = false;
- // chk_dayschartinfo.visible = false;
-
- }else{
- btn_4daysvwctrl.text = "펼치기";
- ds_main_cond.setColumn(0, "vwctrl_4days", "A");
- obj_4dayschart.visible = true;
- //grd_4dayschartheader.visible = true;
- grp_chkbox.chk_dayschartinfo.visible = true;
-
- // grp_chkbox.visible = true;
- // chk_hourschartinfo.visible = false;
- // chk_dayschartinfo.visible = true;
-
- }
- //fCreateHeader(pFlag);
- break;
- }
- }
- /**
- * @group :
- * @ver : 2007.08.14
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 차트 생성
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMakeChart(pFlag){
- var Obj_Chart = null;
- var Obj_CheckBox = null;
- var sColCnt = 0;
- var sRecRslt = "";
- var sRecRslt1 = "";
- var sChartInfo = "";
- var sRecDD = "";
- var sRecTM = "";
- var sRecTM4 = "";
- var sRecRsltArr = new Array();
- var sRecRslt1Arr = new Array();
- var iArrSize = 0;
- var iChartPos = 0;
- var idx=0;
- var grdRecTM1="";
- var grdRecTM2="";
- var grdRecDD="";
- var iArrSize = 0;
- var iSeriCnt = 0;
- var iToolsCnt=0;
- var sRecRsltHint = "";
-
- switch(pFlag){
- // case "24hours" :
- // obj_24hourschart.ClearChart();
- // sChartInfo = model.getValue(sCondPath+"/hourschartinfo").split(" ");
- // //obj_24hourschart.RemoveAllSeries();
- // //obj_24hourschart.Axis.RemoveAllCustom();
- //
- // //margin 값 정하기
- // //obj_24hourschart.Panel.MarginTop = 1;
- // obj_24hourschart.Panel.MarginTop = 2;
- // obj_24hourschart.Panel.MarginLeft = 1.5;
- // obj_24hourschart.Panel.MarginRight = 0;
- // obj_24hourschart.Panel.MarginBottom = -6;
- //
- // //하단축 칸 수 정하기와 눈금 없애기
- // obj_24hourschart.Axis.Bottom.SetMinMax (0, 24); //하루 동안 좌표를 표현
- // obj_24hourschart.Axis.Bottom.Increment = 1;
- // obj_24hourschart.Axis.Bottom.MinorTickCount = 1;
- // Obj_Chart = obj_24hourschart;
- // Obj_CheckBox = chk_hourschartinfo;
- // sColCnt = 24;
- // iArrSize = 60;
- // break;
- case "4days" :
- Obj_Chart = obj_4dayschart;
- Obj_CheckBox = "grp_chkbox.chk_dayschartinfo.chk_";
- obj_4dayschart.ClearChart();
- sChartInfo = ds_main_cond.getColumn(0, "dayschartinfo").split(" ");
- //obj_4dayschart.RemoveAllSeries();
- //obj_4dayschart.Axis.RemoveAllCustom();
-
- //margin 값 정하기
- obj_4dayschart.Panel.MarginTop = 2;
- obj_4dayschart.Panel.MarginLeft = 2;
- obj_4dayschart.Panel.MarginRight = 0;
- obj_4dayschart.Panel.MarginBottom = -6;
- // obj_4dayschart.Axis.Bottom.TickLength = 16;
-
- //하단축 칸 수 정하기와 눈금 없애기
-
- obj_4dayschart.Axis.Bottom.SetMinMax (0,16); //4일 동안 좌표를 표현 (하루는 DivPerDay만큼 나눠짐)
- obj_4dayschart.Axis.Bottom.Increment = 1;
- obj_4dayschart.Axis.Bottom.MinorTickCount = 5;
- sColCnt = 16;
- iArrSize = 6;
- break;
- // case "init24hours" :
- // sChartInfo = model.getValue(sCondPath+"/hourschartinfo").split(" ");
- // obj_24hourschart.RemoveAllSeries();
- // obj_24hourschart.Axis.RemoveAllCustom();
- //
- // //margin 값 정하기
- // //obj_24hourschart.Panel.MarginTop = 1;
- // obj_24hourschart.Panel.MarginTop = 2;
- // obj_24hourschart.Panel.MarginLeft = 1.5;
- // obj_24hourschart.Panel.MarginRight = 0;
- // obj_24hourschart.Panel.MarginBottom = -6;
- // //obj_24hourschart.Axis.Bottom.TickLength = -5;
- //
- // //하단축 칸 수 정하기와 눈금 없애기
- // obj_24hourschart.Axis.Bottom.SetMinMax (0, 24); //하루 동안 좌표를 표현
- // obj_24hourschart.Axis.Bottom.Increment = 1;
- // obj_24hourschart.Axis.Bottom.MinorTickCount = 1;
- // Obj_Chart = obj_24hourschart;
- // Obj_CheckBox = chk_hourschartinfo;
- // sColCnt = 24;
- // iArrSize = 60;
- // break;
- case "init4days" :
- if( utlf_isNull(utlf_transNullToEmpty(ds_main_cond.getColumn(0, "dayschartinfo"))) ){
- sChartInfo = "";
- }else{
- sChartInfo = ds_main_cond.getColumn(0, "dayschartinfo").split(" ");
- }
-
- obj_4dayschart.RemoveAllSeries();
- obj_4dayschart.Axis.RemoveAllCustom();
-
- //margin 값 정하기
- obj_4dayschart.Panel.MarginTop = 2;
- obj_4dayschart.Panel.MarginLeft = 2;
- obj_4dayschart.Panel.MarginRight = 0;
- obj_4dayschart.Panel.MarginBottom = -6;
- //obj_4dayschart.Axis.Bottom.TickLength = 0;
- // obj_4dayschart.Axis.Bottom.Labels.MultiLine = True
-
- obj_4dayschart.Axis.Bottom.SetMinMax (0,16); //4일 동안 좌표를 표현 (하루는 DivPerDay만큼 나눠짐)
- obj_4dayschart.Axis.Bottom.Increment = 1;
- obj_4dayschart.Axis.Bottom.MinorTickCount = 5;
- Obj_Chart = obj_4dayschart;
- Obj_CheckBox = "grp_chkbox.chk_dayschartinfo.chk_";
- sColCnt = 16;
- iArrSize = 6;
- break;
- }
-
- Obj_Chart.Axis.Bottom.AxisPen.Color = 0x000000;
- Obj_Chart.Axis.Bottom.Labels.Font.Color = 0xffffff; //Obj_Chart.Panel.Color; //하단 축 눈금 명칭 색을 바탕색으로 하여 보이지 않게 처리
- Obj_Chart.Header.Visible = false;
- Obj_Chart.Aspect.View3D = 0; //2d 로 표현하기
- Obj_Chart.Zoom.Enable = false; // zoom 사용하지 않기
- Obj_Chart.Scroll.Enable = false; // scroll 사용하지 않기
- Obj_Chart.Legend.Visible = false; // 그래프 참조 박스 띄우지 않기
- Obj_Chart.Panel.Gradient.Visible = true; // 페널에 그라디언트 적용
- Obj_Chart.Panel.Gradient.StartColor = 0xffffff;
- Obj_Chart.Panel.Gradient.EndColor=0xffffff;
- Obj_Chart.Environment.MouseWheelScroll = false;
- var cus_axis1 = Obj_Chart.Axis.AddCustom(false);
- Obj_Chart.Axis.get_Custom(0).AxisPen.Color = 0x0000ff;
- Obj_Chart.Axis.get_Custom(0).Title.Font.Size = 8;
- Obj_Chart.Axis.get_Custom(0).Title.Font.Bold = true;
- Obj_Chart.Axis.get_Custom(0).Title.Angle = 90;
- Obj_Chart.Axis.get_Custom(0).PositionPercent = 0;
- Obj_Chart.Axis.get_Custom(0).StartPosition = 0;
- Obj_Chart.Axis.get_Custom(0).EndPosition = 100;
- Obj_Chart.Axis.get_Custom(0).Automatic = false;
- Obj_Chart.Axis.get_Custom(0).Maximum = 10;
- Obj_Chart.Axis.get_Custom(0).Minimum = 0;
- Obj_Chart.Axis.get_Custom(0).Increment = 1;
- iSeriCnt = ds_main_searchinfo_obspartlist.rowcount;//Obj_CheckBox.length;
- //시간구분선이 생기도록 임의의 널값을 그래프 X축에 세팅
- Obj_Chart.AddSeries(0);//포인트 - Series 4
- Obj_Chart.Series(0).asLine.ClickableLine = 0;//라인을 지나갈때 tool이 먹히게 할지(1) 말지(0)
- Obj_Chart.Series(0).Depth = 1;
- Obj_Chart.Series(0).VerticalAxisCustom = cus_axis1;
- for( var cnt=0 ; cnt<sColCnt ; cnt++ ){
- Obj_Chart.Series(0).AddNull("null");
- }
- for( var i=1 ; i<=ds_main_searchinfo_obspartlist.rowcount && !utlf_isNull(ds_main_searchinfo_obspartlist.getColumn(0, "obspartid")) ; i++ ){
-
- sChartItem[i-1] = ds_main_searchinfo_obspartlist.getColumn(i-1, "obspartid");
-
- eval(Obj_CheckBox+(i-1)).background = sCheckColor[i-1];
- Obj_Chart.AddSeries(0);//포인트 - Series 4
- Obj_Chart.Series(i).VerticalAxisCustom = cus_axis1;
-
- Obj_Chart.Series(i).Color = sLineColor[i-1];
- // alert(Obj_Chart.Series(i).Color+"-------------------"+sLineColor[i]);
- Obj_Chart.Series(i).asLine.LinePen.Width = 2;
- Obj_Chart.Series(i).asLine.Pointer.Visible = true;
- Obj_Chart.Series(i).asLine.Pointer.Style = 1;
- Obj_Chart.Series(i).asLine.Pointer.VerticalSize = 5;
- Obj_Chart.Series(i).asLine.Pointer.HorizontalSize = 5;
- Obj_Chart.Series(i).asLine.ClickableLine = 0;//라인을 지나갈때 tool이 먹히게 할지(1) 말지(0)
- Obj_Chart.Series(i).Depth = i+1;
- if ( Obj_Chart.Tools.Count == 0 ){
-
- Obj_Chart.Tools.Add(8);
- Obj_Chart.Tools.get_Items(0).asMarksTip.MouseAction = 0;
- Obj_Chart.Tools.get_Items(0).asMarksTip.Style = 2;//9:y값 x값 0:x값 2:Label
- Obj_Chart.Tools.get_Items(0).asMarksTip.Delay = 10;
- Obj_Chart.Tools.get_Items(0).asMarksTip.Series = 4;
- }
-
- if( !utlf_isNull(eval(Obj_CheckBox+(i-1)).value) ){
-
- switch(pFlag){
- case "4days" :
-
- for( var idx=0 ; idx<ds_main_searchinfo_totpainlist.rowcount ; idx++ ){
- if ( sChartItem[i-1] == ds_main_searchinfo_totpainlist.getColumn(idx, "obspartid") && ds_main_searchinfo_totpainlist.getColumn(idx, "paingbid")!="92"){
- sRecRslt = ds_main_searchinfo_totpainlist.getColumn(idx, "pnt");
- sRecDD = ds_main_searchinfo_totpainlist.getColumn(idx, "recdd");
- sRecTM = ds_main_searchinfo_totpainlist.getColumn(idx, "rectm").substring(0,2);
-
- //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
-
- for( var iCol=0 ; iCol<sColCnt ; iCol++ ){
- if ( iCol < (sColCnt-1) ){
- grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
- grdRecTM2 = grd_timelist.getCellProperty("Head", iCol+1, "text").substring(0,2);
- } else {
- grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
-
- grdRecTM2 = "07";
- }
- // alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<="+sHeader[1][iCol+1]+grdRecTM2+"icol="+iCol );
- if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
- && sRecDD+sRecTM < sHeader[1][iCol+1]+ grdRecTM2 ){
- if( !utlf_isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
- var pos= eval(iCol) + (eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize);
- // sRecRsltHint = model.getValue(xTotPainInfoPath+"["+ idx +"]/obspartnm")+" : "+ model.getValue(xTotPainInfoPath+"["+ idx +"]/valu")
- Obj_Chart.Series(i).AddXY ( pos, eval(sRecRslt), "", sLineColor[i-1]);
-
- }
- }
- }
- }
-
- }//end of for getNodesetCount(xTotPainInfoPath)
- break;
- // case "24hours" :
- // sRecDD = model.getValue(sCondPath+"/recdd");
- //
- // for( var idx = 1 ; idx <= getNodesetCount(xPainInfoPath4) ; idx++ ){
- //
- // if ( sChartItem[i-1] == model.getValue(xPainInfoPath4+"["+idx+"]/obspartid")&& model.getValue(xPainInfoPath4+"["+idx+"]/causeid")!="23"){
- // sRecRslt = model.getValue(xPainInfoPath4+"["+ idx +"]/pnt");
- // sRecDD = model.getValue(xPainInfoPath4+"["+ idx +"]/recdd");
- // sRecTM = model.getValue(xPainInfoPath4+"["+ idx +"]/rectm");
- // //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
- //
- // for( var iCol = 0 ; iCol < sColCnt ; iCol++ ){
- // if ( iCol == 0 ){
- // grdRecTM1 = "0700";
- // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,0,"|","^").setReplaceWord(":","");
- // } else {
- // grdRecTM1 = getArrayData(grd_timelist24hours.caption,0,iCol-1,"|","^").setReplaceWord(":","");
- // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,iCol,"|","^").setReplaceWord(":","");
- // }
- //// alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<"+sHeader[1][iCol]+grdRecTM2+"icol="+iCol );
- // if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
- // && sRecDD+sRecTM < sHeader[1][iCol+1]+ grdRecTM2 ){
- // if( !isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
- // var pos= eval(iCol) + ( eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize);
- // Obj_Chart.Series(i).AddXY (pos, eval(sRecRslt), "", sLineColor[i-1]);
- //
- // }
- //
- // }
- // }
- // }
- // }//end of for getNodesetCount(xTotPainInfoPath)
- //
- // break;
- }
-
- }
- }//end of for getNodesetCount(xChkObsPartInfoPath)
-
- for( var i=1 ; i<=ds_main_searchinfo_obspartlist.rowcount && !utlf_isNull(ds_main_searchinfo_obspartlist.getColumn(0, "obspartid")) ; i++ ){
-
- Obj_Chart.AddSeries(4);//포인트 - Series 4
- Obj_Chart.Series(i+iSeriCnt).Marks.Visible = false;
- Obj_Chart.Series(i+iSeriCnt).VerticalAxisCustom = cus_axis1;
-
- Obj_Chart.Series(i+iSeriCnt).Color = sLineColor[i-1];
- Obj_Chart.Series(i+iSeriCnt).Depth = i+iSeriCnt;
-
- Obj_Chart.Series(i+iSeriCnt).Cursor =2020;
- if ( !utlf_isNull(eval(Obj_CheckBox+(i-1)).value) ){
-
- switch(pFlag){
- case "4days" :
-
- for( var idx=0 ; idx<ds_main_searchinfo_totpainlist.rowcount ; idx++ ){
- if ( sChartItem[i-1] == ds_main_searchinfo_totpainlist.getColumn(idx, "obspartid") && ds_main_searchinfo_totpainlist.getColumn(idx, "paingbid")=="92"){
- sRecRslt = ds_main_searchinfo_totpainlist.getColumn(idx, "pnt");
- sRecDD = ds_main_searchinfo_totpainlist.getColumn(idx, "recdd");
- sRecTM = ds_main_searchinfo_totpainlist.getColumn(idx, "rectm").substring(0,2);
- //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
-
- for( var iCol=0 ; iCol<sColCnt ; iCol++ ){
- if ( iCol < (sColCnt-1) ){
- grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
- grdRecTM2 = grd_timelist.getCellProperty("Head", iCol+1, "text").substring(0,2);
- } else {
- grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
- grdRecTM2 = "07";
- }
- // alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<="+sHeader[1][iCol]+grdRecTM2+"icol="+iCol );
- if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
- && sRecDD+sRecTM < sHeader[1][iCol+1]+ grdRecTM2 ){
- if( !utlf_isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
- sRecTM4 = ds_main_searchinfo_totpainlist.getColumn(idx, "rectm").substring(2,4);
- var pos= eval(iCol) + (eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize) + (eval(eval(sRecTM4)-eval("00"))/(iArrSize*60)) ;
-
- sRecRsltHint = ds_main_searchinfo_totpainlist.getColumn(idx, "obspartnm")
- + "("+ ds_main_searchinfo_totpainlist.getColumn(idx, "direcnm") +")"
- +"\n\n환자반응평가 : "+ ds_main_searchinfo_totpainlist.getColumn(idx, "valu")
- +"\n약물 및 비약물 중재 : "+ ds_main_searchinfo_totpainlist.getColumn(idx, "arbitration");
- Obj_Chart.Series(i+iSeriCnt).AddXY(pos, eval(sRecRslt), sRecRsltHint, sLineColor[i-1]);
-
- }
- }
- }
- }
-
- }//end of for getNodesetCount(xTotPainInfoPath)
- // alert(Obj_Chart.Tools.Count);
- break;
- // case "24hours" :
- // sRecDD = model.getValue(sCondPath+"/recdd");
- //
- // for( var idx = 1 ; idx <= getNodesetCount(xPainInfoPath4) ; idx++ ){
- //
- // if ( sChartItem[i-1] == model.getValue(xPainInfoPath4+"["+idx+"]/obspartid")&& model.getValue(xPainInfoPath4+"["+idx+"]/causeid")=="23"){
- // sRecRslt = model.getValue(xPainInfoPath4+"["+ idx +"]/pnt");
- // sRecDD = model.getValue(xPainInfoPath4+"["+ idx +"]/recdd");
- // sRecTM = model.getValue(xPainInfoPath4+"["+ idx +"]/rectm");
- // //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
- //
- // for( var iCol = 0 ; iCol < sColCnt ; iCol++ ){
- // if ( iCol == 0 ){
- // grdRecTM1 = "0000";
- // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,0,"|","^").setReplaceWord(":","");
- // } else {
- // grdRecTM1 = getArrayData(grd_timelist24hours.caption,0,iCol-1,"|","^").setReplaceWord(":","");
- // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,iCol,"|","^").setReplaceWord(":","");
- // }
- //// alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<"+sHeader[1][iCol]+grdRecTM2+"icol="+iCol );
- // if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
- // && sRecDD+sRecTM < sHeader[1][iCol]+ grdRecTM2 ){
- // if( !isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
- // var pos= eval(iCol) + ( eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize);
- // Obj_Chart.Series(i-1+iSeriCnt).AddXY (pos, eval(sRecRslt), "", sLineColor[i-1]);
- //
- // }
- // }
- // }
- // }
- // }//end of for getNodesetCount(xTotPainInfoPath)
- // break;
- }
- }
- }//end of for getNodesetCount(xChkObsPartInfoPath)
-
- }
- /**
- * @group :
- * @ver : 2007.07.21
- * @by : 양천덕
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 문자여부 확인
- * @param : str : 값
- * @return : true / false
- * @---------------------------------------------------
- */
- function fIsNumber(str) {
- str += ''; // 문자열로 변환
- str = str.replace(/^\s*|\s*$/g, ''); // 좌우 공백 제거
- if (utlf_isNull(str) || isNaN(str)) return false;
- return true;
- }
- /**
- * @group :
- * @ver : 2007.08.16
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 그리드 Header 생성
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCreateHeader(pFlag){
- var sRecDD = "";
- //var sChartCapNm = "";
- var sGridCapNm = "";
- var sTimeFlag = 0;
- var sCDay = new Array();
- var sDayInfo = "";
- var iDayRow = 0;
- var sDayCountInfo = "";
- var sDateList = "";
- var idx=0;
- sHeader[1] = new Array();
-
- var sCaption = "07:00^13:00^19:00^01:00^07:00^13:00^19:00^01:00^07:00^13:00^19:00^01:00^07:00^13:00^19:00^01:00";
- var sCaption24="07:00^08:00^09:00^10:00^11:00^12:00^13:00^14:00^15:00^16:00^17:00^18:00^19:00^20:00^21:00^22:00^23:00^24:00^01:00^02:00^03:00^04:00^05:00^06:00";
-
- switch(pFlag){
- case "4days" :
-
- var sStartDD = getDateCalc(ds_main_cond.getColumn(0, "recdd"),3,"-");
- for( idx=1 ; idx<=grd_timelist.getFormatColCount() ; idx++ ){
- sRecDD = getDateCalc(sStartDD,idx/4,"+");
- sHeader[1][idx-1] = sRecDD;
- }
- sHeader[1][idx]=getDateCalc(ds_main_cond.getColumn(0, "recdd"),1,"+")
-
- grd_timelist.visible = true;
-
- grd_timelist.splitContentsCell("Head", 1, 11, 1, 14, true);
- grd_timelist.splitContentsCell("Head", 1, 7, 1, 10, true);
- grd_timelist.splitContentsCell("Head", 1, 3, 1, 6, true);
- grd_timelist.splitContentsCell("Head", 1, 0, 1, 2, true);
-
- for( var iRow=1 ; iRow<=1 ; iRow++ ){
- for( var iCol=0 ; iCol<grd_timelist.getFormatColCount() ; iCol++ ){
- if(iRow == 1){
- // sGridCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
- // " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
- var sTempCap = sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
- " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
-
- grd_timelist.setCellProperty("Head", grd_timelist.getFormatColCount()+iCol, "text", sTempCap);
- }
-
- // if(iCol != (grd_timelist.getFormatColCount()-1)){
- // sGridCapNm += "^";
- // }
- }
- }
- //grd_timelist.caption = sCaption + "|" + sGridCapNm;
- grd_timelist.mergeContentsCell("Head", 1, 11, 1, 14, grd_timelist.getFormatColCount()+11, false);
- grd_timelist.mergeContentsCell("Head", 1, 7, 1, 10, grd_timelist.getFormatColCount()+7, false);
- grd_timelist.mergeContentsCell("Head", 1, 3, 1, 6, grd_timelist.getFormatColCount()+3, false);
- grd_timelist.mergeContentsCell("Head", 1, 0, 1, 2, grd_timelist.getFormatColCount(), false);
-
- break;
-
- //grd_timelist24hours 없어서 주석처리
- /*case "24hours" :
-
- var sStartDD = ds_main_cond.getColumn(0, "recdd");
- for( var idx=0 ; idx<grd_timelist24hours.cols ; idx++ ){
- sHeader[1][idx] = sStartDD;
- }
-
- for(var iRow=1; iRow<=1; iRow++){
- for(var iCol=0; iCol<grd_timelist24hours.cols; iCol++){
- if(iRow == 1){
- sGridCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
- " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
- }
- if(iCol != grd_timelist24hours.cols){
- sGridCapNm += "^";
- }
- }
- }
- grd_timelist24hours.caption = sCaption24 + "|" + sGridCapNm;
- break;*/
-
- default :
- break;
- }
- }
- /**
- * @group :
- * @ver : 2007.08.16
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 임상관찰 기록 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearch(pFlag){
- if( utlf_isNull(ds_main_patinfo.getColumn(0, "pid")) ){
- sysf_messageBox("환자를 선택하십시요","I");
- return;
- }
-
- ds_main_cond.setColumn(0, "vwctrl_button", pFlag);
-
- ds_send.setColumn(0, "pid", sPid);
- ds_send.setColumn(0, "indd", sIndd);
- ds_send.setColumn(0, "cretno", sCretNo);
- ds_send.setColumn(0, "instcd", sInstcd);
- ds_send.setColumn(0, "ioflag", sIOFlag);
- ds_send.setColumn(0, "srchdd", ds_main_cond.getColumn(0, "recdd"));
- ds_send.setColumn(0, "fromdd", getDateCalc(ds_main_cond.getColumn(0, "recdd"),3,'-'));
- ds_send.setColumn(0, "todd", ds_main_cond.getColumn(0, "recdd"));
- ds_send.setColumn(0, "vwctrl_button", ds_main_cond.getColumn(0, "vwctrl_button"));
-
- var oParam = {};
- oParam.id = "TRMNR08401";
- oParam.service = "wardcareapp.WardPainCareMngt";
- oParam.method = "reqGetNarcPrcpList";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "ds_main_searchinfo_prcplist1=prcplist1 ds_main_searchinfo_prcplist2=prcplist2 ds_main_searchinfo_prcplist3=prcplist3 ds_main_searchinfo_prcplist4=prcplist4 "
- + "ds_main_searchinfo_painlist1=painlist1 ds_main_searchinfo_painlist2=painlist2 ds_main_searchinfo_painlist3=painlist3 ds_main_searchinfo_painlist4=painlist4 "
- + "ds_main_searchinfo_totpainlist=totpainlist ds_main_searchinfo_obspartlist=obspartlist ds_main_searchinfo_paincount=paincount ds_main_searchinfo_tprlist=tprlist";
- oParam.async = false;
- oParam.callback = "cf_TRMNR08401";
- tranf_submit(oParam);
-
- // submit("TRMNR08401");
- if(arErrorCode.pop("TRMNR08401") > -1){
- //샘플화면 emr_ercarexp -> SMMNE02303
- var sProp="col="+ds_main_searchinfo_obspartlist.rowcount+",row=1,cellspacing=15,vcellspacing=2,itemWidth=-1,itemHeight=20,overflow='visible'";
- grp_chkbox.chk_dayschartinfo.setInitComp(sProp, ds_main_searchinfo_obspartlist,"obspartid","obspartnm","fn_mChkEvent");
-
- fCreateHeader(pFlag);
- fSettingCheckBox(pFlag);
- fMakeChart(pFlag);
- fChageView(pFlag);
- if ( sysf_getSystemCd().substring(0,3) == "DEV" ){
- fMessageAlert(xPainCountInfoPath);
-
- }
- }
- }
- function cf_TRMNR08401(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- /**
- * @group :
- * @ver : 2007.08.16
- * @by :
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 점수가7점이상이 3회이상인경우 메시지 팝업
- * @param :
- model.makeValue("/root/send/pid", sPid);
- model.makeValue("/root/send/indd", sIndd);
- model.makeValue("/root/send/cretno", sCretNo);
- model.makeValue("/root/send/vwctrl_button", "dr" );
- * @return :
- * @---------------------------------------------------
- */
- function fMessageAlert(destPath){
- if ( this.objects[destPath].getColumn(0, "cntpnt") == "Y" ){
- var rtnmsg = sysf_messageBox("7점이상의 통증이 3회이상 존재합니다 " ,"Q011");
-
- if ( rtnmsg == 6 ){
- var oParam = {};
- oParam.id = "TXMNR08401";
- oParam.service = "wardcareapp.WardPainCareMngt";
- oParam.method = "reqExePainCnfm";
- oParam.inds = "refCond=ds_send";
- oParam.outds = "";
- oParam.async = false;
- //oParam.callback = "cf_TXMNR08401";
- tranf_submit(oParam);
- }
- }
-
- }
- /**
- * @group :
- * @ver : 2007.08.16
- * @by : 이은영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 임상관찰 기록 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSettingCheckBox(pFlag){
-
- switch(pFlag){
- case "4days" :
- var sDaysChart = "";
- for( var idx=0 ; idx<ds_main_searchinfo_obspartlist.rowcount ; idx++ ){
-
- if ( idx == 0 ) {
- sDaysChart = ds_main_searchinfo_obspartlist.getColumn(0, "obspartid");
- } else {
- sDaysChart += " " + ds_main_searchinfo_obspartlist.getColumn(idx, "obspartid");
- }
-
- }
- ds_main_cond.setColumn(0, "dayschartinfo", sDaysChart);
-
- if( utlf_isNull(utlf_transNullToEmpty(ds_main_cond.getColumn(0,"dayschartinfo"))) ){
- grp_chkbox.chk_dayschartinfo.setData("", null,false);
- }else{
- grp_chkbox.chk_dayschartinfo.setData(utlf_transNullToEmpty(ds_main_cond.getColumn(0,"dayschartinfo")).split(" "), null,false);
- }
-
- break;
- //chk_hourschartinfo 없어서 주석처리
- /*case "24hours" :
-
- var s24HoursChart = "";
- for( var idx=0 ; idx< chk_hourschartinfo.length ; idx++){
-
- if ( idx == 0 ) {
- s24HoursChart = chk_hourschartinfo.item(0).value;
- } else {
- s24HoursChart += " " + chk_hourschartinfo.item(idx).value;
- }
-
- }
- model.setValue(sCondPath+"/hourschartinfo",s24HoursChart);
-
- chk_hourschartinfo.refresh();
- break;*/
- default :
- break;
- }
- }
- /**
- * @group :
- * @ver : 2016.02.29
- * @by : 윤주호
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : MultiCheckBox 값 셋팅
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fn_mChkEvent(){
- var rtn = "";
- var tmp = "";
-
- rtn = grp_chkbox.chk_dayschartinfo.getData();
-
- for( var i=0 ; i<rtn.length ; i++ ){
- if( i == 0 ) tmp = rtn[i];
- else tmp = tmp + " " +rtn[i];
- }
-
- ds_main_cond.setColumn(0, "dayschartinfo", tmp);
-
- fMakeChart("4days");
- }
- /**
- * @group :
- * @ver : 2011.03.16
- * @by : 안도영
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 구역정보 조회 (응급실인 경우)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetWardChngInfo(initFlag, wardCd, sectionCd){
- if(initFlag=="Y") {
- var sWardCD = wardCd;
- }
- else{
- //var sWardCD = model.getValue("/root/cond/wardcd");
- var sWardCD = group1.grp_inpatinfo.cmb_wardlist.value;
- }
-
- if ( sWardCD == eERDEPTCD) {
- eERFLAG = "Y";
- }else{
- eERFLAG = "";
- }
-
- //응급실인 경우 구역정보 추가조회
- if(eERFLAG == "Y"){ // 응급실
- fGetZoneList(); //ds_temp_zoneinfo_zonelist를 받아옴
- //copyNodeset("/root/temp2/zoneinfo", "/root/temp/zoneinfo");
- group1.grp_inpatinfo.caption7.text = "구 역 :";
- group1.grp_inpatinfo.cmb_roomlist.visible = false;
- group1.grp_inpatinfo.cmb_erpat.visible = true;
- group1.grp_inpatinfo.cmb_patlist.visible = false;
- group1.grp_inpatinfo.cmb_zone.visible = true;
-
- //ipt_pid.attribute("left") = 539; // 위치 변경
- //ipt_pid.attribute("top") = 40;
- //btn_patSearch.attribute("left") = 617; // 위치 변경
- //btn_patSearch.attribute("top") = 41; // 위치 변경
- group1.grp_inpatinfo.caption9.visible = false;
- group1.grp_inpatinfo.cmb_mypatlist.visible = false;
-
- if(initFlag=="Y"){ // 처음 상단 정보로 화면 열릴 때
- ds_main_cond.setColumn(0, "zonecd", (utlf_isNull(sectionCd) ? "-" : sectionCd));
- }else{
- ds_main_cond.setColumn(0, "zonecd", "-"); // 'All'로 default
- }
-
-
- }else{
- group1.grp_inpatinfo.caption7.text = "병 실 :";
- group1.grp_inpatinfo.cmb_roomlist.visible = true;
- group1.grp_inpatinfo.cmb_erpat.visible = false;
- group1.grp_inpatinfo.cmb_patlist.visible = true;
- group1.grp_inpatinfo.cmb_zone.visible = false;
- //ipt_pid.attribute("left") = 669; // 기존 위치
- //ipt_pid.attribute("top") = 15;
- //btn_patSearch.attribute("left") = 747; // 기존 위치
- //btn_patSearch.attribute("top") = 16;
-
- group1.grp_inpatinfo.caption9.visible = true;
- group1.grp_inpatinfo.cmb_mypatlist.visible = true;
-
- ds_main_cond.setColumn(0, "zonecd", "");
-
- }
- }
- function RgbToGraph(h) { return window.rgb(HexToR(h),HexToG(h),HexToB(h)) }
- function HexToR(h) { return parseInt((cutHex(h)).substring(0,2),16) }
- function HexToG(h) { return parseInt((cutHex(h)).substring(2,4),16) }
- function HexToB(h) { return parseInt((cutHex(h)).substring(4,6),16) }
- function cutHex(h) { return (h.charAt(0)=="#") ? h.substring(1,7) : h}
- ]]></Script>
|