SMARC00500_병의원인터넷예약환자조회.xrw 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>병의원 인터넷예약환자 조회</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <send>
  10. <search>
  11. <condflag/>
  12. <fromdd/>
  13. <todd/>
  14. <coophospnm/>
  15. <drnm/>
  16. <orddeptcd/>
  17. <orddrid/>
  18. <hngnm/>
  19. </search>
  20. <doctor/>
  21. </send>
  22. <main>
  23. <list>
  24. <ep_list>
  25. <acptdd/>
  26. <acpttm/>
  27. <hngnm/>
  28. <rrgstno1/>
  29. <rrgstno2/>
  30. <pid/>
  31. <sex/>
  32. <age/>
  33. <orddeptnm/>
  34. <orddrnm/>
  35. <orddd/>
  36. <ordtm/>
  37. <coophospnm/>
  38. <drnm/>
  39. <diagnm/>
  40. <reqcnts/>
  41. <rqstflag/>
  42. <replyn/>
  43. <replmthd/>
  44. <reqagnyn/>
  45. <addr/>
  46. <hometel/>
  47. <mpphontel/>
  48. <licnsno/>
  49. <cooptelno/>
  50. <coopfaxno/>
  51. <coopemail/>
  52. <coopaddr/>
  53. </ep_list>
  54. </list>
  55. </main>
  56. <init>
  57. <dept>
  58. <dept>
  59. </dept>
  60. </dept>
  61. <doctlist>
  62. <medispcl>
  63. <doctid/>
  64. <doctnm/>
  65. </medispcl>
  66. <atdoct>
  67. <doctid/>
  68. <doctnm/>
  69. </atdoct>
  70. </doctlist>
  71. </init>
  72. </root>
  73. </instance>
  74. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post"/>
  75. <submission id="TRZBC00102" mediatype="application/x-www-form-urlencoded" method="post"/>
  76. <submission id="TRZSD00109" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  77. <submission id="TRARC01302" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/doctor" resultref="/root/init/doctlist"/>
  78. <script type="javascript" ev:event="xforms-ready">
  79. <![CDATA[
  80. fInit();
  81. ]]>
  82. </script>
  83. <submission id="TRARC00501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/main/list"/>
  84. </model>
  85. </xhtml:head>
  86. <script src="../../../com/commonweb/js/common.js" type="javascript"/>
  87. <script src="../../../com/commonweb/js/utilHelper.js" type="javascript"/>
  88. <script src="../../../com/commonweb/js/tfHelper.js" type="javascript"/>
  89. <script src="../../../com/commonweb/js/stringHelper.js" type="javascript"/>
  90. <script src="../../../com/commonweb/js/dateHelper.js" type="javascript"/>
  91. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  92. <script src="../../../com/departmentcodeweb/js/common.js" type="javascript"/>
  93. <script src="../../../com/departmentcodeweb/js/ZSD001.js" type="javascript"/>
  94. <script type="javascript">
  95. <![CDATA[
  96. // 초기값 셋팅
  97. function fInit()
  98. {
  99. model.setValue("/root/send/search/condflag", "2");
  100. // 오늘 날짜로 세팅
  101. var CurrentDate = getCurrentDate();
  102. model.setValue("/root/send/search/fromdd", CurrentDate);
  103. model.setValue("/root/send/search/todd", CurrentDate);
  104. // 진료과
  105. // var instcd = "012";
  106. var instcd = getUserInfo("dutplceinstcd");
  107. //var standard_yn = "orduseyn";
  108. var standard_yn = "rcptuseyn";
  109. var ord_deptflag = 'D';
  110. var rslt_ref = "/root/init/dept";
  111. var sort_method = "depthngnm";
  112. //zbcfGetDeptCodeList(instcd, standard_yn, ord_deptflag, rslt_ref, sort_method);
  113. sort_field = "depthngnm"
  114. zsdfGetInOutOrdDeptList(instcd, rslt_ref, sort_field, sort_method);
  115. // 진료과
  116. addComboItem("cmb_orddeptcd", "", "", "above");
  117. fDoctSerach();
  118. model.removeNodeset("/root/main/list/ep_list");
  119. model.refresh();
  120. }
  121. // 진료의사 조회
  122. function fDoctSerach()
  123. {
  124. // 진료의사
  125. model.removenode("/root/send/doctor");
  126. model.makeValue("/root/send/doctor/orddd", model.getValue("/root/send/search/fromdd"));
  127. model.makeValue("/root/send/doctor/orddeptcd", model.getValue("/root/send/search/orddeptcd"));
  128. submit("TRARC01302", false);
  129. cmb_orddrid.select(0);
  130. //model.setValue("/root/main/patient/orddrid", orddrid);
  131. }
  132. // 저장전 필수 체크
  133. function fCheckDate()
  134. {
  135. /*
  136. if (model.getValue("/root/send/search/orddeptcd") == "" && model.getValue("/root/send/search/pid") == ""
  137. && model.getValue("/root/send/search/hngnm") == "" && model.getValue("/root/send/search/rqstflag") == "")
  138. {
  139. messageBox("진료과, 등록번호, 환자명, 의뢰서여부 중 하나의 조건을 ","C002");
  140. return false;
  141. }
  142. */
  143. var fromdd = model.getValue("/root/send/search/fromdd");
  144. var todd = model.getValue("/root/send/search/todd");
  145. if( ! isValidDateTime( fromdd, 'YYYYMMDD') || ! isValidDateTime( todd, 'YYYYMMDD') ){
  146. messageBox("입력하신 일자구분이 정확한 날짜타입이 아닙니다.", "E999", "");
  147. return false;
  148. }
  149. if( getDateInterval(fromdd, todd) > 6 ){
  150. messageBox("조회가능한 최대 기간은 1주일입니다. 일자구분에서 날짜를 수정하세요!", "E999", "");
  151. return false;
  152. }
  153. if( getDateInterval(fromdd, todd) < 0 ){
  154. messageBox("일자구분에서 시작일자가 종료일자보다 미래일자 입니다. 확인하세요!", "E999", "");
  155. return false;
  156. }
  157. // 날짜 계산
  158. var daycnt = getDateInterval(fromdd, todd);
  159. // 1일이 아닌 경우는 조건을 타야 함
  160. if (daycnt != 0)
  161. {
  162. // 진료과 체크
  163. if (model.getValue("/root/send/search/orddeptcd") == "")
  164. {
  165. messageBox("일자구분에서 하루 이상의 기간을 선택했을 경우, 진료과는 조회 필수 조건입니다. 진료과를 입력하세요.", "E999", "");
  166. //messageBox("진료과를 ","C002");
  167. return false;
  168. }
  169. if (ipt_coophospnm.currentText.length > 0 && ipt_coophospnm.currentText.length < 2) {
  170. messageBox("의뢰병원명은 2글자 이상으로 해주십시요!","E999","");
  171. model.setFocus("ipt_coophospnm");
  172. return false;
  173. }
  174. if (ipt_drnm.currentText.length > 0 && ipt_drnm.currentText.length < 2) {
  175. messageBox("의뢰의사명은 2글자 이상으로 해주십시요!","E999","");
  176. model.setFocus("ipt_drnm");
  177. return false;
  178. }
  179. if (ipt_hngnm.currentText.length > 0 && ipt_hngnm.currentText.length < 2) {
  180. messageBox("환자명은 2글자 이상으로 해주십시요!","E999","");
  181. model.setFocus("ipt_hngnm");
  182. return false;
  183. }
  184. }
  185. return true;
  186. }
  187. // 조회
  188. function fSearch()
  189. {
  190. // reqGetEPRsrvList
  191. // getEPRsrvList
  192. if (submit("TRARC00501", false) == true)
  193. {
  194. }
  195. else
  196. {
  197. messageBox("조회를", "E009");
  198. }
  199. model.refresh();
  200. }
  201. // 리스트 엑셀 파일로 저장
  202. function fExcel()
  203. {
  204. if (grd_list.rows <= 1) return;
  205. var fileName = window.fileDialog("save", ",", false, "인터넷예약환자 리스트", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  206. if (fileName != ""){
  207. grd_list.saveExcel(fileName, "SheetName", false, false, "", "", false);
  208. }
  209. }
  210. // 초기화
  211. function fAllClear()
  212. {
  213. model.resetInstanceNode("/root/send/search");
  214. model.setValue("/root/send/search/condflag", "2");
  215. // 오늘 날짜로 세팅
  216. var CurrentDate = getCurrentDate();
  217. model.setValue("/root/send/search/fromdd", CurrentDate);
  218. model.setValue("/root/send/search/todd", CurrentDate);
  219. fDoctSerach();
  220. model.removeNodeset("/root/main/list/ep_list");
  221. model.refresh();
  222. }
  223. ]]>
  224. </script>
  225. <xhtml:body guideline="1,2;1,1195;1,1195;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  226. <group id="group3" scroll="auto" style="left:0px; top:0px; width:1195px; height:784px; ">
  227. <group id="group2" style="left:0px; top:13px; width:1195px; height:744px; vertical-align:top; ">
  228. <group id="group1" style="left:0px; top:10px; width:1194px; height:70px; vertical-align:top; ">
  229. <shape id="roundrect3" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1194px; height:65px; "/>
  230. <button id="button5" class="btn1_letter2" style="left:1126px; top:26px; width:56px; height:22px; ">
  231. <caption>조회</caption>
  232. <script type="javascript" ev:event="DOMActivate">
  233. <![CDATA[
  234. if ( !fCheckDate() ) return; //필수 저장여부 체크
  235. fSearch();
  236. ]]>
  237. </script>
  238. </button>
  239. <line id="line8" class="line_4" style="x1:1110px; y1:5px; x2:1110px; y2:60; "/>
  240. <caption id="caption9" class="search_name" style="left:20px; top:10px; width:94px; height:17px; ">조회일자 :</caption>
  241. <caption id="caption11" class="search_name" style="left:20px; top:35px; width:94px; height:17px; ">진료과 :</caption>
  242. <caption id="caption13" class="search_name" style="left:830px; top:10px; width:86px; height:17px; ">의뢰의사 :</caption>
  243. <caption id="caption5" class="search_no_b" style="left:317px; top:10px; width:12px; height:17px; ">~</caption>
  244. <caption id="caption4" class="search_name" style="left:495px; top:35px; width:94px; height:17px; ">진료의사 :</caption>
  245. <caption id="caption3" class="search_name" style="left:495px; top:10px; width:119px; height:17px; ">의뢰병원명 :</caption>
  246. <caption id="caption1" class="search_name" style="left:830px; top:40px; width:86px; height:17px; ">환자명 :</caption>
  247. <select1 id="cmb_condflag" ref="/root/send/search/condflag" class="combo_search" appearance="minimal" style="left:115px; top:10px; width:100; height:19px; ">
  248. <choices>
  249. <item>
  250. <label>작업일자</label>
  251. <value>1</value>
  252. </item>
  253. <item>
  254. <label>예약일자</label>
  255. <value>2</value>
  256. </item>
  257. </choices>
  258. </select1>
  259. <input id="ipt_fromdd" ref="/root/send/search/fromdd" class="input_search" inputtype="date" style="left:215px; top:10px; width:95px; height:19px; "/>
  260. <input id="ipt_todd" ref="/root/send/search/todd" class="input_search" inputtype="date" style="left:335px; top:10px; width:95px; height:19px; "/>
  261. <input id="ipt_coophospnm" ref="/root/send/search/coophospnm" class="input_search" imemode="hangul" style="left:610px; top:10px; width:140px; height:19px; "/>
  262. <input id="ipt_drnm" ref="/root/send/search/drnm" class="input_search" imemode="hangul" style="left:920px; top:10px; width:140px; height:19px; "/>
  263. <select1 id="cmb_orddeptcd" ref="/root/send/search/orddeptcd" class="combo_search" appearance="minimal" style="left:115px; top:35px; width:140px; height:19px; ">
  264. <choices>
  265. <itemset nodeset="/root/init/dept/dept">
  266. <label ref="depthngnm"/>
  267. <value ref="deptcd"/>
  268. </itemset>
  269. </choices>
  270. <script type="javascript" ev:event="xforms-value-changed">
  271. <![CDATA[
  272. fDoctSerach();
  273. model.refresh();
  274. ]]>
  275. </script>
  276. </select1>
  277. <select1 id="cmb_orddrid" ref="/root/send/search/orddrid" class="combo_search" appearance="minimal" style="left:610px; top:35px; width:140px; height:19px; ">
  278. <choices>
  279. <itemset nodeset="/root/init/doctlist/medispcl/">
  280. <label ref="doctnm"/>
  281. <value ref="doctid"/>
  282. </itemset>
  283. </choices>
  284. </select1>
  285. <input id="ipt_hngnm" ref="/root/send/search/hngnm" class="input_search" imemode="hangul" style="left:920px; top:35px; width:140px; height:19px; "/>
  286. </group>
  287. <line id="line1" class="line_1" style="x1:0px; y1:104px; x2:1194px; y2:104px; "/>
  288. <button id="btn_excel" class="btn2_letter4" style="left:1127px; top:84px; width:64px; height:19px; ">
  289. <caption>엑셀저장</caption>
  290. <script type="javascript" ev:event="DOMActivate">
  291. <![CDATA[
  292. fExcel();
  293. ]]>
  294. </script>
  295. </button>
  296. <caption id="caption8" class="tit_2" style="left:5px; top:87px; width:152px; height:14px; ">인터넷예약환자 리스트</caption>
  297. <datagrid id="grd_list" nodeset="/root/main/list/ep_list" caption="작업일자^작업시간^환자명^주민번호^주민번호^등록번호^성별^나이^예약과^예약의사^예약일자^예약시간^의뢰병원명^의뢰의사^진단명^의뢰내용^작업상태" colsep="^" colwidth="90, 70, 100, 70, 70, 100, 40, 35, 100, 100, 90, 70, 120, 100, 200, 200, 80" dataheight="25" extendlastcol="scroll" frozencols="6" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:2px; top:108px; width:1189px; height:632px; text-align:center; vertical-align:middle; ">
  298. <col ref="acptdd" format="yyyy-mm-dd" style="text-align:center; "/>
  299. <col ref="acpttm" format="hh:nn" style="text-align:center; "/>
  300. <col ref="hngnm" style="text-align:center; "/>
  301. <col ref="rrgstno1" style="text-align:center; "/>
  302. <col ref="rrgstno2" secretstartposition="1" style="text-align:center; "/>
  303. <col ref="pid" style="text-align:center; "/>
  304. <col disabled="true" ref="sex" type="combo" style="text-align:center; ">
  305. <choices>
  306. <item>
  307. <label>남</label>
  308. <value>M</value>
  309. </item>
  310. <item>
  311. <label>여</label>
  312. <value>F</value>
  313. </item>
  314. </choices>
  315. </col>
  316. <col ref="age" style="text-align:right; "/>
  317. <col ref="orddeptnm"/>
  318. <col ref="orddrnm"/>
  319. <col ref="orddd" format="yyyy-mm-dd" style="text-align:center; "/>
  320. <col ref="ordtm" format="hh:nn" style="text-align:center; "/>
  321. <col ref="coophospnm"/>
  322. <col ref="drnm"/>
  323. <col ref="diagnm"/>
  324. <col ref="reqcnts"/>
  325. <col disabled="true" ref="rqstflag" type="combo">
  326. <choices>
  327. <item>
  328. <label>예약</label>
  329. <value>R</value>
  330. </item>
  331. <item>
  332. <label>취소</label>
  333. <value>X</value>
  334. </item>
  335. </choices>
  336. </col>
  337. </datagrid>
  338. </group>
  339. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  340. <caption id="caption2" class="tit_1" style="left:0px; top:0px; width:238px; height:14px; ">병의원 인터넷예약환자 조회</caption>
  341. </group>
  342. <group id="group6" style="left:0px; top:755px; width:1195px; height:27px; ">
  343. <button id="button10" class="btn4_letter3" style="left:1126px; top:3px; width:68px; height:22px; ">
  344. <caption>초기화</caption>
  345. <script type="javascript" ev:event="DOMActivate">
  346. <![CDATA[
  347. fAllClear();
  348. ]]>
  349. </script>
  350. </button>
  351. </group>
  352. </group>
  353. </xhtml:body>
  354. </xhtml:html>