SPPMB01200_의사진료일정조회.xfdl 71 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPPMB01200" position="absolute 0 0 901 645" titletext="의사별 상세일정 조회" onload="SPPMB01200_onload" style="color:#444444ff;">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 611 900 638" id="group1" scrollbars="autoboth" taborder="1" anchor="left right bottom">
  8. <Layouts>
  9. <Layout>
  10. <Button position="absolute 785 5 841 27" id="btn_confirm" class="btn4" text="확인" onclick="group1_btn_confirm_onclick" anchor="right" visible="false"/>
  11. <Button position="absolute 844 5 900 27" id="btn_cancel" class="btn4" text="취소" onclick="group1_btn_cancel_onclick" anchor="right" visible="false"/>
  12. </Layout>
  13. </Layouts>
  14. </Div>
  15. <Static text="초진&#13;&#10;특이사항" position="absolute 0 565 67 610" align="align:center middle;" id="caption11" class="cell_1" anchor="right bottom"/>
  16. <TextArea position="absolute 65 565 450 610" id="input2" class="input_default" taborder="2" wordwrap="char" scrollbars="fixedvert" anchor="right bottom"/>
  17. <Static text="재진&#13;&#10;특이사항" position="absolute 450 565 517 610" align="align:center middle;" id="caption7" class="cell_1" anchor="right bottom"/>
  18. <TextArea position="absolute 515 565 900 610" id="textarea1" class="input_default" taborder="3" wordwrap="char" scrollbars="fixedvert" anchor="right bottom"/>
  19. <Static id="caption6" text="의사별 상세일정 조회" class="tit_1" position="absolute 0 0 180 25"/>
  20. <Div id="group2" taborder="4" position="absolute 0 25 900 65" class="div_SA" anchor="left top right">
  21. <Layouts>
  22. <Layout width="900" height="35">
  23. <Static id="caption2" text="진료일자 :" class="search_name" position="absolute 10 11 96 28" anchor="default"/>
  24. <Button id="btn_search" taborder="1" text="조회" class="btn1" position="absolute 823 9 879 31" anchor="top right" onclick="group2_btn_search_onclick"/>
  25. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 807 9 813 31" anchor="top right"/>
  26. <Calendar id="ipt_orddd" taborder="2" class="input_search" position="absolute 99 10 199 29" anchor="default" dateformat="yyyy-MM-dd" value="null" autoselect="true" autoskip="true" style="align:center middle;"/>
  27. <Static id="caption3" text="진료부서 :" class="search_name" position="absolute 224 11 310 28" anchor="default"/>
  28. <Combo id="cmb_orddept" taborder="3" innerdataset="ds_init_orddeptcdlist" codecolumn="cd" datacolumn="nm" class="combo_search" position="absolute 316 10 441 29" anchor="default" onitemchanged="group2_cmb_orddept_onitemchanged"/>
  29. <Combo id="cmb_orddr" taborder="4" innerdataset="ds_init_orddridlist" codecolumn="cd" datacolumn="nm" class="combo_search" position="absolute 670 10 770 29" anchor="default" onitemchanged="group2_cmb_orddr_onitemchanged"/>
  30. <Static id="caption4" text="진료의사 :" class="search_name" position="absolute 580 12 666 29" anchor="default"/>
  31. <Combo id="cmb_subdeptcd" taborder="5" innerdataset="ds_init_subdeptcdlist" codecolumn="cd" datacolumn="nm" class="combo_search" position="absolute 444 10 553 29" anchor="default" onitemchanged="group2_cmb_subdeptcd_onitemchanged"/>
  32. </Layout>
  33. </Layouts>
  34. </Div>
  35. <Div id="calGroup" taborder="5" position="absolute 0 76 380 116" class="div_SA2">
  36. <Layouts>
  37. <Layout width="38" height="37">
  38. <Static id="caption2" text="월" class="calendar_output" visible="false" position="absolute 336 10 356 29" style="color:#808080ff;" anchor="default"/>
  39. <Static id="caption1" text="년" class="calendar_output" position="absolute 204 11 224 30" style="color:black;font:Dotum,9,bold;" anchor="default"/>
  40. <Edit id="opt_month" taborder="10" readonly="true" visible="false" position="absolute 306 10 336 29" anchor="default"/>
  41. <Edit id="opt_year" taborder="11" readonly="true" position="absolute 156 11 206 30" anchor="default" style="background:stretch 5,5;align:center middle;font:Dotum,9,bold;"/>
  42. <Button id="button34" taborder="12" class="icon_next_month" visible="false" position="absolute 250 12 266 28" anchor="default"/>
  43. <Button id="btn_premonth" taborder="13" class="icon_pre_month" visible="false" position="absolute 113 12 129 28" anchor="default"/>
  44. <Button id="button32" taborder="14" class="icon_next_year" position="absolute 227 12 243 28" anchor="default" onclick="calGroup_button32_onclick"/>
  45. <Button id="button31" taborder="15" class="icon_pre_year" position="absolute 136 12 152 28" anchor="default" onclick="calGroup_button31_onclick"/>
  46. </Layout>
  47. </Layouts>
  48. </Div>
  49. <Shape id="line1" class="line_1" position="absolute 400 91 900 97" style="strokepen:3 solid #33bbbbff;" anchor="left top right"/>
  50. <Static id="caption5" text="외래등록내역" class="tit_2" position="absolute 400 75 521 91"/>
  51. <Static id="caption8" text="건" position="absolute 885 71 900 91" anchor="top right"/>
  52. <Edit id="output2" taborder="6" readonly="true" position="absolute 833 71 883 90" style="background:transparent stretch 5,5;border:0 none #808080ff ;" anchor="top right"/>
  53. <Static id="caption1" text="당일등록 :" position="absolute 770 71 830 91" anchor="top right"/>
  54. <Grid id="grd_outrgst" taborder="7" binddataset="main_outrgstlist" useinputpanel="false" cellsizingtype="both" autofittype="col" oncelldblclick="group3_grd_outrgst_oncelldblclick" position="absolute 400 96 900 561" scrollbars="fixedvert" anchor="all">
  55. <Formats>
  56. <Format id="default">
  57. <Columns>
  58. <Column size="25"/>
  59. <Column size="60"/>
  60. <Column size="100"/>
  61. <Column size="120"/>
  62. <Column size="99"/>
  63. <Column size="0"/>
  64. <Column size="0"/>
  65. <Column size="80"/>
  66. </Columns>
  67. <Rows>
  68. <Row size="24" band="head"/>
  69. <Row size="24"/>
  70. </Rows>
  71. <Band id="head">
  72. <Cell/>
  73. <Cell col="1" text="시간"/>
  74. <Cell col="2" text="등록번호"/>
  75. <Cell col="3" text="환자명"/>
  76. <Cell col="4" text="예약구분"/>
  77. <Cell col="5" text="최초접수시간"/>
  78. <Cell col="6" text="초재진구분"/>
  79. <Cell col="7" text="진료구분"/>
  80. </Band>
  81. <Band id="body">
  82. <Cell celltype="head" expr="expr:currow + 1"/>
  83. <Cell col="1" displaytype="date" style="background:BIND(bgcolor);background2:BIND(bgcolor);" text="bind:ordtm" mask="HH:mm"/>
  84. <Cell col="2" style="align:left middle;background:BIND(bgcolor);background2:BIND(bgcolor);" text="bind:pid"/>
  85. <Cell col="3" style="align:left middle;background:BIND(bgcolor);background2:BIND(bgcolor);" text="bind:hngnm"/>
  86. <Cell col="4" displaytype="combo" edittype="none" style="padding:0 0 0 2;background:BIND(bgcolor);background2:BIND(bgcolor);" text="bind:rsrvflag" combodataset="init_P0341list" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  87. <Cell col="5" displaytype="date" text="bind:fstacptdt" mask="yyyy-MM-dd hh:mm:ss"/>
  88. <Cell col="6" displaytype="combo" edittype="combo" text="bind:fsexamflag"/>
  89. <Cell col="7" displaytype="combo" style="background:BIND(bgcolor);background2:BIND(bgcolor);" text="bind:etcordflag" combodataset="init_P0022list" combocodecol="cdid" combodatacol="cdnm"/>
  90. </Band>
  91. </Format>
  92. </Formats>
  93. </Grid>
  94. <Shape id="roundrect1" type="roundrectangle" class="roundrect_example" position="absolute 560 614 760 639" anchor="right" visible="false"/>
  95. <Static id="caption00" position="absolute 565 618 579 634" anchor="right" style="background:#b9e5fbff;" visible="false"/>
  96. <Static id="caption18" text="초진" position="absolute 583 618 609 637" anchor="right" visible="false"/>
  97. <Static id="caption02" position="absolute 613 618 627 634" anchor="right" style="background:#969696ff;" visible="false"/>
  98. <Static id="caption03" text="사망" position="absolute 631 618 657 637" anchor="right" visible="false"/>
  99. <Static id="caption04" position="absolute 661 618 675 634" anchor="right" style="background:#fd97b7ff;" visible="false"/>
  100. <Static id="caption09" text="협력" position="absolute 679 618 705 637" anchor="right" visible="false"/>
  101. <Static id="caption10" position="absolute 709 618 723 634" anchor="right" style="background:#9fc93cff;" visible="false"/>
  102. <Static id="caption12" text="심층" position="absolute 727 618 753 637" anchor="right" visible="false"/>
  103. <Static id="caption16" text="당일마감" position="absolute 220 525 275 545" style="background:#999999ff;align:center middle;"/>
  104. <Static id="caption13" text="임시오후" position="absolute 164 525 219 545" style="background:#ffccffff;align:center middle;"/>
  105. <Static id="caption14" text="임시오전" position="absolute 108 525 163 545" style="background:#c9c299ff;align:center middle;"/>
  106. <Static id="caption15" text="전일" position="absolute 72 525 107 545" style="background:#ffcc99ff;align:center middle;"/>
  107. <Static id="caption4" text="오후" position="absolute 36 525 71 545" style="background:#ccffffff;align:center middle;"/>
  108. <Static id="caption3" text="오전" position="absolute 0 525 35 545" style="background:#ffff99ff;align:center middle;"/>
  109. <Grid id="grd_calendar" taborder="9" binddataset="hidden_calendar_weeklist" scrollbars="none" selecttype="cell" autofittype="col" oncellclick="calGroup_grd_calendar_oncellclick" position="absolute 0 157 387 520" tooltiptype="hover" style="background:#ffffffff;font:Dotum,9;">
  110. <Formats>
  111. <Format id="default">
  112. <Columns>
  113. <Column size="55"/>
  114. <Column size="55"/>
  115. <Column size="55"/>
  116. <Column size="55"/>
  117. <Column size="55"/>
  118. <Column size="55"/>
  119. <Column size="55"/>
  120. </Columns>
  121. <Rows>
  122. <Row size="24" band="head"/>
  123. <Row size="22"/>
  124. <Row size="46"/>
  125. </Rows>
  126. <Band id="head">
  127. <Cell style="color:red;font:Dotum,9,bold;barcolor:black;" text="일"/>
  128. <Cell col="1" style="font:Dotum,9,bold;barcolor:black;" text="월"/>
  129. <Cell col="2" style="font:Dotum,9,bold;barcolor:black;" text="화"/>
  130. <Cell col="3" style="font:Dotum,9,bold;barcolor:black;" text="수"/>
  131. <Cell col="4" style="font:Dotum,9,bold;barcolor:black;" text="목"/>
  132. <Cell col="5" style="font:Dotum,9,bold;barcolor:black;" text="금"/>
  133. <Cell col="6" style="color:blue;font:Dotum,9,bold;barcolor:black;" text="토"/>
  134. </Band>
  135. <Band id="body">
  136. <Cell style="background:BIND(sun_bg);background2:BIND(sun_bg);color:#ff0000ff;color2:#ff0000ff;font:BIND(sun_fontstyle);selectbackground:BIND(sun_bg);selectcolor:#ff0000ff;selectfont:BIND(sun_fontstyle);" text="bind:sun" wordwrap="both" tooltiptype="bottom,right" tooltiptext="bind:sun_tooltip"/>
  137. <Cell col="1" style="background:BIND(mon_bg);background2:BIND(mon_bg);color:BIND(mon_fontcolor);color2:BIND(mon_fontcolor);font:BIND(mon_fontstyle);selectbackground:BIND(mon_bg);selectcolor:BIND(mon_fontcolor);selectfont:BIND(mon_fontstyle);controlfont:BIND(mon_fontstyle);" text="bind:mon" wordwrap="both" tooltiptype="bottom,right" tooltiptext="bind:mon_tooltip"/>
  138. <Cell col="2" style="background:BIND(tue_bg);background2:BIND(tue_bg);color:BIND(tue_fontcolor);color2:BIND(tue_fontcolor);font:BIND(tue_fontstyle);selectbackground:BIND(tue_bg);selectcolor:BIND(tue_fontcolor);selectfont:BIND(tue_fontstyle);controlfont:BIND(tue_fontstyle);" text="bind:tue" wordwrap="both" tooltiptype="bottom,right" tooltiptext="bind:tue_tooltip"/>
  139. <Cell col="3" style="background:BIND(wed_bg);background2:BIND(wed_bg);color:BIND(wed_fontcolor);color2:BIND(wed_fontcolor);font:BIND(wed_fontstyle);selectbackground:BIND(wed_bg);selectcolor:BIND(wed_fontcolor);selectfont:BIND(wed_fontstyle);controlfont:BIND(wed_fontstyle);" text="bind:wed" wordwrap="both" tooltiptype="bottom,right" tooltiptext="bind:wed_tooltip"/>
  140. <Cell col="4" style="background:BIND(thu_bg);background2:BIND(thu_bg);color:BIND(thu_fontcolor);color2:BIND(thu_fontcolor);font:BIND(thu_fontstyle);selectbackground:BIND(thu_bg);selectcolor:BIND(thu_fontcolor);selectfont:BIND(thu_fontstyle);controlfont:BIND(thu_fontstyle);" text="bind:thu" wordwrap="both" tooltiptype="bottom,right" tooltiptext="bind:thu_tooltip"/>
  141. <Cell col="5" style="background:BIND(fri_bg);background2:BIND(fri_bg);color:BIND(fri_fontcolor);color2:BIND(fri_fontcolor);font:BIND(fri_fontstyle);selectbackground:BIND(fri_bg);selectcolor:BIND(fri_fontcolor);selectfont:BIND(fri_fontstyle);controlfont:BIND(fri_fontstyle);" text="bind:fri" wordwrap="both" tooltiptype="bottom,right" tooltiptext="bind:fri_tooltip"/>
  142. <Cell col="6" style="background:BIND(sat_bg);background2:BIND(sat_bg);color:BIND(sat_fontcolor);color2:BIND(sat_fontcolor);font:BIND(sat_fontstyle);selectbackground:BIND(sat_bg);selectcolor:BIND(sat_fontcolor);selectfont:BIND(sat_fontstyle);controlfont:BIND(sat_fontstyle);" text="bind:sat" wordwrap="both" tooltiptype="bottom,right" tooltiptext="bind:sat_tooltip"/>
  143. <Cell row="1" style="align:center top;padding:2 0 0 0;background:BIND(sun_bg);background2:BIND(sun_bg);color:BIND(sun_fontcolor);color2:BIND(sun_fontcolor);font:BIND(sun_memo_fontstyle);selectbackground:BIND(sun_bg);" text="bind:sun_memo" wordwrap="char" tooltiptype="bottom,right" tooltiptext="bind:sun_memo_tooltip"/>
  144. <Cell row="1" col="1" style="align:center top;padding:6 0 0 0;background:BIND(mon_bg);background2:BIND(mon_bg);color:BIND(mon_fontcolor);color2:BIND(mon_fontcolor);font:BIND(mon_memo_fontstyle);selectbackground:BIND(mon_bg);selectcolor:BIND(mon_fontcolor);selectfont:BIND(mon_memo_fontstyle);controlfont:BIND(mon_memo_fontstyle);" text="bind:mon_memo" wordwrap="char" tooltiptype="bottom,right" tooltiptext="bind:mon_memo_tooltip"/>
  145. <Cell row="1" col="2" style="align:center top;padding:2 0 0 0;background:BIND(tue_bg);background2:BIND(tue_bg);color:BIND(tue_fontcolor);color2:BIND(tue_fontcolor);font:BIND(tue_memo_fontstyle);selectbackground:BIND(tue_bg);selectcolor:BIND(tue_fontcolor);selectfont:BIND(tue_memo_fontstyle);controlfont:BIND(tue_memo_fontstyle);" text="bind:tue_memo" wordwrap="char" tooltiptype="bottom,right" tooltiptext="bind:tue_memo_tooltip"/>
  146. <Cell row="1" col="3" style="align:center top;padding:2 0 0 0;background:BIND(wed_bg);background2:BIND(wed_bg);color:BIND(wed_fontcolor);color2:BIND(wed_fontcolor);font:BIND(wed_memo_fontstyle);selectbackground:BIND(wed_bg);selectcolor:BIND(wed_fontcolor);selectfont:BIND(wed_memo_fontstyle);controlfont:BIND(wed_memo_fontstyle);" text="bind:wed_memo" wordwrap="char" tooltiptype="bottom,right" tooltiptext="bind:wed_memo_tooltip"/>
  147. <Cell row="1" col="4" style="align:center top;padding:2 0 0 0;background:BIND(thu_bg);background2:BIND(thu_bg);color:BIND(thu_fontcolor);color2:BIND(thu_fontcolor);font:BIND(thu_memo_fontstyle);selectbackground:BIND(thu_bg);selectcolor:BIND(thu_fontcolor);selectfont:BIND(thu_memo_fontstyle);controlfont:BIND(thu_memo_fontstyle);" text="bind:thu_memo" wordwrap="char" tooltiptype="bottom,right" tooltiptext="bind:thu_memo_tooltip"/>
  148. <Cell row="1" col="5" style="align:center top;padding:2 0 0 0;background:BIND(fri_bg);background2:BIND(fri_bg);color:BIND(fri_fontcolor);color2:BIND(fri_fontcolor);font:BIND(fri_memo_fontstyle);selectbackground:BIND(fri_bg);selectcolor:BIND(fri_fontcolor);selectfont:BIND(fri_memo_fontstyle);controlfont:BIND(fri_memo_fontstyle);" text="bind:fri_memo" wordwrap="char" tooltiptype="bottom,right" tooltiptext="bind:fri_memo_tooltip"/>
  149. <Cell row="1" col="6" style="align:center top;padding:2 0 0 0;background:BIND(sat_bg);background2:BIND(sat_bg);color:BIND(sat_fontcolor);color2:BIND(sat_fontcolor);font:BIND(sat_memo_fontstyle);selectbackground:BIND(sat_bg);selectcolor:BIND(sat_fontcolor);selectfont:BIND(sat_memo_fontstyle);controlfont:BIND(sat_memo_fontstyle);" text="bind:sat_memo" wordwrap="char" tooltiptype="bottom,right" tooltiptext="bind:sat_memo_tooltip"/>
  150. </Band>
  151. </Format>
  152. </Formats>
  153. </Grid>
  154. <Button id="btn_jan" taborder="10" text="1" onclick="calGroup_group1_btn_jan_onclick" position="absolute 12 123 39 150"/>
  155. <Button id="btn_feb" taborder="11" text="2" onclick="calGroup_group1_btn_feb_onclick" position="absolute 42 123 69 150"/>
  156. <Button id="btn_mar" taborder="12" text="3" onclick="calGroup_group1_btn_mar_onclick" class="icon_month" position="absolute 72 123 99 150"/>
  157. <Button id="btn_apr" taborder="13" text="4" onclick="calGroup_group1_btn_apr_onclick" class="icon_month" position="absolute 102 123 129 150"/>
  158. <Button id="btn_may" taborder="14" text="5" onclick="calGroup_group1_btn_may_onclick" class="icon_month" position="absolute 132 123 159 150"/>
  159. <Button id="btn_jun" taborder="15" text="6" onclick="calGroup_group1_btn_jun_onclick" class="icon_month" position="absolute 162 123 189 150"/>
  160. <Button id="btn_jul" taborder="16" text="7" onclick="calGroup_group1_btn_jul_onclick" class="icon_month" position="absolute 192 123 219 150"/>
  161. <Button id="btn_aug" taborder="17" text="8" onclick="calGroup_group1_btn_aug_onclick" class="icon_month" position="absolute 222 123 249 150"/>
  162. <Button id="btn_sep" taborder="18" text="9" onclick="calGroup_group1_btn_sep_onclick" class="icon_month" position="absolute 252 123 279 150"/>
  163. <Button id="btn_oct" taborder="19" text="10" onclick="calGroup_group1_btn_oct_onclick" class="icon_month" position="absolute 282 123 309 150"/>
  164. <Button id="btn_nov" taborder="20" text="11" onclick="calGroup_group1_btn_nov_onclick" class="icon_month" position="absolute 312 123 339 150"/>
  165. <Button id="btn_dec" taborder="21" text="12" onclick="calGroup_group1_btn_dec_onclick" class="icon_month" position="absolute 342 123 369 150"/>
  166. </Layout>
  167. </Layouts>
  168. <Objects>
  169. <Dataset id="main_outrgstlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  170. <ColumnInfo>
  171. <Column id="orddd" type="STRING" size="256" sumtext="진료일자"/>
  172. <Column id="ordtm" type="STRING" size="256" sumtext="진료시간"/>
  173. <Column id="examcap" type="INT" size="256" sumtext="등록정원"/>
  174. <Column id="pid" type="STRING" size="256" sumtext="환자번호"/>
  175. <Column id="cretno" type="INT" size="256" sumtext="등록번호"/>
  176. <Column id="hngnm" type="STRING" size="256" sumtext="환자이름"/>
  177. <Column id="fsexamflag" type="STRING" size="256" sumtext="초재진구분"/>
  178. <Column id="rsrvflag" type="STRING" size="256" sumtext="예약구분"/>
  179. <Column id="fstacptdt" type="STRING" size="256" sumtext="최초접수시간"/>
  180. <Column id="telrsrvrem" type="STRING" size="256" sumtext="최초접수시간"/>
  181. <Column id="rcptyn" type="STRING" size="256" sumtext="수납여부"/>
  182. <Column id="rrgstno1" type="STRING" size="256" sumtext="주민번호1"/>
  183. <Column id="rrgstno2" type="STRING" size="256" sumtext="주민번호2"/>
  184. <Column id="reglscheflag" type="STRING" size="256" sumtext="일정생성구분"/>
  185. <Column id="bgcolor" type="STRING" size="256"/>
  186. <Column id="etcordflag" type="STRING" size="256"/>
  187. <Column id="etcrsrvflag" type="STRING" size="256"/>
  188. </ColumnInfo>
  189. </Dataset>
  190. <Dataset id="init_P0033list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  191. <ColumnInfo>
  192. <Column id="cdnm" type="STRING"/>
  193. <Column id="cdid" type="STRING"/>
  194. </ColumnInfo>
  195. </Dataset>
  196. <Dataset id="init_P0037list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  197. <ColumnInfo>
  198. <Column id="cdnm" type="STRING"/>
  199. <Column id="cdid" type="STRING"/>
  200. </ColumnInfo>
  201. </Dataset>
  202. <Dataset id="init_P0021list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  203. <ColumnInfo>
  204. <Column id="cdnm" type="STRING"/>
  205. <Column id="cdid" type="STRING"/>
  206. </ColumnInfo>
  207. </Dataset>
  208. <Dataset id="init_P0341list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  209. <ColumnInfo>
  210. <Column id="cdnm" type="STRING"/>
  211. <Column id="cdid" type="STRING"/>
  212. </ColumnInfo>
  213. </Dataset>
  214. <Dataset id="ds_main" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" cancolumnchange="ds_main_cancolumnchange">
  215. <ColumnInfo>
  216. <Column id="orddrid" type="STRING" size="256"/>
  217. <Column id="orddeptcd" type="STRING" size="256"/>
  218. <Column id="subdeptcd" type="STRING" size="256"/>
  219. <Column id="orddd" type="STRING" size="256"/>
  220. <Column id="todayrqstcnt" type="STRING" size="256"/>
  221. </ColumnInfo>
  222. </Dataset>
  223. <Dataset id="temp_tempnode" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  224. <ColumnInfo>
  225. <Column id="orddd" type="STRING" size="256"/>
  226. <Column id="orddrid" type="STRING" size="256"/>
  227. <Column id="orddeptcd" type="STRING" size="256"/>
  228. <Column id="subdeptcd" type="STRING" size="256"/>
  229. </ColumnInfo>
  230. <Rows>
  231. <Row/>
  232. </Rows>
  233. </Dataset>
  234. <Dataset id="hidden_calendar" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  235. <ColumnInfo>
  236. <Column id="year" type="STRING" size="256"/>
  237. <Column id="month" type="STRING" size="256"/>
  238. </ColumnInfo>
  239. <Rows>
  240. <Row/>
  241. </Rows>
  242. </Dataset>
  243. <Dataset id="main_result_calendarinfolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  244. <ColumnInfo>
  245. <Column id="basedd" type="STRING" size="256" sumtext="날짜"/>
  246. <Column id="holinm" type="STRING" size="256" sumtext="휴일명칭"/>
  247. <Column id="holiflag" type="STRING" size="256" sumtext="휴일구분"/>
  248. <Column id="dutflag" type="STRING" size="256" sumtext="근무구분"/>
  249. <Column id="ordendresn" type="STRING" size="256" sumtext="마감사유"/>
  250. <Column id="ordendresnmin" type="STRING" size="256" sumtext="마감사유"/>
  251. <Column id="holiampmflag" type="STRING" size="256" sumtext="휴진오전오후구분"/>
  252. <Column id="ampmflag" type="INT" size="256" sumtext="오전오후구분"/>
  253. <Column id="reglscheflag" type="STRING" size="256" sumtext="정규규일정구분"/>
  254. <Column id="fstexamcnt" type="INT" size="256" sumtext="초진예약가능정원"/>
  255. <Column id="reexamcnt" type="INT" size="256" sumtext="재진예약가능정원"/>
  256. <Column id="totalexamcnt" type="INT" size="256" sumtext="총예약가능정원"/>
  257. <Column id="fstexamcap" type="INT" size="256" sumtext="초진정원"/>
  258. <Column id="reexamcap" type="INT" size="256" sumtext="재진정원"/>
  259. <Column id="totalexamcap" type="INT" size="256" sumtext="총정원"/>
  260. <Column id="totalrsrvcnt" type="INT" size="256" sumtext="총예약인원"/>
  261. <Column id="telrsrvcnt" type="INT" size="256" sumtext="전화예약인원"/>
  262. <Column id="fstrsrvcnt" type="INT" size="256" sumtext="전화예약인원"/>
  263. </ColumnInfo>
  264. </Dataset>
  265. <Dataset id="hidden_calendarinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  266. <ColumnInfo>
  267. <Column id="basedd" type="STRING" size="256" sumtext="날짜"/>
  268. <Column id="holinm" type="STRING" size="256" sumtext="휴일명칭"/>
  269. <Column id="holiflag" type="STRING" size="256" sumtext="휴일구분"/>
  270. <Column id="dutflag" type="STRING" size="256" sumtext="근무구분"/>
  271. <Column id="ordendresn" type="STRING" size="256" sumtext="마감사유"/>
  272. <Column id="ordendresnmin" type="STRING" size="256" sumtext="마감사유"/>
  273. <Column id="holiampmflag" type="STRING" size="256" sumtext="휴진오전오후구분"/>
  274. <Column id="ampmflag" type="INT" size="256" sumtext="오전오후구분"/>
  275. <Column id="reglscheflag" type="STRING" size="256" sumtext="정규규일정구분"/>
  276. <Column id="fstexamcnt" type="INT" size="256" sumtext="초진예약가능정원"/>
  277. <Column id="reexamcnt" type="INT" size="256" sumtext="재진예약가능정원"/>
  278. <Column id="totalexamcnt" type="INT" size="256" sumtext="총예약가능정원"/>
  279. <Column id="fstexamcap" type="INT" size="256" sumtext="초진정원"/>
  280. <Column id="reexamcap" type="INT" size="256" sumtext="재진정원"/>
  281. <Column id="totalexamcap" type="INT" size="256" sumtext="총정원"/>
  282. <Column id="totalrsrvcnt" type="INT" size="256" sumtext="총예약인원"/>
  283. <Column id="telrsrvcnt" type="INT" size="256" sumtext="전화예약인원"/>
  284. <Column id="fstrsrvcnt" type="INT" size="256" sumtext="전화예약인원"/>
  285. </ColumnInfo>
  286. </Dataset>
  287. <Dataset id="ds_init_orddeptcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  288. <Dataset id="ds_init_subdeptcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  289. <Dataset id="ds_init_orddridlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  290. <Dataset id="main_result_orddrfild" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  291. <ColumnInfo>
  292. <Column id="ordfild" type="STRING" size="256" sumtext="진료내용"/>
  293. <Column id="fstexamrem" type="STRING" size="256" sumtext="초진특이사항"/>
  294. <Column id="reexamrem" type="STRING" size="256" sumtext="재진특이사항"/>
  295. </ColumnInfo>
  296. <Rows>
  297. <Row/>
  298. </Rows>
  299. </Dataset>
  300. <Dataset id="hidden_calendar_weeklist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  301. <ColumnInfo>
  302. <Column id="sun" type="STRING" size="256"/>
  303. <Column id="mon" type="STRING" size="256"/>
  304. <Column id="tue" type="STRING" size="256"/>
  305. <Column id="wed" type="STRING" size="256"/>
  306. <Column id="thu" type="STRING" size="256"/>
  307. <Column id="fri" type="STRING" size="256"/>
  308. <Column id="sat" type="STRING" size="256"/>
  309. <Column id="sun_memo" type="STRING" size="256"/>
  310. <Column id="mon_memo" type="STRING" size="256"/>
  311. <Column id="tue_memo" type="STRING" size="256"/>
  312. <Column id="wed_memo" type="STRING" size="256"/>
  313. <Column id="thu_memo" type="STRING" size="256"/>
  314. <Column id="fri_memo" type="STRING" size="256"/>
  315. <Column id="sat_memo" type="STRING" size="256"/>
  316. <Column id="sun_bg" type="STRING" size="256"/>
  317. <Column id="mon_bg" type="STRING" size="256"/>
  318. <Column id="tue_bg" type="STRING" size="256"/>
  319. <Column id="wed_bg" type="STRING" size="256"/>
  320. <Column id="thu_bg" type="STRING" size="256"/>
  321. <Column id="fri_bg" type="STRING" size="256"/>
  322. <Column id="sat_bg" type="STRING" size="256"/>
  323. <Column id="sun_fontcolor" type="STRING" size="256"/>
  324. <Column id="mon_fontcolor" type="STRING" size="256"/>
  325. <Column id="tue_fontcolor" type="STRING" size="256"/>
  326. <Column id="wed_fontcolor" type="STRING" size="256"/>
  327. <Column id="thu_fontcolor" type="STRING" size="256"/>
  328. <Column id="fri_fontcolor" type="STRING" size="256"/>
  329. <Column id="sat_fontcolor" type="STRING" size="256"/>
  330. <Column id="sun_fontstyle" type="STRING" size="256"/>
  331. <Column id="mon_fontstyle" type="STRING" size="256"/>
  332. <Column id="tue_fontstyle" type="STRING" size="256"/>
  333. <Column id="wed_fontstyle" type="STRING" size="256"/>
  334. <Column id="thu_fontstyle" type="STRING" size="256"/>
  335. <Column id="fri_fontstyle" type="STRING" size="256"/>
  336. <Column id="sat_fontstyle" type="STRING" size="256"/>
  337. <Column id="sun_memo_fontstyle" type="STRING" size="256"/>
  338. <Column id="mon_memo_fontstyle" type="STRING" size="256"/>
  339. <Column id="tue_memo_fontstyle" type="STRING" size="256"/>
  340. <Column id="wed_memo_fontstyle" type="STRING" size="256"/>
  341. <Column id="thu_memo_fontstyle" type="STRING" size="256"/>
  342. <Column id="fri_memo_fontstyle" type="STRING" size="256"/>
  343. <Column id="sat_memo_fontstyle" type="STRING" size="256"/>
  344. <Column id="sun_tooltip" type="STRING" size="256"/>
  345. <Column id="mon_tooltip" type="STRING" size="256"/>
  346. <Column id="tue_tooltip" type="STRING" size="256"/>
  347. <Column id="wed_tooltip" type="STRING" size="256"/>
  348. <Column id="thu_tooltip" type="STRING" size="256"/>
  349. <Column id="fri_tooltip" type="STRING" size="256"/>
  350. <Column id="sat_tooltip" type="STRING" size="256"/>
  351. <Column id="sun_memo_tooltip" type="STRING" size="256"/>
  352. <Column id="mon_memo_tooltip" type="STRING" size="256"/>
  353. <Column id="tue_memo_tooltip" type="STRING" size="256"/>
  354. <Column id="wed_memo_tooltip" type="STRING" size="256"/>
  355. <Column id="thu_memo_tooltip" type="STRING" size="256"/>
  356. <Column id="fri_memo_tooltip" type="STRING" size="256"/>
  357. <Column id="sat_memo_tooltip" type="STRING" size="256"/>
  358. </ColumnInfo>
  359. </Dataset>
  360. <Dataset id="ds_hidden_calendarinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  361. <ColumnInfo>
  362. <Column id="basedd" type="STRING" size="256" sumtext="날짜"/>
  363. <Column id="holinm" type="STRING" size="256" sumtext="휴일명칭"/>
  364. <Column id="holiflag" type="STRING" size="256" sumtext="휴일구분"/>
  365. <Column id="dutflag" type="STRING" size="256" sumtext="근무구분"/>
  366. </ColumnInfo>
  367. </Dataset>
  368. <Dataset id="init_P0022list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  369. <ColumnInfo>
  370. <Column id="cdnm" type="STRING" size="256"/>
  371. <Column id="cdid" type="STRING" size="256"/>
  372. </ColumnInfo>
  373. </Dataset>
  374. </Objects>
  375. <Bind>
  376. <BindItem id="item0" compid="group2.ipt_orddd" propid="value" datasetid="ds_main" columnid="orddd"/>
  377. <BindItem id="item1" compid="group2.cmb_orddept" propid="value" datasetid="ds_main" columnid="orddeptcd"/>
  378. <BindItem id="item2" compid="group2.cmb_subdeptcd" propid="value" datasetid="ds_main" columnid="subdeptcd"/>
  379. <BindItem id="item3" compid="group2.cmb_orddr" propid="value" datasetid="ds_main" columnid="orddrid"/>
  380. <BindItem id="item5" compid="input2" propid="value" datasetid="main_result_orddrfild" columnid="fstexamrem"/>
  381. <BindItem id="item6" compid="textarea1" propid="value" datasetid="main_result_orddrfild" columnid="reexamrem"/>
  382. <BindItem id="item4" compid="output2" propid="value" datasetid="ds_main" columnid="todayrqstcnt"/>
  383. <BindItem id="item7" compid="calGroup.opt_year" propid="value" datasetid="hidden_calendar" columnid="year"/>
  384. <BindItem id="item8" compid="calGroup.opt_month" propid="value" datasetid="hidden_calendar" columnid="month"/>
  385. </Bind>
  386. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  387. * System Name :
  388. * Job Name :
  389. * Creator :
  390. * Make Date : 2015-10-27
  391. * Description :
  392. *---------------------------------------------------------------------------------------
  393. * Modify Date Modifier Modify Description
  394. *---------------------------------------------------------------------------------------
  395. * 2015-10-27 Live Converter TF->XP
  396. *
  397. *---------------------------------------------------------------------------------------
  398. ****************************************************************************************/
  399. //=======================================================================================
  400. // Lib Include
  401. //---------------------------------------------------------------------------------------
  402. include 'com_commonxp::comm_main.xjs';
  403. include 'pam_pamcomnxp::PAM.xjs';
  404. //=======================================================================================
  405. // Local Instances
  406. //---------------------------------------------------------------------------------------
  407. var isDate;
  408. var beforeId = '';
  409. //var tmpObj = '';
  410. //=======================================================================================
  411. // Local Methods
  412. //---------------------------------------------------------------------------------------
  413. function fInitialize(){
  414. var today = utlf_getCurrentDate();
  415. ds_main.setColumn(0, 'orddd', today);
  416. setCalendar(today);
  417. }
  418. /****************************************************************************************
  419. * Argument : N/A
  420. * Description :
  421. ****************************************************************************************/
  422. function fSearchOrdSche(){
  423. var orddd = ds_main.getColumn(0, 'orddd');
  424. var orddrid = ds_main.getColumn(0, 'orddrid');
  425. var orddeptcd = ds_main.getColumn(0, 'orddeptcd');
  426. var subdeptcd = ds_main.getColumn(0, 'subdeptcd');
  427. var ds_req = dsf_createDsRow('ds_req', [
  428. { col: 'cretcd', type: 'string', size: 256, val: '' },
  429. { col: 'orddrid', type: 'string', size: 256, val: orddrid },
  430. { col: 'orddeptcd', type: 'string', size: 256, val: orddeptcd },
  431. { col: 'subdeptcd', type: 'string', size: 256, val: subdeptcd },
  432. { col: 'orddd', type: 'string', size: 256, val: orddd }
  433. ], false);
  434. main_outrgstlist.clearData();
  435. main_outrgstlist.addRow();
  436. var oParam = {};
  437. oParam.id = "TRPMO00204";
  438. oParam.service = "opatmngtapp.OutRgst";
  439. oParam.method = "reqGetOutRgstSpec";
  440. oParam.inds = "req=ds_req";
  441. oParam.outds = "main_outrgstlist=outrgstlist";
  442. oParam.async = false;
  443. oParam.callback = "cf_TRPMO00204";
  444. tranf_submit(oParam);
  445. }
  446. function cf_TRPMO00204(sSvcId, nErrorCode, sErrorMsg){
  447. if(nErrorCode < 0){
  448. return;
  449. }
  450. //if(!utlf_isNull(main_outrgstlist.getColumnInfo('examcap')) && !utlf_isNull(main_outrgstlist.getColumnInfo('examcap'))){
  451. if(main_outrgstlist.rowcount > 0){
  452. dsf_setTypeFormat(main_outrgstlist, "examcap:INT^cretno:INT");
  453. main_outrgstlist.addColumn('bgcolor', 'string');
  454. for(var i = 0; i < main_outrgstlist.rowcount; i++){
  455. if(main_outrgstlist.getColumn(i, 'fsexamflag') == 'F'
  456. || main_outrgstlist.getColumn(i, 'fsexamflag') == 'D'
  457. || main_outrgstlist.getColumn(i, 'fsexamflag') == '4'){
  458. main_outrgstlist.setColumn(i, 'bgcolor', '#B9E5FB');
  459. }else{
  460. main_outrgstlist.setColumn(i, 'bgcolor', '#FFFFFF');
  461. }
  462. //2017/12/12 이정택 추가
  463. if(main_outrgstlist.getColumn(i, 'etcrsrvflag') == 'A'){ // 2017/12/12 진료의뢰센터의 캐파라면 색깔을 분홍색으로 조절(이정택)
  464. main_outrgstlist.setColumn(i, 'bgcolor', '#fd97b7');
  465. }else if(main_outrgstlist.getColumn(i, 'etcrsrvflag') == 'B'){ // 2017/12/12 심층진료 관련 프로그램 수정(이정택)
  466. main_outrgstlist.setColumn(i, 'bgcolor', '#9FC93C');
  467. }
  468. //2017/12/12 이정택 추가
  469. }
  470. }
  471. }
  472. /****************************************************************************************
  473. * Argument : N/A
  474. * Description :
  475. ****************************************************************************************/
  476. function fGetCalendarData(){
  477. var ds_req = dsf_createDsRow('ds_req', [
  478. { col: 'orddrid', type: 'string', size: 256, val: ds_main.getColumn(0, 'orddrid') },
  479. { col: 'orddeptcd', type: 'string', size: 256, val: ds_main.getColumn(0, 'orddeptcd') },
  480. { col: 'subdeptcd', type: 'string', size: 256, val: ds_main.getColumn(0, 'subdeptcd') },
  481. { col: 'centcd', type: 'string', size: 256, val: ''},
  482. { col: 'date', type: 'string', size: 256, val: hidden_calendar.getColumn(0, 'year') + hidden_calendar.getColumn(0, 'month') },
  483. { col: 'reglscheyn', type: 'string', size: 256, val: ''},
  484. { col: 'rsrvflag', type: 'string', size: 256, val: '' }
  485. ], false);
  486. var temp = hidden_calendar.getColumn(0, 'year') + hidden_calendar.getColumn(0, 'month') + '01';
  487. if(!utlf_isNull(temp)){
  488. //isDate = new Date(temp.substr(0, 4) + '-' + temp.substr(4, 2) + '-' + temp.substr(6, 2));
  489. isDate = temp;
  490. }
  491. hidden_calendarinfo.clearData();
  492. hidden_calendarinfo.addRow();
  493. main_result_orddrfild.clearData();
  494. main_result_orddrfild.addRow();
  495. var oParam = {};
  496. oParam.id = "TRPMO00203";
  497. oParam.service = "opatmngtapp.OutRgst";
  498. oParam.method = "reqGetDrFildAndCalInfo";
  499. oParam.inds = "req=ds_req";
  500. oParam.outds = "hidden_calendarinfo=calendarinfolist main_result_orddrfild=orddrfildlist";
  501. oParam.async = false;
  502. oParam.callback = "cf_TRPMO00203";
  503. tranf_submit(oParam);
  504. }
  505. /****************************************************************************************
  506. * Argument : N/A
  507. * Description :
  508. ****************************************************************************************/
  509. function cf_TRPMO00203(sSvcId, nErrorCode, sErrorMsg){
  510. if(nErrorCode < 0){
  511. setCalendar(isDate);
  512. return;
  513. }
  514. // 빈 컬럼에 접근하면 에러..
  515. if(hidden_calendarinfo.rowcount > 0){
  516. dsf_setTypeFormat(hidden_calendarinfo, "ampmflag:INT^fstexamcnt:INT^reexamcnt:INT^totalexamcnt:INT^fstexamcap:INT^"
  517. + "reexamcap:INT^totalexamcap:INT^totalrsrvcnt:INT^telrsrvcnt:INT^fstrsrvcnt:INT");
  518. }
  519. if(main_result_orddrfild.rowcount == 0)
  520. {
  521. main_result_orddrfild.addRow();
  522. }
  523. setCalendar2(isDate);
  524. }
  525. /****************************************************************************************
  526. * Argument : N/A
  527. * Description :
  528. ****************************************************************************************/
  529. function setCalendar(date){
  530. // 서버로 자료 요청
  531. if(!fGetHospitalCalendar()){
  532. sysf_messageBox('병원일정 데이터를 가져올 수', 'I004');
  533. return;
  534. }
  535. dateObj = new Date(date.substr(0, 4) + '-' + date.substr(4, 2) + '-' + date.substr(6, 2));
  536. //var dateObj = new Date(isDate);
  537. dateObj.setDate(1);
  538. var startDay = dateObj.getDay();
  539. var days = dateObj.getMonthDay();
  540. var rows = Math.ceil((startDay + days) / 7);
  541. for(var i = 0; i < rows; i++){
  542. var idx = hidden_calendar_weeklist.addRow();
  543. }
  544. var rowIdx = 0;
  545. var colIdx = startDay;
  546. var dutflag = '';
  547. for(var i = 0; i < days; i++){
  548. // 일자를 입력
  549. hidden_calendar_weeklist.setColumn(rowIdx, colIdx, i + 1);
  550. var tmpVal = ds_hidden_calendarinfo.getColumn(i, 'holinm');
  551. var memo = '';
  552. if(utlf_isNull(tmpVal) || tmpVal == '-'){
  553. memo = ''
  554. }
  555. else{
  556. memo = tmpVal;
  557. }
  558. //var memo = (ds_hidden_calendarinfo.getColumn(i, 'holinm') == '-') ? '' : ds_hidden_calendarinfo.getColumn(i, 'holinm');
  559. hidden_calendar_weeklist.setColumn(rowIdx,
  560. hidden_calendar_weeklist.getColID(colIdx) + '_memo',
  561. memo);
  562. hidden_calendar_weeklist.setColumn(rowIdx,
  563. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  564. memo);
  565. //ordendresn);
  566. hidden_calendar_weeklist.setColumn(rowIdx,
  567. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  568. i + 1);
  569. // font 도 bold 를 설정한다
  570. hidden_calendar_weeklist.setColumn(rowIdx,
  571. hidden_calendar_weeklist.getColID(colIdx) + '_fontstyle', 'Dotum,9,bold');
  572. hidden_calendar_weeklist.setColumn(rowIdx,
  573. hidden_calendar_weeklist.getColID(colIdx) + '_memo_fontstyle', 'Dotum,9');
  574. if(colIdx == 6){
  575. // 토요일은 파란색으로
  576. hidden_calendar_weeklist.setColumn(rowIdx,
  577. hidden_calendar_weeklist.getColID(colIdx) + '_fontcolor', 'blue');
  578. }
  579. dutflag = ds_hidden_calendarinfo.getColumn(i, 'dutflag');
  580. if(dutflag == '8'){
  581. // 공휴일은 글자색을 빨간색으로
  582. hidden_calendar_weeklist.setColumn(rowIdx,
  583. hidden_calendar_weeklist.getColID(colIdx) + '_fontcolor', '#FF0000');
  584. }
  585. colIdx++;
  586. if(colIdx == 7){
  587. rowIdx++;
  588. colIdx = 0;
  589. }
  590. }
  591. }
  592. /****************************************************************************************
  593. * Argument : N/A
  594. * Description :
  595. ****************************************************************************************/
  596. function setCalendar2(date){
  597. // 서버로 자료 요청
  598. if(!fGetHospitalCalendar()){
  599. sysf_messageBox('병원일정 데이터를 가져올 수', 'I004');
  600. return;
  601. }
  602. hidden_calendar_weeklist.clearData();
  603. date = new String(date);
  604. dateObj = new Date(date.substr(0, 4) + '-' + date.substr(4, 2) + '-' + date.substr(6, 2));
  605. //var dateObj = new Date(isDate);
  606. dateObj.setDate(1);
  607. var startDay = dateObj.getDay();
  608. var days = dateObj.getMonthDay();
  609. var rows = Math.ceil((startDay + days) / 7);
  610. for(var i = 0; i < rows; i++){
  611. var idx = hidden_calendar_weeklist.addRow();
  612. }
  613. var rowIdx = 0;
  614. var colIdx = startDay;
  615. var dutflag = '';
  616. var ampmflag = '';
  617. var dutflag = '';
  618. var ordendresn = '';
  619. var reglscheflag = '';
  620. for(var i = 0; i < days; i++){
  621. // 일자를 입력
  622. hidden_calendar_weeklist.setColumn(rowIdx, colIdx, i + 1);
  623. // font 도 bold 를 설정한다
  624. hidden_calendar_weeklist.setColumn(rowIdx,
  625. hidden_calendar_weeklist.getColID(colIdx) + '_fontstyle', 'Dotum,9,bold');
  626. hidden_calendar_weeklist.setColumn(rowIdx,
  627. hidden_calendar_weeklist.getColID(colIdx) + '_memo_fontstyle', 'Dotum,9');
  628. if(colIdx == 6){
  629. // 토요일은 파란색으로
  630. hidden_calendar_weeklist.setColumn(rowIdx,
  631. hidden_calendar_weeklist.getColID(colIdx) + '_fontcolor', 'blue');
  632. }
  633. //write memo
  634. ampmflag = hidden_calendarinfo.getColumn(i, 'ampmflag');
  635. ordendresn = hidden_calendarinfo.getColumn(i, 'ordendresn');
  636. ordendresnmin = hidden_calendarinfo.getColumn(i, 'ordendresnmin');
  637. reglscheflag = hidden_calendarinfo.getColumn(i, 'reglscheflag');
  638. // 검사일정이고, 마감이 아닐경우 정원표시 안함.!
  639. if((reglscheflag != 'X') || (ordendresnmin != 'H' && ordendresnmin != 'T')){
  640. var memo = fGetCalendarMemo2(i);
  641. if(utlf_isNull(memo)){
  642. memo = '';
  643. }
  644. hidden_calendar_weeklist.setColumn(rowIdx,
  645. hidden_calendar_weeklist.getColID(colIdx) + '_memo',
  646. memo);
  647. hidden_calendar_weeklist.setColumn(rowIdx,
  648. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  649. (utlf_isNull(ordendresn) ? memo : ordendresn));
  650. //ordendresn);
  651. hidden_calendar_weeklist.setColumn(rowIdx,
  652. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  653. i + 1);
  654. }
  655. if(ordendresnmin != 'H' && ordendresnmin != 'T'){
  656. // 오전
  657. if(ampmflag == '1'){
  658. // 정규일정일 경우
  659. if(reglscheflag == 'Y'){
  660. hidden_calendar_weeklist.setColumn(rowIdx,
  661. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  662. '#ffff99');
  663. }
  664. // 임시일정
  665. else if(reglscheflag == 'N'){
  666. hidden_calendar_weeklist.setColumn(rowIdx,
  667. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  668. '#c9c299');
  669. hidden_calendar_weeklist.setColumn(rowIdx,
  670. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  671. '임시');
  672. hidden_calendar_weeklist.setColumn(rowIdx,
  673. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  674. '임시');
  675. }
  676. // 대진
  677. else if(reglscheflag == 'Z'){
  678. hidden_calendar_weeklist.setColumn(rowIdx,
  679. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  680. '#c9c299');
  681. hidden_calendar_weeklist.setColumn(rowIdx,
  682. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  683. '대진');
  684. hidden_calendar_weeklist.setColumn(rowIdx,
  685. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  686. '대진');
  687. }
  688. }
  689. // 오후
  690. else if(ampmflag == '10'){
  691. // 정규일정일 경우
  692. if(reglscheflag == 'Y'){
  693. hidden_calendar_weeklist.setColumn(rowIdx,
  694. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  695. '#ccffff');
  696. }
  697. // 임시일정
  698. else if(reglscheflag == 'N'){
  699. hidden_calendar_weeklist.setColumn(rowIdx,
  700. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  701. '#ffccff');
  702. hidden_calendar_weeklist.setColumn(rowIdx,
  703. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  704. '임시');
  705. hidden_calendar_weeklist.setColumn(rowIdx,
  706. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  707. '임시');
  708. }
  709. // 대진
  710. else if(reglscheflag == 'Z'){
  711. hidden_calendar_weeklist.setColumn(rowIdx,
  712. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  713. '#ffccff');
  714. hidden_calendar_weeklist.setColumn(rowIdx,
  715. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  716. '대진');
  717. hidden_calendar_weeklist.setColumn(rowIdx,
  718. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  719. '대진');
  720. }
  721. }
  722. // 전일, 야간포함
  723. else if(ampmflag == '11' || ampmflag == '110' || ampmflag == '101' || ampmflag == '111' || ampmflag == '100'){
  724. // 정규일정일 경우
  725. if(reglscheflag == 'Y'){
  726. hidden_calendar_weeklist.setColumn(rowIdx,
  727. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  728. '#ffcc99');
  729. }
  730. // 임시일정
  731. else if(reglscheflag == 'N'){
  732. hidden_calendar_weeklist.setColumn(rowIdx,
  733. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  734. '#ffcc99');
  735. hidden_calendar_weeklist.setColumn(rowIdx,
  736. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  737. '임시');
  738. hidden_calendar_weeklist.setColumn(rowIdx,
  739. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  740. '임시');
  741. }
  742. // 대진
  743. else if(reglscheflag == 'Z'){
  744. hidden_calendar_weeklist.setColumn(rowIdx,
  745. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  746. '#ffcc99');
  747. hidden_calendar_weeklist.setColumn(rowIdx,
  748. hidden_calendar_weeklist.getColID(colIdx) + '_memo_tooltip',
  749. '대진');
  750. hidden_calendar_weeklist.setColumn(rowIdx,
  751. hidden_calendar_weeklist.getColID(colIdx) + '_tooltip',
  752. '대진');
  753. }
  754. }
  755. } // end of if(ordendresnmin != 'H' && ordendresnmin != 'T')
  756. else{
  757. // 휴진마감
  758. if(ordendresnmin == 'H'){
  759. hidden_calendar_weeklist.setColumn(rowIdx,
  760. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  761. '#ffffff');
  762. }
  763. // 부분마감
  764. else if(ordendresnmin == 'T'){
  765. hidden_calendar_weeklist.setColumn(rowIdx,
  766. hidden_calendar_weeklist.getColID(colIdx) + '_bg',
  767. '#999999');
  768. }
  769. }
  770. dutflag = ds_hidden_calendarinfo.getColumn(i, 'dutflag');
  771. if(dutflag == '8'){
  772. // 공휴일은 글자색을 빨간색으로
  773. hidden_calendar_weeklist.setColumn(rowIdx,
  774. hidden_calendar_weeklist.getColID(colIdx) + '_fontcolor', '#FF0000');
  775. }
  776. colIdx++;
  777. if(colIdx == 7){
  778. rowIdx++;
  779. colIdx = 0;
  780. }
  781. }
  782. }
  783. /****************************************************************************************
  784. * Argument : N/A
  785. * Description : 달력에 예약인원 및 예약현황 메모
  786. ****************************************************************************************/
  787. function fGetCalendarMemo2(i){
  788. var holinm = hidden_calendarinfo.getColumn(i, 'holinm');
  789. var ordendresn = hidden_calendarinfo.getColumn(i, 'ordendresn');
  790. var ordendresnmin = hidden_calendarinfo.getColumn(i, 'ordendresnmin');
  791. var fstexamcnt = 0;
  792. var reexamcnt = 0;
  793. var totalexamcnt = 0;
  794. var totalexamcap = 0;
  795. var totalrsrvcnt = 0;
  796. var telrsrvcnt = 0;
  797. var reglscheflag = '';
  798. //var caloption = ds_main.getColumn(0, 'caloption');
  799. var retValue = '';
  800. if(utlf_isNull(holinm) || holinm == '-'){
  801. holinm = '';
  802. }
  803. // holinm = (holinm == '-') ? '' : holinm;
  804. // 예약 현황
  805. // DBS227 caloption 컬럼은 존재하지 않는데?
  806. // if(!utlf_isNull(caloption) && caloption == '2'){
  807. // totalrsrvcnt = hidden_calendarinfo.getColumn(0, 'totalrsrvcnt');
  808. // telrsrvcnt = hidden_calendarinfo.getColumn(0, 'telrsrvcnt');
  809. // totalexamcap = hidden_calendarinfo.getColumn(0, 'totalexamcap');
  810. //
  811. // // 의사일정이 있을 경우
  812. // if(utlf_isNull(ordendresn) || ordendresn == '' || ordendresn == '0' || ordendresn == '00' || ordendresn =='-'){
  813. // msg = new String(telrsrvcnt + '/' + totalrsrvcnt).trim(' ');
  814. // checkSche = new String(totalexamcap + totalrsrvcnt).trim(' ');
  815. // if(msg == '/' || checkSche == '0'){
  816. // msg = '';
  817. // }
  818. // }
  819. // // 의사진료일정이 없을 경우
  820. // else{
  821. // msg = new String(telrsrvcnt + '/' + totalrsrvcnt).trim(' ');
  822. // checkSche = new String(totalexamcap + totalrsrvcnt).trim(' ');
  823. //
  824. // if(memo == '/' || checkSche == '0'){
  825. // msg = '';
  826. // }
  827. //
  828. // if(ordendresnmin == 'H'){
  829. // retValue = '휴진' + '\n' + msg;
  830. // }
  831. // else if(ordendresnmin == 'T'){
  832. // retValue = '당일' + '\n' + msg;
  833. // }
  834. // else{
  835. // retValue = '\n' + msg;
  836. // }
  837. // }
  838. // }
  839. // 예약가능 인원
  840. //else
  841. {
  842. fstexamcnt = hidden_calendarinfo.getColumn(i, 'fstexamcnt');
  843. reexamcnt = hidden_calendarinfo.getColumn(i, 'reexamcnt');
  844. totalexamcnt = hidden_calendarinfo.getColumn(i, 'totalexamcnt');
  845. fstexamcap = hidden_calendarinfo.getColumn(i, 'fstexamcap');
  846. reexamcap = hidden_calendarinfo.getColumn(i, 'reexamcap');
  847. totalexamcap = hidden_calendarinfo.getColumn(i, 'totalexamcap');
  848. var msg = '';
  849. // 의사일정이 있을 경우
  850. if(utlf_isNull(ordendresn) || ordendresn == '' || ordendresn == '0' || ordendresn == '00' || ordendresn =='-'){
  851. if(totalexamcap == '0' || totalexamcap == ''){
  852. msg = new String(fstexamcnt + '/' + reexamcnt).trim('');
  853. if(msg == '/' || msg == '0/0'){
  854. msg = '';
  855. }
  856. retValue = holinm + '\n' + msg;
  857. // 전일마감
  858. if(ordendresn == ordendresnmin){
  859. }
  860. // 부분 마감
  861. else{
  862. //retValue = holinm + '\n' + memo;
  863. }
  864. } // end of if(totalexamcap == '0' || totalexamcap == ' ')
  865. else{
  866. var calc = parseInt(totalexamcnt) + parseInt(fstexamcap) + parseInt(reexamcap) - parseInt(totalrsrvcnt);
  867. retValue = holinm + '\n' + (utlf_isNull(calc) ? '' : calc);
  868. }
  869. }
  870. else{
  871. if(totalexamcap == '0' || totalexamcap == ''){
  872. msg = new String(fstexamcnt + '/' + reexamcnt).trim('');
  873. if(msg == '/' || msg == '0/0'){
  874. msg = '';
  875. }
  876. // 전일마감
  877. if(ordendresn == ordendresnmin){
  878. }
  879. // 부분 마감
  880. else{
  881. if(ordendresnmin == 'H'){
  882. retValue = '휴진' + '\n' + msg;
  883. }
  884. else if(ordendresnmin == 'T'){
  885. retValue = '당일' + '\n' + msg;
  886. }
  887. else{
  888. retValue = '\n' + msg;
  889. }
  890. }
  891. } // end of if(totalexamcap == '0' || totalexamcap == '')
  892. else{
  893. retValue = totalexamcnt;
  894. //retValue = utlf_isNull(totalexamcnt) ? ' ' : totalexamcnt;
  895. }
  896. }
  897. }
  898. return retValue;
  899. }
  900. /****************************************************************************************
  901. * Argument : N/A
  902. * Description :
  903. ****************************************************************************************/
  904. function fChangeButtonColor(){
  905. var thisMonth = hidden_calendar.getColumn(0, 'month');
  906. switch(parseInt(thisMonth)){
  907. case 1:
  908. //btn_jan.enable = false;
  909. changeButtonAttr(btn_jan);
  910. beforeId = '1';
  911. break;
  912. case 2:
  913. //btn_feb.enable = false;
  914. changeButtonAttr(btn_feb);
  915. beforeId = '2';
  916. break;
  917. case 3:
  918. //btn_mar.enable = false;
  919. changeButtonAttr(btn_mar);
  920. beforeId = '3';
  921. break;
  922. case 4:
  923. //btn_apr.enable = false;
  924. changeButtonAttr(btn_apr);
  925. beforeId = '4';
  926. break;
  927. case 5:
  928. //btn_may.enable = false;
  929. changeButtonAttr(btn_may);
  930. beforeId = '5';
  931. break;
  932. case 6:
  933. //btn_jun.enable = false;
  934. changeButtonAttr(btn_jun);
  935. beforeId = '6';
  936. break;
  937. case 7:
  938. //btn_jul.enable = false;
  939. changeButtonAttr(btn_jul);
  940. beforeId = '7';
  941. break;
  942. case 8:
  943. //btn_aug.enable = false;
  944. changeButtonAttr(btn_aug);
  945. beforeId = '8';
  946. break;
  947. case 9:
  948. //btn_sep.enable = false;
  949. changeButtonAttr(btn_sep);
  950. beforeId = '9';
  951. break;
  952. case 10:
  953. //btn_oct.enable = false;
  954. changeButtonAttr(btn_oct);
  955. beforeId = '10';
  956. break;
  957. case 11:
  958. //btn_nov.enable = false;
  959. changeButtonAttr(btn_nov);
  960. beforeId = '11';
  961. break;
  962. case 12:
  963. //btn_dec.enable = false;
  964. changeButtonAttr(btn_dec);
  965. beforeId = '12';
  966. break;
  967. }
  968. }
  969. /****************************************************************************************
  970. * Argument : N/A
  971. * Description :
  972. ****************************************************************************************/
  973. function fGetHospitalCalendar(){
  974. var date = new String(hidden_calendar.getColumn(0, 'year')).concat(hidden_calendar.getColumn(0, 'month'));
  975. var ds_req = dsf_createDsRow('ds_req', [{ col: 'date', type: 'string', size: 256, val: date}], false);
  976. ds_hidden_calendarinfo.clearData();
  977. ds_hidden_calendarinfo.addRow();
  978. var oParam = {};
  979. oParam.id = "TRPMB01001";
  980. oParam.service = "pambaseinfomngtapp.OrdSche";
  981. oParam.method = "reqGetHospitalCalendar";
  982. oParam.inds = "req=ds_req";
  983. oParam.outds = "ds_hidden_calendarinfo=caldata";
  984. oParam.async = false;
  985. oParam.callback = "cf_TRPMB01001";
  986. tranf_submit(oParam);
  987. if(!result){
  988. return false;
  989. }
  990. return true;
  991. }
  992. var reuslt = false;
  993. function cf_TRPMB01001(sSvcId, nErrorCode, sErrorMsg){
  994. if(nErrorCode < 0){
  995. reuslt = false;
  996. return;
  997. }
  998. result = true;
  999. }
  1000. /****************************************************************************************
  1001. * Argument : N/A
  1002. * Description :
  1003. ****************************************************************************************/
  1004. function changeButtonAttr(obj:Button){
  1005. if(beforeId != ''){
  1006. switch(beforeId){
  1007. case '1':
  1008. btn_jan.enableevent = true;
  1009. btn_jan.style.background.image = '';
  1010. btn_jan.style.color = '#009393ff';
  1011. break;
  1012. case '2':
  1013. btn_feb.enableevent = true;
  1014. btn_feb.style.background.image = '';
  1015. btn_feb.style.color = '#009393ff';
  1016. break;
  1017. case '3':
  1018. btn_mar.enableevent = true;
  1019. btn_mar.style.background.image = '';
  1020. btn_mar.style.color = '#009393ff';
  1021. break;
  1022. case '4':
  1023. btn_apr.enableevent = true;
  1024. btn_apr.style.background.image = '';
  1025. btn_apr.style.color = '#009393ff';
  1026. break;
  1027. case '5':
  1028. btn_may.enableevent = true;
  1029. btn_may.style.background.image = '';
  1030. btn_may.style.color = '#009393ff';
  1031. break;
  1032. case '6':
  1033. btn_jun.enableevent = true;
  1034. btn_jun.style.background.image = '';
  1035. btn_jun.style.color = '#009393ff';
  1036. break;
  1037. case '7':
  1038. btn_jul.enableevent = true;
  1039. btn_jul.style.background.image = '';
  1040. btn_jul.style.color = '#009393ff';
  1041. break;
  1042. case '8':
  1043. btn_aug.enableevent = true;
  1044. btn_aug.style.background.image = '';
  1045. btn_aug.style.color = '#009393ff';
  1046. break;
  1047. case '9':
  1048. btn_sep.enableevent = true;
  1049. btn_sep.style.background.image = '';
  1050. btn_sep.style.color = '#009393ff';
  1051. break;
  1052. case '10':
  1053. btn_oct.enableevent = true;
  1054. btn_oct.style.background.image = '';
  1055. btn_oct.style.color = '#009393ff';
  1056. break;
  1057. case '11':
  1058. btn_nov.enableevent = true;
  1059. btn_nov.style.background.image = '';
  1060. btn_nov.style.color = '#009393ff';
  1061. break;
  1062. case '12':
  1063. btn_dec.enableevent = true;
  1064. btn_dec.style.background.image = '';
  1065. btn_dec.style.color = '#009393ff';
  1066. break;
  1067. }
  1068. }
  1069. obj.enableevent = false;
  1070. obj.style.background.image = "URL('theme://images/month_select_bg.png')";
  1071. obj.style.color = 'white';
  1072. beforeId = obj.text;
  1073. fSetMonth(beforeId);
  1074. }
  1075. /****************************************************************************************
  1076. * Argument : N/A
  1077. * Description :
  1078. ****************************************************************************************/
  1079. function fSetMonth(month){
  1080. if(month.length == 1){
  1081. month = '0' + month;
  1082. }
  1083. hidden_calendar.setColumn(0, 'month', month);
  1084. fGetCalendarData();
  1085. }
  1086. /****************************************************************************************
  1087. * Argument : N/A
  1088. * Description :
  1089. ****************************************************************************************/
  1090. //=======================================================================================
  1091. // Events
  1092. //---------------------------------------------------------------------------------------
  1093. /****************************************************************************************
  1094. * Argument : N/A
  1095. * Description : onload
  1096. ****************************************************************************************/
  1097. function SPPMB01200_onload(obj:Form, e:LoadEventInfo){
  1098. frmf_initForm(obj);
  1099. grdf_initGrid(grd_calendar);
  1100. grdf_initGrid(grd_outrgst);
  1101. ds_main.clearData();
  1102. ds_main.addRow();
  1103. if(!frmf_checkOpener()){
  1104. group1.visible = false;
  1105. }
  1106. var params = [
  1107. { dsNm: 'init_P0033list', cdGrpId: 'P0033' },
  1108. { dsNm: 'init_P0037list', cdGrpId: 'P0037' },
  1109. { dsNm: 'init_P0341list', cdGrpId: 'P0341' },
  1110. { dsNm: 'init_P0021list', cdGrpId: 'P0021' },
  1111. { dsNm: 'init_P0022list', cdGrpId: 'P0022' }];
  1112. appf_getCodeList(params);
  1113. // 부서코드 의사ID 조회
  1114. pamGetDeptCDDrIDList();
  1115. // 초기화 및 날짜 데이터 세팅
  1116. fInitialize();
  1117. try {
  1118. if(!utlf_isNull(arg_ds_temp_tmpnode)) {
  1119. temp_tempnode.copyData(arg_ds_temp_tmpnode);
  1120. }
  1121. }
  1122. catch(e) {
  1123. }
  1124. var orddd = temp_tempnode.getColumn(0, 'orddd');
  1125. var orddrid = temp_tempnode.getColumn(0, 'orddrid');
  1126. var orddeptcd = temp_tempnode.getColumn(0, 'orddeptcd');
  1127. var subdeptcd = temp_tempnode.getColumn(0, 'subdeptcd');
  1128. if(!utlf_isNull(orddd) && !utlf_isNull(orddrid ) !utlf_isNull(orddeptcd )){
  1129. ds_main.setColumn(0, 'orddeptcd', orddeptcd);
  1130. ds_main.setColumn(0, 'subdeptcd', subdeptcd);
  1131. ds_main.setColumn(0, 'orddrid', orddrid);
  1132. ds_main.setColumn(0, 'orddd', orddd);
  1133. orddeptChanged(orddeptcd);
  1134. hidden_calendar.setColumn(0, 'year', new String(orddd).substr(0, 4));
  1135. var _month = String(orddd).substr(4, 2);
  1136. hidden_calendar.setColumn(0, 'month', _month);
  1137. fSearchOrdSche();
  1138. fGetCalendarData();
  1139. fChangeButtonColor();
  1140. }
  1141. }
  1142. /****************************************************************************************
  1143. * Argument : N/A
  1144. * Description : 진료부서 콤보 아이템 변경 이벤트
  1145. ****************************************************************************************/
  1146. function group2_cmb_orddept_onitemchanged(obj:Combo, e:ItemChangeEventInfo){
  1147. orddeptChanged(e.postvalue);
  1148. }
  1149. function orddeptChanged(_orddeptcd) {
  1150. ds_init_orddridlist.updatecontrol = false;
  1151. ds_init_orddridlist.filter("dp == '" + _orddeptcd + "'");
  1152. ds_init_orddridlist.updatecontrol = true;
  1153. }
  1154. /****************************************************************************************
  1155. * Argument : N/A
  1156. * Description : 진료의사 콤보 아이템 변경 이벤트
  1157. ****************************************************************************************/
  1158. function group2_cmb_orddr_onitemchanged(obj:Combo, e:ItemChangeEventInfo){
  1159. fSearchOrdSche();
  1160. fGetCalendarData();
  1161. }
  1162. /****************************************************************************************
  1163. * Argument : N/A
  1164. * Description : 조회 버튼 클릭 이벤트
  1165. ****************************************************************************************/
  1166. function group2_btn_search_onclick(obj:Button, e:ClickEventInfo){
  1167. fSearchOrdSche();
  1168. fGetCalendarData();
  1169. }
  1170. /****************************************************************************************
  1171. * Argument : N/A
  1172. * Description : 그리드 셀 더블 클릭 이벤트
  1173. ****************************************************************************************/
  1174. function group3_grd_outrgst_oncelldblclick(obj:Grid, e:GridClickEventInfo){
  1175. if(frmf_checkOpener()){
  1176. group1.btn_confirm.click();
  1177. }
  1178. }
  1179. /****************************************************************************************
  1180. * Argument : N/A
  1181. * Description : 확인 버튼 클릭 이벤트
  1182. ****************************************************************************************/
  1183. function group1_btn_confirm_onclick(obj:Button, e:ClickEventInfo){
  1184. if(!frmf_checkOpener()){
  1185. return;
  1186. }
  1187. var currow = grd_outrgst.currentrow;
  1188. var curcol = grd_outrgst.currentcol;
  1189. if(currow < 0 || curcol < 0){
  1190. opener.frmf_setParameter('SPPMB01200_RTN', 'N');
  1191. this.close();
  1192. return;
  1193. }
  1194. opener.frmf_setParameter('SPPMB01200_RTN', 'Y');
  1195. opener.frmf_setParameter('SPPMB01200_orddd', ds_main.getColumn(0, 'orddd'));
  1196. opener.frmf_setParameter('SPPMB01200_ordtm', main_outrgstlist.getColumn(currow, 'ordtm'));
  1197. opener.frmf_setParameter('SPPMB01200_orddrid', ds_main.getColumn(0, 'orddrid'));
  1198. opener.frmf_setParameter('SPPMB01200_orddeptcd', ds_main.getColumn(0, 'orddeptcd'));
  1199. opener.frmf_setParameter('SPPMB01200_subdeptcd', ds_main.getColumn(0, 'subdeptcd'));
  1200. //2017/12/11 심층진료관련 추가(이정택)
  1201. var etcrsrvflag = main_outrgstlist.getColumn(currow, 'etcrsrvflag');
  1202. if(etcrsrvflag=='B'){
  1203. opener.frmf_setParameter('SPPMB01200_etcordflag', 'U');
  1204. }else{
  1205. opener.frmf_setParameter('SPPMB01200_etcordflag', '-');
  1206. }
  1207. //2017/12/11 심층진료관련 추가(이정택)
  1208. this.close();
  1209. }
  1210. /****************************************************************************************
  1211. * Argument : N/A
  1212. * Description : 취소 버튼 클릭 이벤트
  1213. ****************************************************************************************/
  1214. function group1_btn_cancel_onclick(obj:Button, e:ClickEventInfo){
  1215. frmf_setParameter('SPPMB01200_RTN', 'N');
  1216. this.close();
  1217. }
  1218. /****************************************************************************************
  1219. * Argument : N/A
  1220. * Description : 소분류 진료부서 콤보 아이템 변경 이벤트
  1221. ****************************************************************************************/
  1222. function group2_cmb_subdeptcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo){
  1223. ds_init_orddridlist.updatecontrol = false;
  1224. if(e.postvalue != '-'){
  1225. ds_init_orddridlist.filter('dp == "' + e.postvalue + '"');
  1226. }
  1227. else{
  1228. ds_init_orddridlist.filter('dp == "' + group2.cmb_orddept.value + '"');
  1229. }
  1230. ds_init_orddridlist.updatecontrol = true;
  1231. }
  1232. /****************************************************************************************
  1233. * Argument : N/A
  1234. * Description :
  1235. ****************************************************************************************/
  1236. function ds_main_cancolumnchange(obj:Dataset, e:DSColChangeEventInfo)
  1237. {
  1238. if(e.columnid == 'orddd'){
  1239. hidden_calendar.setColumn(0, 'year', e.newvalue.substr(0, 4));
  1240. hidden_calendar.setColumn(0, 'month', e.newvalue.substr(4, 2));
  1241. }
  1242. }
  1243. /****************************************************************************************
  1244. * Argument : N/A
  1245. * Description : 1월 버튼 클릭 이벤트
  1246. ****************************************************************************************/
  1247. function calGroup_group1_btn_jan_onclick(obj:Button, e:ClickEventInfo){
  1248. changeButtonAttr(obj);
  1249. // tmpObj.style.background.color = '@gradation';
  1250. // obj.style.background.color = '#009393';
  1251. // obj.style.color = '#FFFFFF';
  1252. // tmpObj = obj;
  1253. }
  1254. /****************************************************************************************
  1255. * Argument : N/A
  1256. * Description : 2월 버튼 클릭 이벤트
  1257. ****************************************************************************************/
  1258. function calGroup_group1_btn_feb_onclick(obj:Button, e:ClickEventInfo){
  1259. changeButtonAttr(obj);
  1260. }
  1261. /****************************************************************************************
  1262. * Argument : N/A
  1263. * Description : 3월 버튼 클릭 이벤트
  1264. ****************************************************************************************/
  1265. function calGroup_group1_btn_mar_onclick(obj:Button, e:ClickEventInfo){
  1266. changeButtonAttr(obj);
  1267. }
  1268. /****************************************************************************************
  1269. * Argument : N/A
  1270. * Description : 4월 버튼 클릭 이벤트
  1271. ****************************************************************************************/
  1272. function calGroup_group1_btn_apr_onclick(obj:Button, e:ClickEventInfo){
  1273. changeButtonAttr(obj);
  1274. }
  1275. /****************************************************************************************
  1276. * Argument : N/A
  1277. * Description : 5월 버튼 클릭 이벤트
  1278. ****************************************************************************************/
  1279. function calGroup_group1_btn_may_onclick(obj:Button, e:ClickEventInfo){
  1280. changeButtonAttr(obj);
  1281. }
  1282. /****************************************************************************************
  1283. * Argument : N/A
  1284. * Description : 6월 버튼 클릭 이벤트
  1285. ****************************************************************************************/
  1286. function calGroup_group1_btn_jun_onclick(obj:Button, e:ClickEventInfo){
  1287. changeButtonAttr(obj);
  1288. }
  1289. /****************************************************************************************
  1290. * Argument : N/A
  1291. * Description : 7월 버튼 클릭 이벤트
  1292. ****************************************************************************************/
  1293. function calGroup_group1_btn_jul_onclick(obj:Button, e:ClickEventInfo){
  1294. changeButtonAttr(obj);
  1295. }
  1296. /****************************************************************************************
  1297. * Argument : N/A
  1298. * Description : 8월 버튼 클릭 이벤트
  1299. ****************************************************************************************/
  1300. function calGroup_group1_btn_aug_onclick(obj:Button, e:ClickEventInfo){
  1301. changeButtonAttr(obj);
  1302. }
  1303. /****************************************************************************************
  1304. * Argument : N/A
  1305. * Description : 9월 버튼 클릭 이벤트
  1306. ****************************************************************************************/
  1307. function calGroup_group1_btn_sep_onclick(obj:Button, e:ClickEventInfo){
  1308. changeButtonAttr(obj);
  1309. }
  1310. /****************************************************************************************
  1311. * Argument : N/A
  1312. * Description : 10월 버튼 클릭 이벤트
  1313. ****************************************************************************************/
  1314. function calGroup_group1_btn_oct_onclick(obj:Button, e:ClickEventInfo){
  1315. changeButtonAttr(obj);
  1316. }
  1317. /****************************************************************************************
  1318. * Argument : N/A
  1319. * Description : 11월 버튼 클릭 이벤트
  1320. ****************************************************************************************/
  1321. function calGroup_group1_btn_nov_onclick(obj:Button, e:ClickEventInfo){
  1322. changeButtonAttr(obj);
  1323. }
  1324. /****************************************************************************************
  1325. * Argument : N/A
  1326. * Description : 12월 버튼 클릭 이벤트
  1327. ****************************************************************************************/
  1328. function calGroup_group1_btn_dec_onclick(obj:Button, e:ClickEventInfo){
  1329. changeButtonAttr(obj);
  1330. }
  1331. function updateYear(year, month, day){
  1332. var orddd = ds_main.getColumn(0, 'orddd');
  1333. orddd = year + new String(orddd).substr(4, 4);
  1334. ds_main.setColumn(0, 'orddd', orddd);
  1335. }
  1336. /****************************************************************************************
  1337. * Argument : N/A
  1338. * Description : 전년 버튼 클릭 이벤트
  1339. ****************************************************************************************/
  1340. function calGroup_button31_onclick(obj:Button, e:ClickEventInfo){
  1341. var year = parseInt(hidden_calendar.getColumn(0, 'year')) - 1;
  1342. year = new String(year);
  1343. hidden_calendar.setColumn(0, 'year', year);
  1344. updateYear(year);
  1345. fGetCalendarData();
  1346. }
  1347. /****************************************************************************************
  1348. * Argument : N/A
  1349. * Description : 내년 버튼 클릭 이벤트
  1350. ****************************************************************************************/
  1351. function calGroup_button32_onclick(obj:Button, e:ClickEventInfo){
  1352. var year = parseInt(hidden_calendar.getColumn(0, 'year')) + 1;
  1353. year = new String(year);
  1354. hidden_calendar.setColumn(0, 'year', year);
  1355. updateYear(year);
  1356. fGetCalendarData();
  1357. }
  1358. // TODO 각 상황별 bg 가 있으니 변수로 이전 색상에 대한 값을 저장해 두어야 한다
  1359. var prevRow;
  1360. var prevPrefix = '';
  1361. var prefBg = ''
  1362. /****************************************************************************************
  1363. * Argument : N/A
  1364. * Description : 달력 셀 클릭 이벤트
  1365. ****************************************************************************************/
  1366. function calGroup_grd_calendar_oncellclick(obj:Grid, e:GridClickEventInfo){
  1367. if(prevRow == e.row && prevPrefix == hidden_calendar_weeklist.getColID(e.col)){
  1368. return;
  1369. }
  1370. // 이전의 셀을 배경색을 변경한다
  1371. var curbg = hidden_calendar_weeklist.getColumn(e.row, hidden_calendar_weeklist.getColID(e.col) + '_bg');
  1372. if(prevPrefix != ''){
  1373. hidden_calendar_weeklist.setColumn(prevRow, prevPrefix + '_bg', prevBg);
  1374. }
  1375. // 선택된 셀의 배경색을 바꾼다
  1376. var prefix = hidden_calendar_weeklist.getColID(e.col);
  1377. hidden_calendar_weeklist.setColumn(e.row, prefix + '_bg', '#c0c0c0');
  1378. prevRow = e.row;
  1379. prevPrefix = prefix;
  1380. prevBg = !utlf_isNull(curbg)? curbg : '';
  1381. // if(utlf_isNull(curbg) || curbg == '' || curbg == '#c0c0c0'){
  1382. // var prefix = hidden_calendar_weeklist.getColID(e.col);
  1383. // hidden_calendar_weeklist.setColumn(e.row, prefix + '_bg', '#c0c0c0');
  1384. // prevRow = e.row;
  1385. // prevPrefix = prefix;
  1386. // prevBg = !utlf_isNull(curbg)? curbg : '';
  1387. // }
  1388. // 선택된 날을 진료일자에 반영한다
  1389. var day = hidden_calendar_weeklist.getColumn(e.row, e.col);
  1390. day = new String(day);
  1391. if(day.length == 1){
  1392. day = '0' + day;
  1393. }
  1394. var orddd = hidden_calendar.getColumn(0, 'year') + hidden_calendar.getColumn(0, 'month') + day;
  1395. ds_main.setColumn(0, 'orddd', orddd);
  1396. if(ds_main.getColumn(0, 'orddrid') != '' && ds_main.getColumn(0, 'orddeptcd') != '' && ds_main.getColumn(0, 'orddd') != ''){
  1397. fSearchOrdSche();
  1398. }
  1399. }]]></Script>
  1400. </Form>
  1401. </FDL>