SMMNV12000_검사실전광판관리프로그램.xfdl 85 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMNV12000" position="absolute 0 0 1194 779" titletext="검사실전광판관리" oninit="SMMNV12000_oninit" onload="SMMNV12000_onload" scrollbars="none">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 1195 13" id="group1"/>
  8. <Div position="absolute 0 0 1195 720" id="group3" scrollbars="none">
  9. <Layouts>
  10. <Layout>
  11. <Shape position="absolute 422 654 835 682" id="roundrect2" class="roundrect_example" type="roundrectangle" anchor="default"/>
  12. <Static text="입실환자" position="absolute 426 87 570 108" id="caption12" class="tit_2" anchor="default"/>
  13. <Shape position="absolute 422 102 835 108" linetype="horizontal" id="line5" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  14. <Static text="공지사항" position="absolute 426 453 544 474" id="caption2" class="tit_2" anchor="default"/>
  15. <Static text="대기 환자" position="absolute 426 246 562 267" id="caption13" class="tit_2" anchor="default"/>
  16. <TextArea position="absolute 422 479 835 650" id="tx_msg" taborder="8" anchor="default"/>
  17. <Div position="absolute 0 25 1194 69" align="align:center top;" id="grp_sea" anchor="default" class="div_SA">
  18. <Layouts>
  19. <Layout>
  20. <Button position="absolute 1059 13 1115 35" id="button1" class="btn1" text="조회" anchor="default" onclick="group3_grp_sea_button1_onclick"/>
  21. <Static text="업무일자 :" position="absolute 18 12 108 29" id="caption1" class="search_name" anchor="default"/>
  22. <Shape position="absolute 1046 6 1052 39" linetype="vertical" id="line3" class="line_4" anchor="default"/>
  23. <Calendar position="absolute 110 12 195 31" id="ipt_orddd" class="input_search" taborder="4" anchor="default"/>
  24. <Static text="지원부서 :" position="absolute 213 14 299 31" align="align:left middle;" id="caption3" class="search_name" anchor="default"/>
  25. <Combo position="absolute 302 13 475 32" id="cmb_orddeptcd" class="combo_search" innerdataset="ds_init_cmb_orddeptcd" datacolumn="depthngnm" codecolumn="suppdeptcd" anchor="default" onitemchanged="group3_grp_sea_cmb_orddeptcd_onitemchanged"/>
  26. <Static text="검사/치료실 :" position="absolute 485 14 591 31" id="caption5" class="search_name" anchor="default"/>
  27. <Combo position="absolute 593 13 755 32" id="cmb_ordroomcd" class="combo_search" innerdataset="ds_init_cmb_ordroomcd" datacolumn="basecdflagdesc" codecolumn="basecd" anchor="default" onitemchanged="group3_grp_sea_cmb_ordroomcd_onitemchanged"/>
  28. </Layout>
  29. </Layouts>
  30. </Div>
  31. <Static text="예정자리스트" position="absolute 2 86 132 107" id="caption16" class="tit_2" anchor="default"/>
  32. <Grid position="absolute 0 107 410 713" id="grd_ordschelistinfo" scrollbars="autoboth" binddataset="ds_grd_ordschelistinfo" anchor="default" autofittype="col" onrbuttondown="group3_grd_ordschelistinfo_onrbuttondown">
  33. <Formats>
  34. <Format id="default">
  35. <Columns>
  36. <Column size="42"/>
  37. <Column size="55"/>
  38. <Column size="77"/>
  39. <Column size="57"/>
  40. <Column size="89"/>
  41. <Column size="51"/>
  42. </Columns>
  43. <Rows>
  44. <Row size="24" band="head"/>
  45. <Row size="24"/>
  46. </Rows>
  47. <Band id="head">
  48. <Cell text="선택"/>
  49. <Cell col="1" text="예약시간"/>
  50. <Cell col="2" text="등록번호"/>
  51. <Cell col="3" text="환자상태"/>
  52. <Cell col="4" text="환자명"/>
  53. <Cell col="5" text="S/A"/>
  54. </Band>
  55. <Band id="body">
  56. <Cell displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  57. <Cell col="1" text="bind:ordrsrvtm" mask="##:##" enable="false"/>
  58. <Cell col="2" text="bind:pid"/>
  59. <Cell col="3" text="bind:statenm"/>
  60. <Cell col="4" text="bind:patnm"/>
  61. <Cell col="5" text="bind:sexage"/>
  62. </Band>
  63. </Format>
  64. </Formats>
  65. </Grid>
  66. <Grid position="absolute 870 106 1192 712" id="grd_ordscheretelistinfo" binddataset="ds_grd_ordscheretelistinfo" anchor="default" onrbuttondown="group3_grd_ordscheretelistinfo_onrbuttondown">
  67. <Formats>
  68. <Format id="default">
  69. <Columns>
  70. <Column size="42"/>
  71. <Column size="59"/>
  72. <Column size="66"/>
  73. <Column size="86"/>
  74. <Column size="43"/>
  75. </Columns>
  76. <Rows>
  77. <Row size="24" band="head"/>
  78. <Row size="24"/>
  79. </Rows>
  80. <Band id="head">
  81. <Cell text="선택"/>
  82. <Cell col="1" text="예약시간"/>
  83. <Cell col="2" text="등록번호"/>
  84. <Cell col="3" text="환자명"/>
  85. <Cell col="4" text="S/A"/>
  86. </Band>
  87. <Band id="body">
  88. <Cell displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  89. <Cell col="1" text="bind:ordrsrvtm" mask="##:##"/>
  90. <Cell col="2" text="bind:pid"/>
  91. <Cell col="3" text="bind:patnm"/>
  92. <Cell col="4" text="bind:sexage"/>
  93. </Band>
  94. </Format>
  95. </Formats>
  96. </Grid>
  97. <Static text="보류 환자" position="absolute 873 85 981 106" id="caption20" class="tit_2" anchor="default"/>
  98. <Shape position="absolute 0 102 410 108" linetype="horizontal" id="line14" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  99. <Shape position="absolute 422 471 835 477" linetype="horizontal" id="line1" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  100. <Shape position="absolute 871 102 1188 103" linetype="vertical" id="line8" class="line_1" anchor="default"/>
  101. <Shape position="absolute 422 260 835 266" linetype="horizontal" id="line7" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  102. <Grid position="absolute 422 107 835 214" id="grd_ordentroomlistinfo" scrollbars="autoboth" binddataset="ds_grd_ordentroomlistinfo" anchor="default" onrbuttondown="group3_grd_ordentroomlistinfo_onrbuttondown">
  103. <Formats>
  104. <Format id="default">
  105. <Columns>
  106. <Column size="75"/>
  107. <Column size="92"/>
  108. <Column size="148"/>
  109. <Column size="58"/>
  110. </Columns>
  111. <Rows>
  112. <Row size="24" band="head"/>
  113. <Row size="24"/>
  114. </Rows>
  115. <Band id="head">
  116. <Cell text="예약시간"/>
  117. <Cell col="1" text="등록번호"/>
  118. <Cell col="2" text="환자명"/>
  119. <Cell col="3" text="S/A"/>
  120. </Band>
  121. <Band id="body">
  122. <Cell text="bind:ordrsrvtm" mask="##:##" enable="false"/>
  123. <Cell col="1" text="bind:pid" enable="false"/>
  124. <Cell col="2" text="bind:patnm"/>
  125. <Cell col="3" text="bind:sexage"/>
  126. </Band>
  127. </Format>
  128. </Formats>
  129. </Grid>
  130. <Grid position="absolute 422 265 835 442" id="grd_ordinfoschelistinfo" scrollbars="autoboth" binddataset="ds_grd_ordinfoschelistinfo" anchor="default" onrbuttondown="group3_grd_ordinfoschelistinfo_onrbuttondown">
  131. <Formats>
  132. <Format id="default">
  133. <Columns>
  134. <Column size="79"/>
  135. <Column size="88"/>
  136. <Column size="148"/>
  137. <Column size="62"/>
  138. </Columns>
  139. <Rows>
  140. <Row size="24" band="head"/>
  141. <Row size="24"/>
  142. </Rows>
  143. <Band id="head">
  144. <Cell text="예약시간"/>
  145. <Cell col="1" text="등록번호"/>
  146. <Cell col="2" text="환자명"/>
  147. <Cell col="3" text="S/A"/>
  148. </Band>
  149. <Band id="body">
  150. <Cell text="bind:ordrsrvtm" mask="##:##" enable="false"/>
  151. <Cell col="1" text="bind:pid"/>
  152. <Cell col="2" text="bind:patnm"/>
  153. <Cell col="3" text="bind:sexage"/>
  154. </Band>
  155. </Format>
  156. </Formats>
  157. </Grid>
  158. <Button position="absolute 839 189 865 208" id="button2" class="icon_right" text="" anchor="default" onclick="group3_button2_onclick"/>
  159. <Button position="absolute 839 234 865 253" id="button4" class="icon_left" text="" anchor="default" onclick="group3_button4_onclick"/>
  160. <Radio position="absolute 99 84 192 104" id="rdo_condwait" columncount="5" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default" onitemchanged="group3_rdo_condwait_onitemchanged">
  161. <Dataset id="innerdataset">
  162. <ColumnInfo>
  163. <Column id="codecolumn" size="256"/>
  164. <Column id="datacolumn" size="256"/>
  165. </ColumnInfo>
  166. <Rows>
  167. <Row>
  168. <Col id="codecolumn">1</Col>
  169. <Col id="datacolumn">대기</Col>
  170. </Row>
  171. <Row>
  172. <Col id="codecolumn">2</Col>
  173. <Col id="datacolumn"/>
  174. </Row>
  175. </Rows>
  176. </Dataset>
  177. </Radio>
  178. <Grid position="absolute 0 107 410 713" id="grd_ordschereteendlistinfo" scrollbars="autovert" binddataset="ds_grd_ordschereteendlistinfo" anchor="default" autofittype="col" onrbuttondown="group3_grd_ordschereteendlistinfo_onrbuttondown" visible="false">
  179. <Formats>
  180. <Format id="default">
  181. <Columns>
  182. <Column size="48"/>
  183. <Column size="55"/>
  184. <Column size="76"/>
  185. <Column size="57"/>
  186. <Column size="89"/>
  187. <Column size="53"/>
  188. </Columns>
  189. <Rows>
  190. <Row size="24" band="head"/>
  191. <Row size="24"/>
  192. </Rows>
  193. <Band id="head">
  194. <Cell text="선택"/>
  195. <Cell col="1" text="예약시간"/>
  196. <Cell col="2" text="등록번호"/>
  197. <Cell col="3" text="환자상태"/>
  198. <Cell col="4" text="환자명"/>
  199. <Cell col="5" text="S/A"/>
  200. </Band>
  201. <Band id="body">
  202. <Cell displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  203. <Cell col="1" text="bind:ordrsrvtm" mask="##:##"/>
  204. <Cell col="2" text="bind:pid"/>
  205. <Cell col="3" text="bind:statenm"/>
  206. <Cell col="4" text="bind:patnm"/>
  207. <Cell col="5" text="bind:sexage"/>
  208. </Band>
  209. </Format>
  210. </Formats>
  211. </Grid>
  212. <MaskEdit position="absolute 585 658 642 677" id="ipt_msgfromtm" mask="##:##" anchor="default" oneditclick="group3_ipt_msgfromtm_oneditclick" autoselect="true" style="align:center middle;" type="string" displaynulltext=" "/>
  213. <Static text="~" position="absolute 670 659 695 679" id="caption10" anchor="default"/>
  214. <MaskEdit position="absolute 711 658 768 677" id="ipt_msgtotm" mask="##:##" anchor="default" autoselect="true" style="align:center middle;" type="string" displaynulltext=" "/>
  215. <Static text="공지사항 표시시간" position="absolute 425 658 560 678" align="align:center middle;" id="cpt_voluntrflag" class="cell_1" anchor="default"/>
  216. <Button position="absolute 234 81 260 100" id="button7" class="icon_top" text="" anchor="default" onclick="group3_button7_onclick" tooltiptext="맨위로"/>
  217. <Button position="absolute 318 81 344 100" id="button8" class="icon_bottom" text="" anchor="default" onclick="group3_button8_onclick" tooltiptext="맨아래로"/>
  218. <Button position="absolute 290 81 316 100" id="btn_to_down" class="icon_down" text="" anchor="default" onclick="group3_btn_to_down_onclick" tooltiptext="아래로"/>
  219. <Button position="absolute 262 81 288 100" id="button9" class="icon_up" text="" anchor="default" onclick="group3_button9_onclick" tooltiptext="위로"/>
  220. <Button position="absolute 346 81 410 100" id="button12" class="btn2" text="순서변경" anchor="default" onclick="group3_button12_onclick"/>
  221. <Button position="absolute 718 448 774 470" id="button6" class="btn4" text="저장" anchor="default" onclick="group3_button6_onclick"/>
  222. <Button position="absolute 778 448 834 470" id="button3" class="btn4" text="삭제" anchor="default" onclick="group3_button3_onclick"/>
  223. <Button position="absolute 720 76 776 98" id="button13" class="btn4" text="입실" anchor="default" onclick="group3_button13_onclick"/>
  224. <Button position="absolute 779 76 835 98" id="button14" class="btn4" text="퇴실" anchor="default" onclick="group3_button14_onclick"/>
  225. <Static id="caption6" text="검사실 전광판 관리" class="tit_1" position="absolute 0 0 178 25"/>
  226. <Static id="Static00" text="퇴실(완료)" position="absolute 167 84 227 104"/>
  227. <Shape id="line00" class="line_1" position="absolute 869 101 1195 107" style="strokepen:3 solid #33bbbbff;"/>
  228. </Layout>
  229. </Layouts>
  230. </Div>
  231. <Div position="absolute 0 734 1195 770" id="group5" scrollbars="autoboth"/>
  232. <Shape position="absolute 3 725 1194 731" linetype="horizontal" id="line4" class="line_3"/>
  233. <PopupMenu id="popmenu" position="absolute 1215 35 1303 60" idcolumn="idcolumn" captioncolumn="captioncolumn" levelcolumn="levelcolumn" enablecolumn="enablecolumn" iconcolumn="iconcolumn" checkboxcolumn="checkboxcolumn" hotkeycolumn="hotkeycolumn" userdatacolumn="userdatacolumn" onmenuclick="popmenu_onmenuclick">
  234. <Dataset id="innerdataset">
  235. <ColumnInfo>
  236. <Column id="idcolumn" size="256"/>
  237. <Column id="captioncolumn" size="256"/>
  238. <Column id="levelcolumn" size="256"/>
  239. <Column id="enablecolumn" size="256"/>
  240. <Column id="iconcolumn" size="256"/>
  241. <Column id="checkboxcolumn" size="256"/>
  242. <Column id="hotkeycolumn" size="256"/>
  243. <Column id="userdatacolumn" size="256"/>
  244. </ColumnInfo>
  245. <Rows>
  246. <Row>
  247. <Col id="idcolumn">fOrdPatWaitRete</Col>
  248. <Col id="captioncolumn">보류</Col>
  249. <Col id="levelcolumn"/>
  250. <Col id="enablecolumn"/>
  251. <Col id="iconcolumn"/>
  252. <Col id="checkboxcolumn"/>
  253. <Col id="hotkeycolumn"/>
  254. <Col id="userdatacolumn"/>
  255. </Row>
  256. </Rows>
  257. </Dataset>
  258. </PopupMenu>
  259. <PopupMenu id="popmenu2" position="absolute 1216 75 1304 97" idcolumn="idcolumn" captioncolumn="captioncolumn" levelcolumn="levelcolumn" enablecolumn="enablecolumn" iconcolumn="iconcolumn" checkboxcolumn="checkboxcolumn" hotkeycolumn="hotkeycolumn" userdatacolumn="userdatacolumn" onmenuclick="popmenu2_onmenuclick">
  260. <Dataset id="innerdataset">
  261. <ColumnInfo>
  262. <Column id="idcolumn" size="256"/>
  263. <Column id="captioncolumn" size="256"/>
  264. <Column id="levelcolumn" size="256"/>
  265. <Column id="enablecolumn" size="256"/>
  266. <Column id="iconcolumn" size="256"/>
  267. <Column id="checkboxcolumn" size="256"/>
  268. <Column id="hotkeycolumn" size="256"/>
  269. <Column id="userdatacolumn" size="256"/>
  270. </ColumnInfo>
  271. <Rows>
  272. <Row>
  273. <Col id="idcolumn">fOrdPatWait</Col>
  274. <Col id="captioncolumn">대기</Col>
  275. <Col id="levelcolumn"/>
  276. <Col id="enablecolumn"/>
  277. <Col id="iconcolumn"/>
  278. <Col id="checkboxcolumn"/>
  279. <Col id="hotkeycolumn"/>
  280. <Col id="userdatacolumn"/>
  281. </Row>
  282. </Rows>
  283. </Dataset>
  284. </PopupMenu>
  285. <PopupMenu id="popmenu3" position="absolute 1218 115 1303 161" idcolumn="idcolumn" captioncolumn="captioncolumn" levelcolumn="levelcolumn" enablecolumn="enablecolumn" iconcolumn="iconcolumn" checkboxcolumn="checkboxcolumn" hotkeycolumn="hotkeycolumn" userdatacolumn="userdatacolumn" onmenuclick="popmenu3_onmenuclick">
  286. <Dataset id="innerdataset">
  287. <ColumnInfo>
  288. <Column id="idcolumn" size="256"/>
  289. <Column id="captioncolumn" size="256"/>
  290. <Column id="levelcolumn" size="256"/>
  291. <Column id="enablecolumn" size="256"/>
  292. <Column id="iconcolumn" size="256"/>
  293. <Column id="checkboxcolumn" size="256"/>
  294. <Column id="hotkeycolumn" size="256"/>
  295. <Column id="userdatacolumn" size="256"/>
  296. </ColumnInfo>
  297. <Rows>
  298. <Row>
  299. <Col id="idcolumn">fOrdRoomEnter</Col>
  300. <Col id="captioncolumn">입실</Col>
  301. <Col id="levelcolumn"/>
  302. <Col id="enablecolumn"/>
  303. <Col id="iconcolumn"/>
  304. <Col id="checkboxcolumn"/>
  305. <Col id="hotkeycolumn"/>
  306. <Col id="userdatacolumn"/>
  307. </Row>
  308. <Row>
  309. <Col id="idcolumn">fOrdInfoPatWaitRete</Col>
  310. <Col id="captioncolumn">보류</Col>
  311. <Col id="levelcolumn"/>
  312. <Col id="enablecolumn"/>
  313. <Col id="iconcolumn"/>
  314. <Col id="checkboxcolumn"/>
  315. <Col id="hotkeycolumn"/>
  316. <Col id="userdatacolumn"/>
  317. </Row>
  318. </Rows>
  319. </Dataset>
  320. </PopupMenu>
  321. <PopupMenu id="popmenu4" position="absolute 1218 184 1304 207" idcolumn="idcolumn" captioncolumn="captioncolumn" levelcolumn="levelcolumn" enablecolumn="enablecolumn" iconcolumn="iconcolumn" checkboxcolumn="checkboxcolumn" hotkeycolumn="hotkeycolumn" userdatacolumn="userdatacolumn" onmenuclick="popmenu4_onmenuclick">
  322. <Dataset id="innerdataset">
  323. <ColumnInfo>
  324. <Column id="idcolumn" size="256"/>
  325. <Column id="captioncolumn" size="256"/>
  326. <Column id="levelcolumn" size="256"/>
  327. <Column id="enablecolumn" size="256"/>
  328. <Column id="iconcolumn" size="256"/>
  329. <Column id="checkboxcolumn" size="256"/>
  330. <Column id="hotkeycolumn" size="256"/>
  331. <Column id="userdatacolumn" size="256"/>
  332. </ColumnInfo>
  333. <Rows>
  334. <Row>
  335. <Col id="idcolumn">fOrdRoomOut</Col>
  336. <Col id="captioncolumn">퇴실</Col>
  337. <Col id="levelcolumn"/>
  338. <Col id="enablecolumn"/>
  339. <Col id="iconcolumn"/>
  340. <Col id="checkboxcolumn"/>
  341. <Col id="hotkeycolumn"/>
  342. <Col id="userdatacolumn"/>
  343. </Row>
  344. </Rows>
  345. </Dataset>
  346. </PopupMenu>
  347. <PopupMenu id="popmenu5" position="absolute 1217 226 1306 250" idcolumn="idcolumn" captioncolumn="captioncolumn" levelcolumn="levelcolumn" enablecolumn="enablecolumn" iconcolumn="iconcolumn" checkboxcolumn="checkboxcolumn" hotkeycolumn="hotkeycolumn" userdatacolumn="userdatacolumn" onmenuclick="popmenu5_onmenuclick">
  348. <Dataset id="innerdataset">
  349. <ColumnInfo>
  350. <Column id="idcolumn" size="256"/>
  351. <Column id="captioncolumn" size="256"/>
  352. <Column id="levelcolumn" size="256"/>
  353. <Column id="enablecolumn" size="256"/>
  354. <Column id="iconcolumn" size="256"/>
  355. <Column id="checkboxcolumn" size="256"/>
  356. <Column id="hotkeycolumn" size="256"/>
  357. <Column id="userdatacolumn" size="256"/>
  358. </ColumnInfo>
  359. <Rows>
  360. <Row>
  361. <Col id="idcolumn">fOrdPatEndWait</Col>
  362. <Col id="captioncolumn">대기</Col>
  363. <Col id="levelcolumn"/>
  364. <Col id="enablecolumn"/>
  365. <Col id="iconcolumn"/>
  366. <Col id="checkboxcolumn"/>
  367. <Col id="hotkeycolumn"/>
  368. <Col id="userdatacolumn"/>
  369. </Row>
  370. </Rows>
  371. </Dataset>
  372. </PopupMenu>
  373. </Layout>
  374. </Layouts>
  375. <Objects>
  376. <Dataset id="ds_init_cmb_orddeptcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  377. <ColumnInfo>
  378. <Column id="depthngnm" type="STRING"/>
  379. <Column id="suppdeptcd" type="STRING"/>
  380. </ColumnInfo>
  381. </Dataset>
  382. <Dataset id="ds_init_cmb_ordroomcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  383. <ColumnInfo>
  384. <Column id="basecdflagdesc" type="STRING"/>
  385. <Column id="basecd" type="STRING"/>
  386. </ColumnInfo>
  387. </Dataset>
  388. <Dataset id="ds_grd_ordschelistinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  389. <ColumnInfo>
  390. <Column id="chk" type="STRING"/>
  391. <Column id="ordrsrvtm" type="STRING"/>
  392. <Column id="pid" type="STRING"/>
  393. <Column id="statenm" type="STRING"/>
  394. <Column id="patnm" type="STRING"/>
  395. <Column id="sexage" type="STRING"/>
  396. </ColumnInfo>
  397. <Rows>
  398. <Row/>
  399. </Rows>
  400. </Dataset>
  401. <Dataset id="ds_grd_ordscheretelistinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  402. <ColumnInfo>
  403. <Column id="chk" type="STRING"/>
  404. <Column id="ordrsrvtm" type="STRING"/>
  405. <Column id="pid" type="STRING"/>
  406. <Column id="patnm" type="STRING"/>
  407. <Column id="sexage" type="STRING"/>
  408. </ColumnInfo>
  409. </Dataset>
  410. <Dataset id="ds_grd_ordentroomlistinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  411. <ColumnInfo>
  412. <Column id="ordrsrvtm" type="STRING"/>
  413. <Column id="pid" type="STRING"/>
  414. <Column id="patnm" type="STRING"/>
  415. <Column id="sexage" type="STRING"/>
  416. </ColumnInfo>
  417. </Dataset>
  418. <Dataset id="ds_grd_ordinfoschelistinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  419. <ColumnInfo>
  420. <Column id="ordrsrvtm" type="STRING"/>
  421. <Column id="pid" type="STRING"/>
  422. <Column id="patnm" type="STRING"/>
  423. <Column id="sexage" type="STRING"/>
  424. <Column id="orddd" type="STRING" size="256"/>
  425. <Column id="cretno" type="STRING" size="256"/>
  426. <Column id="ordrsrvseqno" type="STRING" size="256"/>
  427. <Column id="orddrid" type="STRING" size="256"/>
  428. <Column id="orddeptcd" type="STRING" size="256"/>
  429. </ColumnInfo>
  430. <Rows>
  431. <Row/>
  432. </Rows>
  433. </Dataset>
  434. <Dataset id="ds_grd_ordschereteendlistinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  435. <ColumnInfo>
  436. <Column id="chk" type="STRING"/>
  437. <Column id="ordrsrvtm" type="STRING"/>
  438. <Column id="pid" type="STRING"/>
  439. <Column id="statenm" type="STRING"/>
  440. <Column id="patnm" type="STRING"/>
  441. <Column id="sexage" type="STRING"/>
  442. </ColumnInfo>
  443. <Rows>
  444. <Row/>
  445. </Rows>
  446. </Dataset>
  447. <Dataset id="ds_search" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  448. <ColumnInfo>
  449. <Column id="orddd" type="STRING" size="256"/>
  450. <Column id="centcd" type="STRING" size="256"/>
  451. <Column id="orddeptcd" type="STRING" size="256"/>
  452. <Column id="ordroomcd" type="STRING" size="256"/>
  453. <Column id="suppdeptcd" type="STRING" size="256"/>
  454. </ColumnInfo>
  455. <Rows>
  456. <Row>
  457. <Col id="orddd"/>
  458. <Col id="centcd"/>
  459. <Col id="orddeptcd"/>
  460. <Col id="ordroomcd"/>
  461. </Row>
  462. </Rows>
  463. </Dataset>
  464. <Dataset id="ds_msgrgstinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  465. <Dataset id="ds_hidden_msgrgst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  466. <ColumnInfo>
  467. <Column id="msgfromtm" type="STRING" size="256"/>
  468. <Column id="msgtotm" type="STRING" size="256"/>
  469. <Column id="msg" type="STRING" size="256"/>
  470. <Column id="status" type="STRING" size="256"/>
  471. </ColumnInfo>
  472. <Rows>
  473. <Row/>
  474. </Rows>
  475. </Dataset>
  476. </Objects>
  477. <Bind>
  478. <BindItem id="item0" compid="group3.grp_sea.ipt_orddd" propid="value" datasetid="ds_search" columnid="orddd"/>
  479. <BindItem id="item1" compid="group3.grp_sea.cmb_orddeptcd" propid="value" datasetid="ds_search" columnid="orddeptcd"/>
  480. <BindItem id="item2" compid="group3.grp_sea.cmb_ordroomcd" propid="value" datasetid="ds_search" columnid="ordroomcd"/>
  481. <BindItem id="item3" compid="group3.ipt_msgfromtm" propid="value" datasetid="ds_hidden_msgrgst" columnid="msgfromtm"/>
  482. <BindItem id="item4" compid="group3.ipt_msgtotm" propid="value" datasetid="ds_hidden_msgrgst" columnid="msgtotm"/>
  483. <BindItem id="item5" compid="group3.tx_msg" propid="value" datasetid="ds_hidden_msgrgst" columnid="msg"/>
  484. </Bind>
  485. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  486. * System Name :
  487. * Job Name :
  488. * Creator :
  489. * Make Date : 2015-11-13
  490. * Description :
  491. *---------------------------------------------------------------------------------------
  492. * Modify Date Modifier Modify Description
  493. *---------------------------------------------------------------------------------------
  494. * 2015-11-13 Live Converter TF->XP
  495. *
  496. *---------------------------------------------------------------------------------------
  497. ****************************************************************************************/
  498. include "com_commonxp::comm_main.xjs";
  499. include "ast_examcurexp::AEZ0001.xjs"
  500. //=======================================================================================
  501. // Global Form Variable
  502. //---------------------------------------------------------------------------------------
  503. var arErrorCode = new HashArray();
  504. var gSuppdeptcd = "";
  505. var lv_checkvalue = "";
  506. function fOrdScheList() //검사 대기 환자 리스트 조회한다.
  507. {
  508. ds_hidden_msgrgst.clearData;
  509. var oParam = {};
  510. oParam.id = "TRMNV12001";
  511. oParam.service = "waitguideapp.WaitGuideMngt";
  512. oParam.method = "reqGetTestScheList";
  513. oParam.inds = "req=ds_search";
  514. oParam.outds = "ds_grd_ordschelistinfo=ordschelistinfo ds_grd_ordscheretelistinfo=ordscheretelistinfo ds_grd_ordschereteendlistinfo=ordschereteendlistinfo ds_grd_ordentroomlistinfo=ordentroomlistinfo ds_msgrgstinfo=msgrgstinfo";
  515. oParam.async = false;
  516. oParam.callback = "cf_TRMNV12001";
  517. tranf_submit(oParam);
  518. ds_grd_ordschelistinfo.addColumn("chk","string");
  519. ds_grd_ordscheretelistinfo.addColumn("chk","string");
  520. }
  521. function cf_TRMNV12001(sSvcId, nErrorCode, sErrorMsg) {
  522. if(nErrorCode < 0) return;
  523. fOrdRoomInfrWaitPat(); // 진료대기예정자 리스트의 상위2명을 진료실 앞 대기 환자로 셋팅해주는 함수
  524. var msgstatus= ds_msgrgstinfo.getColumn(0,"msgstatus");
  525. if(!utlf_isNull(msgstatus)) // 공지사항이 존재 할때 필요한 노드에 카피 (상태값 u일때)
  526. {
  527. dsf_createDs("ds_hidden_msgrgst");
  528. dsf_copyDs(ds_hidden_msgrgst, ds_msgrgstinfo);
  529. }else{
  530. dsf_createDs("ds_hidden_msgrgst");
  531. dsf_copyDs(ds_hidden_msgrgst, ds_msgrgstinfo);
  532. ds_hidden_msgrgst.addRow();
  533. }
  534. }
  535. function fOrdRoomInfrWaitPat()// 진료대기예정자 리스트의 상위2명을 진료실 앞 대기 환자로 셋팅해주는 함수
  536. {
  537. ds_grd_ordinfoschelistinfo.clearData();
  538. if(ds_grd_ordschelistinfo.rowcount>0)
  539. {
  540. for(i=0;i<2;i++)
  541. {
  542. var pid=ds_grd_ordschelistinfo.getColumn(i,"pid");
  543. var orddd=ds_grd_ordschelistinfo.getColumn(i,"orddd");
  544. var cretno=ds_grd_ordschelistinfo.getColumn(i,"cretno");
  545. var ordrsrvtm=ds_grd_ordschelistinfo.getColumn(i,"ordrsrvtm");
  546. var orddrid=ds_grd_ordschelistinfo.getColumn(i,"orddrid");
  547. var orddeptcd=ds_grd_ordschelistinfo.getColumn(i,"orddeptcd");
  548. var patnm=ds_grd_ordschelistinfo.getColumn(i,"patnm");
  549. var ordrsrvseqno=ds_grd_ordschelistinfo.getColumn(i,"ordrsrvseqno");
  550. var sexage=ds_grd_ordschelistinfo.getColumn(i,"sexage");
  551. ds_grd_ordinfoschelistinfo.addRow();
  552. ds_grd_ordinfoschelistinfo.setColumn(i,"pid",pid);
  553. ds_grd_ordinfoschelistinfo.setColumn(i,"orddd",orddd);
  554. ds_grd_ordinfoschelistinfo.setColumn(i,"cretno",cretno);
  555. ds_grd_ordinfoschelistinfo.setColumn(i,"ordrsrvtm",ordrsrvtm);
  556. ds_grd_ordinfoschelistinfo.setColumn(i,"ordrsrvseqno",ordrsrvseqno);
  557. ds_grd_ordinfoschelistinfo.setColumn(i,"orddrid",orddrid);
  558. ds_grd_ordinfoschelistinfo.setColumn(i,"orddeptcd",orddeptcd);
  559. ds_grd_ordinfoschelistinfo.setColumn(i,"patnm",patnm);
  560. ds_grd_ordinfoschelistinfo.setColumn(i,"sexage",sexage);
  561. }
  562. }
  563. }
  564. function fOrdRetePatList() // 진료보류 및 완료 리스트의 환자 중 보류 환자만 보류환자 리스트로 셋팅해주는 함수
  565. {
  566. var addrow = 0; //보류및 완료 리스트에서 보류환자 갯수만 셀 변수
  567. if(ds_grd_ordschereteendlistinfo.rowcount>0)
  568. {
  569. ds_grd_ordscheretelistinfo.clearData();
  570. for(i=0;i<ds_grd_ordschereteendlistinfo.rowcount;i++)
  571. {
  572. var status=ds_grd_ordschereteendlistinfo.getColumn(i,"status");
  573. if(status=="1B"||status=="2B") //보류 환자 인것만 노드 만들어 copy한다
  574. {
  575. var pid=ds_grd_ordschereteendlistinfo.getColumn(i,"pid");
  576. var orddd=ds_grd_ordschereteendlistinfo.getColumn(i,"orddd");
  577. var cretno=ds_grd_ordschereteendlistinfo.getColumn(i,"cretno");
  578. var ordrsrvtm=ds_grd_ordschereteendlistinfo.getColumn(i,"ordrsrvtm");
  579. var ordrsrvseqno=ds_grd_ordschereteendlistinfo.getColumn(i,"ordrsrvseqno");
  580. var orddrid=ds_grd_ordschereteendlistinfo.getColumn(i,"orddrid");
  581. var orddeptcd=ds_grd_ordschereteendlistinfo.getColumn(i,"orddeptcd");
  582. var patnm=ds_grd_ordschereteendlistinfo.getColumn(i,"patnm");
  583. var ordrsrvtm=ds_grd_ordschereteendlistinfo.getColumn(i,"ordrsrvtm");
  584. var sexage=ds_grd_ordschereteendlistinfo.getColumn(i,"sexage");
  585. var ordtm=ds_grd_ordschereteendlistinfo.getColumn(i,"ordtm");
  586. var elbulbodstat=ds_grd_ordschereteendlistinfo.getColumn(i,"elbulbodstat"); // otpt전광판상태
  587. var status=ds_grd_ordschereteendlistinfo.getColumn(i,"status");
  588. addrow = ds_grd_ordscheretelistinfo.addRow();
  589. ds_grd_ordscheretelistinfo.setColumn(addrow,"pid",pid);
  590. ds_grd_ordscheretelistinfo.setColumn(addrow,"orddd",orddd);
  591. ds_grd_ordscheretelistinfo.setColumn(addrow,"cretno",cretno);
  592. ds_grd_ordscheretelistinfo.setColumn(addrow,"ordtm",ordtm);
  593. ds_grd_ordscheretelistinfo.setColumn(addrow,"ordrsrvtm",ordrsrvtm);
  594. ds_grd_ordscheretelistinfo.setColumn(addrow,"ordrsrvseqno",ordrsrvseqno);
  595. ds_grd_ordscheretelistinfo.setColumn(addrow,"orddrid",orddrid);
  596. ds_grd_ordscheretelistinfo.setColumn(addrow,"orddeptcd",orddeptcd);
  597. ds_grd_ordscheretelistinfo.setColumn(addrow,"patnm",patnm);
  598. ds_grd_ordscheretelistinfo.setColumn(addrow,"sexage",sexage);
  599. ds_grd_ordscheretelistinfo.setColumn(addrow,"elbulbodstat",elbulbodstat);
  600. ds_grd_ordscheretelistinfo.setColumn(addrow,"status",status);
  601. }
  602. }
  603. }
  604. }
  605. function fOrdPatWaitRete() // 진료대기 예정자 리스트에서 보류 버튼 클릭시 보류 상태로 변하는 함수
  606. {
  607. var idxRow=ds_grd_ordschelistinfo.rowposition;
  608. var idxfixRows=ds_grd_ordschelistinfo.rowcount;
  609. var idxRows=ds_grd_ordschelistinfo.rowcount;
  610. var chkCount=0;
  611. for(i=0;i<ds_grd_ordschelistinfo.rowcount;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  612. {
  613. var chkFlag=ds_grd_ordschelistinfo.getColumn(i,"chk");
  614. if(chkFlag=="1")
  615. {
  616. chkCount=chkCount+1;
  617. }
  618. }
  619. if(idxRow<=0 && chkCount==0) // 체크가 안되어 있으면서 그리드 밖을 클릭시
  620. {
  621. sysf_messageBox("환자를 선택","I008");
  622. return;
  623. }
  624. if(chkCount!=0)
  625. {
  626. fOrdPaitReteToWait(); // 여러개 체크시 보류 멀티 저장함수 태운다.
  627. return;
  628. }
  629. var pid=ds_grd_ordschelistinfo.getColumn(idxRow,"pid");
  630. var orddd=ds_grd_ordschelistinfo.getColumn(idxRow,"orddd");
  631. var cretno=ds_grd_ordschelistinfo.getColumn(idxRow,"cretno");
  632. var ordrsrvtm=ds_grd_ordschelistinfo.getColumn(idxRow,"ordrsrvtm");
  633. var ordrsrvseqno=ds_grd_ordschelistinfo.getColumn(idxRow,"ordrsrvseqno");
  634. var orddrid=ds_grd_ordschelistinfo.getColumn(idxRow,"orddrid");
  635. var orddeptcd=ds_grd_ordschelistinfo.getColumn(idxRow,"orddeptcd");
  636. dsf_createDsRow("ds_send_savedata",
  637. [{col:"pid", val:pid}
  638. ,{col:"orddd", val:orddd}
  639. ,{col:"cretno", val:cretno}
  640. ,{col:"ordrsrvtm", val:ordrsrvtm}
  641. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  642. ,{col:"patstat", val:"B"}
  643. ,{col:"orddrid", val:orddrid}
  644. ,{col:"orddeptcd", val:orddeptcd}
  645. ,{col:"dspflag", val:"T"}
  646. ]);
  647. var oParam = {};
  648. oParam.id = "TXMNV12001";
  649. oParam.service = "waitguideapp.WaitGuideMngt";
  650. oParam.method = "reqExeTestPatWaitReteList";
  651. oParam.inds = "req=ds_send_savedata";
  652. oParam.outds = "";
  653. oParam.async = false;
  654. oParam.callback = "cf_TXMNV12001";
  655. tranf_submit(oParam);
  656. }
  657. function cf_TXMNV12001(sSvcId, nErrorCode, sErrorMsg) {
  658. if(nErrorCode < 0) return;
  659. sysf_messageBox("처리가","I002");
  660. fOrdScheList();
  661. }
  662. function fOrdPatWait() //보류환자 대기 상태로 셋팅
  663. {
  664. var idxRow=ds_grd_ordscheretelistinfo.rowposition;
  665. var idxRows=ds_grd_ordscheretelistinfo.rowcount;
  666. var chkCount=0;
  667. for(i=0;i<idxRows;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  668. {
  669. var chkFlag=ds_grd_ordscheretelistinfo.getColumn(i,"chk");
  670. if(chkFlag=="1")
  671. {
  672. chkCount=chkCount+1;
  673. }
  674. }
  675. if(idxRow<0 && chkCount==0) // 체크가 안되어 있으면서 그리드 밖을 클릭시
  676. {
  677. sysf_messageBox("환자를 선택","I008");
  678. return;
  679. }
  680. if(chkCount!=0)
  681. {
  682. fOrdPatWaitToRete(); // 여러개 체크시 여러명 보류 환자 대기로 보내는 저장함수 태운다.
  683. return;
  684. }
  685. var pid=ds_grd_ordscheretelistinfo.getColumn(idxRow,"pid");
  686. var orddd=ds_grd_ordscheretelistinfo.getColumn(idxRow,"orddd");
  687. var cretno=ds_grd_ordscheretelistinfo.getColumn(idxRow,"cretno");
  688. var ordrsrvtm=ds_grd_ordscheretelistinfo.getColumn(idxRow,"ordrsrvtm");
  689. var ordrsrvseqno=ds_grd_ordscheretelistinfo.getColumn(idxRow,"ordrsrvseqno");
  690. var orddrid=ds_grd_ordscheretelistinfo.getColumn(idxRow,"orddrid");
  691. var orddeptcd=ds_grd_ordscheretelistinfo.getColumn(idxRow,"orddeptcd");
  692. var ordroomcd=ds_grd_ordscheretelistinfo.getColumn(idxRow,"ordroomcd");
  693. var status=ds_grd_ordscheretelistinfo.getColumn(idxRow,"status");
  694. var updttm=ds_grd_ordscheretelistinfo.getColumn(idxRow,"updttm");
  695. //alert(status);
  696. dsf_createDsRow("ds_send_savedata",
  697. [{col:"pid", val:pid}
  698. ,{col:"orddd", val:orddd}
  699. ,{col:"cretno", val:cretno}
  700. ,{col:"ordrsrvtm", val:ordrsrvtm}
  701. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  702. ,{col:"patstat", val:"D"}
  703. ,{col:"orddrid", val:orddrid}
  704. ,{col:"orddeptcd", val:orddeptcd}
  705. ,{col:"ordroomcd", val:ordroomcd}
  706. ,{col:"dspflag", val:"T"}
  707. ,{col:"status", val:status}
  708. ,{col:"updttm", val:updttm}
  709. ]);
  710. var oParam = {};
  711. oParam.id = "TXMNV12001";
  712. oParam.service = "waitguideapp.WaitGuideMngt";
  713. oParam.method = "reqExeTestPatWaitReteList";
  714. oParam.inds = "req=ds_send_savedata";
  715. oParam.outds = "";
  716. oParam.async = false;
  717. oParam.callback = "cf_TXMNV12001";
  718. tranf_submit(oParam);
  719. }
  720. function fOrdPatEndWait() //보류완료환자 대기 상태로 셋팅
  721. {
  722. var idxRow=ds_grd_ordschereteendlistinfo.rowposition;
  723. if(idxRow<0)
  724. {
  725. sysf_messageBox("환자를 선택","I008");
  726. return;
  727. }
  728. var pid=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"pid");
  729. var orddd=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"orddd");
  730. var cretno=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"cretno");
  731. var ordrsrvtm=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"/ordrsrvtm");
  732. var ordrsrvseqno=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"ordrsrvseqno");
  733. var orddrid=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"orddrid");
  734. var orddeptcd=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"orddeptcd");
  735. var ordroomcd=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"ordroomcd");
  736. var centcd=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"centcd");
  737. var status=ds_grd_ordschereteendlistinfo.getColumn(idxRow,"status"); //상태값
  738. dsf_createDsRow("ds_send_savedata",
  739. [{col:"pid", val:pid}
  740. ,{col:"orddd", val:orddd}
  741. ,{col:"cretno", val:cretno}
  742. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  743. ,{col:"patstat", val:"D"}
  744. ,{col:"orddrid", val:orddrid}
  745. ,{col:"orddeptcd", val:orddeptcd}
  746. ,{col:"ordroomcd", val:ordroomcd}
  747. ,{col:"centcd", val:centcd}
  748. ,{col:"dspflag", val:"T"}
  749. ,{col:"endflag", val:"Y"}
  750. ,{col:"status", val:status}
  751. ,{col:"ordrsrvtm", val:ordrsrvtm}
  752. ]);
  753. var oParam = {};
  754. oParam.id = "TXMNV12001";
  755. oParam.service = "waitguideapp.WaitGuideMngt";
  756. oParam.method = "reqExeTestPatWaitReteList";
  757. oParam.inds = "req=ds_send_savedata";
  758. oParam.outds = "";
  759. oParam.async = false;
  760. oParam.callback = "cf_TXMNV12001";
  761. tranf_submit(oParam);
  762. }
  763. function fOrdRoomEnter() // 진료앞 대기 환자 진료실 입실
  764. {
  765. var idxEntRow=ds_grd_ordentroomlistinfo.rowcount; // 들어오실분 리스트
  766. var idxRow=ds_grd_ordinfoschelistinfo.rowposition; //선택한 행
  767. //alert(idxRow);
  768. if(idxRow==1) //진료실 앞 대기 환자 리스트 2번째 환자는 입실시키지 못하도록 한다.
  769. {
  770. sysf_messageBox("입실할 환자의 우선순위를","I007");
  771. return;
  772. }
  773. if(idxEntRow>0) //들어오실 분 내역이 아직 존재할때
  774. {
  775. var patstat=ds_grd_ordentroomlistinfo.getColumn(idxEntRow -1,"patstat");
  776. if(patstat=="A")
  777. {
  778. sysf_messageBox("검사가 완료될 때까지 기다려 주십시요. 검사실 퇴실도 ","I006");
  779. return;
  780. }
  781. }
  782. var idxRow=ds_grd_ordinfoschelistinfo.rowposition;
  783. var pid=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"pid");
  784. var orddd=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddd");
  785. var cretno=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"cretno");
  786. var ordrsrvtm=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"ordrsrvtm");
  787. var ordrsrvseqno=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"ordrsrvseqno");
  788. var orddrid=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddrid");
  789. var orddeptcd=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddeptcd");
  790. var elbulbodstat=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"elbulbodstat");
  791. dsf_createDsRow("ds_send_savedata",
  792. [{col:"pid", val:pid}
  793. ,{col:"orddd", val:orddd}
  794. ,{col:"cretno", val:cretno}
  795. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  796. ,{col:"patstat", val:"A"}
  797. ,{col:"orddrid", val:orddrid}
  798. ,{col:"orddeptcd", val:orddeptcd}
  799. ,{col:"dspflag", val:"T"}
  800. ,{col:"ordrsrvtm", val:ordrsrvtm}
  801. ]);
  802. var oParam = {};
  803. oParam.id = "TXMNV12001";
  804. oParam.service = "waitguideapp.WaitGuideMngt";
  805. oParam.method = "reqExeTestPatWaitReteList";
  806. oParam.inds = "req=ds_send_savedata";
  807. oParam.outds = "";
  808. oParam.async = false;
  809. oParam.callback = "cf_TXMNV12001";
  810. tranf_submit(oParam);
  811. }
  812. function fOrdRoomOut() //진료실 퇴실 함수
  813. {
  814. var idxRow=ds_grd_ordentroomlistinfo.rowposition;
  815. var pid=ds_grd_ordentroomlistinfo.getColumn(idxRow,"pid");
  816. var orddd=ds_grd_ordentroomlistinfo.getColumn(idxRow,"orddd");
  817. var cretno=ds_grd_ordentroomlistinfo.getColumn(idxRow,"cretno");
  818. var ordrsrvtm=ds_grd_ordentroomlistinfo.getColumn(idxRow,"ordrsrvtm");
  819. var ordrsrvseqno=ds_grd_ordentroomlistinfo.getColumn(idxRow,"ordrsrvseqno");
  820. var orddrid=ds_grd_ordentroomlistinfo.getColumn(idxRow,"orddrid");
  821. var orddeptcd=ds_grd_ordentroomlistinfo.getColumn(idxRow,"orddeptcd");
  822. var status=ds_grd_ordentroomlistinfo.getColumn(idxRow,"status");
  823. //alert(status);
  824. dsf_createDsRow("ds_send_savedata",
  825. [{col:"pid", val:pid}
  826. ,{col:"orddd", val:orddd}
  827. ,{col:"cretno", val:cretno}
  828. ,{col:"ordrsrvtm", val:ordrsrvtm}
  829. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  830. ,{col:"patstat", val:"C"}
  831. ,{col:"orddrid", val:orddrid}
  832. ,{col:"orddeptcd", val:orddeptcd}
  833. ,{col:"dspflag", val:"T"}
  834. ,{col:"ordrsrvtm", val:ordrsrvtm}
  835. ,{col:"status", val:status}
  836. ]);
  837. var oParam = {};
  838. oParam.id = "TXMNV12001";
  839. oParam.service = "waitguideapp.WaitGuideMngt";
  840. oParam.method = "reqExeTestPatWaitReteList";
  841. oParam.inds = "req=ds_send_savedata";
  842. oParam.outds = "";
  843. oParam.async = false;
  844. oParam.callback = "cf_TXMNV12001";
  845. tranf_submit(oParam);
  846. }
  847. function fOrdInfoPatWaitRete() // 진료실앞 대기환자에서 보류 상태 클릭시 발생하는 함수
  848. {
  849. var idxRow=ds_grd_ordinfoschelistinfo.rowposition;
  850. var pid=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"pid");
  851. var orddd=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddd");
  852. var cretno=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"cretno");
  853. var ordrsrvtm=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"ordrsrvtm");
  854. var ordrsrvseqno=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"ordrsrvseqno");
  855. var orddrid=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddrid");
  856. var orddeptcd=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddeptcd");
  857. //var ordroomcd=model.getValue("/root/main/ordschelist/ordinfoschelistinfo"+"["+idxRow+"]/ordroomcd");
  858. if(utlf_isNull(pid))
  859. {
  860. sysf_messageBox("처리할 환자가","I004");
  861. return;
  862. }
  863. dsf_createDsRow("ds_send_savedata",
  864. [{col:"pid", val:pid}
  865. ,{col:"orddd", val:orddd}
  866. ,{col:"cretno", val:cretno}
  867. ,{col:"ordrsrvtm", val:ordrsrvtm}
  868. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  869. ,{col:"patstat", val:"B"}
  870. ,{col:"orddrid", val:orddrid}
  871. ,{col:"orddeptcd", val:orddeptcd}
  872. ,{col:"dspflag", val:"T"}
  873. ]);
  874. var oParam = {};
  875. oParam.id = "TXMNV12001";
  876. oParam.service = "waitguideapp.WaitGuideMngt";
  877. oParam.method = "reqExeTestPatWaitReteList";
  878. oParam.inds = "req=ds_send_savedata";
  879. oParam.outds = "";
  880. oParam.async = false;
  881. oParam.callback = "cf_TXMNV12001";
  882. tranf_submit(oParam);
  883. }
  884. function fSetMenuGroupSeq(toSeq, type) // 순서 변경 함수
  885. {
  886. var isSeq = ds_grd_ordschelistinfo.rowposition;
  887. var startRow = "";
  888. var endRow = "";
  889. if(isSeq >= 0){ // 클릭한 로우가 존재할 때
  890. //var srcSeq = (isSeq > toSeq) ? isSeq+1 : isSeq; //클릭한 행과 이동할 행을 비교하여 클릭한 행이 클 때는
  891. var srcSeq = "";
  892. if (type == "above") {
  893. srcSeq = isSeq +1;
  894. }else{
  895. srcSeq = isSeq;
  896. toSeq = toSeq + 1;
  897. }
  898. ds_grd_ordschelistinfo.insertRow(toSeq); // 이동할 위치에 행을 하나 삽입한다.
  899. //ds_grd_ordschelistinfo.insertRow(toSeq, type, false); // 이동할 위치에 행을 하나 삽입한다.
  900. ds_grd_ordschelistinfo.copyRow(toSeq,ds_grd_ordschelistinfo,srcSeq);
  901. //model.copyNode("/root/main/ordschelist/ordschelistinfo["+grd_ordschelistinfo.row+"]", "/root/main/ordschelist/ordschelistinfo["+srcSeq+"]");
  902. // alert("srcSeq위치에행을삭제한다"+srcSeq);
  903. //grd_ordschelistinfo.deleteRow(srcSeq, false);
  904. ds_grd_ordschelistinfo.deleteRow(srcSeq);
  905. if(isSeq > toSeq){
  906. startRow = toSeq;
  907. endRow = isSeq;
  908. ds_grd_ordschelistinfo.rowposition = startRow; //위로 올릴때 포커스는 시작점
  909. //alert("start"+startRow);
  910. if(isSeq==startRow) // 순서 위로 변경시 변경한 순서와 처음 순서가 같을 때
  911. {
  912. lv_checkvalue = "Y";
  913. //alert("위"+model.getValue("/root/chkvalue/chk"));
  914. }
  915. }else{
  916. startRow = isSeq;
  917. endRow = toSeq;
  918. ds_grd_ordschelistinfo.rowposition = endRow-1; //밑으로 내릴 때 포커스는 끝나는점
  919. //alert("end"+endRow);
  920. if(isSeq==endRow) // 순서 밑으로 변경시 변경한 순서와 처음 순서가 같을 때
  921. {
  922. lv_checkvalue = "Y";
  923. //alert("아래"+model.getValue("/root/chkvalue/chk"));
  924. }
  925. }
  926. }else{
  927. sysf_messageBox("변경할 메뉴그룹을","C002");
  928. }
  929. }
  930. function fOrdPatWaitSeqChng() //대기환자 순서 변경 함수
  931. {
  932. var idxRows=ds_grd_ordschelistinfo.rowcount;
  933. var idxRow=ds_grd_ordschelistinfo.rowcount-1; //클릭한 행 반환
  934. var upRow=idxRow-1; //클릭한 행 윗 행
  935. var downRow=idxRow+1; //클릭한 행 아래 행
  936. if(group3.rdo_condwait.value=="2") //보류 환자 선택시
  937. {
  938. sysf_messageBox("순서 변경은 대기 환자만","I006");
  939. return;
  940. }
  941. if(idxRows==0) //조회된 행이 없을 때
  942. {
  943. sysf_messageBox("환자 리스트가","I004");
  944. return;
  945. }
  946. if(idxRow<0) // 환자 선택하지 않았을때
  947. {
  948. sysf_messageBox("순서 변경할 환자를 선택","I008");
  949. return;
  950. }
  951. if(idxRow<3) //최상위 3명 환자의 순서는 변경할 수 없다.
  952. {
  953. sysf_messageBox("상위 2명 환자의 순서는 변경할수","E001");
  954. return;
  955. }
  956. if(lv_checkvalue=="Y") //순서가 변경되지 않았을 때
  957. {
  958. sysf_messageBox("순서 변경 유무를","I007");
  959. return;
  960. }
  961. // ds_grd_ordschereteendlistinfo
  962. // ds_grd_ordschelistinfo
  963. var idxordrsrvtm=ds_grd_ordschelistinfo.getColumn(idxRow,"updttm");
  964. var upordrsrvtm=ds_grd_ordschelistinfo.getColumn(upRow,"updttm");
  965. var downordrsrvtm=ds_grd_ordschelistinfo.getColumn(downRow,"updttm");
  966. var idxordrsrvseqno=ds_grd_ordschelistinfo.getColumn(idxRow,"ordrsrvseqno");
  967. var upordrsrvseqno=ds_grd_ordschelistinfo.getColumn(upRow,"ordrsrvseqno");
  968. var downordrsrvseqno=ds_grd_ordschelistinfo.getColumn(downRow,"ordrsrvseqno");
  969. var subordrsrvseqno = 0;
  970. if(upordrsrvtm==downordrsrvtm)
  971. {
  972. var midseqno=(parseInt(upordrsrvseqno)+parseInt(downordrsrvseqno))/2;
  973. subordrsrvseqno=Math.round(midseqno);
  974. }
  975. else
  976. {
  977. var midseqno2=(parseInt(10000)+parseInt(upordrsrvseqno))/2;
  978. //var subordrsrvseqno=round(midseqno2,0);
  979. subordrsrvseqno=Math.round(midseqno2);
  980. //alert(subordrsrvseqno);
  981. }
  982. trace('idxRow'+idxRow);
  983. var pid=ds_grd_ordschelistinfo.getColumn(idxRow,"pid");
  984. var orddd=ds_grd_ordschelistinfo.getColumn(idxRow,"orddd");
  985. var cretno=ds_grd_ordschelistinfo.getColumn(idxRow,"cretno");
  986. var orddrid=ds_grd_ordschelistinfo.getColumn(idxRow,"orddrid");
  987. var orddeptcd=ds_grd_ordschelistinfo.getColumn(idxRow,"orddeptcd");
  988. var patstat=ds_grd_ordschelistinfo.getColumn(idxRow,"patstat");
  989. trace("pid : "+pid+'/'+orddd+'/'+cretno+'/'+orddrid+'/'+orddeptcd+'/'+patstat);
  990. dsf_createDsRow("ds_send_savedata",
  991. [{col:"pid", val:pid}
  992. ,{col:"orddd", val:orddd}
  993. ,{col:"cretno", val:cretno}
  994. ,{col:"ordrsrvseqno", val:subordrsrvseqno}
  995. ,{col:"patstat", val:"D"}
  996. ,{col:"orddrid", val:orddrid}
  997. ,{col:"orddeptcd", val:orddeptcd}
  998. ,{col:"dspflag", val:"T"}
  999. ,{col:"updttm", val:upordrsrvtm}
  1000. ]);
  1001. var oParam = {};
  1002. oParam.id = "TXMNV12004";
  1003. oParam.service = "waitguideapp.WaitGuideMngt";
  1004. oParam.method = "reqExeTestPatWaitListSeq";
  1005. oParam.inds = "req=ds_send_savedata";
  1006. oParam.outds = "";
  1007. oParam.async = false;
  1008. oParam.callback = "cf_TXMNV12004";
  1009. tranf_submit(oParam);
  1010. }
  1011. function cf_TXMNV12004(sSvcId, nErrorCode, sErrorMsg) {
  1012. if(nErrorCode < 0) return;
  1013. sysf_messageBox("순서변경이","I002");
  1014. fOrdScheList();
  1015. lv_chkvalue = "";
  1016. }
  1017. function fOrdRoomMsgSave() //공지사항 등록 함수
  1018. {
  1019. var msgfromtm=ds_hidden_msgrgst.getColumn(0,"msgfromtm");
  1020. var msgtotm=ds_hidden_msgrgst.getColumn(0,"msgtotm");
  1021. var orddd=ds_search.getColumn(0,"orddd");
  1022. var orddeptcd=ds_search.getColumn(0,"orddeptcd");
  1023. var ordroomcd=ds_search.getColumn(0,"ordroomcd");
  1024. if(utlf_isNull(msgfromtm))
  1025. {
  1026. sysf_messageBox("공지사항 표시시간은","I003");
  1027. group3.ipt_msgfromtm.setFocus();
  1028. return;
  1029. }
  1030. if(utlf_isNull(msgtotm))
  1031. {
  1032. sysf_messageBox("공지사항 표시시간은","I003");
  1033. group3.ipt_msgtotm.setFocus();
  1034. return;
  1035. }
  1036. if(msgfromtm>msgtotm)
  1037. {
  1038. sysf_messageBox("시작시간이 종료시간보다 클 수는","I004");
  1039. group3.ipt_msgfromtm.setFocus();
  1040. return;
  1041. }
  1042. if(utlf_isNull(orddeptcd))
  1043. {
  1044. sysf_messageBox("지원부서는","I003");
  1045. return;
  1046. }
  1047. if(utlf_isNull(ordroomcd))
  1048. {
  1049. sysf_messageBox("검사치료실은","I003");
  1050. return;
  1051. }
  1052. dsf_createDsRow("ds_send_savedata",
  1053. [{col:"centcd", val:"-"}
  1054. ,{col:"orddd", val:orddd}
  1055. ,{col:"subdeptcd", val:"-"}
  1056. ,{col:"msg", val:ds_hidden_msgrgst.getColumn(0,"msg")}
  1057. ,{col:"orddeptcd", val:orddeptcd}
  1058. ,{col:"ordroomcd", val:ordroomcd}
  1059. ,{col:"msgfromtm", val:ds_hidden_msgrgst.getColumn(0,"msgfromtm")}
  1060. ,{col:"msgtotm", val:ds_hidden_msgrgst.getColumn(0,"msgtotm")}
  1061. ,{col:"status", val:ds_hidden_msgrgst.getColumn(0,"msgstatus")}
  1062. ]);
  1063. var oParam = {};
  1064. oParam.id = "TXMNV12003";
  1065. oParam.service = "waitguideapp.WaitGuideMngt";
  1066. oParam.method = "reqExeTestPatMsgInfo";
  1067. oParam.inds = "req=ds_send_savedata";
  1068. oParam.outds = "";
  1069. oParam.async = false;
  1070. oParam.callback = "cf_TXMNV12003";
  1071. tranf_submit(oParam);
  1072. //ds_hidden_msgrgst.setColumn(0,"msgstatus","");
  1073. }
  1074. function cf_TXMNV12003(sSvcId, nErrorCode, sErrorMsg) {
  1075. if(nErrorCode < 0) return;
  1076. sysf_messageBox("검사실 공지사항 처리가","I002");
  1077. fOrdScheList(); //조회
  1078. }
  1079. function fOrdPaitReteToWait()// // 대기환자 여러 명 보류로 보내는 함수
  1080. {
  1081. var idxRow=ds_grd_ordschelistinfo.rowcount;
  1082. var chkCount=0;
  1083. var chkdata = "chk"
  1084. + "▦pid"
  1085. + "▦orddd"
  1086. + "▦cretno"
  1087. + "▦ordrsrvtm"
  1088. + "▦ordrsrvseqno"
  1089. + "▦orddrid"
  1090. + "▦orddeptcd"
  1091. + "▦patstat"
  1092. + "▦dspflag"
  1093. + "▩" ;
  1094. for(i=0;i<idxRow;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  1095. {
  1096. var chkFlag=ds_grd_ordschelistinfo.getColumn(i,"chk");
  1097. if(chkFlag=="1")
  1098. {
  1099. chkdata+= chkFlag
  1100. + "▦" +ds_grd_ordschelistinfo.getColumn(i,"pid")
  1101. + "▦" +ds_grd_ordschelistinfo.getColumn(i,"orddd")
  1102. + "▦" +ds_grd_ordschelistinfo.getColumn(i,"cretno")
  1103. + "▦" +ds_grd_ordschelistinfo.getColumn(i,"ordrsrvtm")
  1104. + "▦" +ds_grd_ordschelistinfo.getColumn(i,"ordrsrvseqno")
  1105. + "▦" +ds_grd_ordschelistinfo.getColumn(i,"orddrid")
  1106. + "▦" +ds_grd_ordschelistinfo.getColumn(i,"orddeptcd")
  1107. + "▦" +"B" //환자 상태 보류 B로 저장
  1108. + "▦" +"T" //외래 플래그 O로 저장
  1109. + "▩" ;
  1110. chkCount=chkCount+1;
  1111. }
  1112. }
  1113. if(chkCount==0)
  1114. {
  1115. sysf_messageBox("보류 시킬 환자를 대기 리스트에서 선택","I008");
  1116. return;
  1117. }
  1118. dsf_setCSVToDs("ds_send_savedata",chkdata);
  1119. var oParam = {};
  1120. oParam.id = "TXMNV12002";
  1121. oParam.service = "waitguideapp.WaitGuideMngt";
  1122. oParam.method = "reqExeTestPatWaitReteList";
  1123. oParam.inds = "req=ds_send_savedata";
  1124. oParam.outds = "";
  1125. oParam.async = false;
  1126. oParam.callback = "cf_TXMNV12002";
  1127. tranf_submit(oParam);
  1128. }
  1129. function cf_TXMNV12002(sSvcId, nErrorCode, sErrorMsg) {
  1130. if(nErrorCode < 0) return;
  1131. sysf_messageBox("처리가","I002");
  1132. fOrdScheList();
  1133. }
  1134. function fOrdPatWaitToRete() // 보류 환자 대기 상태로 멀티 저장하는 함수
  1135. {
  1136. var idxRow=ds_grd_ordscheretelistinfo.rowcount;
  1137. var chkCount=0;
  1138. var chkdata = "chk"
  1139. + "▦pid"
  1140. + "▦orddd"
  1141. + "▦cretno"
  1142. + "▦ordrsrvtm"
  1143. + "▦ordrsrvseqno"
  1144. + "▦orddrid"
  1145. + "▦orddeptcd"
  1146. + "▦ordroomcd"
  1147. + "▦centcd"
  1148. + "▦patstat"
  1149. + "▦dspflag"
  1150. + "▩" ;
  1151. for(i=0;i<idxRow;i++) // 그리드에 체크된 개수만큼 for문 돌려서 값을 체크한다.
  1152. {
  1153. var chkFlag=ds_grd_ordscheretelistinfo.getColumn(i,"chk");
  1154. if(chkFlag=="1")
  1155. {
  1156. chkdata+= chkFlag
  1157. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"pid")
  1158. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"orddd")
  1159. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"cretno")
  1160. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"ordrsrvtm")
  1161. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"ordrsrvseqno")
  1162. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"orddrid")
  1163. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"orddeptcd")
  1164. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"ordroomcd")
  1165. + "▦" +ds_grd_ordscheretelistinfo.getColumn(i,"centcd")
  1166. + "▦" +"D" //환자 상태 대기 D로 저장
  1167. + "▦" +"T" //검사 플래그 T로 저장
  1168. + "▩" ;
  1169. chkCount=chkCount+1;
  1170. }
  1171. }
  1172. if(chkCount==0)
  1173. {
  1174. sysf_messageBox("대기시킬 환자를 보류 리스트에서 선택","I008");
  1175. return;
  1176. }
  1177. dsf_setCSVToDs("ds_send_savedata",chkdata);
  1178. var oParam = {};
  1179. oParam.id = "TXMNV12002";
  1180. oParam.service = "waitguideapp.WaitGuideMngt";
  1181. oParam.method = "reqExeTestPatWaitReteList";
  1182. oParam.inds = "req=ds_send_savedata";
  1183. oParam.outds = "";
  1184. oParam.async = false;
  1185. oParam.callback = "cf_TXMNV12002";
  1186. tranf_submit(oParam);
  1187. }
  1188. function fOrdAutoRoomOut() //자동 퇴실 함수
  1189. {
  1190. var idxEntRow=ds_grd_ordentroomlistinfo.rowcount; // 들어오실분 리스트
  1191. var idxRow=ds_grd_ordinfoschelistinfo.rowposition; //대기 환자 리스트
  1192. var idxRows=ds_grd_ordinfoschelistinfo.rowcount;
  1193. if(idxEntRow==0)
  1194. {
  1195. sysf_messageBox("입실한 환자가","I004");
  1196. return;
  1197. }
  1198. var idxRow=0;
  1199. var pid=ds_grd_ordentroomlistinfo.getColumn(idxRow,"pid");
  1200. var orddd=ds_grd_ordentroomlistinfo.getColumn(idxRow,"orddd");
  1201. var cretno=ds_grd_ordentroomlistinfo.getColumn(idxRow,"cretno");
  1202. var ordrsrvtm=ds_grd_ordentroomlistinfo.getColumn(idxRow,"ordrsrvtm");
  1203. var ordrsrvseqno=ds_grd_ordentroomlistinfo.getColumn(idxRow,"ordrsrvseqno");
  1204. var orddrid=ds_grd_ordentroomlistinfo.getColumn(idxRow,"orddrid");
  1205. var orddeptcd=ds_grd_ordentroomlistinfo.getColumn(idxRow,"orddeptcd");
  1206. var elbulbodstat=ds_grd_ordentroomlistinfo.getColumn(idxRow,"elbulbodstat");
  1207. dsf_createDsRow("ds_send_savedata",
  1208. [{col:"pid", val:pid}
  1209. ,{col:"orddd", val:orddd}
  1210. ,{col:"cretno", val:cretno}
  1211. ,{col:"ordrsrvtm", val:ordrsrvtm}
  1212. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  1213. ,{col:"patstat", val:"C"}
  1214. ,{col:"orddrid", val:orddrid}
  1215. ,{col:"orddeptcd", val:orddeptcd}
  1216. ,{col:"dspflag", val:"T"}
  1217. ]);
  1218. var oParam = {};
  1219. oParam.id = "TXMNV12001";
  1220. oParam.service = "waitguideapp.WaitGuideMngt";
  1221. oParam.method = "reqExeTestPatWaitReteList";
  1222. oParam.inds = "req=ds_send_savedata";
  1223. oParam.outds = "";
  1224. oParam.async = false;
  1225. oParam.callback = "cf_TXMNV12001";
  1226. tranf_submit(oParam);
  1227. }
  1228. function fAutoRoomEnter() // 자동입실 함수
  1229. {
  1230. var idxEntRow=ds_grd_ordentroomlistinfo.rowcount; // 들어오실분 리스트
  1231. //var idxRow=ds_grd_ordinfoschelistinfo.rowposition; //선택한 행
  1232. var idxRows=ds_grd_ordinfoschelistinfo.rowcount;
  1233. if(idxRows==0)
  1234. {
  1235. sysf_messageBox("조회된 환자 리스트가","I004");
  1236. return;
  1237. }
  1238. if(idxEntRow>0) //들어오실 분 내역이 아직 존재할때
  1239. {
  1240. var patstat=ds_grd_ordentroomlistinfo.getColumn(idxEntRow-1,"patstat");
  1241. if(patstat=="A")
  1242. {
  1243. sysf_messageBox("검사가 완료될 때까지 기다려 주십시요. 검사실 퇴실도 ","I006");
  1244. return;
  1245. }
  1246. }
  1247. var idxRow=0;
  1248. var pid=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"pid");
  1249. var orddd=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddd");
  1250. var cretno=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"cretno");
  1251. var ordrsrvtm=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"ordrsrvtm");
  1252. var ordrsrvseqno=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"ordrsrvseqno");
  1253. var orddrid=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddrid");
  1254. var orddeptcd=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"orddeptcd");
  1255. var elbulbodstat=ds_grd_ordinfoschelistinfo.getColumn(idxRow,"elbulbodstat");
  1256. dsf_createDsRow("ds_send_savedata",
  1257. [{col:"pid", val:pid}
  1258. ,{col:"orddd", val:orddd}
  1259. ,{col:"cretno", val:cretno}
  1260. ,{col:"ordrsrvtm", val:ordrsrvtm}
  1261. ,{col:"ordrsrvseqno", val:ordrsrvseqno}
  1262. ,{col:"patstat", val:"A"}
  1263. ,{col:"orddrid", val:orddrid}
  1264. ,{col:"orddeptcd", val:orddeptcd}
  1265. ,{col:"dspflag", val:"T"}
  1266. ]);
  1267. var oParam = {};
  1268. oParam.id = "TXMNV12001";
  1269. oParam.service = "waitguideapp.WaitGuideMngt";
  1270. oParam.method = "reqExeTestPatWaitReteList";
  1271. oParam.inds = "req=ds_send_savedata";
  1272. oParam.outds = "";
  1273. oParam.async = false;
  1274. oParam.callback = "cf_TXMNV12001";
  1275. tranf_submit(oParam);
  1276. }
  1277. function SMMNV12000_oninit(obj:Form, e:InitEventInfo)
  1278. {
  1279. frmf_initForm(obj); // 화면공통
  1280. }
  1281. function SMMNV12000_onload(obj:Form, e:LoadEventInfo)
  1282. {
  1283. var CurrentDate = utlf_getCurrentDate();
  1284. ds_search.setColumn(0,"orddd",CurrentDate);
  1285. //model.makeValue("/root/hidden/cond/condwait","1"); // 진료예정 대기로 디폴트 값 셋팅
  1286. lf_aezfSetSuppDeptcd(); //AEZ0001.xjs
  1287. gSuppdeptcd = frmf_getParameter("AST_DEPTCD");
  1288. group3.rdo_condwait.value = "1";
  1289. group3.grd_ordschereteendlistinfo.visible=false;
  1290. dsf_createDsRow("ds_send_req",
  1291. [{col:"basesuppdeptcd", val:gSuppdeptcd }
  1292. ]);
  1293. var oParam = {};
  1294. oParam.id = "TRAEA00904";
  1295. oParam.service = "examcurersrvapp.RsrvRef";
  1296. oParam.method = "reqGetSuppDeptCdList";
  1297. oParam.inds = "req=ds_send_req";
  1298. oParam.outds = "ds_init_cmb_orddeptcd=item";
  1299. oParam.async = false;
  1300. oParam.callback = "cf_TRAEA00904";
  1301. tranf_submit(oParam);
  1302. }
  1303. function cf_TRAEA00904(sSvcId, nErrorCode, sErrorMsg) {
  1304. if(nErrorCode < 0) return;
  1305. // var deptcd = sysf_getUserInfo("dutplcecd"); //병동에 부서 셋팅
  1306. //trace("deptcd:"+deptcd);
  1307. ds_search.setColumn(0,"orddeptcd",gSuppdeptcd);
  1308. // ds_search.setColumn(0,"orddeptcd","2160000000");
  1309. dsf_createDsRow("ds_send",
  1310. [{col:"basesuppdeptcd", val:ds_search.getColumn(0,"orddeptcd")}
  1311. ,{col:"rbasecdflag", val:"R"}
  1312. ]);
  1313. var oParam = {};
  1314. oParam.id = "TRAEA00902";
  1315. oParam.service = "examcurebaseapp.ExamCureRoom";
  1316. oParam.method = "reqGetExamCureRoomGrpList";
  1317. oParam.inds = "req=ds_send";
  1318. oParam.outds = "ds_init_cmb_ordroomcd=item";
  1319. oParam.async = false;
  1320. oParam.callback = "cf_TRAEA00902";
  1321. tranf_submit(oParam);
  1322. frmf_addComboItem("group3.grp_sea.cmb_ordroomcd","전체","","above");
  1323. }
  1324. function cf_TRAEA00902(sSvcId, nErrorCode, sErrorMsg) {
  1325. if(nErrorCode < 0) return;
  1326. }
  1327. function group3_grp_sea_button1_onclick(obj:Button, e:ClickEventInfo)
  1328. {
  1329. fOrdScheList();
  1330. }
  1331. function group3_grp_sea_cmb_orddeptcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1332. {
  1333. obj.updateToDataset();
  1334. dsf_createDsRow("ds_send",
  1335. [{col:"basesuppdeptcd", val:ds_search.getColumn(0,"orddeptcd")}
  1336. ,{col:"rbasecdflag", val:"R"}
  1337. ]);
  1338. var oParam = {};
  1339. oParam.id = "TRAEA00902";
  1340. oParam.service = "examcurebaseapp.ExamCureRoom";
  1341. oParam.method = "reqGetExamCureRoomGrpList";
  1342. oParam.inds = "req=ds_send";
  1343. oParam.outds = "ds_init_cmb_ordroomcd=item";
  1344. oParam.async = false;
  1345. oParam.callback = "cf_TRAEA00902";
  1346. tranf_submit(oParam);
  1347. }
  1348. function group3_grp_sea_cmb_ordroomcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1349. {
  1350. obj.updateToDataset();
  1351. fOrdScheList(); //조회 함수
  1352. }
  1353. function group3_grd_ordschelistinfo_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  1354. {
  1355. if(e.row < 0 || e.col < 0) return;
  1356. obj.setFocus();
  1357. grdf_setSelectedCell(obj, e);
  1358. popmenu.trackPopup(e.screenX,e.screenY);
  1359. }
  1360. function group3_grd_ordscheretelistinfo_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  1361. {
  1362. if(e.row < 0 || e.col < 0) return;
  1363. obj.setFocus();
  1364. grdf_setSelectedCell(obj, e);
  1365. popmenu2.trackPopup(e.screenX,e.screenY);
  1366. }
  1367. function group3_grd_ordentroomlistinfo_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  1368. {
  1369. if(e.row < 0 || e.col < 0) return;
  1370. obj.setFocus();
  1371. grdf_setSelectedCell(obj, e);
  1372. popmenu4.trackPopup(e.screenX,e.screenY);
  1373. }
  1374. function group3_grd_ordinfoschelistinfo_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  1375. {
  1376. if(e.row < 0 || e.col < 0) return;
  1377. obj.setFocus();
  1378. grdf_setSelectedCell(obj, e);
  1379. popmenu3.trackPopup(e.screenX,e.screenY);
  1380. }
  1381. function group3_button2_onclick(obj:Button, e:ClickEventInfo)
  1382. {
  1383. fOrdPaitReteToWait();
  1384. }
  1385. function group3_button4_onclick(obj:Button, e:ClickEventInfo)
  1386. {
  1387. fOrdPatWaitToRete();
  1388. }
  1389. function group3_rdo_condwait_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  1390. {
  1391. //var condwait=model.getValue("/root/hidden/cond/condwait");
  1392. //alert(rdo_condwait.value);
  1393. if(e.postvalue=="1") // 대기일때
  1394. {
  1395. group3.grd_ordschelistinfo.visible=true;
  1396. group3.grd_ordschereteendlistinfo.visible=false;
  1397. }
  1398. else // 보류일때
  1399. {
  1400. //submit("TRMNV07004"); //진료예정자 보류 리스트 조회
  1401. group3.grd_ordschelistinfo.visible=false;
  1402. group3.grd_ordschereteendlistinfo.visible=true;
  1403. }
  1404. }
  1405. function group3_grd_ordschereteendlistinfo_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  1406. {
  1407. if(e.row < 0 || e.col < 0) return;
  1408. obj.setFocus();
  1409. grdf_setSelectedCell(obj, e);
  1410. popmenu5.trackPopup(e.screenX,e.screenY);
  1411. }
  1412. function group3_button7_onclick(obj:Button, e:ClickEventInfo)
  1413. {
  1414. if(group3.rdo_condwait.value=="2") //보류 환자 선택시
  1415. {
  1416. sysf_messageBox("순서 변경은 대기 환자만","I006");
  1417. return;
  1418. }
  1419. if(ds_grd_ordschelistinfo.rowposition<0)
  1420. {
  1421. sysf_messageBox("환자를 선택","I008");
  1422. return;
  1423. }
  1424. if(ds_grd_ordschelistinfo.rowposition > 2)
  1425. {
  1426. fSetMenuGroupSeq("2", "above");
  1427. }
  1428. else
  1429. {
  1430. sysf_messageBox("상위 2명 환자의 순서는 변경할수","E001");
  1431. }
  1432. }
  1433. function group3_button8_onclick(obj:Button, e:ClickEventInfo)
  1434. {
  1435. if(group3.rdo_condwait.value=='2') //보류 환자 선택시
  1436. {
  1437. sysf_messageBox("순서 변경은 대기 환자만","I006");
  1438. return;
  1439. }
  1440. if(ds_grd_ordschelistinfo.rowposition<0)
  1441. {
  1442. sysf_messageBox("환자를 선택","I008");
  1443. return;
  1444. }
  1445. if(ds_grd_ordschelistinfo.rowposition < 2)
  1446. {
  1447. sysf_messageBox("상위 2명 환자의 순서는 변경할수","E001");
  1448. return;
  1449. }
  1450. else
  1451. {
  1452. if( ds_grd_ordschelistinfo.rowcount -1 > ds_grd_ordschelistinfo.rowposition )
  1453. {
  1454. fSetMenuGroupSeq(ds_grd_ordschelistinfo.rowcount -1, "below");
  1455. }
  1456. else
  1457. {
  1458. sysf_messageBox("최하위 메뉴그룹이","E005");
  1459. }
  1460. }
  1461. }
  1462. function group3_btn_to_down_onclick(obj:Button, e:ClickEventInfo)
  1463. {
  1464. if(group3.rdo_condwait.value=="2") //보류 환자 선택시
  1465. {
  1466. sysf_messageBox("순서 변경은 대기 환자만","I006");
  1467. return;
  1468. }
  1469. if(ds_grd_ordschelistinfo.rowposition<0)
  1470. {
  1471. sysf_messageBox("환자를 선택","I008");
  1472. return;
  1473. }
  1474. if(ds_grd_ordschelistinfo.rowposition < 2)
  1475. {
  1476. sysf_messageBox("상위 2명 환자의 순서는 변경할수","E001");
  1477. return;
  1478. }
  1479. else
  1480. {
  1481. if( ds_grd_ordschelistinfo.rowcount -1 > ds_grd_ordschelistinfo.rowposition )
  1482. {
  1483. fSetMenuGroupSeq(ds_grd_ordschelistinfo.rowposition+1, "below");
  1484. }
  1485. else
  1486. {
  1487. sysf_messageBox("최하위 메뉴그룹이","E005");
  1488. }
  1489. }
  1490. }
  1491. function group3_button9_onclick(obj:Button, e:ClickEventInfo)
  1492. {
  1493. if(group3.rdo_condwait.value=="2") //보류 환자 선택시
  1494. {
  1495. sysf_messageBox("순서 변경은 대기 환자만","I006");
  1496. return;
  1497. }
  1498. if(ds_grd_ordschelistinfo.rowposition<0)
  1499. {
  1500. sysf_messageBox("환자를 선택","I008");
  1501. return;
  1502. }
  1503. if(ds_grd_ordschelistinfo.rowposition > 2)
  1504. {
  1505. fSetMenuGroupSeq(ds_grd_ordschelistinfo.rowposition-1, "above");
  1506. }
  1507. else
  1508. {
  1509. sysf_messageBox("상위 2명 환자의 순서는 변경할수","E001");
  1510. }
  1511. }
  1512. function group3_button12_onclick(obj:Button, e:ClickEventInfo)
  1513. {
  1514. fOrdPatWaitSeqChng();
  1515. }
  1516. function group3_button6_onclick(obj:Button, e:ClickEventInfo)
  1517. {
  1518. fOrdRoomMsgSave();
  1519. }
  1520. function group3_button3_onclick(obj:Button, e:ClickEventInfo)
  1521. {
  1522. ds_hidden_msgrgst.setColumn(0,"msgstatus","D");
  1523. fOrdRoomMsgSave();
  1524. }
  1525. function group3_button13_onclick(obj:Button, e:ClickEventInfo)
  1526. {
  1527. fAutoRoomEnter(); //지동입실 함수
  1528. }
  1529. function group3_button14_onclick(obj:Button, e:ClickEventInfo)
  1530. {
  1531. fOrdAutoRoomOut(); //자동 퇴실 함수
  1532. }
  1533. function popmenu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1534. {
  1535. eval(e.id + "()");
  1536. }
  1537. function popmenu2_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1538. {
  1539. eval(e.id + "()");
  1540. }
  1541. function popmenu3_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1542. {
  1543. eval(e.id + "()");
  1544. }
  1545. function popmenu4_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1546. {
  1547. eval(e.id + "()");
  1548. }
  1549. function popmenu5_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1550. {
  1551. eval(e.id + "()");
  1552. }
  1553. ]]></Script>
  1554. </Form>
  1555. </FDL>