SMAHA00900_결과상담예약.xrw 55 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SPAHA00100.xrw
  4. * 설 명 : 결과상담예약
  5. * 설 계 자 : 김다영
  6. * 작 성 자 : 김다영
  7. * 작 성 일 : 2007.09.03
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  13. <xhtml:head>
  14. <xhtml:title>결과상담예약관리</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <rsrvacptlst>
  20. <item>
  21. <chkyn/>
  22. <rsrvpsnnocnt/>
  23. <rsrvtm/>
  24. <pid/>
  25. <hngnm/>
  26. <hopedd/>
  27. <outexamyn/>
  28. <rsltcnstflag/>
  29. <ownyn/>
  30. <visitor/>
  31. <rsltcnstdr/>
  32. <visittm/>
  33. <rsltcnststarttm/>
  34. <rsltcnstendtm/>
  35. <rsltcnstendyn/>
  36. <remcnts/>
  37. <rsltcnstremcnts/>
  38. <spcffact/>
  39. <pkgnm/>
  40. <healexamflag/>
  41. <healexamdetlflag/>
  42. <rsrvdd/>
  43. <rsrvno/>
  44. <rsltcnstrsrvstarttm/>
  45. <rsltcnstrsrvendtm/>
  46. <rsltcnsthistcd/>
  47. <visitdd/>
  48. <chnghistseqno/>
  49. <rsltcnstseqno/>
  50. <rsltcnstdd/>
  51. <mtel/>
  52. </item>
  53. </rsrvacptlst>
  54. <rsltrsrvhistlst>
  55. <item>
  56. <rsltcnstdd/>
  57. <rsltcnsttm/>
  58. <pid/>
  59. <hngnm/>
  60. <hopedd/>
  61. <mtel/>
  62. <outexamyn/>
  63. <rsltcnstflag/>
  64. <ownyn/>
  65. <visitor/>
  66. <rsltcnstdr/>
  67. <visittm/>
  68. <rsltcnststarttm/>
  69. <rsltcnstendtm/>
  70. <rsltcnstendyn/>
  71. <remcnts/>
  72. <rsltcnstremcnts/>
  73. <spcffact/>
  74. <pkgnm/>
  75. <healexamflag/>
  76. <healexamdetlflag/>
  77. <rsrvdd/>
  78. <rsrvno/>
  79. <rsltcnstrsrvstarttm/>
  80. <rsltcnstrsrvendtm/>
  81. <rsltcnsthistcd/>
  82. <visitdd/>
  83. <rsltcnstseqno/>
  84. <chnghistseqno/>
  85. </item>
  86. </rsltrsrvhistlst>
  87. <rsltcnstchnglst>
  88. <item>
  89. <rsltcnstdd/>
  90. <rsltcnsttm/>
  91. <rsltcnstdr/>
  92. <chngernm/>
  93. <chngtm/>
  94. </item>
  95. </rsltcnstchnglst>
  96. <patinfo>
  97. <pid/>
  98. </patinfo>
  99. <rsltcnstchng>
  100. <after/>
  101. <chngyn/>
  102. </rsltcnstchng>
  103. <pantpatlist/>
  104. </main>
  105. <send>
  106. <srchhealexamflag/>
  107. <srchhealexamdetlflag/>
  108. <srchhealexamplacecd/>
  109. <srchcond/>
  110. <srchpid/>
  111. <srchcnstdrid/>
  112. <srchrsrvdd/>
  113. <srchrsrvmon/>
  114. <savecnst/>
  115. <hist>
  116. <healexamflag/>
  117. <healexamdetlflag/>
  118. <rsrvdd/>
  119. <rsrvno/>
  120. <pid/>
  121. <age/>
  122. <hngnm/>
  123. <mtel/>
  124. </hist>
  125. <chng>
  126. <healexamflag/>
  127. <healexamdetlflag/>
  128. <pid/>
  129. <rsrvdd/>
  130. <rsrvno/>
  131. <chnghistseqno/>
  132. </chng>
  133. <chngsave/>
  134. </send>
  135. <init>
  136. <cnst>
  137. <drlst>
  138. <itemdr>
  139. <drid/>
  140. <drnm/>
  141. </itemdr>
  142. </drlst>
  143. </cnst>
  144. <baseinfo>
  145. <rsltcnstflaglst/>
  146. </baseinfo>
  147. </init>
  148. <hidden/>
  149. <temp>
  150. <calendar>
  151. <year/>
  152. <month/>
  153. <weeklist>
  154. <list>
  155. <sun/>
  156. <mon/>
  157. <tue/>
  158. <wed/>
  159. <thu/>
  160. <fri/>
  161. <sat/>
  162. <sun_memo/>
  163. <mon_memo/>
  164. <tue_memo/>
  165. <wed_memo/>
  166. <thu_memo/>
  167. <fri_memo/>
  168. <sat_memo/>
  169. </list>
  170. </weeklist>
  171. </calendar>
  172. <templst>
  173. <calendarlist>
  174. </calendarlist>
  175. </templst>
  176. <cnst>
  177. <drlst/>
  178. </cnst>
  179. <lookaheadyn/>
  180. </temp>
  181. <info/>
  182. <codedata>
  183. <popupmenu>
  184. <menu>
  185. <item>
  186. <label>종합판정</label>
  187. <func>fSetColJudg</func>
  188. </item>
  189. <item>
  190. <label>상담시간변경</label>
  191. <func>fSetChngRsltCnst</func>
  192. </item>
  193. <item>
  194. <label>상담취소</label>
  195. <func>fSetRsltCnstCncl</func>
  196. </item>
  197. </menu>
  198. </popupmenu>
  199. </codedata>
  200. </root>
  201. </instance>
  202. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  203. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  204. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  205. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  206. <script type="javascript" src="../../../ast/healexamweb/js/AHA001.js"/>
  207. <script type="javascript" src="../../../ast/healthexambaseweb/js/healcombolist.js"/>
  208. <script type="javascript" ev:event="xforms-ready">
  209. <![CDATA[
  210. //화면권한
  211. // btn_search.disabled = ! checkAuth("R");
  212. // btn_save.disabled = ! checkAuth("X");
  213. var instcd = getUserInfo("dutplceinstcd");
  214. /*
  215. if (instcd == "032"){
  216. btn_rsrv.visible = true;
  217. }else{
  218. btn_rsrv.visible = false;
  219. }
  220. */
  221. fInitCtrl(); //초기화 작업
  222. if(checkOpener()){
  223. model.setValue("/root/main/patinfo/pid", opener.javascript.getParameter("SMAHR00900_PARAM3"));
  224. if(model.getValue("/root/main/patinfo/pid") != ""){
  225. btn_hist.selected = true; //이력조회 탭
  226. btn_hist.dispatch("onclick");
  227. btn_search.dispatch("DOMActivate");
  228. }
  229. }
  230. chk_lookaheadyn.value = 'Y' //미리보기
  231. ]]>
  232. </script>
  233. <submission id="TRAHA00001"/>
  234. <submission id="TRAHB01503" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/temp/templst"/>
  235. <submission id="TRAHB01504" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/cnst/drlst"/>
  236. <submission id="TRAHA00901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/rsrvacptlst"/>
  237. <submission id="TRAHA00902" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/hist" replace="instance" resultref="/root/main/rsltrsrvhistlst"/>
  238. <submission id="TRAHA00903" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/chng" replace="instance" resultref="/root/main/rsltcnstchnglst"/>
  239. <submission id="TXAHA00901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savecnst" replace="instance" resultref="/root/hidden"/>
  240. <submission id="TXAHA00902" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/chngsave" replace="instance" resultref="/root/hidden"/>
  241. <submission id="TXAHA00601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden"/>
  242. <submission id="TXAHA00602" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden"/>
  243. </model>
  244. <script type="javascript">
  245. <![CDATA[
  246. var m_vHealexamflag = "";
  247. var m_vHealexamdetlflag = "";
  248. /**==========================================================================================================================
  249. * 초기화 작업
  250. * SPAHA00100_PARAM1 : 예약조회구분 [건진전체(T), 검사실(R), 상담의별(C)]
  251. * SPAHA00100_PARAM2 : 예약일자
  252. * SPAHA00100_PARAM3 : 성별구분(종건예약일정)
  253. * SPAHA00100_PARAM4 : 예약일자 setting될 부모 nodeset
  254. * SPAHA00100_PARAM5 : 예약시간 setting될 부모 nodeset
  255. * SPAHA00100_PARAM6 : 건진구분
  256. * SPAHA00100_PARAM7 : 결과상담의id가 setting될 node
  257. *==========================================================================================================================*/
  258. function fInitCtrl(){
  259. model.removeNodeset("/root/main/rsrvacptlst"); //결과상담예약 상세내역
  260. model.toggle("case_rsltrsrvdetl");
  261. btn_rsltrsrvdetl.selected = true; //상세내역 탭
  262. var sFlag = "";
  263. if(m_vHealexamflag == ""){
  264. if(isPopup()){
  265. sFlag = opener.javascript.getParameter("SMAHR00900_PARAM2");
  266. if(sFlag == ""){
  267. sFlag = getScreenMenuParameter();
  268. }
  269. }else{
  270. sFlag = getScreenMenuParameter();
  271. }
  272. if(sFlag == ""){
  273. m_vHealexamflag = "C";
  274. m_vHealexamdetlflag = "C01";
  275. }else{
  276. m_vHealexamflag = sFlag.substr(0, 1);
  277. m_vHealexamdetlflag = sFlag;
  278. }
  279. }
  280. model.setValue("/root/send/srchhealexamflag" , m_vHealexamflag);
  281. model.setValue("/root/send/srchhealexamdetlflag" , m_vHealexamdetlflag);
  282. var sRsrvDate = getCurrentDate();
  283. var curDate = null;
  284. if(sRsrvDate != ""){
  285. curDate = sRsrvDate.toDate();
  286. }else{
  287. curDate = getCurrentDate().toDate();
  288. }
  289. model.setValue("/root/temp/calendar/year" , curDate.getDateFormat('YYYY'));
  290. model.setValue("/root/temp/calendar/month" , curDate.getDateFormat('MM'));
  291. model.setValue("/root/send/srchrsrvdd" , "C"); //상담예약 (C) , 건진예약(T)
  292. model.makeValue("/root/main/rsltcnstchng/chngyn" , "N"); //결과상담 시간변경저장여부
  293. fGetBaseInfo(); //기본코드 조회
  294. setCalendar(curDate); //AHA001.js
  295. // grd_calendar.refresh();
  296. model.refresh();
  297. }
  298. /**==========================================================================================================================
  299. * 기본코드 조회
  300. *==========================================================================================================================*/
  301. function fGetBaseInfo(){
  302. healGetCodeList(new Array("S080"), new Array("/root/init/baseinfo/rsltcnstflaglst")); //결과상담구분(내원, 우편, 전화)
  303. model.setValue("/root/send/srchcond" , "C"); //건진 의사 조회 : 판정의(J)/처방의(P)/결과상담의(C)
  304. submit("TRAHB01504");
  305. }
  306. /**==========================================================================================================================
  307. * 월별 일별 스케쥴내역 조회.
  308. * vMode : 1 : 일자별 시간대별 가능인원 조회( 시간대만 조회)
  309. 2 : 월별 일자별 가능 인원 조회(달력만 조회~)
  310. 0 : 1, 2 동시 조회
  311. *==========================================================================================================================*/
  312. function fGetRsrvSchList(vMode){
  313. var sRsrvMon = model.getValue("/root/temp/calendar/year") + model.getValue("/root/temp/calendar/month") ;
  314. model.setValue( "/root/send/srchrsrvmon" , sRsrvMon);
  315. if(vMode == 1){
  316. model.setValue("/root/send/srchrsrvmon" , "");
  317. model.setValue("/root/send/srchrsrvdd" , fGetCalendarDate(grd_calendar));
  318. }else if( vMode == 2 ){
  319. model.setValue("/root/send/srchrsrvdd" , "" );
  320. }
  321. //일자별 캐파 초기화
  322. var firstDay = Number((sRsrvMon+ "01").toDate().getDay());
  323. var lastDay = Number(fGetCalendarDate(grd_calendar).toDate().getMonthDay());
  324. for(var i=firstDay; i<=lastDay; i++){
  325. iRow = Math.ceil( ( firstDay + i ) / 7 );
  326. iCol = ( sRsrvMon + i ).toDate().getDay();
  327. grd_calendar.valueMatrix(iRow , iCol + 7) = "" ;
  328. }
  329. submit("TRAHB01503");
  330. var sNode = null;
  331. if((vMode == 0 ) || (vMode == 2)){
  332. sNode = instance1.selectSingleNode("/root/temp/templst/rsrvddlst");
  333. if( sNode != null ){
  334. var dd = null ;
  335. var iCol = null;
  336. var iRow = null;
  337. var firstDay = (sRsrvMon+ "01").toDate().getDay();
  338. sNode = instance1.selectNodes("/root/temp/templst/rsrvddlst");
  339. for(var i=1; i<=sNode.length; i++){
  340. dd = model.getValue("/root/temp/templst/rsrvddlst[" +i+ "]/rsrvdd");
  341. iCol = ( sRsrvMon + dd).toDate().getDay();
  342. iRow = Math.ceil( ( firstDay + Number(dd) ) / 7 );
  343. grd_calendar.valueMatrix(iRow , iCol + 7) = model.getValue("/root/temp/templst/rsrvddlst[" +i+ "]/psnnocnt");
  344. }
  345. }
  346. }
  347. model.refresh();
  348. }
  349. /**==========================================================================================================================
  350. * 부모창에 예약일자/시간 설정
  351. *==========================================================================================================================*/
  352. function fSetRsrvDT(){
  353. if(checkOpener()){
  354. var sRsrvdd = fGetCalendarDate(grd_calendar);
  355. var sRsrvtm = "";
  356. if( sRsrvdd == "" ){
  357. sRsrvdd = opener.javascript.getParameter("SPAHA00100_PARAM2") ;
  358. }
  359. var vTmRef = opener.javascript.getParameter("SPAHA00100_PARAM5") ;
  360. if( vTmRef != "" ) {
  361. sRsrvtm = fGetGrdTm() ;
  362. if( sRsrvtm == "" ){
  363. return ;
  364. }
  365. }
  366. if( model.getValue("/root/send/srchcond") == "C" ){
  367. var vCnstDridNode = opener.javascript.getParameter("SPAHA00100_PARAM7") ;
  368. if( vCnstDridNode != "" ) {
  369. vCnstDrid = model.getValue(cmb_srchcnstdrid.attribute("ref") );
  370. if( vCnstDrid == "" ){
  371. messageBox("결과상담의를 선택하세요", "E999");
  372. return ;
  373. }
  374. opener.model.makeNode(vCnstDridNode);
  375. opener.model.setValue(vCnstDridNode, vCnstDrid);
  376. }
  377. }
  378. if( (sRsrvdd != "" ) && (sRsrvtm != "") ){
  379. var dtRsrvdd = ( sRsrvdd + " " + sRsrvtm + "00" ).toDate("YYYYMMDD hhmmss");
  380. if( dtRsrvdd <= getCurrentDateTime().toDate("YYYYMMDD hhmmss") ) {
  381. messageBox("예약시간이 현재 시간 전입니다. ", "E999");
  382. return ;
  383. }
  384. opener.model.setValue(opener.javascript.getParameter("SPAHA00100_PARAM4") , sRsrvdd ) ;
  385. opener.model.setValue(vTmRef, sRsrvtm ) ;
  386. opener.model.refresh();
  387. window.close();
  388. }
  389. }
  390. }
  391. /**==========================================================================================================================
  392. * 예약시간 선택 시 해당 일자 예약자 리스트 조회
  393. *==========================================================================================================================*/
  394. function fGetRsrvPatList(sNode){
  395. model.setValue("/root/send/srchhealexamflag" , m_vHealexamflag);
  396. model.setValue("/root/send/srchhealexamdetlflag" , m_vHealexamdetlflag);
  397. var sRsrvDate = fGetCalendarDate(grd_calendar);
  398. model.setValue("/root/send/srchrsrvdd" , sRsrvDate);
  399. //2010.01.13 mykim 수정 결과상담예약이 의사별이 아닌 일별 전체를 보여주기 위함.
  400. var sSrchcnstdrid = model.getValue("/root/send/srchcnstdrid");
  401. if(submit("TRAHA00901")){
  402. fSetMerge();
  403. }
  404. }
  405. /**==========================================================================================================================
  406. * 같은 내용의 결과 상딤내역을 MERGE 하는 기능
  407. *==========================================================================================================================*/
  408. function fSetMerge() {
  409. var start = new Array();
  410. var end = new Array();
  411. var mergeCnt = 0;
  412. var chk = true;
  413. grd_rsrvacptlst.rebuildStyle();
  414. for(var i =0; i <= grd_rsrvacptlst.rows; i++){
  415. var rsrvPsnnoCnt = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsrvpsnnocnt"));
  416. var srcHealExamFg = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("healexamflag"));
  417. var srcRsrvDD = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsrvdd"));
  418. var srcRsrvNO = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsrvno"));
  419. var srcRsltCnstSeqNo = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsltcnstseqno"));
  420. if(rsrvPsnnoCnt == "1") {
  421. grd_rsrvacptlst.isReadOnly(i , grd_rsrvacptlst.colRef("rsrvpsnnocnt")) = true;
  422. grd_rsrvacptlst.isReadOnly(i , grd_rsrvacptlst.colRef("outexamyn")) = true;
  423. grd_rsrvacptlst.isReadOnly(i , grd_rsrvacptlst.colRef("rsltcnstflag")) = true;
  424. if(grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsltcnstendyn")) == "N" ){
  425. grd_rsrvacptlst.rowStyle( i , "data" , "background-color" ) = "#CCFFCC";
  426. }
  427. for(var j=0; j<=grd_rsrvacptlst.rows; j++){
  428. var desHealExamFg = grd_rsrvacptlst.valueMatrix(j , grd_rsrvacptlst.colRef("healexamflag"));
  429. var desRsrvDD = grd_rsrvacptlst.valueMatrix(j , grd_rsrvacptlst.colRef("rsrvdd"));
  430. var desRsrvNO = grd_rsrvacptlst.valueMatrix(j , grd_rsrvacptlst.colRef("rsrvno"));
  431. var desRsltCnstSeqNo = grd_rsrvacptlst.valueMatrix(j , grd_rsrvacptlst.colRef("rsltcnstseqno"));
  432. if(srcHealExamFg == desHealExamFg && srcRsrvDD == desRsrvDD && srcRsrvNO == desRsrvNO && srcRsltCnstSeqNo == desRsltCnstSeqNo){
  433. if(chk){
  434. start[mergeCnt] = j;
  435. chk = false;
  436. }
  437. }
  438. if(srcHealExamFg != desHealExamFg || srcRsrvDD != desRsrvDD || srcRsrvNO != desRsrvNO || srcRsltCnstSeqNo != desRsltCnstSeqNo){
  439. if(!chk){
  440. end[mergeCnt] = j - 1;
  441. chk= true;
  442. mergeCnt++;
  443. }
  444. }
  445. }
  446. }else{
  447. grd_rsrvacptlst.isReadOnly(i , grd_rsrvacptlst.colRef("rsrvpsnnocnt")) = false;
  448. grd_rsrvacptlst.isReadOnly(i , grd_rsrvacptlst.colRef("outexamyn")) = false;
  449. grd_rsrvacptlst.isReadOnly(i , grd_rsrvacptlst.colRef("rsltcnstflag")) = false;
  450. }
  451. }
  452. //구역을 MERGE한다.
  453. for(var k=0; k < grd_rsrvacptlst.cols; k++){
  454. for(var x = 0; x < start.length; x++){
  455. if(k >= grd_rsrvacptlst.colRef("pid") || grd_rsrvacptlst.colRef("rsltcnstdd") <= k){
  456. grd_rsrvacptlst.mergeByFree(start[x], k , end[x] , k);
  457. }
  458. }
  459. }
  460. }
  461. /**==========================================================================================================================
  462. *변경된 상담내역을 동기화 한다.
  463. *==========================================================================================================================*/
  464. function fSetSyncData(){
  465. var srcHealExamFg = grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("healexamflag"));
  466. var srcRsrvDD = grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("rsrvdd"));
  467. var srcRsrvNO = grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("rsrvno"));
  468. var srcRsltCnstSeqNo = grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("rsltcnstseqno"));
  469. var chngVal = grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.col);
  470. for(var i=0; i<grd_rsrvacptlst.rows; i++){
  471. if(true == grd_rsrvacptlst.isReadOnly(i , grd_rsrvacptlst.colRef("rsrvpsnnocnt"))){
  472. var desHealExamFg = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("healexamflag"));
  473. var desRsrvDD = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsrvdd"));
  474. var desRsrvNO = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsrvno"));
  475. var desRsltCnstSeqNo = grd_rsrvacptlst.valueMatrix(i , grd_rsrvacptlst.colRef("rsltcnstseqno"));
  476. if(srcHealExamFg == desHealExamFg && srcRsrvDD == desRsrvDD && srcRsrvNO == desRsrvNO && srcRsltCnstSeqNo == desRsltCnstSeqNo){
  477. grd_rsrvacptlst.valueMatrix( i , grd_rsrvacptlst.col ) = chngVal;
  478. }
  479. }
  480. }
  481. }
  482. /**==========================================================================================================================
  483. *결과상담예약자의 종합판정 내역을 볼수 있는 팝업을 띄운다.
  484. *==========================================================================================================================*/
  485. function fSetColJudg(){
  486. clearParameter("SMAHR00500_PARAM1");
  487. clearParameter("SMAHR00500_PARAM2");
  488. setParameter ("SMAHR00500_PARAM1", grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("healexamflag")));
  489. setParameter ("SMAHR00500_PARAM2", grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("pid")));
  490. modal("SMAHR00500");
  491. }
  492. /**==========================================================================================================================
  493. *결과 상담 시간을 변경을 하는 기능
  494. *==========================================================================================================================*/
  495. function fSetChngRsltCnst() {
  496. //체크사항 == > 선택영역에 상담내역 존재여부 , 상담완료 여부체크
  497. var sIdx = grd_rsrvacptlst.row;
  498. //건진구분 , 예약일자, 예약번호, 결과상담일련번호
  499. var sHealExamFg = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("healexamflag"));
  500. var sHealExamDetlFg = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("healexamdetlflag"));
  501. var sRsrvDD = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsrvdd"));
  502. var sRsrvNO = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsrvno"));
  503. var sRsltCnstSeq = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsltcnstseqno"));
  504. var sRsltcnstremcnts = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsltcnstremcnts"));
  505. //결과상담완료여부
  506. var sRsltCnstEndYN = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsltcnstendyn"));
  507. if(sHealExamFg == "" || sRsrvDD == "" || sRsrvNO == "" || sRsltCnstSeq == ""){
  508. messageBox("변경 할 예약을","C002");
  509. return;
  510. }
  511. if(sRsltCnstEndYN == "Y"){
  512. messageBox("이미 상담이", "I002");
  513. return;
  514. }
  515. //수정할 상담내역을 복사한다.
  516. copyNodesetType("/root/send/chngsave" , grd_rsrvacptlst.nodeset + "[" + sIdx + "]" , "replace");
  517. model.resetInstanceNode("/root/main/rsltcnstchng/after");
  518. //수정할 시간 선택 후 최초의 빈 인스턴스 삭제
  519. model.removeNodeset("/root/main/rsltcnstchng/after[0]");
  520. setParameter ("SPAHA00110_PARAM1", sHealExamFg);
  521. setParameter ("SPAHA00110_PARAM2", sHealExamDetlFg);
  522. setParameter ("SPAHA00110_PARAM3", "/root/main/rsltcnstchng/before");
  523. setParameter ("SPAHA00110_PARAM4", "/root/main/rsltcnstchng/after");
  524. setParameter ("SPAHA00110_PARAM5", sRsltcnstremcnts);
  525. modal("SPAHA00110");
  526. //변경여부를 수정한다.. ==> Y,N
  527. if(model.getValue("/root/hidden/okflag") == "ok"){
  528. model.makeValue("/root/main/rsltcnstchng/chngyn" , "Y");
  529. model.makeValue("/root/send/chngsave/chngrsltcnstdr" , model.getValue("/root/main/rsltcnstchng/after/rsltcnstdr")); // 변경 상담의
  530. model.makeValue("/root/send/chngsave/chngrsltcnstdd" , model.getValue("/root/main/rsltcnstchng/after/rsltcnstdd")); // 변경 상담일자
  531. model.makeValue("/root/send/chngsave/chngrsltcnstrsrvstarttm" , model.getValue("/root/main/rsltcnstchng/after/rsltcnstrsrvstarttm")); // 변경 시작시간
  532. model.makeValue("/root/send/chngsave/chngrsltcnstrsrvendtm" , model.getValue("/root/main/rsltcnstchng/after/rsltcnstrsrvendtm")); // 변경 끝시간
  533. model.makeValue("/root/send/chngsave/chngrsltcnstremcnts" , model.getValue("/root/main/rsltcnstchng/after/rsltcnstremcnts")); // 변경 비고
  534. }
  535. }
  536. /**==========================================================================================================================
  537. *결과 상담을
  538. *==========================================================================================================================*/
  539. function fSetRsltCnstCncl(){
  540. //체크사항 == > 선택영역에 상담내역 존재여부 , 상담완료 여부체크
  541. var sIdx = grd_rsrvacptlst.row;
  542. //건진구분 , 예약일자, 예약번호, 결과상담일련번호
  543. var sHealExamFg = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("healexamflag"));
  544. var sHealExamDetlFg = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("healexamdetlflag"));
  545. var sRsrvDD = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsrvdd"));
  546. var sRsrvNO = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsrvno"));
  547. var sRsltCnstSeq = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsltcnstseqno"));
  548. //결과상담완료여부
  549. var sRsltCnstEndYN = grd_rsrvacptlst.valueMatrix(sIdx , grd_rsrvacptlst.colRef("rsltcnstendyn"));
  550. grd_rsrvacptlst.addStatus(sIdx , "delete");
  551. }
  552. //=================================
  553. // 화면 우측 상단에 크기 조절 버튼
  554. //=================================
  555. function fGridWidthcontrol(sStatus){
  556. if(sStatus == "Y") { //늘릴때
  557. btn_rsltrsrvdetl.attribute("left") ="0px";
  558. btn_hist.attribute("left") ="84px";
  559. switch1.attribute("left") ="0px";
  560. switch1.attribute("width") ="1190px";
  561. btn_refresh.attribute("left") ="1054px";
  562. btn_totrsrvdt.attribute("left") ="1119px";
  563. line2.attribute("x2") ="1183px";
  564. line9.attribute("x2") ="0px";
  565. grd_rsrvacptlst.attribute("width") ="1177px";
  566. group6.attribute("width") ="1187px";
  567. line18.attribute("x1") ="1115px";
  568. line18.attribute("x2") ="1115px";
  569. roundrect3.attribute("width") ="1187px";
  570. btn_search.attribute("left") ="1125px";
  571. line3.attribute("x2") ="1183px";
  572. grd_cnsthistlst.attribute("width") ="1178px";
  573. line4.attribute("x2") ="1183px";
  574. grd_chngcnstlst.attribute("width") ="1178px";
  575. }
  576. if(sStatus == "N") { //줄일때
  577. btn_rsltrsrvdetl.attribute("left") ="406px";
  578. btn_hist.attribute("left") ="490px";
  579. switch1.attribute("left") ="405px";
  580. switch1.attribute("width") ="785px";
  581. btn_refresh.attribute("left") ="649px";
  582. btn_totrsrvdt.attribute("left") ="714px";
  583. line2.attribute("x2") ="778px";
  584. line9.attribute("x2") ="400px";
  585. grd_rsrvacptlst.attribute("width") ="773px";
  586. group6.attribute("width") ="782px";
  587. line18.attribute("x1") ="710px";
  588. line18.attribute("x2") ="710px";
  589. roundrect3.attribute("width") ="782px";
  590. btn_search.attribute("left") ="720px";
  591. line3.attribute("x2") ="778px";
  592. grd_cnsthistlst.attribute("width") ="773px";
  593. line4.attribute("x2") ="778px";
  594. grd_chngcnstlst.attribute("width") ="773px";
  595. }
  596. model.refresh();
  597. }
  598. //===========================================================
  599. // 상담의에 대한 결과상담예약내역 , 결과상담예약 상세내역 초기화
  600. //2010.01.13 mykim 수정 결과상담예약이 의사별이 아닌 일별 전체를 보여주기 위함.
  601. //===========================================================
  602. function fInitInfo(){
  603. model.setValue("/root/send/srchcnstdrid","");
  604. //결과상담예약내역
  605. model.removeNodeset("/root/temp/templst/rsrvddlst");
  606. //달력의 월별 일자별 가능 인원 조회된 내역 삭제
  607. model.resetInstanceNode("/root/temp/calendar/weeklist/list/sun_memo");
  608. model.resetInstanceNode("/root/temp/calendar/weeklist/list/mon_memo");
  609. model.resetInstanceNode("/root/temp/calendar/weeklist/list/tue_memo");
  610. model.resetInstanceNode("/root/temp/calendar/weeklist/list/wed_memo");
  611. model.resetInstanceNode("/root/temp/calendar/weeklist/list/thu_memo");
  612. model.resetInstanceNode("/root/temp/calendar/weeklist/list/fri_memo");
  613. model.resetInstanceNode("/root/temp/calendar/weeklist/list/sat_memo");
  614. //model.resetInstanceNode("/root/temp/templist/calendarlist");
  615. //결과상담예약 상세내역
  616. model.removeNodeset("/root/main/rsrvacptlst/item");
  617. //달력 초기화
  618. var curDate = null;
  619. curDate = getCurrentDate().toDate();
  620. setCalendar(curDate);
  621. grd_calendar.rebuild();
  622. grd_rsrvacptlst.rebuild();
  623. model.refresh();
  624. }
  625. /**=============================================================================================
  626. @desc : 건진결과상담 명단 출력.(선택내역만 출력)
  627. *=============================================================================================*/
  628. function fRsltPatListPrnt(){
  629. var nodeList = instance1.selectNodes(grd_rsrvacptlst.nodeset + "[rsrvpsnnocnt='1']");
  630. if((nodeList == null) || (nodeList.length < 1)){
  631. messageBox("출력할 내역이 ", "I004");
  632. return ;
  633. }
  634. model.removeNodeset( "/root/main/prntpatlist");
  635. model.makeNode("/root/main/prntpatlist");
  636. var rCSV = getNodeListCSV(nodeList);
  637. setCSVToNode("/root/main/prntpatlist", rCSV);
  638. //2017/01/16 이정택(출력물에 진료의 자동으로 변경되도록 수정)
  639. model.makeValue("/root/tmp/drinfo/orddrid", grd_rsrvdrlst.valueMatrix(grd_rsrvdrlst.row, grd_rsrvdrlst.colRef("drid")));
  640. model.makeValue("/root/tmp/drinfo/orddrnm", grd_rsrvdrlst.valueMatrix(grd_rsrvdrlst.row, grd_rsrvdrlst.colRef("drnm")));
  641. //2017/01/16 이정택(출력물에 진료의 자동으로 변경되도록 수정)
  642. if(chk_lookaheadyn.value == "Y"){
  643. exeReportPreview("RPAHA00407", "XMLSTR");
  644. }else{
  645. exeReportPreview("RPAHA00407", "XMLSTR" , "" , "" , "true" , "", "", "", "", "true");
  646. }
  647. }
  648. function getImgURL(imgcd, type){
  649. if (type == null || type == "") {
  650. type = "gif";
  651. }
  652. return getDomain()+"/himed/webapps/com/commonweb/images/"+imgcd+"." + type;
  653. }
  654. function Cekday(ckdd)
  655. {
  656. var d, ckday, x;
  657. var x = new Array("일요일", "월요일", "화요일");
  658. var x = x.concat("수요일","목요일", "금요일");
  659. var x = x.concat("토요일");
  660. d = new Date(ckdd.substr(0,4),ckdd.substr(4,2)-1,ckdd.substr(6,2));
  661. ckday = d.getDay();
  662. return( x[ckday]);
  663. }
  664. ]]>
  665. </script>
  666. </xhtml:head>
  667. <xhtml:body guideline="1,1192;2,782;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  668. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  669. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:189px; height:14px; ">결과상담예약관리</caption>
  670. </group>
  671. <group id="group5" scroll="auto" style="left:0px; top:13px; width:1195px; height:744px; ">
  672. <caption id="caption11" class="tit_2" style="left:0px; top:10px; width:144px; height:15px; ">상담의 리스트</caption>
  673. <line id="line9" class="line_1" style="x1:0px; y1:30px; x2:400px; y2:30px; "/>
  674. <multilinegrid id="grd_calendar" nodeset="/root/temp/calendar/weeklist/list" class="gridcalendar" autoresize="true" caption="일^월^화^수^목^금^토" colsep="^" colwidth="48, 54, 52, 56, 58, 61, 58" extendlastcol="noscroll" focuscolor="transparent" rowsep="|" selectionmode="free" mergecellsfixedrows="bycolrec" style="left:0px; top:422px; width:400px; height:315px; ">
  675. <row>
  676. <col class="color_sun" ref="sun" style="border-bottom-width:0px; "/>
  677. <col ref="mon" style="border-bottom-width:0px; "/>
  678. <col ref="tue" style="border-bottom-width:0px; "/>
  679. <col ref="wed" style="border-bottom-width:0px; "/>
  680. <col ref="thu" style="border-bottom-width:0px; "/>
  681. <col ref="fri" style="border-bottom-width:0px; "/>
  682. <col class="color_sat" ref="sat" style="border-bottom-width:0px; "/>
  683. </row>
  684. <row>
  685. <col ref="sun_memo" style="border-top-width:0px; "/>
  686. <col ref="mon_memo" style="border-top-width:0px; "/>
  687. <col ref="tue_memo" style="border-top-width:0px; "/>
  688. <col ref="wed_memo" style="border-top-width:0px; "/>
  689. <col ref="thu_memo" style="border-top-width:0px; "/>
  690. <col ref="fri_memo" style="border-top-width:0px; "/>
  691. <col ref="sat_memo" style="border-top-width:0px; "/>
  692. </row>
  693. <script type="javascript" ev:event="onclick">
  694. <![CDATA[
  695. setCellColor(grd_calendar);
  696. model.toggle("case_rsltrsrvdetl");
  697. btn_save.disabled = false;
  698. btn_rsltrsrvdetl.selected = true;
  699. var vFlag = model.getValue("/root/temp/flag");
  700. fGetRsrvPatList();
  701. ]]>
  702. </script>
  703. <script type="javascript" ev:event="onrowchanged">
  704. <![CDATA[
  705. setCellColor(grd_calendar);
  706. ]]>
  707. </script>
  708. <script type="javascript" ev:event="oncolchanged">
  709. <![CDATA[
  710. setCellColor(grd_calendar);
  711. ]]>
  712. </script>
  713. </multilinegrid>
  714. <line id="line1" class="line_1" style="x1:0px; y1:372px; x2:400px; y2:372px; "/>
  715. <group id="grp_calendar" style="left:0px; top:377px; width:400px; height:40px; ">
  716. <shape id="rectangle1" class="calendar_header" appearance="rectangle" style="left:0px; top:0px; width:400px; height:40px; "/>
  717. <button id="btn_preyear" class="icon_pre_year" style="left:110px; top:12px; width:16px; height:16px; ">
  718. <caption/>
  719. <script type="javascript" ev:event="DOMActivate">
  720. <![CDATA[
  721. fHRefreshCalender("Y", -1);
  722. fGetRsrvSchList(2);
  723. ]]>
  724. </script>
  725. </button>
  726. <button id="btn_nextyear" class="icon_next_year" style="left:285px; top:12px; width:16px; height:16px; ">
  727. <caption/>
  728. <script type="javascript" ev:event="DOMActivate">
  729. <![CDATA[
  730. fHRefreshCalender("Y", 1);
  731. fGetRsrvSchList(2);
  732. ]]>
  733. </script>
  734. </button>
  735. <button id="btn_premonth" class="icon_pre_month" style="left:129px; top:12px; width:16px; height:16px; ">
  736. <caption/>
  737. <script type="javascript" ev:event="DOMActivate">
  738. <![CDATA[
  739. fHRefreshCalender("M", -1);
  740. fGetRsrvSchList(2);
  741. ]]>
  742. </script>
  743. </button>
  744. <button id="btn_nextmonth" class="icon_next_month" style="left:266px; top:12px; width:16px; height:16px; ">
  745. <caption/>
  746. <script type="javascript" ev:event="DOMActivate">
  747. <![CDATA[
  748. fHRefreshCalender("M", 1);
  749. fGetRsrvSchList(2);
  750. ]]>
  751. </script>
  752. </button>
  753. <output id="opt_year" ref="/root/temp/calendar/year" class="calendar_output" style="left:155px; top:9px; width:30px; height:19px; "/>
  754. <output id="opt_month" ref="/root/temp/calendar/month" class="calendar_output" style="left:205px; top:9px; width:30px; height:19px; "/>
  755. <caption id="caption8" class="calendar_output" style="left:185px; top:9px; width:20px; height:19px; ">년</caption>
  756. <caption id="caption9" class="calendar_output" style="left:235px; top:9px; width:20px; height:19px; ">월</caption>
  757. </group>
  758. <datagrid id="grd_rsrvdrlst" nodeset="/root/init/cnst/drlst/itemdr" caption="상담의ID^상담의명" colsep="^" colwidth="100, 150" dataheight="23" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" style="left:0px; top:35px; width:400px; height:310px; ">
  759. <col ref="drid"/>
  760. <col ref="drnm"/>
  761. <script type="javascript" ev:event="ondblclick">
  762. <![CDATA[
  763. if(isDataCell()){
  764. model.setValue("/root/send/srchcnstdrid", grd_rsrvdrlst.valueMatrix( grd_rsrvdrlst.row, grd_rsrvdrlst.colRef("drid")));
  765. fGetRsrvSchList(2);
  766. model.removeNodeset("/root/main/rsrvacptlst/item");
  767. grd_rsrvacptlst.rebuild();
  768. }
  769. ]]>
  770. </script>
  771. </datagrid>
  772. <button id="btn_clear" class="btn4_letter3" style="left:332px; top:350px; width:68px; height:22px; ">
  773. <caption>초기화</caption>
  774. <script type="javascript" ev:event="DOMActivate">
  775. <![CDATA[
  776. fInitInfo();
  777. ]]>
  778. </script>
  779. </button>
  780. <caption id="caption1" class="tit_2" style="left:0px; top:355px; width:144px; height:14px; ">결과상담예약내역</caption>
  781. <switch id="switch1" style="left:405px; top:30px; width:785px; height:708px; ">
  782. <case id="case_rsltrsrvdetl" selected="true">
  783. <datagrid id="grd_rsrvacptlst" nodeset="/root/main/rsrvacptlst/item" caption="선택^예약시간^등록번호^성명^건진일자^전화번호^외래여부^예약내역^본인여부^내원자^상담의^방문시간^상담시작시간^상담종료시간^상담완료^예약접수 전달사항^비고^특이사항^패키지종류^건진구분^건진상세구분^예약일자^예약번호^예약시작시간^예약끝시간^예약이력코드^방문일자^예약변경이력번호^결과상담일련번호^결과상담예약일자" colsep="^" colwidth="30, 60, 60, 60, 90, 70, 55, 70, 55, 70, 0, 0, 0, 0, 55, 158, 150, 150, 100, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" tooltip="true" style="left:5px; top:30px; width:773px; height:672px; ">
  784. <col checkvalue="1,0" ref="rsrvpsnnocnt" type="checkbox"/>
  785. <col ref="rsrvtm" format="hh:nn"/>
  786. <col ref="pid"/>
  787. <col ref="hngnm"/>
  788. <col ref="hopedd" format="yyyy-mm-dd"/>
  789. <col ref="mtel"/>
  790. <col checkvalue="Y,N" ref="outexamyn" type="checkbox"/>
  791. <col ref="rsltcnstflag" type="combo">
  792. <choices>
  793. <itemset nodeset="/root/init/baseinfo/rsltcnstflaglst/S080">
  794. <label ref="cdnm"/>
  795. <value ref="cdid"/>
  796. </itemset>
  797. </choices>
  798. </col>
  799. <col checkvalue="Y,N" ref="ownyn" type="checkbox"/>
  800. <col class="gridinput" ref="visitor" type="input"/>
  801. <col disabled="true" ref="rsltcnstdr" type="combo">
  802. <choices>
  803. <itemset nodeset="/root/init/cnst/drlst/itemdr">
  804. <label ref="drnm"/>
  805. <value ref="drid"/>
  806. </itemset>
  807. </choices>
  808. </col>
  809. <col ref="visittm" type="inputbutton" format="hh:nn"/>
  810. <col ref="rsltcnststarttm" type="inputbutton" format="hh:nn"/>
  811. <col ref="rsltcnstendtm" type="inputbutton" format="hh:nn"/>
  812. <col checkvalue="Y,N" ref="rsltcnstendyn" type="checkbox"/>
  813. <col ref="remcnts"/>
  814. <col ref="rsltcnstremcnts" type="input"/>
  815. <col ref="spcffact" type="input"/>
  816. <col ref="pkgnm"/>
  817. <col ref="healexamflag" visibility="hidden"/>
  818. <col ref="healexamdetlflag" visibility="hidden"/>
  819. <col ref="rsrvdd" visibility="hidden"/>
  820. <col ref="rsrvno" visibility="hidden"/>
  821. <col ref="rsltcnstrsrvstarttm" visibility="hidden"/>
  822. <col ref="rsltcnstrsrvendtm" visibility="hidden"/>
  823. <col ref="rsltcnsthistcd" visibility="hidden"/>
  824. <col ref="visitdd" visibility="hidden"/>
  825. <col ref="chnghistseqno" visibility="hidden"/>
  826. <col ref="rsltcnstseqno" visibility="hidden"/>
  827. <col ref="rsltcnstdd" visibility="hidden"/>
  828. <script type="javascript" ev:event="xforms-value-changed">
  829. <![CDATA[
  830. if(isDataCell()) {
  831. if(grd_rsrvacptlst.col == grd_rsrvacptlst.colRef("ownyn")){
  832. if(grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row, grd_rsrvacptlst.colRef("ownyn")) == "Y"){
  833. grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row, grd_rsrvacptlst.colRef("visitor")) = grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row, grd_rsrvacptlst.colRef("hngnm"));
  834. }else{
  835. grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row, grd_rsrvacptlst.colRef("visitor")) = "";
  836. }
  837. }
  838. fSetSyncData();
  839. }
  840. ]]>
  841. </script>
  842. <script type="javascript" ev:event="ondblclick">
  843. <![CDATA[
  844. if(isDataCell()){
  845. model.setValue("/root/send/hist/healexamflag" , grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("healexamflag")));
  846. model.setValue("/root/send/hist/healexamdetlflag" , grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("healexamdetlflag")));
  847. model.setValue("/root/send/hist/pid" , grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("pid")));
  848. model.setValue("/root/send/hist/rsrvdd" , grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("rsrvdd")));
  849. model.setValue("/root/send/hist/rsrvno" , grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("rsrvno")));
  850. model.setValue("/root/main/patinfo/pid" , grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("pid")));
  851. if(submit("TRAHA00902")){
  852. btn_hist.selected = true;
  853. model.toggle("case_hist");
  854. model.resetInstanceNode(grd_chngcnstlst.nodeset);
  855. btn_save.disabled = true;
  856. }
  857. }
  858. ]]>
  859. </script>
  860. <script type="javascript" ev:event="onbuttonclick">
  861. <![CDATA[
  862. var curDate = getCurrentDate();
  863. var curTime = getNewDate().getDateFormat("hhmm");
  864. if(grd_rsrvacptlst.col == grd_rsrvacptlst.colRef("visittm")){
  865. grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("visittm")) = curTime;
  866. grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("visitdd")) = curDate;
  867. grd_rsrvacptlst.addStatus(grd_rsrvacptlst.row , "update");
  868. }
  869. if(grd_rsrvacptlst.col == grd_rsrvacptlst.colRef("rsltcnststarttm")){
  870. grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("rsltcnststarttm")) = curTime;
  871. grd_rsrvacptlst.addStatus(grd_rsrvacptlst.row , "update");
  872. }
  873. if(grd_rsrvacptlst.col == grd_rsrvacptlst.colRef("rsltcnstendtm")){
  874. grd_rsrvacptlst.valueMatrix(grd_rsrvacptlst.row , grd_rsrvacptlst.colRef("rsltcnstendtm")) = curTime;
  875. grd_rsrvacptlst.addStatus(grd_rsrvacptlst.row , "update");
  876. }
  877. fSetSyncData();
  878. ]]>
  879. </script>
  880. <script type="javascript" ev:event="onmousedown">
  881. <![CDATA[
  882. setPopupMenu("grd_rsrvacptlst", false, "/root/codedata/popupmenu/menu/item", "label", "func");
  883. ]]>
  884. </script>
  885. <script type="javascript" ev:event="DOMFocusOut">
  886. <![CDATA[
  887. initPopupMenu();
  888. ]]>
  889. </script>
  890. <script type="javascript" ev:event="onclick">
  891. <![CDATA[
  892. if(isDataCell()){
  893. grd_rsrvacptlst.editCell();
  894. }
  895. ]]>
  896. </script>
  897. </datagrid>
  898. <caption id="caption2" class="tit_2" style="left:5px; top:10px; width:152px; height:14px; ">결과상담예약 상세내역</caption>
  899. <line id="line2" class="line_1" style="x1:5px; y1:25px; x2:778px; y2:25px; "/>
  900. <button id="btn_totrsrvdt" class="btn2_letter4" style="left:714px; top:5px; width:64px; height:19px; ">
  901. <caption>엑셀출력</caption>
  902. <script type="javascript" ev:event="DOMActivate">
  903. <![CDATA[
  904. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  905. if(fileName != ""){
  906. grd_rsrvacptlst.saveExcel(fileName, "SheetName", true, true, "", "", false);
  907. }
  908. ]]>
  909. </script>
  910. </button>
  911. <button id="btn_refresh" class="btn2_letter4" style="left:649px; top:5px; width:64px; height:19px; ">
  912. <caption>새로고침</caption>
  913. <script type="javascript" ev:event="DOMActivate">
  914. <![CDATA[
  915. fGetRsrvSchList(2);
  916. fGetRsrvPatList();
  917. ]]>
  918. </script>
  919. </button>
  920. </case>
  921. <case id="case_hist">
  922. <caption id="caption3" class="tit_2" style="left:5px; top:40px; width:144px; height:14px; ">결과상담 내역</caption>
  923. <line id="line3" class="line_1" style="x1:5px; y1:55px; x2:778px; y2:55px; "/>
  924. <caption id="caption4" class="tit_2" style="left:5px; top:355px; width:152px; height:13px; ">결과상담예약 변경내역</caption>
  925. <line id="line4" class="line_1" style="x1:5px; y1:370px; x2:778px; y2:370px; "/>
  926. <datagrid id="grd_chngcnstlst" nodeset="/root/main/rsltcnstchnglst/item" caption="예약일자^예약시간^상담의^변경자^변경일자" colsep="^" colwidth="100, 120, 100, 100, 150" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:5px; top:375px; width:773px; height:327px; ">
  927. <col ref="rsltcnstdd" format="yyyy-mm-dd"/>
  928. <col ref="rsltcnsttm"/>
  929. <col ref="rsltcnstdr" type="combo">
  930. <choices>
  931. <itemset nodeset="/root/init/cnst/drlst/itemdr">
  932. <label ref="drnm"/>
  933. <value ref="drid"/>
  934. </itemset>
  935. </choices>
  936. </col>
  937. <col ref="chngernm"/>
  938. <col ref="chngtm" format="yyyy-mm-dd hh:nn:ss"/>
  939. </datagrid>
  940. <group id="group6" style="left:0px; top:0px; width:782px; height:35px; vertical-align:top; ">
  941. <shape id="roundrect3" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:782px; height:35px; "/>
  942. <button id="btn_search" class="btn1_letter2" style="left:720px; top:7px; width:56px; height:22px; ">
  943. <caption>조회</caption>
  944. <script type="javascript" ev:event="DOMActivate">
  945. <![CDATA[
  946. var srchpid = model.getValue("/root/main/patinfo/pid");
  947. if(srchpid == ''){
  948. messageBox("등록번호를 ", "C001");
  949. model.setFocus("input19");
  950. return;
  951. }
  952. model.setValue("/root/send/hist/healexamflag" , m_vHealexamflag);
  953. model.setValue("/root/send/hist/healexamdetlflag" , m_vHealexamdetlflag);
  954. model.setValue("/root/send/hist/pid" , srchpid);
  955. model.setValue("/root/send/hist/rsrvdd" , "");
  956. model.setValue("/root/send/hist/rsrvno" , "");
  957. submit("TRAHA00902");
  958. model.setValue("/root/send/chng/healexamflag" , grd_cnsthistlst.valueMatrix(1 , grd_cnsthistlst.colRef("healexamflag")));
  959. model.setValue("/root/send/chng/healexamdetlflag" , grd_cnsthistlst.valueMatrix(1 , grd_cnsthistlst.colRef("healexamdetlflag")));
  960. model.setValue("/root/send/chng/pid" , grd_cnsthistlst.valueMatrix(1 , grd_cnsthistlst.colRef("pid")));
  961. model.setValue("/root/send/chng/rsrvdd" , grd_cnsthistlst.valueMatrix(1 , grd_cnsthistlst.colRef("rsrvdd")));
  962. model.setValue("/root/send/chng/rsrvno" , grd_cnsthistlst.valueMatrix(1 , grd_cnsthistlst.colRef("rsrvno")));
  963. model.setValue("/root/send/chng/chnghistseqno" , grd_cnsthistlst.valueMatrix(1 , grd_cnsthistlst.colRef("chnghistseqno")));
  964. submit("TRAHA00903");
  965. ]]>
  966. </script>
  967. </button>
  968. <line id="line18" class="line_4" style="x1:710px; y1:7px; x2:710px; y2:29px; border-left-style:solid; "/>
  969. <input id="input19" ref="/root/main/patinfo/pid" class="input_search" style="left:97px; top:8px; width:83px; height:19px; ">
  970. <script type="javascript" ev:event="onkeypress">
  971. <![CDATA[
  972. if(event.keyCode == "13"){
  973. btn_srchpat.dispatch("DOMActivate");
  974. }
  975. ]]>
  976. </script>
  977. </input>
  978. <caption id="caption22" class="search_name" style="left:8px; top:8px; width:86px; height:17px; ">등록번호 :</caption>
  979. <output id="output2" ref="/root/send/hist/pid" class="output_search" style="left:203px; top:8px; width:57px; height:19px; "/>
  980. <output id="output1" ref="/root/send/hist/age" class="output_search" style="left:263px; top:8px; width:34px; height:19px; "/>
  981. <output id="output3" ref="/root/send/hist/hngnm" class="output_search" style="left:300px; top:8px; width:94px; height:19px; "/>
  982. <button id="btn_srchpat" class="icon_search" navindex="2" style="left:184px; top:10px; width:16px; height:16px; ">
  983. <caption/>
  984. <script type="javascript" ev:event="DOMActivate">
  985. <![CDATA[
  986. fSearchPatInfo("SMAHA00900", "pid", input19.currentText , "N", "/root/send/hist" ,output2.attribute("ref"), output3.attribute("ref"));
  987. model.setValue("/root/main/patinfo/pid", model.getValue("/root/send/hist/pid"));
  988. input19.refresh();
  989. if(model.getValue("/root/send/hist/pid") != ""){
  990. btn_search.dispatch("DOMActivate");
  991. }
  992. ]]>
  993. </script>
  994. </button>
  995. </group>
  996. <datagrid id="grd_cnsthistlst" nodeset="/root/main/rsltrsrvhistlst/item" caption="선택^예약일자^예약시간^등록번호^성명^건진일자^전화번호^외래여부^예약내역^본인여부^내원자^상담의^방문시간^상담시작시간^상담종료시간^상담완료^예약접수 전달사항^비고^특이사항^패키지종류^건진구분^건진상세구분^예약일자^예약번호^에약시삭시간^예약끝시간^예약이력코드^방문일자^결과상담일련번호^예약변경이력번호" colsep="^" colwidth="35, 80, 100, 60, 60, 70, 90, 50, 100, 50, 100, 100, 80, 80, 80, 50, 119, 150, 150, 100, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50" frozencols="5" mergecellsfixedrows="bycolrec" rowsep="|" tooltip="true" style="left:5px; top:60px; width:773px; height:292px; ">
  997. <col checkvalue="Y,N" ref="chkyn" type="checkbox"/>
  998. <col ref="rsltcnstdd" format="yyyy-mm-dd" style="left:0px; top:23px; width:80px; height:23px; "/>
  999. <col ref="rsltcnsttm"/>
  1000. <col ref="pid"/>
  1001. <col ref="hngnm"/>
  1002. <col ref="hopedd" format="yyyy-mm-dd"/>
  1003. <col ref="mtel"/>
  1004. <col checkvalue="Y,N" disabled="false" ref="outexamyn" type="checkbox"/>
  1005. <col ref="rsltcnstflag" type="combo">
  1006. <choices>
  1007. <itemset nodeset="/root/init/baseinfo/rsltcnstflaglst/S080">
  1008. <label ref="cdnm"/>
  1009. <value ref="cdid"/>
  1010. </itemset>
  1011. </choices>
  1012. </col>
  1013. <col checkvalue="Y,N" ref="ownyn" type="checkbox"/>
  1014. <col class="gridinput" ref="visitor" type="input"/>
  1015. <col disabled="true" ref="rsltcnstdr" type="combo">
  1016. <choices>
  1017. <itemset nodeset="/root/init/cnst/drlst/itemdr">
  1018. <label ref="drnm"/>
  1019. <value ref="drid"/>
  1020. </itemset>
  1021. </choices>
  1022. </col>
  1023. <col ref="visittm" type="inputbutton" format="hh:nn"/>
  1024. <col ref="rsltcnststarttm" type="inputbutton" format="hh:nn"/>
  1025. <col ref="rsltcnstendtm" type="inputbutton" format="hh:nn"/>
  1026. <col checkvalue="Y,N" ref="rsltcnstendyn" type="checkbox"/>
  1027. <col ref="remcnts"/>
  1028. <col ref="rsltcnstremcnts" type="input"/>
  1029. <col ref="spcffact" type="input"/>
  1030. <col ref="pkgnm"/>
  1031. <col ref="healexamflag" visibility="hidden"/>
  1032. <col ref="healexamdetlflag" visibility="hidden"/>
  1033. <col ref="rsrvdd" visibility="hidden"/>
  1034. <col ref="rsrvno" visibility="hidden"/>
  1035. <col ref="rsltcnstrsrvstarttm" visibility="hidden"/>
  1036. <col ref="rsltcnstrsrvendtm" visibility="hidden"/>
  1037. <col ref="rsltcnsthistcd" visibility="hidden"/>
  1038. <col ref="visitdd" visibility="hidden"/>
  1039. <col ref="rsltcnstseqno" visibility="hidden"/>
  1040. <col ref="chnghistseqno" visibility="hidden"/>
  1041. <script type="javascript" ev:event="ondblclick">
  1042. <![CDATA[
  1043. if(isDataCell()){
  1044. model.setValue("/root/send/chng/healexamflag" , grd_cnsthistlst.valueMatrix(grd_cnsthistlst.row , grd_cnsthistlst.colRef("healexamflag")));
  1045. model.setValue("/root/send/chng/healexamdetlflag" , grd_cnsthistlst.valueMatrix(grd_cnsthistlst.row , grd_cnsthistlst.colRef("healexamdetlflag")));
  1046. model.setValue("/root/send/chng/pid" , grd_cnsthistlst.valueMatrix(grd_cnsthistlst.row , grd_cnsthistlst.colRef("pid")));
  1047. model.setValue("/root/send/chng/rsrvdd" , grd_cnsthistlst.valueMatrix(grd_cnsthistlst.row , grd_cnsthistlst.colRef("rsrvdd")));
  1048. model.setValue("/root/send/chng/rsrvno" , grd_cnsthistlst.valueMatrix(grd_cnsthistlst.row , grd_cnsthistlst.colRef("rsrvno")));
  1049. model.setValue("/root/send/chng/chnghistseqno" , grd_cnsthistlst.valueMatrix(grd_cnsthistlst.row , grd_cnsthistlst.colRef("chnghistseqno")));
  1050. submit("TRAHA00903")
  1051. }
  1052. ]]>
  1053. </script>
  1054. </datagrid>
  1055. </case>
  1056. </switch>
  1057. <button id="btn_rsltrsrvdetl" class="btn_sw" group="tab" selected="true" style="left:405px; top:8px; width:84px; height:22px; ">
  1058. <caption>상세내역</caption>
  1059. <script type="javascript" ev:event="onclick">
  1060. <![CDATA[
  1061. model.toggle("case_rsltrsrvdetl");
  1062. btn_save.disabled = false;
  1063. ]]>
  1064. </script>
  1065. </button>
  1066. <button id="btn_hist" class="btn_sw" group="tab" selected="true" style="left:489px; top:8px; width:84px; height:22px; ">
  1067. <caption>이력 및 조회</caption>
  1068. <script type="javascript" ev:event="onclick">
  1069. <![CDATA[
  1070. model.toggle("case_hist");
  1071. btn_save.disabled = true;
  1072. ]]>
  1073. </script>
  1074. </button>
  1075. <button id="button1" class="icon_pre_month" style="left:1157px; top:10px; width:16px; height:16px; ">
  1076. <caption/>
  1077. <script type="javascript" ev:event="DOMActivate">
  1078. <![CDATA[
  1079. fGridWidthcontrol("Y");
  1080. ]]>
  1081. </script>
  1082. </button>
  1083. <button id="button2" class="icon_next_month" style="left:1172px; top:10px; width:16px; height:16px; ">
  1084. <caption/>
  1085. <script type="javascript" ev:event="DOMActivate">
  1086. <![CDATA[
  1087. fGridWidthcontrol("N");
  1088. ]]>
  1089. </script>
  1090. </button>
  1091. <select1 id="radio1" ref="/root/send/srchhealexamflag" visibility="visible" appearance="full" cols="3" overflow="hidden" style="left:265px; top:10px; width:135px; height:20px; border-style:none; ">
  1092. <choices>
  1093. <item>
  1094. <label>종합건진</label>
  1095. <value>C</value>
  1096. </item>
  1097. <item>
  1098. <label>통합건진</label>
  1099. <value>G</value>
  1100. </item>
  1101. </choices>
  1102. <script type="javascript" ev:event="onclick">
  1103. <![CDATA[
  1104. m_vHealexamflag = model.getValue("/root/send/srchhealexamflag");
  1105. m_vHealexamdetlflag = model.getValue("/root/send/srchhealexamflag") + "01";
  1106. model.setValue("/root/send/srchhealexamdetlflag", model.getValue("/root/send/srchhealexamflag") + "01");
  1107. var sRsrvDate = getCurrentDate();
  1108. var curDate = null;
  1109. if(sRsrvDate != ""){
  1110. curDate = sRsrvDate.toDate();
  1111. }else{
  1112. curDate = getCurrentDate().toDate();
  1113. }
  1114. model.setValue("/root/temp/calendar/year" , curDate.getDateFormat('YYYY'));
  1115. model.setValue("/root/temp/calendar/month" , curDate.getDateFormat('MM'));
  1116. model.setValue("/root/send/srchrsrvdd" , "C"); //상담예약 (C) , 건진예약(T)
  1117. model.makeValue("/root/main/rsltcnstchng/chngyn" , "N"); //결과상담 시간변경저장여부
  1118. fGetBaseInfo(); //기본코드 조회
  1119. setCalendar(curDate); //AHA001.js
  1120. grd_calendar.refresh();
  1121. model.refresh();
  1122. ]]>
  1123. </script>
  1124. </select1>
  1125. </group>
  1126. <group id="group4" scroll="auto" style="left:0px; top:754px; width:1195px; height:28px; ">
  1127. <button id="btn_save" class="btn4_letter2" style="left:1138px; top:5px; width:56px; height:22px; ">
  1128. <caption>저장</caption>
  1129. <script type="javascript" ev:event="DOMActivate">
  1130. <![CDATA[
  1131. //1. 저장할 데이터 존재여부 체크
  1132. //1-1. savedata에 저장할 데이터를 담는다.
  1133. //1-2. savedata에 데이터가 들어있는지 체크..없으면 return
  1134. if(model.getValue("/root/main/rsltcnstchng/chngyn") == "Y"){
  1135. if(submit("TXAHA00902")){
  1136. model.setValue("/root/main/rsltcnstchng/chngyn", "N");
  1137. }
  1138. }
  1139. //2. savedata에 data가 있으면 저장.
  1140. if(model.getValue("/root/main/rsltcnstchng/chngyn") == "N"){
  1141. if(messageBox("", "Q002") == 6){
  1142. var savedata = getGridUpdateData(grd_rsrvacptlst);
  1143. model.setValue("/root/send/savecnst", savedata );
  1144. if(submit("TXAHA00901")){
  1145. btn_refresh.dispatch("DOMActivate");
  1146. }
  1147. }
  1148. }
  1149. ]]>
  1150. </script>
  1151. </button>
  1152. <button id="btn_prntlist" class="btn4_letter2" style="left:1080px; top:5px; width:56px; height:22px; ">
  1153. <caption>출력</caption>
  1154. <script type="javascript" ev:event="DOMActivate">
  1155. <![CDATA[
  1156. fRsltPatListPrnt();
  1157. ]]>
  1158. </script>
  1159. </button>
  1160. <select id="chk_lookaheadyn" ref="/root/temp/lookaheadyn" overflow="visible" appearance="full" style="left:1010px; top:8px; width:70px; height:20px; border-style:none; ">
  1161. <choices>
  1162. <item>
  1163. <label>미리보기</label>
  1164. <value>Y</value>
  1165. </item>
  1166. </choices>
  1167. </select>
  1168. <button id="btn_rsrv" class="btn4_letter3" style="left:943px; top:5px; width:68px; height:22px; ">
  1169. <caption>상담지</caption>
  1170. <script type="javascript" ev:event="DOMActivate">
  1171. <![CDATA[
  1172. var instcd = getUserInfo("dutplceinstcd");
  1173. if (instcd == "032"){
  1174. var ckdd = model.getValue("/root/main/rsltrsrvhistlst/item/rsltcnstdd");
  1175. model.makeValue("/root/main/rsltrsrvhistlst/item/logourl", getImgURL("newlogo"+getUserInfo("dutplceinstcd"), "jpg"));
  1176. model.makeValue("/root/main/rsltrsrvhistlst/item/day", Cekday(ckdd) );
  1177. // exeReportPreview("RPAHA00408", "XMLSTR", "", "", "false","","","","","", "", "");
  1178. var cnt = getNodesetCount("/root/main/rsltrsrvhistlst/item");
  1179. for(var i = 1; i<=cnt; i++){
  1180. if(model.getValue("/root/main/rsltrsrvhistlst/item['" + i + "']/chkyn")=='Y'){
  1181. model.makeNode("/root/tmp/printinfo");
  1182. model.copyNode("/root/tmp/printinfo", "/root/main/rsltrsrvhistlst/item['" + i + "']");
  1183. exeReportPreview("RPAHA00408", "XMLSTR");
  1184. }else{
  1185. continue;
  1186. }
  1187. }
  1188. }else if(instcd == "031"){
  1189. var ckdd = model.getValue("/root/main/rsltrsrvhistlst/item/rsltcnstdd");
  1190. model.makeValue("/root/main/rsltrsrvhistlst/item/logourl", getImgURL("logo"+getUserInfo("dutplceinstcd")+"gunjin", "jpg"));
  1191. model.makeValue("/root/main/rsltrsrvhistlst/item/day", Cekday(ckdd) );
  1192. var cnt = getNodesetCount("/root/main/rsltrsrvhistlst/item");
  1193. for(var i = 1; i<=cnt; i++){
  1194. if(model.getValue("/root/main/rsltrsrvhistlst/item['" + i + "']/chkyn")=='Y'){
  1195. model.makeNode("/root/tmp/printinfo");
  1196. model.copyNode("/root/tmp/printinfo", "/root/main/rsltrsrvhistlst/item['" + i + "']");
  1197. exeReportPreview("RPAHA00420", "XMLSTR");
  1198. }else{
  1199. continue;
  1200. }
  1201. }
  1202. }
  1203. ]]>
  1204. </script>
  1205. </button>
  1206. </group>
  1207. </xhtml:body>
  1208. </xhtml:html>