SMMRI00301_의사별미비통계.xrw 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/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. <main>
  10. <cond>
  11. <unprepdrbase>
  12. <dschflag>D</dschflag>
  13. <unprepstat>1 3</unprepstat>
  14. <unprepdrnm/>
  15. <unprepdrid/>
  16. <doctkindflag>St</doctkindflag>
  17. <srchflag>dschdd</srchflag>
  18. <fromdd/>
  19. <todd/>
  20. <deptflag>unprep</deptflag>
  21. <orddeptcd>-</orddeptcd>
  22. <unprepstatlist/>
  23. <unprepsign/>
  24. <dayflag>N</dayflag>
  25. <orderby/>
  26. <scrnflag/>
  27. <alldoctkindflag>-</alldoctkindflag>
  28. <staff>Y</staff>
  29. <resident/>
  30. <intern/>
  31. <total/>
  32. </unprepdrbase>
  33. </cond>
  34. <unprepdrstatistics>
  35. <unprepdrstatistics>
  36. <depthngnm/>
  37. <doctkindflag/>
  38. <orddrnm/>
  39. <t1/>
  40. <t2/>
  41. </unprepdrstatistics>
  42. </unprepdrstatistics>
  43. <unprepdrinfo>
  44. <unprepdrlist/>
  45. </unprepdrinfo>
  46. <prntcond>
  47. <prnttitl/>
  48. <grdtitl1/>
  49. <grdtitl2/>
  50. <condtitl/>
  51. <fromdd/>
  52. <todd/>
  53. <tot1/>
  54. <tot2/>
  55. <tot3/>
  56. <datacnt/>
  57. <insttitl/>
  58. </prntcond>
  59. <unpreplist/>
  60. </main>
  61. <send>
  62. <reqdata/>
  63. </send>
  64. <init>
  65. <orddept/>
  66. <userlist/>
  67. </init>
  68. <temp>
  69. <userinfo/>
  70. </temp>
  71. </root>
  72. </instance>
  73. <script type="javascript" ev:event="xforms-ready">
  74. <![CDATA[
  75. fInitialize();
  76. ]]>
  77. </script>
  78. <submission id="TRMMB04101" mediatype="application/x-www-form-urlencoded" method="post"/>
  79. <submission id="TRMMB04102" mediatype="application/x-www-form-urlencoded" method="post"/>
  80. <submission id="TRMRI00302" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/unpreplist"/>
  81. <submission id="TRMRI02901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/temp/userinfo"/>
  82. </model>
  83. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  84. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  85. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  86. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  87. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  88. <script type="javascript" src="../../../emr/commonweb/js/EMRCommon.js"/>
  89. <script type="javascript" src="../../../emr/unprepmngtweb/js/SMMRI00301.js"/>
  90. <script type="javascript">
  91. <![CDATA[
  92. /**
  93. * @desc 미비의사 조회
  94. */
  95. function fReqGetUnPrepDrSmplList(srchflag, srchdata){
  96. model.removeNodeset("/root/send/reqdata");
  97. model.makeValue("/root/send/reqdata/srchflag", srchflag);
  98. model.makeValue("/root/send/reqdata/srchdata", srchdata);
  99. if(submit("TRMRI02901")){
  100. }
  101. }
  102. /**
  103. * @desc 서식명 조회
  104. */
  105. function fReqGetFormList(){
  106. if(submit("TRMRI01804")){ //서식명콤보 조회
  107. addComboItem("cmb_formcd","전체","-");
  108. }
  109. }
  110. /**
  111. * @desc 미비항목코드 조회
  112. */
  113. function fReqGetFormItemList(formcd){
  114. model.removeNodeset("/root/send/reqdata");
  115. model.makeNode("/root/send/reqdata");
  116. model.makeValue("/root/send/reqdata/formcd", formcd);
  117. if(submit("TRMRI01805")){
  118. addComboItem("cmb_itemcd","전체","-");
  119. }
  120. }
  121. ]]>
  122. </script>
  123. </xhtml:head>
  124. <xhtml:body guideline="1,1194;2,784;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  125. <caption id="cap_title" class="tit_1" style="left:0px; top:0px; width:189px; height:14px; ">의사별통계</caption>
  126. <shape id="roundrect1" appearance="roundrect" style="left:0px; top:20px; width:1194px; height:80px; "/>
  127. <button id="btn_req" class="btn1_letter2" style="left:1130px; top:50px; width:56px; height:22px; ">
  128. <caption>조회</caption>
  129. <script type="javascript" ev:event="DOMActivate">
  130. <![CDATA[
  131. fSearch();
  132. ]]>
  133. </script>
  134. </button>
  135. <line id="line5" style="x1:1120px; y1:30px; x2:1120px; y2:91px; border-color:#ffe4bb; border-left-style:solid; "/>
  136. <caption id="caption20" class="tit_2" style="left:3px; top:111px; width:108px; height:13px; ">의사별통계</caption>
  137. <line id="line1" class="line_1" style="x1:0px; y1:126px; x2:1194px; y2:126px; "/>
  138. <datagrid id="grd_unpreplist" nodeset="/root/main/unpreplist" caption="미비과^의사명^미비건수^Staff미비건수^인덱스" colsep="^" colwidth="100, 100, 130, 130" mergecellsfixedrows="bycolrec" rowsep="|" style="left:0px; top:131px; width:1194px; height:648px; ">
  139. <col ref="depthngnm"/>
  140. <col ref="orddrnm"/>
  141. <col ref="t1" style="text-align:center; "/>
  142. <col ref="t2" style="text-align:center; vertical-align:top; "/>
  143. </datagrid>
  144. <button id="btn_ex" class="btn2_letter2" visibility="hidden" style="left:1145px; top:104px; width:42px; height:19px; ">
  145. <caption>엑셀</caption>
  146. <script type="javascript" ev:event="DOMActivate">
  147. <![CDATA[
  148. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  149. if (fileName != ""){
  150. grd_unpreplist.saveExcel(fileName, "colhiddenextend:false;col_0:label;col_1:label;col_2:label;col_3:label;");
  151. }
  152. ]]>
  153. </script>
  154. </button>
  155. <select id="chk_unprepflagA" ref="/root/main/cond/unprepdrbase/unprepstat" overflow="visible" appearance="full" style="left:96px; top:67px; width:45px; height:20px; border-style:none; ">
  156. <choices>
  157. <item>
  158. <label>전체</label>
  159. <value>-</value>
  160. </item>
  161. </choices>
  162. <script type="javascript" ev:event="xforms-select">
  163. <![CDATA[
  164. chk_unprepflagB.disabled = true;
  165. chk_unprepflagB.deselect(0);
  166. chk_unprepflagC.disabled = true;
  167. chk_unprepflagC.deselect(0);
  168. chk_unprepflagD.disabled = true;
  169. chk_unprepflagD.deselect(0);
  170. chk_unprepflagR.disabled = true;
  171. chk_unprepflagR.deselect(0);
  172. chk_unprepflagS.disabled = true;
  173. chk_unprepflagS.deselect(0);
  174. ]]>
  175. </script>
  176. <script type="javascript" ev:event="xforms-deselect">
  177. <![CDATA[
  178. chk_unprepflagB.disabled = false;
  179. chk_unprepflagC.disabled = false;
  180. chk_unprepflagD.disabled = false;
  181. chk_unprepflagR.disabled = false;
  182. chk_unprepflagS.disabled = false;
  183. ]]>
  184. </script>
  185. </select>
  186. <select id="chk_unprepflagR" ref="/root/main/cond/unprepdrbase/unprepstat" overflow="visible" appearance="full" style="left:339px; top:67px; width:56px; height:20px; border-style:none; ">
  187. <choices>
  188. <item>
  189. <label>재미비</label>
  190. <value>3</value>
  191. </item>
  192. </choices>
  193. <script type="javascript" ev:event="xforms-select">
  194. <![CDATA[
  195. chk_unprepflagA.deselect(0);
  196. ]]>
  197. </script>
  198. </select>
  199. <select id="chk_unprepflagB" ref="/root/main/cond/unprepdrbase/unprepstat" overflow="visible" appearance="full" style="left:142px; top:67px; width:65px; height:20px; border-style:none; ">
  200. <choices>
  201. <item>
  202. <label>배치미비</label>
  203. <value>0</value>
  204. </item>
  205. </choices>
  206. <script type="javascript" ev:event="xforms-select">
  207. <![CDATA[
  208. chk_unprepflagA.deselect(0);
  209. ]]>
  210. </script>
  211. </select>
  212. <select id="chk_unprepflagS" ref="/root/main/cond/unprepdrbase/unprepstat" overflow="visible" appearance="full" style="left:396px; top:67px; width:46px; height:20px; border-style:none; ">
  213. <choices>
  214. <item>
  215. <label>완료</label>
  216. <value>4</value>
  217. </item>
  218. </choices>
  219. <script type="javascript" ev:event="xforms-select">
  220. <![CDATA[
  221. chk_unprepflagA.deselect(0);
  222. ]]>
  223. </script>
  224. </select>
  225. <select id="chk_unprepflagC" ref="/root/main/cond/unprepdrbase/unprepstat" overflow="visible" appearance="full" style="left:207px; top:67px; width:66px; height:20px; border-style:none; ">
  226. <choices>
  227. <item>
  228. <label>미비확인</label>
  229. <value>1</value>
  230. </item>
  231. </choices>
  232. <script type="javascript" ev:event="xforms-select">
  233. <![CDATA[
  234. chk_unprepflagA.deselect(0);
  235. ]]>
  236. </script>
  237. </select>
  238. <select id="chk_unprepflagD" ref="/root/main/cond/unprepdrbase/unprepstat" overflow="visible" appearance="full" style="left:273px; top:67px; width:65px; height:20px; color:transparent; border-style:none; ">
  239. <choices>
  240. <item>
  241. <label>의사확인</label>
  242. <value>2</value>
  243. </item>
  244. </choices>
  245. <script type="javascript" ev:event="xforms-select">
  246. <![CDATA[
  247. chk_unprepflagA.deselect(0);
  248. ]]>
  249. </script>
  250. </select>
  251. <select1 id="cmb_inoutddflag" ref="/root/main/cond/unprepdrbase/srchflag" disabled="true" appearance="minimal" style="left:611px; top:68px; width:78px; height:19px; ">
  252. <choices>
  253. <item>
  254. <label>퇴원일자</label>
  255. <value>dschdd</value>
  256. </item>
  257. <item>
  258. <label>입원일자</label>
  259. <value>indd</value>
  260. </item>
  261. <item>
  262. <label>진료일자</label>
  263. <value>orddd</value>
  264. </item>
  265. </choices>
  266. </select1>
  267. <bool id="bool1" checkvalue="Y,N" ref="/root/main/cond/unprepdrbase/dayflag" style="left:531px; top:67px; width:30px; height:20px; ">
  268. <script type="javascript" ev:event="xforms-value-changed">
  269. <![CDATA[
  270. if(bool1.value == "Y"){
  271. ipt_fromdd.disabled = false;
  272. ipt_todd.disabled = false;
  273. }else{
  274. ipt_fromdd.disabled = true;
  275. ipt_todd.disabled = true;
  276. }
  277. model.refresh();
  278. ]]>
  279. </script>
  280. </bool>
  281. <caption id="caption1" style="left:781px; top:68px; width:15px; height:15px; ">~</caption>
  282. <select1 id="rdo_inoutflag" ref="/root/main/cond/unprepdrbase/dschflag" appearance="full" cellspacing="3" cols="4" rows="1" overflow="visible" style="left:97px; top:45px; width:199px; height:20px; border-style:none; ">
  283. <choices>
  284. <item>
  285. <label>퇴원</label>
  286. <value>D</value>
  287. </item>
  288. <item>
  289. <label>재원</label>
  290. <value>I</value>
  291. </item>
  292. <item>
  293. <label>외래</label>
  294. <value>O</value>
  295. </item>
  296. <item>
  297. <label>응급실</label>
  298. <value>E</value>
  299. </item>
  300. </choices>
  301. <script type="javascript" ev:event="xforms-value-changed">
  302. <![CDATA[
  303. //재원구분 퇴원
  304. if(rdo_inoutflag.value == "D"){
  305. model.setValue("/root/main/cond/unprepdrbase/srchflag", "dsch");
  306. }else if(rdo_inoutflag.value == "I"){
  307. model.setValue("/root/main/cond/unprepdrbase/srchflag", "indd");
  308. }else if(rdo_inoutflag.value == "O"){
  309. model.setValue("/root/main/cond/unprepdrbase/srchflag", "orddd");
  310. }else if(rdo_inoutflag.value == "E"){
  311. model.setValue("/root/main/cond/unprepdrbase/srchflag", "orddd");
  312. }
  313. model.refresh();
  314. ]]>
  315. </script>
  316. </select1>
  317. <caption id="caption2" class="search_name" style="left:10px; top:45px; width:86px; height:17px; ">재원구분 :</caption>
  318. <caption id="caption4" class="search_name" style="left:10px; top:67px; width:86px; height:17px; ">미비구분 :</caption>
  319. <caption id="cap_reqflag" class="search_name" style="left:450px; top:68px; width:86px; height:17px; ">조회구분 :</caption>
  320. <input id="ipt_todd" ref="/root/main/cond/unprepdrbase/todd" disabled="true" inputtype="date" style="left:795px; top:68px; width:90px; height:19px; "/>
  321. <caption id="caption15" style="left:556px; top:68px; width:50px; height:20px; ">날짜조회</caption>
  322. <caption id="caption6" class="search_name" style="left:10px; top:25px; width:99px; height:17px; ">부서구분 :</caption>
  323. <caption id="caption8" class="search_name" style="left:365px; top:26px; width:89px; height:17px; ">미비의사 :</caption>
  324. <select1 id="rdo_deptflag" ref="/root/main/cond/unprepdrbase/deptflag" appearance="full" cols="4" rows="1" overflow="visible" style="left:97px; top:25px; width:115px; height:20px; border-style:none; ">
  325. <choices>
  326. <item>
  327. <label>미비과</label>
  328. <value>unprep</value>
  329. </item>
  330. <item>
  331. <label>퇴원과</label>
  332. <value>dsch</value>
  333. </item>
  334. </choices>
  335. </select1>
  336. <select1 id="cmb_orddept" ref="/root/main/cond/unprepdrbase/orddeptcd" class="combo_search" appearance="minimal" editmode="inputsearch" style="left:214px; top:25px; width:137px; height:19px; ">
  337. <choices>
  338. <itemset nodeset="/root/init/orddept/dept">
  339. <label ref="depthngnm"/>
  340. <value ref="deptcd"/>
  341. </itemset>
  342. </choices>
  343. <script type="javascript" ev:event="xforms-value-changed">
  344. <![CDATA[
  345. model.removeNodeset("/root/init/userlist");
  346. model.makeNode("/root/init/userlist/usercombo");
  347. var sOrdDd = getCurrentDate();
  348. mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist", cmb_orddept.value, "0330", "", "", sOrdDd);
  349. addComboInstance("/root/init/userlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
  350. cmb_orddrid.select(1);
  351. model.refresh();
  352. ]]>
  353. </script>
  354. </select1>
  355. <input id="ipt_fromdd" ref="/root/main/cond/unprepdrbase/fromdd" disabled="true" inputtype="date" style="left:691px; top:68px; width:90px; height:19px; "/>
  356. <button id="button1" class="btn2_letter2" visibility="hidden" style="left:1100px; top:104px; width:42px; height:19px; ">
  357. <caption>출력</caption>
  358. <script type="javascript" ev:event="DOMActivate">
  359. <![CDATA[
  360. var rexid = "";
  361. //출력물 메인타이틀 설정
  362. if(model.getValue("/root/main/cond/unprepdrbase/doctkindflag") == "St"){
  363. model.setValue("/root/main/prntcond/prnttitl", "◈과별 의사별 미정리 현황(Staff)◈");
  364. rexid = "RPMRI00300";
  365. }else{
  366. if(model.getValue("/root/main/cond/unprepdrbase/resident") == "Y" && model.getValue("/root/main/cond/unprepdrbase/intern") == "Y"){
  367. model.setValue("/root/main/prntcond/prnttitl", "◈과별 의사별 미정리 현황(Resident,Intern)◈");
  368. }else{
  369. if(model.getValue("/root/main/cond/unprepdrbase/resident") == "Y"){
  370. model.setValue("/root/main/prntcond/prnttitl", "◈과별 의사별 미정리 현황(Resident)◈");
  371. }
  372. if(model.getValue("/root/main/cond/unprepdrbase/intern") == "Y"){
  373. model.setValue("/root/main/prntcond/prnttitl", "◈과별 의사별 미정리 현황(Intern)◈");
  374. }
  375. }
  376. rexid = "RPMRI00500";
  377. //rexid = "RPMRI00700";
  378. }
  379. //날짜조회가 Y인 경우
  380. if(model.getValue("/root/main/cond/unprepdrbase/dayflag")=="Y"){
  381. model.setValue("/root/main/prntcond/condtitl", cmb_inoutddflag.label);
  382. model.setValue("/root/main/prntcond/fromdd", model.getValue("/root/main/cond/unprepdrbase/fromdd"));
  383. model.setValue("/root/main/prntcond/todd", model.getValue("/root/main/cond/unprepdrbase/todd"));
  384. }else{
  385. model.setValue("/root/main/prntcond/condtitl", "전체");
  386. }
  387. model.setValue("/root/main/prntcond/grdtitl1", grd_unpreplist.valueMatrix(0, 5));
  388. model.setValue("/root/main/prntcond/grdtitl2", grd_unpreplist.valueMatrix(0, 6));
  389. model.setValue("/root/main/prntcond/tot1", model.getValue("/root/main/unprepdrstatistics/unprepdrstatistics[underdepthngnm='합계']/t1"));
  390. model.setValue("/root/main/prntcond/tot2", model.getValue("/root/main/unprepdrstatistics/unprepdrstatistics[underdepthngnm='합계']/t2"));
  391. model.setValue("/root/main/prntcond/tot3", model.getValue("/root/main/unprepdrstatistics/unprepdrstatistics[underdepthngnm='합계']/t3"));
  392. var SubTotalList = findNodeset(model, "/root/main/unprepdrstatistics/unprepdrstatistics[underdepthngnm='합계']");
  393. if(SubTotalList.length == 0)
  394. {
  395. model.makeValue("/root/main/prntcond/subtotal", "0"); // 합계 숨기기
  396. }
  397. else
  398. {
  399. model.makeValue("/root/main/prntcond/subtotal", "1"); // 합계 보이기
  400. }
  401. // 2009-08-20 이경희
  402. // Resident 미비 조회시 출력물에 수련의 전체 총계 의사명수 count 누락 수정
  403. if(bool3.value == "Y" || bool4.value == "Y")
  404. {
  405. var SubSumList = findNodeset(model, "/root/main/unprepdrstatistics/unprepdrstatistics[underdepthngnm='합계']");
  406. var cnt = 0;
  407. var sum = 0;
  408. var finalsum = 0;
  409. if(SubSumList.length > 0)
  410. {
  411. for( i = 0; i < SubSumList.length; i++) {
  412. var SubNode = SubSumList.item(i);
  413. cnt = SubNode.selectSingleNode("orddrnm").text;
  414. // "명" 글자 제거
  415. cnt = cnt.setReplaceWord("명", "");
  416. // SUM
  417. sum += parseInt(cnt);
  418. }
  419. }
  420. model.makeValue("/root/main/prntcond/tot3", sum);
  421. var FinalSumList = findNodeset(model, "/root/main/unprepdrstatistics/unprepdrstatistics[underdepthngnm='총계']");
  422. if(FinalSumList.length > 0)
  423. {
  424. var node = FinalSumList.item(0);
  425. finalsum = node.selectSingleNode("orddrnm").text;
  426. model.makeValue("/root/main/prntcond/finalsum", finalsum);
  427. }
  428. }
  429. model.setValue("/root/main/prntcond/datacnt", grd_unpreplist.rows - 2);
  430. //model.setValue("/root/main/prntcond/insttitl", getUserInfo("dutplceinstnm") + " " + getUserInfo("dutplcenm"));
  431. exeReportPreview(rexid, "XMLSTR"); //미리보기만 가능
  432. ]]>
  433. </script>
  434. </button>
  435. <select1 id="cmb_orddrid" ref="/root/main/cond/unprepdrbase/unprepdrid" appearance="minimal" itemcount="30" style="left:450px; top:25px; width:90px; height:19px; ">
  436. <choices>
  437. <itemset nodeset="/root/init/userlist/usercombo">
  438. <label ref="usernm"/>
  439. <value ref="userid"/>
  440. </itemset>
  441. </choices>
  442. </select1>
  443. </xhtml:body>
  444. </xhtml:html>