SMMNR08400.xjs 55 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/*
  3. 통증관리기록(SMMNR00900.xfm - JScript )
  4. - Version :
  5. 1) : Ver.1.00.01
  6. */
  7. var sCondPath = "/root/main/cond";
  8. var xChartHeaderListPath = "/root/main/chartheaderlist";
  9. var xTMSettingListPath = "/root/temp/clincobsrecinfo/tmsettinglist";
  10. var xPamInfoPath = "/root/main/paminfo/pamlist"; // 환자정보
  11. var xPrcpInfoPath1 = "/root/main/searchinfo/prcplist1"; // 처방정보(fromdd)
  12. var xPrcpInfoPath2 = "/root/main/searchinfo/prcplist2"; // 처방정보(fromdd+1)
  13. var xPrcpInfoPath3 = "/root/main/searchinfo/prcplist3"; // 처방정보(fromdd+2)
  14. var xPrcpInfoPath4 = "/root/main/searchinfo/prcplist4"; // 처방정보(fromdd+3)--> srchdd
  15. var xPainInfoPath1 = "/root/main/searchinfo/painlist1"; //통증정보(fromdd)
  16. var xPainInfoPath2 = "/root/main/searchinfo/painlist2"; //통증정보(fromdd+1)
  17. var xPainInfoPath3 = "/root/main/searchinfo/painlist3"; //통증정보(fromdd+2)
  18. var xPainInfoPath4 = "/root/main/searchinfo/painlist4"; //통증정보(fromdd+3)--> srchdd
  19. var xTotPainInfoPath = "/root/main/searchinfo/totpainlist"; //통증조회(그래프를 그리기 위한 4일간의 모든 통증기록)
  20. var xTPRInfoPath = "/root/main/searchinfo/tprlist"; //TPR vs조회
  21. var xChkObsPartInfoPath = "/root/main/searchinfo/obspartlist"; //통증부위--> 그래프 체크박스에 나타낼 통증부위
  22. var xPainCountInfoPath = "ds_main_searchinfo_paincount"; //점수가7점이상이 3회이상인경우
  23. var sHeader = new Array();
  24. var sFormerHeader = new Array();
  25. var sPid = ""; // 환자번호
  26. var sIndd = ""; // 입원일자
  27. var sCretNo = ""; // 환자 일자별 일련번호
  28. var sInstcd = ""; // 기관코드
  29. var sIOFlag = ""; // 입원/외래 구분
  30. var sWardCD = ""; // 병동코드
  31. var sRoomCD = ""; // 병실코드
  32. var sJobKindCD = ""; // 직급코드
  33. var sIndschacptstat = "";
  34. var sDschdd = "";
  35. var sChartItem = new Array();
  36. var sLineColor = new Array("14518476" , "65535" , "16746598", "16777096" , "65280" , "255" , "12290303" , "2263176" , "2263295" ,"7829367", "10040234" , "4521932","12320716");
  37. //var sLineColor = new Array(0xcc88dd , 0xff0000 , 0x00ff00 , 0x0000ff , 0x4400cc , 0x6688ff , 0x888822 , 0xff8822 , 0xffff00, 0x88ffff, 0xe5f3c2, 0x6699ff );
  38. var sCheckColor = new Array("#cc88dd" , "#ffff00" , "#6688ff", "#88ffff" , "#00ff00" , "#ff0000" , "#ff88bb" , "#888822" , "#ff8822" ,"#777777", "#aa3399" , "#ccff44","#ccffbb");
  39. var sPatNm = "";
  40. var sSexAge = "";
  41. var sDutplcecd = "";
  42. var sOrdDeptcd = "";
  43. var sMedispclid = "";
  44. var sUserFlag = "";
  45. var sUserDeptCd = "";
  46. var sUserId = "";
  47. //var sSpParamInfo = "";
  48. //var sParamInfo = "";
  49. //var sChartNum = 1;
  50. //응급의료센터 관련 변수_경북대 (2011.05.03 Ahn)
  51. var eERDEPTCD = "";
  52. var eERFLAG = "";
  53. var eSECTIONCD = "";
  54. var sSectioncd ="";
  55. var arErrorCode = new HashArray();
  56. //temp/cond/roomcdgrup/roomcdgruplist => ds_data_roomcdgruplist
  57. //temp/cond/patientgrup/patientgruplist => ds_data_patientgruplist
  58. //temp/cond/wardcdgrup/wardcdgruplist => ds_data_wardcdgruplist
  59. //temp/cond/settingpatient/settingpatientlist => ds_data_settingpatientlist
  60. /**
  61. * @group :
  62. * @ver : 2007.06.27
  63. * @by : 이은영
  64. * @---------------------------------------------------
  65. * @type : function
  66. * @access : public
  67. * @desc : 화면 초기화
  68. * @param :
  69. * @return :
  70. * @---------------------------------------------------
  71. */
  72. function fInitialize(pFlag){
  73. for( var idx = 0 ; idx < sCheckColor.length ; idx++){
  74. sLineColor[idx];// = RgbToGraph(sCheckColor[idx]);
  75. }
  76. var sPamInfo = "";
  77. //var sParamInfo = "";
  78. //var sSpParamInfo = "";
  79. if(pFlag == "init" || pFlag == "reset"){
  80. //fMakeChart("init24hours");
  81. fMakeChart("init4days");
  82. }
  83. if(pFlag == "init"){
  84. //사용자 직급구분에 따른 화면 제어 플래그 설정
  85. sJobKindCD = sysf_getUserInfo("jobkindcd"); // 직급코드
  86. sUserDeptCd = sysf_getUserInfo("dutplcecd");
  87. sUserId = sysf_getUserInfo("userid");
  88. //---------(20101204) 경북대
  89. //추가
  90. var ssflag = "";
  91. if(sysf_getUserInfo("dutplceinstcd") != '032' && sysf_getUserInfo("dutplceinstcd") != '031') {
  92. //경북대가 아니면
  93. if( sJobKindCD == "0330" || sJobKindCD == "0310"){
  94. ssflag = "Y";
  95. }else{
  96. ssflag = "N";
  97. }
  98. } else if(sysf_getUserInfo("dutplceinstcd") == '032' || sysf_getUserInfo("dutplceinstcd") == '031') {
  99. //경북대이면 03%로 체크한다.
  100. if( sJobKindCD.substring(0, 2) == "03"){
  101. ssflag = "Y";
  102. }else{
  103. ssflag = "N";
  104. }
  105. }
  106. //----------------------------
  107. //응급의료센터 부서코드 추출_ 경북대 (2011.05.03 Ahn)
  108. ds_send.setColumn(0, "cdgrupid", "'002'");
  109. ds_send.setColumn(0, "srchdd", utlf_getCurrentDate()); // 조회기준일자
  110. var oParam = {};
  111. oParam.id = "TRMNW00001";
  112. oParam.service = "wardcareapp.WardCareMngt";
  113. oParam.method = "reqGetNursHardCdInfo";
  114. oParam.inds = "req=ds_send";
  115. oParam.outds = "ds_code_codeinfo_codelist=codelist";
  116. oParam.async = false;
  117. oParam.callback = "cf_TRMNW00001";
  118. tranf_submit(oParam);
  119. if( arErrorCode.pop("TRMNW00001") > -1 ){
  120. eERDEPTCD = ds_code_codeinfo_codelist.getColumn(ds_code_codeinfo_codelist.findRow("cdgrupid", "002"), "cdid");
  121. }
  122. //원본:의사의 경우만
  123. //if(sJobKindCD == "0330" || sJobKindCD == "0310" || sUserId=="20700469"){//20700469 는 테스트용 김홍점
  124. if(ssflag=="Y") {
  125. //---------(20101204) 경북대
  126. sUserFlag = "2";
  127. }else{
  128. sUserFlag = "1";
  129. }
  130. ds_main_cond.setColumn(0, "srchflag", sUserFlag);
  131. }else{
  132. // sParamInfo = "";
  133. }
  134. // model.setValue(sCondPath+"/cmbstatusx", "0");
  135. // model.setValue(sCondPath+"/cmbstatusy", "0");
  136. ds_main_cond.setColumn(0, "vwctrl_button", "4days");
  137. //상단정보 존재 여부 체크
  138. // 환자정보 조회
  139. sPamInfo = sysf_getGlobalVariable("paminfo");
  140. dsf_setCSVToDs("ds_main_paminfo_pamlist",sPamInfo);
  141. if( utlf_isNull(sPamInfo) ){
  142. //2008-05-14
  143. fChkTgtPatInfo("disable");
  144. // model.toggle("case_4daysstnd");
  145. fSettingPamInfo(sUserFlag);
  146. //messageBox("환자를 선택하십시요","I");
  147. return;
  148. }else{
  149. fChkTgtPatInfo("able");
  150. }
  151. ds_main_paminfo_pamlist.addColumn("sectioncd", "string");
  152. sPid = ds_main_paminfo_pamlist.getColumn(0, "pid"); // 환자번호
  153. sCretNo = ds_main_paminfo_pamlist.getColumn(0, "cretno"); // 환자 일자별 일련번호
  154. sInstcd = ds_main_paminfo_pamlist.getColumn(0, "instcd"); // 기관코드
  155. sIOFlag = ds_main_paminfo_pamlist.getColumn(0, "ioflag"); // 입원/외래 구분
  156. sWardCD = ds_main_paminfo_pamlist.getColumn(0, "wardcd"); // 병동코드
  157. sRoomCD = ds_main_paminfo_pamlist.getColumn(0, "roomcd"); // 병실코드
  158. sIndschacptstat = ds_main_paminfo_pamlist.getColumn(0, "indschacptstat"); //입퇴원구분코드
  159. sDschdd = ds_main_paminfo_pamlist.getColumn(0, "dschdd"); // 퇴원일자
  160. sPatNm = ds_main_paminfo_pamlist.getColumn(0, "hngnm"); // 환자명
  161. sSexAge = ds_main_paminfo_pamlist.getColumn(0, "sex"); +"/"+ ds_main_paminfo_pamlist.getColumn(0, "age"); // 성별
  162. sOrdDeptcd = ds_main_paminfo_pamlist.getColumn(0, "orddeptcd");
  163. sMedispclid = ds_main_paminfo_pamlist.getColumn(0, "medispclid");
  164. sSectioncd = ds_main_paminfo_pamlist.getColumn(0, "sectioncd"); // 응급실 구역정보 추가(2011.05.04 ahn)
  165. if(sIOFlag == "O"){
  166. sIndd = ds_main_paminfo_pamlist.getColumn(0, "orddd"); // 진료일자
  167. }else{
  168. sIndd = ds_main_paminfo_pamlist.getColumn(0, "indd"); // 입원일자
  169. }
  170. ds_main_cond.setColumn(0, "pid", sPid);
  171. ds_main_patinfo.setColumn(0, "pid", sPid);
  172. ds_main_patinfo.setColumn(0, "indd", sIndd);
  173. ds_main_patinfo.setColumn(0, "cretno", sCretNo);
  174. ds_main_patinfo.setColumn(0, "ordtype", sIOFlag);
  175. ds_main_patinfo.setColumn(0, "indschacptstat", sIndschacptstat);
  176. ds_main_patinfo.setColumn(0, "dschdd", sDschdd);
  177. ds_main_patinfo.setColumn(0, "wardcd", sWardCD);
  178. ds_main_patinfo.setColumn(0, "roomcd", sRoomCD);
  179. ds_main_patinfo.setColumn(0, "patnm", sPatNm);
  180. ds_main_patinfo.setColumn(0, "sexage", sSexAge);
  181. ds_main_patinfo.setColumn(0, "orddeptcd", sOrdDeptcd);
  182. ds_main_patinfo.setColumn(0, "medispclid", sMedispclid);
  183. ds_main_patinfo.setColumn(0, "sectioncd", sSectioncd); // 응급실 구역정보 추가(2011.05.04 ahn)
  184. //퇴원/입원 환자 구분에 따른 화면 제어
  185. if(sIndschacptstat == "D"){
  186. group1.rdo_srchflag.visible = false; //퇴원환자 조회구분 숨기기
  187. group1.grp_oderinpatinfo.visible = false;
  188. group1.grp_inpatinfo.visible = false;
  189. group1.grp_outpatinfo.visible = true;
  190. ds_main_cond.setColumn(0, "recdd", sDschdd);
  191. }else{
  192. if(pFlag == "init" || pFlag == "reset"){
  193. fSettingUserTypeSrch(sUserFlag);
  194. }
  195. var sRecdate = "";
  196. // var sRectime = "";
  197. if(utlf_getCurrentTime().substr(0,4) < "0700"){
  198. sRecdate = getDateCalc(utlf_getCurrentDate(),1,"-");
  199. }else{
  200. sRecdate = utlf_getCurrentDate();
  201. }
  202. ds_main_cond.setColumn(0, "recdd", sRecdate);
  203. if(pFlag == "init"){
  204. if( sUserFlag == "2"){
  205. //진료과 정보 조회
  206. lf_mmbfGetDeptCodeComboList(ds_temp_cond_deptgrup_deptgruplist_dept , "D"); //부서코드 콤보
  207. } else {
  208. //병동코드 조회
  209. fGetCareComWardList(); //ds_data_wardcdgruplist를 받아옴
  210. //내환자 조회
  211. fGetSettingPatientList(); //ds_data_settingpatientlist를 받아옴
  212. }
  213. }
  214. if(pFlag == "reset" || pFlag == "init"){
  215. if(sUserFlag == "2"){
  216. lf_mmbfGetUserComboList(ds_temp_cond_doctlist_medispcl_usercombo , sOrdDeptcd, "0330", "", "M");
  217. lf_mmbfGetUserComboList(ds_temp_cond_doctlist_atdoct_usercombo, sOrdDeptcd, "0330", "", "A");
  218. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_medispcllist", "전체", "-", "above"); //의사콤보 전체항목 추가
  219. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_atdoctlist", "전체", "-", "above");//의사콤보 전체항목 추가
  220. //model.setValue("/root/temp/cond/doctlist/atdoct", "-");
  221. fGetCareComDeptPatList(sOrdDeptcd, sMedispclid , '-', ds_init.getColumn(0, "mypatsrchflag")); //ds_data_patientgruplist를 받아옴
  222. group1.grp_oderinpatinfo.cmb_deptlist.value = sOrdDeptcd;
  223. group1.grp_oderinpatinfo.cmb_medispcllist.value = sMedispclid;
  224. group1.grp_oderinpatinfo.cmb_atdoctlist.value = "-";
  225. group1.grp_oderinpatinfo.cmb_oderpatlist.value = sPid;
  226. group1.grp_oderinpatinfo.ipt_orderpid.value = sPid;
  227. }else{
  228. // 응급실일 경우 (2011.05.04 Ahn)
  229. //alert(sectioncd);
  230. fGetWardChngInfo("Y", sWardCD, sSectioncd);
  231. fGetCareComRoomList(sWardCD); //ds_data_roomcdgruplist를 받아옴
  232. if(eERFLAG == "Y"){ // 응급실 환자 조회 (2011.05.04 Ahn)
  233. fGetCareComPatList(sWardCD, sRoomCD, group1.grp_inpatinfo.cmb_zone.value); //ds_data_patientgruplist를 받아옴
  234. }else{
  235. fGetCareComPatList(sWardCD, sRoomCD); //ds_data_patientgruplist를 받아옴
  236. }
  237. group1.grp_inpatinfo.cmb_wardlist.value = sWardCD;
  238. group1.grp_inpatinfo.cmb_roomlist.value = sRoomCD;
  239. group1.grp_inpatinfo.cmb_patlist.value = sPid;
  240. group1.grp_inpatinfo.ipt_pid.value = sPid;
  241. group1.grp_inpatinfo.cmb_mypatlist.value = sPid;
  242. if(eERFLAG == "Y"){
  243. group1.grp_inpatinfo.cmb_erpat.value = sPid; // 응급실 환자 지정 (2011.05.04 Ahn)
  244. }
  245. }
  246. }else if(pFlag == "patinit"){
  247. group1.grp_inpatinfo.cmb_mypatlist.value = sPid;
  248. if(eERFLAG == "Y"){
  249. group1.grp_inpatinfo.cmb_erpat.value = sPid; // 응급실 환자 지정 (2011.05.04 Ahn)
  250. }
  251. }
  252. }
  253. fSearch("4days");
  254. var vsinfo = utlf_transNullToEmpty(ds_main_searchinfo_tprlist.getColumn(0, "bodyinfo")) + "\n" + utlf_transNullToEmpty(ds_main_searchinfo_tprlist.getColumn(0, "vsinfo"));
  255. ds_temp.setColumn(0, "vsinfo", vsinfo);
  256. }
  257. function cf_TRMNW00001(sSvcId, nErrorCode, sErrorMsg) {
  258. arErrorCode.push(sSvcId, nErrorCode);
  259. }
  260. /**
  261. * @group :
  262. * @ver : 2008.10.14
  263. * @by : 양천덕
  264. * @---------------------------------------------------
  265. * @type : function
  266. * @access : public
  267. * @desc : 사용자별 조회 조건 변경
  268. * @param :
  269. * @return :
  270. * @---------------------------------------------------
  271. */
  272. function fSettingUserTypeSrch(pFlag){
  273. if( pFlag == "1"){
  274. group1.grp_outpatinfo.visible = false;
  275. group1.grp_oderinpatinfo.visible = false;
  276. group1.grp_inpatinfo.visible = true;
  277. }else{
  278. group1.grp_outpatinfo.visible = false;
  279. group1.grp_oderinpatinfo.visible = true;
  280. group1.grp_inpatinfo.visible = false;
  281. }
  282. }
  283. /**
  284. * @group :
  285. * @ver : 2008.10.14
  286. * @by : 양천덕
  287. * @---------------------------------------------------
  288. * @type : function
  289. * @access : public
  290. * @desc : 사용자별 조회 조건 변경
  291. * @param :
  292. * @return :
  293. * @---------------------------------------------------
  294. */
  295. function fChangUserTypeSrch(pFlag){
  296. fTPRviewInit();
  297. fSettingUserTypeSrch(pFlag);
  298. var sSettingId1 = "-";
  299. var sSettingId2 = "-";
  300. if( pFlag == "1"){
  301. fGetWardChngInfo("Y", "", ""); // 병동 조회조건으로 초기화
  302. //병동코드 조회
  303. fGetCareComWardList(); //ds_data_wardcdgruplist를 받아옴
  304. //내환자 조회
  305. fGetSettingPatientList(); //ds_data_settingpatientlist를 받아옴
  306. fGetCareComRoomList(sUserDeptCd); //ds_data_roomcdgruplist를 받아옴
  307. ds_main_cond.setColumn(0, "wardcdgruplist", sUserDeptCd);
  308. }else{
  309. //진료과 정보 조회
  310. lf_mmbfGetDeptCodeComboList(ds_temp_cond_deptgrup_deptgruplist_dept , "D"); //부서코드 콤보
  311. //---------(20101204) 경북대
  312. //추가
  313. var ssflag = "";
  314. if(sysf_getUserInfo("dutplceinstcd") != '032' && sysf_getUserInfo("dutplceinstcd") != '031') {
  315. //경북대가 아니면
  316. if( sJobKindCD == "0330" || sJobKindCD == "0310"){
  317. ssflag = "Y";
  318. }else{
  319. ssflag = "N";
  320. }
  321. } else if(sysf_getUserInfo("dutplceinstcd") == '032' || sysf_getUserInfo("dutplceinstcd") == '031') {
  322. //경북대이면 03%로 체크한다.
  323. if( sJobKindCD.substring(0, 2) == "03"){
  324. ssflag = "Y";
  325. }else{
  326. ssflag = "N";
  327. }
  328. }
  329. //원본:의사의 경우만
  330. //if(sJobKindCD == "0330" || sJobKindCD == "0310"){
  331. if(ssflag=="Y") {
  332. //---------(20101204) 경북대
  333. lf_mmbfGetUserComboList(ds_temp_cond_doctlist_medispcl_usercombo , sUserDeptCd, "0330", "", "M");
  334. lf_mmbfGetUserComboList(ds_temp_cond_doctlist_atdoct_usercombo, sUserDeptCd, "0330", "", "A");
  335. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_medispcllist", "전체", "-", "above"); //의사콤보 전체항목 추가
  336. frmf_addComboItem("group1.grp_oderinpatinfo.cmb_atdoctlist", "전체", "-", "above");//의사콤보 전체항목 추가
  337. if( !utlf_isNull(ds_temp_cond_doctlist_medispcl_usercombo.getColumn(ds_temp_cond_doctlist_medispcl_usercombo.findRow("userid", sUserId), "userid")) ){
  338. sSettingId1 = sUserId
  339. }
  340. if( !utlf_isNull(ds_temp_cond_doctlist_atdoct_usercombo.getColumn(ds_temp_cond_doctlist_atdoct_usercombo.findRow("userid", sUserId), "userid")) ){
  341. sSettingId2 = sUserId
  342. }
  343. fGetCareComDeptPatList(sUserDeptCd, sSettingId1 , sSettingId2, ds_init.getColumn(0, "mypatsrchflag")); //ds_data_patientgruplist를 받아옴
  344. ds_main_cond.setColumn(0, "dept", sUserDeptCd);
  345. ds_main_cond.setColumn(0, "medispcl", sSettingId1);
  346. ds_main_cond.setColumn(0, "atdoct", sSettingId2);
  347. }else{
  348. ds_main_cond.setColumn(0, "dept", "-");
  349. ds_main_cond.setColumn(0, "medispcl", "");
  350. ds_main_cond.setColumn(0, "atdoct", "");
  351. }
  352. }
  353. }
  354. /**
  355. * @group :
  356. * @ver : 2008.09.01
  357. * @by : 양천덕
  358. * @---------------------------------------------------
  359. * @type : function
  360. * @access : public
  361. * @desc : 초기 param 존재 하지 않을 경우 환자 선택화면 설정
  362. * @param :
  363. * @return :
  364. * @---------------------------------------------------
  365. */
  366. function fSettingPamInfo(pFlag){
  367. ds_main_cond.setColumn(0, "recdd", utlf_getCurrentDate());
  368. fChangUserTypeSrch(pFlag);
  369. }
  370. /**
  371. * @group :
  372. * @ver : 2007.07.11
  373. * @by : 이은영
  374. * @---------------------------------------------------
  375. * @type : function
  376. * @access : public
  377. * @desc : 이전/이후 날짜 Setting
  378. * @param :
  379. * @return :
  380. * @---------------------------------------------------
  381. */
  382. function fDateCalc(pFlag, pVWFlag, pTerm){
  383. switch(pVWFlag){
  384. case "24hours" :
  385. ds_main_cond.setColumn(0, "recdd", getDateCalc(ds_main_cond.getColumn(0, "recdd"),1,pFlag));
  386. break;
  387. case "4days" :
  388. ds_main_cond.setColumn(0, "recdd", getDateCalc(ds_main_cond.getColumn(0, "recdd"),4,pFlag));
  389. break;
  390. }
  391. }
  392. /**
  393. * @group :
  394. * @ver : 2007.07.11
  395. * @by : 이은영
  396. * @---------------------------------------------------
  397. * @type : function
  398. * @access : public
  399. * @desc : 화면 전환
  400. * @param :
  401. * @return :
  402. * @---------------------------------------------------
  403. */
  404. function fChageView(pFlag){
  405. ds_main_cond.setColumn(0, "vwctrl_button", pFlag);
  406. switch(pFlag){
  407. // case "24hours" :
  408. // model.toggle("case_24hoursstnd");
  409. // //그래프 체크박스 숨김,보임 설정
  410. // if(model.getValue(sCondPath+"/vwctrl_24hours") == "A"){
  411. // grp_chkbox.visible = true;
  412. // }else{
  413. // grp_chkbox.visible = false;
  414. // }
  415. //
  416. // chk_hourschartinfo.visible = true;
  417. // chk_dayschartinfo.visible = false;
  418. // obj_4dayschart.visible = false;
  419. // obj_24hourschart.visible = true;
  420. // btn_4daysvw.visible = true;
  421. // btn_24hoursvw.visible = false;
  422. // grd_timelist24hours.visible = true;
  423. // grd_timelist.visible = false;
  424. // grp_hide.visible = true;
  425. // model.setValue(sCondPath+"/hourschartinfo","1 2 3 4");
  426. // break;
  427. case "4days" :
  428. // model.toggle("case_4daysstnd");
  429. //그래프 체크박스 숨김,보임 설정
  430. // if(model.getValue(sCondPath+"/vwctrl_4days") == "A"){
  431. // grp_chkbox.visible = true;
  432. // }else{
  433. // grp_chkbox.visible = false;
  434. // }
  435. // chk_hourschartinfo.visible = false;
  436. // chk_dayschartinfo.visible = true;
  437. obj_4dayschart.visible = true;
  438. // obj_24hourschart.visible = false;
  439. // btn_4daysvw.visible = false;
  440. // btn_24hoursvw.visible = true;
  441. // grd_timelist24hours.visible = false;
  442. grd_timelist.visible = true;
  443. // grp_hide.visible = false;
  444. // model.setValue(sCondPath+"/dayschartinfo","1 2 3 4");
  445. break;
  446. }
  447. }
  448. /**
  449. * @group :
  450. * @ver : 2008.07.30
  451. * @by : 양천덕
  452. * @---------------------------------------------------
  453. * @type : function
  454. * @access : public
  455. * @desc :
  456. * @param : 화면 초기화
  457. * @return :
  458. * @---------------------------------------------------
  459. */
  460. function fTPRviewInit(){
  461. if( ds_data_patientgruplist.rowcount < 0){
  462. return;
  463. }
  464. fInitTopInfo();
  465. ds_data_patientgruplist.clearData();
  466. ds_main_cond.setColumn(0, "patientgruplist", "");
  467. ds_main_cond.setColumn(0, "patientgruplist", "");
  468. ds_main_searchinfo_prcplist1.clearData();
  469. ds_main_searchinfo_prcplist2.clearData();
  470. ds_main_searchinfo_prcplist3.clearData();
  471. ds_main_searchinfo_prcplist4.clearData();
  472. ds_main_searchinfo_painlist1.clearData();
  473. ds_main_searchinfo_painlist2.clearData();
  474. ds_main_searchinfo_painlist3.clearData();
  475. ds_main_searchinfo_painlist4.clearData();
  476. ds_main_searchinfo_totpainlist.clearData();
  477. ds_main_searchinfo_paincount.clearData();
  478. ds_main_searchinfo_tprlist.clearData();
  479. ds_main_searchinfo_obspartlist.clearData();
  480. //샘플화면 emr_ercarexp -> SMMNE02303
  481. var sProp="col="+ds_main_searchinfo_obspartlist.rowcount+",row=1,cellspacing=15,vcellspacing=2,itemWidth=-1,itemHeight=20,overflow='visible'";
  482. grp_chkbox.chk_dayschartinfo.setInitComp(sProp, ds_main_searchinfo_obspartlist,"obspartid","obspartnm","fn_mChkEvent");
  483. grd_timelist.visible = false;
  484. group1.cpt_vsinfo.value = "";
  485. //fMakeChart("init24hours");
  486. fMakeChart("init4days");
  487. if(ds_main_patinfo.rowcount > 0){
  488. ds_main_patinfo.setColumn(0, "pid", "");
  489. ds_main_patinfo.setColumn(0, "indd", "");
  490. ds_main_patinfo.setColumn(0, "cretno", "");
  491. ds_main_patinfo.setColumn(0, "ordtype", "");
  492. ds_main_patinfo.setColumn(0, "indschacptstat", "");
  493. ds_main_patinfo.setColumn(0, "dschdd", "");
  494. ds_main_patinfo.setColumn(0, "eroutdd", "");
  495. ds_main_patinfo.setColumn(0, "patnm", "");
  496. ds_main_patinfo.setColumn(0, "sexage", "");
  497. ds_main_patinfo.setColumn(0, "wardcd", "");
  498. ds_main_patinfo.setColumn(0, "roomcd", "");
  499. }
  500. sPid = "";
  501. sIndd = "";
  502. sCretNo = "";
  503. sInstcd = "";
  504. sIOFlag = "";
  505. sWardCD = "";
  506. sRoomCD = "";
  507. sIndschacptstat = "";
  508. sDschdd = "";
  509. sOrdDeptcd = "";
  510. sMedispclid = "";
  511. ds_main_cond.setColumn(0, "pid", "");
  512. fChkTgtPatInfo("disable");
  513. }
  514. /**
  515. * @group :
  516. * @ver : 2008.07.02
  517. * @by : 양천덕
  518. * @---------------------------------------------------
  519. * @type : function
  520. * @access : public
  521. * @desc :
  522. * @param : 환자 선택 여부확인
  523. * @return :
  524. * @---------------------------------------------------
  525. */
  526. function fChkTgtPatInfo(pFlag){
  527. switch(pFlag){
  528. case "disable":
  529. btn_4dayrefresh.enable = false;
  530. btn_4daysvwctrl.enable = false;
  531. // btn_24hoursvw.enable = false;
  532. btn_4daybefore.enable = false;
  533. btn_4dayafter.enable = false;
  534. break;
  535. case "able":
  536. btn_4dayrefresh.enable = true;
  537. btn_4daysvwctrl.enable = true;
  538. // btn_24hoursvw.enable = true;
  539. btn_4daybefore.enable = true;
  540. btn_4dayafter.enable = true;
  541. break;
  542. }
  543. }
  544. /**
  545. * @group :
  546. * @ver : 2008.04.28
  547. * @by : 양천덕
  548. * @---------------------------------------------------
  549. * @type : function
  550. * @access : public
  551. * @desc : 환자 선택시 상단정보 변경
  552. * @param :
  553. * @return :
  554. * @---------------------------------------------------
  555. */
  556. function fSetParam(pFlag, pIndex){
  557. if(ds_main_paminfo_pamlist.rowcount > 0){
  558. ds_main_paminfo_pamlist.clearData();
  559. }
  560. var sOrdtype = "";
  561. var sPid = "";
  562. var sIndd = "";
  563. var sCretno = "";
  564. var sInstcd = "";
  565. var param = "";
  566. if(pFlag == "SrchPat"){
  567. sOrdtype = ds_data_patientgruplist.getColumn(pIndex, "ordtype");
  568. sPid = ds_data_patientgruplist.getColumn(pIndex, "pid");
  569. sIndd = ds_data_patientgruplist.getColumn(pIndex, "indd");
  570. sCretno = ds_data_patientgruplist.getColumn(pIndex, "cretno");
  571. sInstcd = ds_data_patientgruplist.getColumn(pIndex, "instcd");
  572. group1.grp_inpatinfo.cmb_mypatlist.value = "";
  573. }else if(pFlag == "SettingPat"){
  574. sOrdtype = ds_data_settingpatientlist.getColumn(pIndex, "ordtype");
  575. sPid = ds_data_settingpatientlist.getColumn(pIndex, "pid");
  576. sIndd = ds_data_settingpatientlist.getColumn(pIndex, "indd");
  577. sCretno = ds_data_settingpatientlist.getColumn(pIndex, "cretno");
  578. sInstcd = ds_data_settingpatientlist.getColumn(pIndex, "instcd");
  579. }
  580. param = sOrdtype + "▦"
  581. + sPid + "▦"
  582. + sIndd + "▦"
  583. + sCretno + "▦"
  584. + sInstcd + "▦"
  585. + "▦" ;
  586. //frmf_setParameter("condparam", param);
  587. //modal("SPMMO08900", 1, "", "", "", "", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
  588. appf_initPatientInfo(param); //상단정보 셋팅
  589. if(pFlag == "SrchPat"){
  590. fInitialize("patinit");
  591. }else if(pFlag == "SettingPat"){
  592. fInitialize("reset");
  593. }
  594. }
  595. /**
  596. * @group :
  597. * @ver : 2007.07.11
  598. * @by : 이은영
  599. * @---------------------------------------------------
  600. * @type : function
  601. * @access : public
  602. * @desc : 시작일자 계산
  603. * @param :
  604. * @return :
  605. * @---------------------------------------------------
  606. */
  607. function fCalStartDate(pDate, pTimeFlag){
  608. var sStartDT = pDate.toDate("YYYYMMDDhhmmss");
  609. var sTime = "";
  610. var sRemainder = 0;
  611. if(pTimeFlag != 1 ){
  612. sRemainder = eval(pDate.substr(10,2))%pTimeFlag;
  613. }
  614. sStartDT.setMinutes(sStartDT.getMinutes()-sRemainder);
  615. return sStartDT;
  616. }
  617. /**
  618. * @group :
  619. * @ver : 2007.07.11
  620. * @by : 이은영
  621. * @---------------------------------------------------
  622. * @type : function
  623. * @access : public
  624. * @desc : 그리드 크기 조절(펼치기/ 접기)
  625. * @param :
  626. * @return :
  627. * @---------------------------------------------------
  628. */
  629. function fControlGridSize(pFlag){
  630. switch(pFlag){
  631. // case "24hours" : // 24시간 화면
  632. // if(model.getValue(sCondPath+"/vwctrl_24hours") == "A"){ // 펼치기
  633. // btn_24hoursvwctrl.value = "접기";
  634. // model.setValue(sCondPath+"/vwctrl_24hours","I");
  635. // document.all.item("obj_24hourschart").visible = false;
  636. // document.all.item("obj_24hourschart").refresh();
  637. // //grd_24hoursheader.visible = false;
  638. //
  639. // grp_chkbox.visible = false;
  640. // chk_hourschartinfo.visible = false;
  641. // chk_dayschartinfo.visible = false;
  642. //
  643. //
  644. // }else{
  645. // btn_24hoursvwctrl.value = "펼치기";
  646. // model.setValue(sCondPath+"/vwctrl_24hours","A");
  647. // document.all.item("obj_24hourschart").visible = true;
  648. // document.all.item("obj_24hourschart").refresh();
  649. // //grd_24hoursheader.visible = true;
  650. // chk_hourschartinfo.visible = true;
  651. //
  652. // grp_chkbox.visible = true;
  653. // chk_hourschartinfo.visible = true;
  654. // chk_dayschartinfo.visible = false;
  655. //
  656. // }
  657. // btn_24hoursvwctrl.refresh();
  658. // //fCreateHeader(pFlag);
  659. // break;
  660. case "4days" : // 4일기준 화면
  661. if(ds_main_cond.getColumn(0, "vwctrl_4days") == "A"){ // 펼치기
  662. btn_4daysvwctrl.text = "접기";
  663. ds_main_cond.setColumn(0, "vwctrl_4days", "I");
  664. obj_4dayschart.visible = false;
  665. //grd_4dayschartheader.visible = false;
  666. // grp_chkbox.visible = false;
  667. // chk_hourschartinfo.visible = false;
  668. // chk_dayschartinfo.visible = false;
  669. }else{
  670. btn_4daysvwctrl.text = "펼치기";
  671. ds_main_cond.setColumn(0, "vwctrl_4days", "A");
  672. obj_4dayschart.visible = true;
  673. //grd_4dayschartheader.visible = true;
  674. grp_chkbox.chk_dayschartinfo.visible = true;
  675. // grp_chkbox.visible = true;
  676. // chk_hourschartinfo.visible = false;
  677. // chk_dayschartinfo.visible = true;
  678. }
  679. //fCreateHeader(pFlag);
  680. break;
  681. }
  682. }
  683. /**
  684. * @group :
  685. * @ver : 2007.08.14
  686. * @by : 이은영
  687. * @---------------------------------------------------
  688. * @type : function
  689. * @access : public
  690. * @desc : 차트 생성
  691. * @param :
  692. * @return :
  693. * @---------------------------------------------------
  694. */
  695. function fMakeChart(pFlag){
  696. var Obj_Chart = null;
  697. var Obj_CheckBox = null;
  698. var sColCnt = 0;
  699. var sRecRslt = "";
  700. var sRecRslt1 = "";
  701. var sChartInfo = "";
  702. var sRecDD = "";
  703. var sRecTM = "";
  704. var sRecTM4 = "";
  705. var sRecRsltArr = new Array();
  706. var sRecRslt1Arr = new Array();
  707. var iArrSize = 0;
  708. var iChartPos = 0;
  709. var idx=0;
  710. var grdRecTM1="";
  711. var grdRecTM2="";
  712. var grdRecDD="";
  713. var iArrSize = 0;
  714. var iSeriCnt = 0;
  715. var iToolsCnt=0;
  716. var sRecRsltHint = "";
  717. switch(pFlag){
  718. // case "24hours" :
  719. // obj_24hourschart.ClearChart();
  720. // sChartInfo = model.getValue(sCondPath+"/hourschartinfo").split(" ");
  721. // //obj_24hourschart.RemoveAllSeries();
  722. // //obj_24hourschart.Axis.RemoveAllCustom();
  723. //
  724. // //margin 값 정하기
  725. // //obj_24hourschart.Panel.MarginTop = 1;
  726. // obj_24hourschart.Panel.MarginTop = 2;
  727. // obj_24hourschart.Panel.MarginLeft = 1.5;
  728. // obj_24hourschart.Panel.MarginRight = 0;
  729. // obj_24hourschart.Panel.MarginBottom = -6;
  730. //
  731. // //하단축 칸 수 정하기와 눈금 없애기
  732. // obj_24hourschart.Axis.Bottom.SetMinMax (0, 24); //하루 동안 좌표를 표현
  733. // obj_24hourschart.Axis.Bottom.Increment = 1;
  734. // obj_24hourschart.Axis.Bottom.MinorTickCount = 1;
  735. // Obj_Chart = obj_24hourschart;
  736. // Obj_CheckBox = chk_hourschartinfo;
  737. // sColCnt = 24;
  738. // iArrSize = 60;
  739. // break;
  740. case "4days" :
  741. Obj_Chart = obj_4dayschart;
  742. Obj_CheckBox = "grp_chkbox.chk_dayschartinfo.chk_";
  743. obj_4dayschart.ClearChart();
  744. sChartInfo = ds_main_cond.getColumn(0, "dayschartinfo").split(" ");
  745. //obj_4dayschart.RemoveAllSeries();
  746. //obj_4dayschart.Axis.RemoveAllCustom();
  747. //margin 값 정하기
  748. obj_4dayschart.Panel.MarginTop = 2;
  749. obj_4dayschart.Panel.MarginLeft = 2;
  750. obj_4dayschart.Panel.MarginRight = 0;
  751. obj_4dayschart.Panel.MarginBottom = -6;
  752. // obj_4dayschart.Axis.Bottom.TickLength = 16;
  753. //하단축 칸 수 정하기와 눈금 없애기
  754. obj_4dayschart.Axis.Bottom.SetMinMax (0,16); //4일 동안 좌표를 표현 (하루는 DivPerDay만큼 나눠짐)
  755. obj_4dayschart.Axis.Bottom.Increment = 1;
  756. obj_4dayschart.Axis.Bottom.MinorTickCount = 5;
  757. sColCnt = 16;
  758. iArrSize = 6;
  759. break;
  760. // case "init24hours" :
  761. // sChartInfo = model.getValue(sCondPath+"/hourschartinfo").split(" ");
  762. // obj_24hourschart.RemoveAllSeries();
  763. // obj_24hourschart.Axis.RemoveAllCustom();
  764. //
  765. // //margin 값 정하기
  766. // //obj_24hourschart.Panel.MarginTop = 1;
  767. // obj_24hourschart.Panel.MarginTop = 2;
  768. // obj_24hourschart.Panel.MarginLeft = 1.5;
  769. // obj_24hourschart.Panel.MarginRight = 0;
  770. // obj_24hourschart.Panel.MarginBottom = -6;
  771. // //obj_24hourschart.Axis.Bottom.TickLength = -5;
  772. //
  773. // //하단축 칸 수 정하기와 눈금 없애기
  774. // obj_24hourschart.Axis.Bottom.SetMinMax (0, 24); //하루 동안 좌표를 표현
  775. // obj_24hourschart.Axis.Bottom.Increment = 1;
  776. // obj_24hourschart.Axis.Bottom.MinorTickCount = 1;
  777. // Obj_Chart = obj_24hourschart;
  778. // Obj_CheckBox = chk_hourschartinfo;
  779. // sColCnt = 24;
  780. // iArrSize = 60;
  781. // break;
  782. case "init4days" :
  783. if( utlf_isNull(utlf_transNullToEmpty(ds_main_cond.getColumn(0, "dayschartinfo"))) ){
  784. sChartInfo = "";
  785. }else{
  786. sChartInfo = ds_main_cond.getColumn(0, "dayschartinfo").split(" ");
  787. }
  788. obj_4dayschart.RemoveAllSeries();
  789. obj_4dayschart.Axis.RemoveAllCustom();
  790. //margin 값 정하기
  791. obj_4dayschart.Panel.MarginTop = 2;
  792. obj_4dayschart.Panel.MarginLeft = 2;
  793. obj_4dayschart.Panel.MarginRight = 0;
  794. obj_4dayschart.Panel.MarginBottom = -6;
  795. //obj_4dayschart.Axis.Bottom.TickLength = 0;
  796. // obj_4dayschart.Axis.Bottom.Labels.MultiLine = True
  797. obj_4dayschart.Axis.Bottom.SetMinMax (0,16); //4일 동안 좌표를 표현 (하루는 DivPerDay만큼 나눠짐)
  798. obj_4dayschart.Axis.Bottom.Increment = 1;
  799. obj_4dayschart.Axis.Bottom.MinorTickCount = 5;
  800. Obj_Chart = obj_4dayschart;
  801. Obj_CheckBox = "grp_chkbox.chk_dayschartinfo.chk_";
  802. sColCnt = 16;
  803. iArrSize = 6;
  804. break;
  805. }
  806. Obj_Chart.Axis.Bottom.AxisPen.Color = 0x000000;
  807. Obj_Chart.Axis.Bottom.Labels.Font.Color = 0xffffff; //Obj_Chart.Panel.Color; //하단 축 눈금 명칭 색을 바탕색으로 하여 보이지 않게 처리
  808. Obj_Chart.Header.Visible = false;
  809. Obj_Chart.Aspect.View3D = 0; //2d 로 표현하기
  810. Obj_Chart.Zoom.Enable = false; // zoom 사용하지 않기
  811. Obj_Chart.Scroll.Enable = false; // scroll 사용하지 않기
  812. Obj_Chart.Legend.Visible = false; // 그래프 참조 박스 띄우지 않기
  813. Obj_Chart.Panel.Gradient.Visible = true; // 페널에 그라디언트 적용
  814. Obj_Chart.Panel.Gradient.StartColor = 0xffffff;
  815. Obj_Chart.Panel.Gradient.EndColor=0xffffff;
  816. Obj_Chart.Environment.MouseWheelScroll = false;
  817. var cus_axis1 = Obj_Chart.Axis.AddCustom(false);
  818. Obj_Chart.Axis.get_Custom(0).AxisPen.Color = 0x0000ff;
  819. Obj_Chart.Axis.get_Custom(0).Title.Font.Size = 8;
  820. Obj_Chart.Axis.get_Custom(0).Title.Font.Bold = true;
  821. Obj_Chart.Axis.get_Custom(0).Title.Angle = 90;
  822. Obj_Chart.Axis.get_Custom(0).PositionPercent = 0;
  823. Obj_Chart.Axis.get_Custom(0).StartPosition = 0;
  824. Obj_Chart.Axis.get_Custom(0).EndPosition = 100;
  825. Obj_Chart.Axis.get_Custom(0).Automatic = false;
  826. Obj_Chart.Axis.get_Custom(0).Maximum = 10;
  827. Obj_Chart.Axis.get_Custom(0).Minimum = 0;
  828. Obj_Chart.Axis.get_Custom(0).Increment = 1;
  829. iSeriCnt = ds_main_searchinfo_obspartlist.rowcount;//Obj_CheckBox.length;
  830. //시간구분선이 생기도록 임의의 널값을 그래프 X축에 세팅
  831. Obj_Chart.AddSeries(0);//포인트 - Series 4
  832. Obj_Chart.Series(0).asLine.ClickableLine = 0;//라인을 지나갈때 tool이 먹히게 할지(1) 말지(0)
  833. Obj_Chart.Series(0).Depth = 1;
  834. Obj_Chart.Series(0).VerticalAxisCustom = cus_axis1;
  835. for( var cnt=0 ; cnt<sColCnt ; cnt++ ){
  836. Obj_Chart.Series(0).AddNull("null");
  837. }
  838. for( var i=1 ; i<=ds_main_searchinfo_obspartlist.rowcount && !utlf_isNull(ds_main_searchinfo_obspartlist.getColumn(0, "obspartid")) ; i++ ){
  839. sChartItem[i-1] = ds_main_searchinfo_obspartlist.getColumn(i-1, "obspartid");
  840. eval(Obj_CheckBox+(i-1)).background = sCheckColor[i-1];
  841. Obj_Chart.AddSeries(0);//포인트 - Series 4
  842. Obj_Chart.Series(i).VerticalAxisCustom = cus_axis1;
  843. Obj_Chart.Series(i).Color = sLineColor[i-1];
  844. // alert(Obj_Chart.Series(i).Color+"-------------------"+sLineColor[i]);
  845. Obj_Chart.Series(i).asLine.LinePen.Width = 2;
  846. Obj_Chart.Series(i).asLine.Pointer.Visible = true;
  847. Obj_Chart.Series(i).asLine.Pointer.Style = 1;
  848. Obj_Chart.Series(i).asLine.Pointer.VerticalSize = 5;
  849. Obj_Chart.Series(i).asLine.Pointer.HorizontalSize = 5;
  850. Obj_Chart.Series(i).asLine.ClickableLine = 0;//라인을 지나갈때 tool이 먹히게 할지(1) 말지(0)
  851. Obj_Chart.Series(i).Depth = i+1;
  852. if ( Obj_Chart.Tools.Count == 0 ){
  853. Obj_Chart.Tools.Add(8);
  854. Obj_Chart.Tools.get_Items(0).asMarksTip.MouseAction = 0;
  855. Obj_Chart.Tools.get_Items(0).asMarksTip.Style = 2;//9:y값 x값 0:x값 2:Label
  856. Obj_Chart.Tools.get_Items(0).asMarksTip.Delay = 10;
  857. Obj_Chart.Tools.get_Items(0).asMarksTip.Series = 4;
  858. }
  859. if( !utlf_isNull(eval(Obj_CheckBox+(i-1)).value) ){
  860. switch(pFlag){
  861. case "4days" :
  862. for( var idx=0 ; idx<ds_main_searchinfo_totpainlist.rowcount ; idx++ ){
  863. if ( sChartItem[i-1] == ds_main_searchinfo_totpainlist.getColumn(idx, "obspartid") && ds_main_searchinfo_totpainlist.getColumn(idx, "paingbid")!="92"){
  864. sRecRslt = ds_main_searchinfo_totpainlist.getColumn(idx, "pnt");
  865. sRecDD = ds_main_searchinfo_totpainlist.getColumn(idx, "recdd");
  866. sRecTM = ds_main_searchinfo_totpainlist.getColumn(idx, "rectm").substring(0,2);
  867. //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
  868. for( var iCol=0 ; iCol<sColCnt ; iCol++ ){
  869. if ( iCol < (sColCnt-1) ){
  870. grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
  871. grdRecTM2 = grd_timelist.getCellProperty("Head", iCol+1, "text").substring(0,2);
  872. } else {
  873. grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
  874. grdRecTM2 = "07";
  875. }
  876. // alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<="+sHeader[1][iCol+1]+grdRecTM2+"icol="+iCol );
  877. if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
  878. && sRecDD+sRecTM < sHeader[1][iCol+1]+ grdRecTM2 ){
  879. if( !utlf_isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
  880. var pos= eval(iCol) + (eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize);
  881. // sRecRsltHint = model.getValue(xTotPainInfoPath+"["+ idx +"]/obspartnm")+" : "+ model.getValue(xTotPainInfoPath+"["+ idx +"]/valu")
  882. Obj_Chart.Series(i).AddXY ( pos, eval(sRecRslt), "", sLineColor[i-1]);
  883. }
  884. }
  885. }
  886. }
  887. }//end of for getNodesetCount(xTotPainInfoPath)
  888. break;
  889. // case "24hours" :
  890. // sRecDD = model.getValue(sCondPath+"/recdd");
  891. //
  892. // for( var idx = 1 ; idx <= getNodesetCount(xPainInfoPath4) ; idx++ ){
  893. //
  894. // if ( sChartItem[i-1] == model.getValue(xPainInfoPath4+"["+idx+"]/obspartid")&& model.getValue(xPainInfoPath4+"["+idx+"]/causeid")!="23"){
  895. // sRecRslt = model.getValue(xPainInfoPath4+"["+ idx +"]/pnt");
  896. // sRecDD = model.getValue(xPainInfoPath4+"["+ idx +"]/recdd");
  897. // sRecTM = model.getValue(xPainInfoPath4+"["+ idx +"]/rectm");
  898. // //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
  899. //
  900. // for( var iCol = 0 ; iCol < sColCnt ; iCol++ ){
  901. // if ( iCol == 0 ){
  902. // grdRecTM1 = "0700";
  903. // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,0,"|","^").setReplaceWord(":","");
  904. // } else {
  905. // grdRecTM1 = getArrayData(grd_timelist24hours.caption,0,iCol-1,"|","^").setReplaceWord(":","");
  906. // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,iCol,"|","^").setReplaceWord(":","");
  907. // }
  908. //// alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<"+sHeader[1][iCol]+grdRecTM2+"icol="+iCol );
  909. // if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
  910. // && sRecDD+sRecTM < sHeader[1][iCol+1]+ grdRecTM2 ){
  911. // if( !isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
  912. // var pos= eval(iCol) + ( eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize);
  913. // Obj_Chart.Series(i).AddXY (pos, eval(sRecRslt), "", sLineColor[i-1]);
  914. //
  915. // }
  916. //
  917. // }
  918. // }
  919. // }
  920. // }//end of for getNodesetCount(xTotPainInfoPath)
  921. //
  922. // break;
  923. }
  924. }
  925. }//end of for getNodesetCount(xChkObsPartInfoPath)
  926. for( var i=1 ; i<=ds_main_searchinfo_obspartlist.rowcount && !utlf_isNull(ds_main_searchinfo_obspartlist.getColumn(0, "obspartid")) ; i++ ){
  927. Obj_Chart.AddSeries(4);//포인트 - Series 4
  928. Obj_Chart.Series(i+iSeriCnt).Marks.Visible = false;
  929. Obj_Chart.Series(i+iSeriCnt).VerticalAxisCustom = cus_axis1;
  930. Obj_Chart.Series(i+iSeriCnt).Color = sLineColor[i-1];
  931. Obj_Chart.Series(i+iSeriCnt).Depth = i+iSeriCnt;
  932. Obj_Chart.Series(i+iSeriCnt).Cursor =2020;
  933. if ( !utlf_isNull(eval(Obj_CheckBox+(i-1)).value) ){
  934. switch(pFlag){
  935. case "4days" :
  936. for( var idx=0 ; idx<ds_main_searchinfo_totpainlist.rowcount ; idx++ ){
  937. if ( sChartItem[i-1] == ds_main_searchinfo_totpainlist.getColumn(idx, "obspartid") && ds_main_searchinfo_totpainlist.getColumn(idx, "paingbid")=="92"){
  938. sRecRslt = ds_main_searchinfo_totpainlist.getColumn(idx, "pnt");
  939. sRecDD = ds_main_searchinfo_totpainlist.getColumn(idx, "recdd");
  940. sRecTM = ds_main_searchinfo_totpainlist.getColumn(idx, "rectm").substring(0,2);
  941. //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
  942. for( var iCol=0 ; iCol<sColCnt ; iCol++ ){
  943. if ( iCol < (sColCnt-1) ){
  944. grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
  945. grdRecTM2 = grd_timelist.getCellProperty("Head", iCol+1, "text").substring(0,2);
  946. } else {
  947. grdRecTM1 = grd_timelist.getCellProperty("Head", iCol, "text").substring(0,2);
  948. grdRecTM2 = "07";
  949. }
  950. // alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<="+sHeader[1][iCol]+grdRecTM2+"icol="+iCol );
  951. if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
  952. && sRecDD+sRecTM < sHeader[1][iCol+1]+ grdRecTM2 ){
  953. if( !utlf_isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
  954. sRecTM4 = ds_main_searchinfo_totpainlist.getColumn(idx, "rectm").substring(2,4);
  955. var pos= eval(iCol) + (eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize) + (eval(eval(sRecTM4)-eval("00"))/(iArrSize*60)) ;
  956. sRecRsltHint = ds_main_searchinfo_totpainlist.getColumn(idx, "obspartnm")
  957. + "("+ ds_main_searchinfo_totpainlist.getColumn(idx, "direcnm") +")"
  958. +"\n\n환자반응평가 : "+ ds_main_searchinfo_totpainlist.getColumn(idx, "valu")
  959. +"\n약물 및 비약물 중재 : "+ ds_main_searchinfo_totpainlist.getColumn(idx, "arbitration");
  960. Obj_Chart.Series(i+iSeriCnt).AddXY(pos, eval(sRecRslt), sRecRsltHint, sLineColor[i-1]);
  961. }
  962. }
  963. }
  964. }
  965. }//end of for getNodesetCount(xTotPainInfoPath)
  966. // alert(Obj_Chart.Tools.Count);
  967. break;
  968. // case "24hours" :
  969. // sRecDD = model.getValue(sCondPath+"/recdd");
  970. //
  971. // for( var idx = 1 ; idx <= getNodesetCount(xPainInfoPath4) ; idx++ ){
  972. //
  973. // if ( sChartItem[i-1] == model.getValue(xPainInfoPath4+"["+idx+"]/obspartid")&& model.getValue(xPainInfoPath4+"["+idx+"]/causeid")=="23"){
  974. // sRecRslt = model.getValue(xPainInfoPath4+"["+ idx +"]/pnt");
  975. // sRecDD = model.getValue(xPainInfoPath4+"["+ idx +"]/recdd");
  976. // sRecTM = model.getValue(xPainInfoPath4+"["+ idx +"]/rectm");
  977. // //sRecTM4 = model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(0,2)+":"+model.getValue(xTotPainInfoPath+"["+ idx +"]/rectm").substring(2,4);
  978. //
  979. // for( var iCol = 0 ; iCol < sColCnt ; iCol++ ){
  980. // if ( iCol == 0 ){
  981. // grdRecTM1 = "0000";
  982. // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,0,"|","^").setReplaceWord(":","");
  983. // } else {
  984. // grdRecTM1 = getArrayData(grd_timelist24hours.caption,0,iCol-1,"|","^").setReplaceWord(":","");
  985. // grdRecTM2 = getArrayData(grd_timelist24hours.caption,0,iCol,"|","^").setReplaceWord(":","");
  986. // }
  987. //// alert(sHeader[1][iCol]+grdRecTM1+"<="+ sRecDD+sRecTM+"<"+sHeader[1][iCol]+grdRecTM2+"icol="+iCol );
  988. // if ( sRecDD+sRecTM >= sHeader[1][iCol]+ grdRecTM1
  989. // && sRecDD+sRecTM < sHeader[1][iCol]+ grdRecTM2 ){
  990. // if( !isNull(sRecRslt) && fIsNumber(sRecRslt) == true){
  991. // var pos= eval(iCol) + ( eval(eval(sRecTM)-eval(grdRecTM1))/iArrSize);
  992. // Obj_Chart.Series(i-1+iSeriCnt).AddXY (pos, eval(sRecRslt), "", sLineColor[i-1]);
  993. //
  994. // }
  995. // }
  996. // }
  997. // }
  998. // }//end of for getNodesetCount(xTotPainInfoPath)
  999. // break;
  1000. }
  1001. }
  1002. }//end of for getNodesetCount(xChkObsPartInfoPath)
  1003. }
  1004. /**
  1005. * @group :
  1006. * @ver : 2007.07.21
  1007. * @by : 양천덕
  1008. * @---------------------------------------------------
  1009. * @type : function
  1010. * @access : public
  1011. * @desc : 문자여부 확인
  1012. * @param : str : 값
  1013. * @return : true / false
  1014. * @---------------------------------------------------
  1015. */
  1016. function fIsNumber(str) {
  1017. str += ''; // 문자열로 변환
  1018. str = str.replace(/^\s*|\s*$/g, ''); // 좌우 공백 제거
  1019. if (utlf_isNull(str) || isNaN(str)) return false;
  1020. return true;
  1021. }
  1022. /**
  1023. * @group :
  1024. * @ver : 2007.08.16
  1025. * @by : 이은영
  1026. * @---------------------------------------------------
  1027. * @type : function
  1028. * @access : public
  1029. * @desc : 그리드 Header 생성
  1030. * @param :
  1031. * @return :
  1032. * @---------------------------------------------------
  1033. */
  1034. function fCreateHeader(pFlag){
  1035. var sRecDD = "";
  1036. //var sChartCapNm = "";
  1037. var sGridCapNm = "";
  1038. var sTimeFlag = 0;
  1039. var sCDay = new Array();
  1040. var sDayInfo = "";
  1041. var iDayRow = 0;
  1042. var sDayCountInfo = "";
  1043. var sDateList = "";
  1044. var idx=0;
  1045. sHeader[1] = new Array();
  1046. 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";
  1047. 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";
  1048. switch(pFlag){
  1049. case "4days" :
  1050. var sStartDD = getDateCalc(ds_main_cond.getColumn(0, "recdd"),3,"-");
  1051. for( idx=1 ; idx<=grd_timelist.getFormatColCount() ; idx++ ){
  1052. sRecDD = getDateCalc(sStartDD,idx/4,"+");
  1053. sHeader[1][idx-1] = sRecDD;
  1054. }
  1055. sHeader[1][idx]=getDateCalc(ds_main_cond.getColumn(0, "recdd"),1,"+")
  1056. grd_timelist.visible = true;
  1057. grd_timelist.splitContentsCell("Head", 1, 11, 1, 14, true);
  1058. grd_timelist.splitContentsCell("Head", 1, 7, 1, 10, true);
  1059. grd_timelist.splitContentsCell("Head", 1, 3, 1, 6, true);
  1060. grd_timelist.splitContentsCell("Head", 1, 0, 1, 2, true);
  1061. for( var iRow=1 ; iRow<=1 ; iRow++ ){
  1062. for( var iCol=0 ; iCol<grd_timelist.getFormatColCount() ; iCol++ ){
  1063. if(iRow == 1){
  1064. // sGridCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
  1065. // " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
  1066. var sTempCap = sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
  1067. " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
  1068. grd_timelist.setCellProperty("Head", grd_timelist.getFormatColCount()+iCol, "text", sTempCap);
  1069. }
  1070. // if(iCol != (grd_timelist.getFormatColCount()-1)){
  1071. // sGridCapNm += "^";
  1072. // }
  1073. }
  1074. }
  1075. //grd_timelist.caption = sCaption + "|" + sGridCapNm;
  1076. grd_timelist.mergeContentsCell("Head", 1, 11, 1, 14, grd_timelist.getFormatColCount()+11, false);
  1077. grd_timelist.mergeContentsCell("Head", 1, 7, 1, 10, grd_timelist.getFormatColCount()+7, false);
  1078. grd_timelist.mergeContentsCell("Head", 1, 3, 1, 6, grd_timelist.getFormatColCount()+3, false);
  1079. grd_timelist.mergeContentsCell("Head", 1, 0, 1, 2, grd_timelist.getFormatColCount(), false);
  1080. break;
  1081. //grd_timelist24hours 없어서 주석처리
  1082. /*case "24hours" :
  1083. var sStartDD = ds_main_cond.getColumn(0, "recdd");
  1084. for( var idx=0 ; idx<grd_timelist24hours.cols ; idx++ ){
  1085. sHeader[1][idx] = sStartDD;
  1086. }
  1087. for(var iRow=1; iRow<=1; iRow++){
  1088. for(var iCol=0; iCol<grd_timelist24hours.cols; iCol++){
  1089. if(iRow == 1){
  1090. sGridCapNm += sHeader[iRow][iCol].toDate("YYYYMMDD").getDateFormat("YYYY년 MM월 DD일")+
  1091. " ("+sHeader[iRow][iCol].toDate("YYYYMMDD").getDayOfWeek("k")+")";
  1092. }
  1093. if(iCol != grd_timelist24hours.cols){
  1094. sGridCapNm += "^";
  1095. }
  1096. }
  1097. }
  1098. grd_timelist24hours.caption = sCaption24 + "|" + sGridCapNm;
  1099. break;*/
  1100. default :
  1101. break;
  1102. }
  1103. }
  1104. /**
  1105. * @group :
  1106. * @ver : 2007.08.16
  1107. * @by : 이은영
  1108. * @---------------------------------------------------
  1109. * @type : function
  1110. * @access : public
  1111. * @desc : 임상관찰 기록 조회
  1112. * @param :
  1113. * @return :
  1114. * @---------------------------------------------------
  1115. */
  1116. function fSearch(pFlag){
  1117. if( utlf_isNull(ds_main_patinfo.getColumn(0, "pid")) ){
  1118. sysf_messageBox("환자를 선택하십시요","I");
  1119. return;
  1120. }
  1121. ds_main_cond.setColumn(0, "vwctrl_button", pFlag);
  1122. ds_send.setColumn(0, "pid", sPid);
  1123. ds_send.setColumn(0, "indd", sIndd);
  1124. ds_send.setColumn(0, "cretno", sCretNo);
  1125. ds_send.setColumn(0, "instcd", sInstcd);
  1126. ds_send.setColumn(0, "ioflag", sIOFlag);
  1127. ds_send.setColumn(0, "srchdd", ds_main_cond.getColumn(0, "recdd"));
  1128. ds_send.setColumn(0, "fromdd", getDateCalc(ds_main_cond.getColumn(0, "recdd"),3,'-'));
  1129. ds_send.setColumn(0, "todd", ds_main_cond.getColumn(0, "recdd"));
  1130. ds_send.setColumn(0, "vwctrl_button", ds_main_cond.getColumn(0, "vwctrl_button"));
  1131. var oParam = {};
  1132. oParam.id = "TRMNR08401";
  1133. oParam.service = "wardcareapp.WardPainCareMngt";
  1134. oParam.method = "reqGetNarcPrcpList";
  1135. oParam.inds = "refCond=ds_send";
  1136. oParam.outds = "ds_main_searchinfo_prcplist1=prcplist1 ds_main_searchinfo_prcplist2=prcplist2 ds_main_searchinfo_prcplist3=prcplist3 ds_main_searchinfo_prcplist4=prcplist4 "
  1137. + "ds_main_searchinfo_painlist1=painlist1 ds_main_searchinfo_painlist2=painlist2 ds_main_searchinfo_painlist3=painlist3 ds_main_searchinfo_painlist4=painlist4 "
  1138. + "ds_main_searchinfo_totpainlist=totpainlist ds_main_searchinfo_obspartlist=obspartlist ds_main_searchinfo_paincount=paincount ds_main_searchinfo_tprlist=tprlist";
  1139. oParam.async = false;
  1140. oParam.callback = "cf_TRMNR08401";
  1141. tranf_submit(oParam);
  1142. // submit("TRMNR08401");
  1143. if(arErrorCode.pop("TRMNR08401") > -1){
  1144. //샘플화면 emr_ercarexp -> SMMNE02303
  1145. var sProp="col="+ds_main_searchinfo_obspartlist.rowcount+",row=1,cellspacing=15,vcellspacing=2,itemWidth=-1,itemHeight=20,overflow='visible'";
  1146. grp_chkbox.chk_dayschartinfo.setInitComp(sProp, ds_main_searchinfo_obspartlist,"obspartid","obspartnm","fn_mChkEvent");
  1147. fCreateHeader(pFlag);
  1148. fSettingCheckBox(pFlag);
  1149. fMakeChart(pFlag);
  1150. fChageView(pFlag);
  1151. if ( sysf_getSystemCd().substring(0,3) == "DEV" ){
  1152. fMessageAlert(xPainCountInfoPath);
  1153. }
  1154. }
  1155. }
  1156. function cf_TRMNR08401(sSvcId, nErrorCode, sErrorMsg) {
  1157. arErrorCode.push(sSvcId, nErrorCode);
  1158. }
  1159. /**
  1160. * @group :
  1161. * @ver : 2007.08.16
  1162. * @by :
  1163. * @---------------------------------------------------
  1164. * @type : function
  1165. * @access : public
  1166. * @desc : 점수가7점이상이 3회이상인경우 메시지 팝업
  1167. * @param :
  1168. model.makeValue("/root/send/pid", sPid);
  1169. model.makeValue("/root/send/indd", sIndd);
  1170. model.makeValue("/root/send/cretno", sCretNo);
  1171. model.makeValue("/root/send/vwctrl_button", "dr" );
  1172. * @return :
  1173. * @---------------------------------------------------
  1174. */
  1175. function fMessageAlert(destPath){
  1176. if ( this.objects[destPath].getColumn(0, "cntpnt") == "Y" ){
  1177. var rtnmsg = sysf_messageBox("7점이상의 통증이 3회이상 존재합니다 " ,"Q011");
  1178. if ( rtnmsg == 6 ){
  1179. var oParam = {};
  1180. oParam.id = "TXMNR08401";
  1181. oParam.service = "wardcareapp.WardPainCareMngt";
  1182. oParam.method = "reqExePainCnfm";
  1183. oParam.inds = "refCond=ds_send";
  1184. oParam.outds = "";
  1185. oParam.async = false;
  1186. //oParam.callback = "cf_TXMNR08401";
  1187. tranf_submit(oParam);
  1188. }
  1189. }
  1190. }
  1191. /**
  1192. * @group :
  1193. * @ver : 2007.08.16
  1194. * @by : 이은영
  1195. * @---------------------------------------------------
  1196. * @type : function
  1197. * @access : public
  1198. * @desc : 임상관찰 기록 조회
  1199. * @param :
  1200. * @return :
  1201. * @---------------------------------------------------
  1202. */
  1203. function fSettingCheckBox(pFlag){
  1204. switch(pFlag){
  1205. case "4days" :
  1206. var sDaysChart = "";
  1207. for( var idx=0 ; idx<ds_main_searchinfo_obspartlist.rowcount ; idx++ ){
  1208. if ( idx == 0 ) {
  1209. sDaysChart = ds_main_searchinfo_obspartlist.getColumn(0, "obspartid");
  1210. } else {
  1211. sDaysChart += " " + ds_main_searchinfo_obspartlist.getColumn(idx, "obspartid");
  1212. }
  1213. }
  1214. ds_main_cond.setColumn(0, "dayschartinfo", sDaysChart);
  1215. if( utlf_isNull(utlf_transNullToEmpty(ds_main_cond.getColumn(0,"dayschartinfo"))) ){
  1216. grp_chkbox.chk_dayschartinfo.setData("", null,false);
  1217. }else{
  1218. grp_chkbox.chk_dayschartinfo.setData(utlf_transNullToEmpty(ds_main_cond.getColumn(0,"dayschartinfo")).split(" "), null,false);
  1219. }
  1220. break;
  1221. //chk_hourschartinfo 없어서 주석처리
  1222. /*case "24hours" :
  1223. var s24HoursChart = "";
  1224. for( var idx=0 ; idx< chk_hourschartinfo.length ; idx++){
  1225. if ( idx == 0 ) {
  1226. s24HoursChart = chk_hourschartinfo.item(0).value;
  1227. } else {
  1228. s24HoursChart += " " + chk_hourschartinfo.item(idx).value;
  1229. }
  1230. }
  1231. model.setValue(sCondPath+"/hourschartinfo",s24HoursChart);
  1232. chk_hourschartinfo.refresh();
  1233. break;*/
  1234. default :
  1235. break;
  1236. }
  1237. }
  1238. /**
  1239. * @group :
  1240. * @ver : 2016.02.29
  1241. * @by : 윤주호
  1242. * @---------------------------------------------------
  1243. * @type : function
  1244. * @access : public
  1245. * @desc : MultiCheckBox 값 셋팅
  1246. * @param :
  1247. * @param :
  1248. * @return :
  1249. * @---------------------------------------------------
  1250. */
  1251. function fn_mChkEvent(){
  1252. var rtn = "";
  1253. var tmp = "";
  1254. rtn = grp_chkbox.chk_dayschartinfo.getData();
  1255. for( var i=0 ; i<rtn.length ; i++ ){
  1256. if( i == 0 ) tmp = rtn[i];
  1257. else tmp = tmp + " " +rtn[i];
  1258. }
  1259. ds_main_cond.setColumn(0, "dayschartinfo", tmp);
  1260. fMakeChart("4days");
  1261. }
  1262. /**
  1263. * @group :
  1264. * @ver : 2011.03.16
  1265. * @by : 안도영
  1266. * @---------------------------------------------------
  1267. * @type : function
  1268. * @access : public
  1269. * @desc : 구역정보 조회 (응급실인 경우)
  1270. * @param :
  1271. * @param :
  1272. * @return :
  1273. * @---------------------------------------------------
  1274. */
  1275. function fGetWardChngInfo(initFlag, wardCd, sectionCd){
  1276. if(initFlag=="Y") {
  1277. var sWardCD = wardCd;
  1278. }
  1279. else{
  1280. //var sWardCD = model.getValue("/root/cond/wardcd");
  1281. var sWardCD = group1.grp_inpatinfo.cmb_wardlist.value;
  1282. }
  1283. if ( sWardCD == eERDEPTCD) {
  1284. eERFLAG = "Y";
  1285. }else{
  1286. eERFLAG = "";
  1287. }
  1288. //응급실인 경우 구역정보 추가조회
  1289. if(eERFLAG == "Y"){ // 응급실
  1290. fGetZoneList(); //ds_temp_zoneinfo_zonelist를 받아옴
  1291. //copyNodeset("/root/temp2/zoneinfo", "/root/temp/zoneinfo");
  1292. group1.grp_inpatinfo.caption7.text = "구 역 :";
  1293. group1.grp_inpatinfo.cmb_roomlist.visible = false;
  1294. group1.grp_inpatinfo.cmb_erpat.visible = true;
  1295. group1.grp_inpatinfo.cmb_patlist.visible = false;
  1296. group1.grp_inpatinfo.cmb_zone.visible = true;
  1297. //ipt_pid.attribute("left") = 539; // 위치 변경
  1298. //ipt_pid.attribute("top") = 40;
  1299. //btn_patSearch.attribute("left") = 617; // 위치 변경
  1300. //btn_patSearch.attribute("top") = 41; // 위치 변경
  1301. group1.grp_inpatinfo.caption9.visible = false;
  1302. group1.grp_inpatinfo.cmb_mypatlist.visible = false;
  1303. if(initFlag=="Y"){ // 처음 상단 정보로 화면 열릴 때
  1304. ds_main_cond.setColumn(0, "zonecd", (utlf_isNull(sectionCd) ? "-" : sectionCd));
  1305. }else{
  1306. ds_main_cond.setColumn(0, "zonecd", "-"); // 'All'로 default
  1307. }
  1308. }else{
  1309. group1.grp_inpatinfo.caption7.text = "병 실 :";
  1310. group1.grp_inpatinfo.cmb_roomlist.visible = true;
  1311. group1.grp_inpatinfo.cmb_erpat.visible = false;
  1312. group1.grp_inpatinfo.cmb_patlist.visible = true;
  1313. group1.grp_inpatinfo.cmb_zone.visible = false;
  1314. //ipt_pid.attribute("left") = 669; // 기존 위치
  1315. //ipt_pid.attribute("top") = 15;
  1316. //btn_patSearch.attribute("left") = 747; // 기존 위치
  1317. //btn_patSearch.attribute("top") = 16;
  1318. group1.grp_inpatinfo.caption9.visible = true;
  1319. group1.grp_inpatinfo.cmb_mypatlist.visible = true;
  1320. ds_main_cond.setColumn(0, "zonecd", "");
  1321. }
  1322. }
  1323. function RgbToGraph(h) { return window.rgb(HexToR(h),HexToG(h),HexToB(h)) }
  1324. function HexToR(h) { return parseInt((cutHex(h)).substring(0,2),16) }
  1325. function HexToG(h) { return parseInt((cutHex(h)).substring(2,4),16) }
  1326. function HexToB(h) { return parseInt((cutHex(h)).substring(4,6),16) }
  1327. function cutHex(h) { return (h.charAt(0)=="#") ? h.substring(1,7) : h}
  1328. ]]></Script>