SMPMB01000_의사선택진료여부관리.xrw 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658
  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. <data1>
  11. <dutplceinstcd/>
  12. <dutplcecd/>
  13. <jobkindcd>-</jobkindcd>
  14. <jobposcd/>
  15. <workterm>-</workterm>
  16. <preststatcd>-</preststatcd>
  17. <dutplcenm/>
  18. </data1>
  19. <data2>
  20. <docinfo>
  21. <dutplcecd/>
  22. <dutunitcd/>
  23. <userid/>
  24. <specordyn/>
  25. <fromdd/>
  26. <setfromdd/>
  27. <savejudg/>
  28. <dutunitnm/>
  29. <usernm/>
  30. <jobkindnm/>
  31. <dutplcenm/>
  32. <dutplceinstcd/>
  33. <todd/>
  34. </docinfo>
  35. </data2>
  36. </send>
  37. <main>
  38. <list>
  39. <grdinfolist/>
  40. </list>
  41. </main>
  42. <init>
  43. <R0061list>
  44. <R0061>
  45. <cdnm/>
  46. <cdid/>
  47. </R0061>
  48. </R0061list>
  49. <R0062list>
  50. <R0062>
  51. <cdnm/>
  52. <cdid/>
  53. </R0062>
  54. </R0062list>
  55. <Z0007list>
  56. <Z0007>
  57. <cdnm/>
  58. <cdid/>
  59. </Z0007>
  60. </Z0007list>
  61. <P0109list>
  62. <P0109>
  63. <cdnm/>
  64. <cdid/>
  65. </P0109>
  66. </P0109list>
  67. </init>
  68. <hidden>
  69. <rcv/>
  70. <updflag/>
  71. <rsltflag>
  72. <resultvalue1/>
  73. </rsltflag>
  74. <savejudg>1</savejudg>
  75. </hidden>
  76. </root>
  77. </instance>
  78. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  79. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  80. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  81. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  82. <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
  83. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  84. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM001.js"/>
  85. <script type="javascript" ev:event="xforms-ready">
  86. <![CDATA[
  87. zbcfGetCodeList(new Array("R0061","R0062","Z0007"), new Array("/root/init/R0061list","/root/init/R0062list","/root/init/Z0007list"));
  88. // 의사선택진료여부 관리 2012.02.13 by 조중래
  89. pamfGetCodeList(new Array("P0109"), new Array("/root/init/P0109list"));
  90. var nodeList = instance1.selectNodes("/root/init/P0109list/P0109");
  91. var userid = getUserId();
  92. for (i = 1; i <= nodeList.length; i++) {
  93. if (userid == model.getValue("/root/init/P0109list/P0109[" + i + "]/cdid")) {
  94. button6.disabled = false;
  95. break;
  96. }
  97. }
  98. //2007.12.27 일단 의사,치과의사만 보이게 => 직위코드는 어떤 기준으로 보여줘야하는지 문의??
  99. //2008.05.15 -CBJ- 직종코드 itemset으로 대체
  100. //cmb_jobkind.choices.itemset.attribute("nodeset") = "/root/init/R0061list/R0061[(cdid = '0330' or cdid = '0332')]";
  101. // 2007.05.13 -CBJ- 근무지가관 소속기관으로 자동 설정
  102. model.setValue("/root/send/data1/dutplceinstcd", getUserInfo("dutplceinstcd"));
  103. model.refresh();
  104. ]]>
  105. </script>
  106. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post"/>
  107. <submission id="TRPMB01003" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data1" resultref="/root/main/list/grdinfolist"/>
  108. <submission id="TXPMB01003" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data2/docinfo" resultref="/root/hidden/rsltflag"/>
  109. <submission id="TRPAM00105" mediatype="application/x-www-form-urlencoded" method="post"/>
  110. </model>
  111. <script type="javascript">
  112. <![CDATA[
  113. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  114. function fInitialize() {
  115. model.resetInstanceNode("/root/send/data1");
  116. model.resetInstanceNode("/root/main/list/grdinfolist");
  117. grd_drinfo.refresh();
  118. model.setValue("/root/send/data1/dutplceinstcd", getUserInfo("dutplceinstcd"));
  119. model.refresh();
  120. }
  121. function fSetPercentage() {
  122. var iTotalCount = 0;
  123. var gridRows = grd_drinfo.rows - grd_drinfo.fixedRows;
  124. var deptArray = new Array(gridRows); // 부서별 의사수를 저장
  125. var countArray = new Array(gridRows); // 부서내 선택진료의사 수 저장
  126. //alert("deptArraySize : " + deptArray.length )
  127. if (gridRows > 0) {
  128. var iCount = 0;
  129. var iDept = 0;
  130. if(gridRows == 1) {
  131. var sSpecordyn = model.getValue("/root/main/list/grdinfolist/specordyn");
  132. if(sSpecordyn == "Y") {
  133. deptArray[0] = 1;
  134. countArray[0] = 1;
  135. iTotalCount++;
  136. } else {
  137. deptArray[0] = 1;
  138. countArray[0] = 0;
  139. }
  140. } else {
  141. // 선택진료여부체크
  142. OUT_LOOP :for (var i = 1 ; i <= gridRows ;i++) {
  143. for (var j = i ; j <= gridRows ; j++) {
  144. // 같은 부서에 해당하는 의사 수
  145. // var sFirstdutunitnm = model.getValue("/root/main/list/grdinfolist[" + i + "]/dutunitnm");
  146. // var sSeconddutunitnm = model.getValue("/root/main/list/grdinfolist[" + j + "]/dutunitnm");
  147. var sFirstdutunitnm = model.getValue("/root/main/list/grdinfolist[" + i + "]/dutplcenm");
  148. var sSeconddutunitnm = model.getValue("/root/main/list/grdinfolist[" + j + "]/dutplcenm");
  149. if(sFirstdutunitnm == sSeconddutunitnm) {
  150. iDept++;
  151. // 선택진료여부 카운트
  152. var sSpecordyn = model.getValue("/root/main/list/grdinfolist[" + j + "]/specordyn");
  153. if(sSpecordyn == "Y") {
  154. iCount++;
  155. iTotalCount++;
  156. }
  157. // 진료과가 하나일 때
  158. if (j == gridRows) {
  159. deptArray[i-1] = iDept;
  160. countArray[i-1] = iCount;
  161. i = j-1;
  162. iDept = 0;
  163. iCount = 0;
  164. // 최종라인에 도달하면 루프를 빠져 나간다.
  165. break OUT_LOOP;
  166. }
  167. // 진료과가 변경될 때 이전 과에 대한 정보를 저장
  168. } else {
  169. deptArray[i-1] = iDept;
  170. countArray[i-1] = iCount;
  171. i = j-1;
  172. iDept = 0;
  173. iCount = 0;
  174. break;
  175. }
  176. }
  177. }
  178. }
  179. // 통계 칼럼에 퍼센트 표시 -- 2011.05.17 이경민 적용일자, 수정적용일 추가
  180. for (var idx = 1 ; idx <= gridRows ; idx++) {
  181. var deptCount = deptArray[idx-1];
  182. var specordCount = countArray[idx-1];
  183. if (deptCount != undefined) {
  184. var dPercent = Math.round(parseInt(specordCount) / parseInt(deptCount) * 100);
  185. dPercent = dPercent.toString() + "%";
  186. model.makeNode("/root/main/list/grdinfolist[" + idx + "]/setfromdd");
  187. model.setValue("/root/main/list/grdinfolist[" + idx + "]/percentage", dPercent);
  188. model.setValue("/root/main/list/grdinfolist[" + idx + "]/setfromdd", getCurrentDate());
  189. var mergetext = dPercent;
  190. } else {
  191. model.makeNode("/root/main/list/grdinfolist[" + idx + "]/setfromdd");
  192. // model.setValue("/root/main/list/grdinfolist[" + idx + "]/percentage", "");
  193. model.setValue("/root/main/list/grdinfolist[" + idx + "]/percentage", mergetext);
  194. model.setValue("/root/main/list/grdinfolist[" + idx + "]/setfromdd", getCurrentDate());
  195. }
  196. }
  197. }
  198. // 마지막에 행 추가
  199. grd_drinfo.addRow(false, false);
  200. grd_drinfo.clearStatus();
  201. // 추가된 행에 전체 선택진료의사 퍼센트 표시
  202. var totalPercent = Math.round(iTotalCount / gridRows * 100) + "%";
  203. model.setValue("/root/main/list/grdinfolist[" + (gridRows+1) + "]/dutplcenm", "전체");
  204. model.setValue("/root/main/list/grdinfolist[" + (gridRows+1) + "]/percentage", totalPercent);
  205. setRowStyle("grd_drinfo", "1", "전체", "dutunitnm", "equal");
  206. // 진료과 Merge
  207. grd_drinfo.mergeCells = "bycol";
  208. grd_drinfo.mergeCells = "byrestriccol";
  209. grd_drinfo.mergeCol(1) = true;
  210. grd_drinfo.mergeCol(2) = false;
  211. grd_drinfo.mergeCol(3) = false;
  212. grd_drinfo.mergeCol(4) = false;
  213. grd_drinfo.mergeCol(5) = false;
  214. grd_drinfo.mergeCol(6) = false;
  215. grd_drinfo.mergeCol(7) = false;
  216. grd_drinfo.mergeCol(8) = false;
  217. grd_drinfo.mergeCol(9) = false;
  218. grd_drinfo.mergeCol(10) = false;
  219. grd_drinfo.mergeCol(11) = false;
  220. grd_drinfo.mergeCol(12) = true;
  221. grd_drinfo.merge();
  222. }
  223. model.refresh();
  224. function fPrntSeq(){
  225. var nodeList= instance1.selectNodes("/root/main/list/grdinfolist");
  226. if((nodeList != null) && (nodeList.length >0 )){
  227. exeReportPreview("RPPMB01001", "XMLSTR" , "" , "" , "false" , "", "", "", "", "false");
  228. }else{
  229. }
  230. }
  231. ]]>
  232. </script>
  233. </xhtml:head>
  234. <xhtml:body guideline="1,1201;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  235. <group id="group4" scroll="auto" style="left:0px; top:616px; width:719px; height:27px; ">
  236. <button id="button4" class="btn4_letter2" style="left:592px; top:5px; width:56px; height:22px; ">
  237. <caption>저장</caption>
  238. <script type="javascript" ev:event="DOMActivate">
  239. <![CDATA[
  240. model.setValue("/root/send/updatedata/datalist",grd_choiordapp.getupdatedata());
  241. if ( submit("TXPMC01502") ) {
  242. model.copyNode("/root/main/spec", "/root/hidden/tmp");
  243. //grd_insukind.clearStatus(); // submit() 성공하면 그리드의 i,u 상태 제거
  244. //submit("TRPMB00201");
  245. model.refresh();
  246. grd_choiordapp.clearStatus();
  247. }
  248. ]]>
  249. </script>
  250. </button>
  251. <line id="line32" class="line_6" style="x1:0px; y1:0px; x2:719px; y2:0px; "/>
  252. </group>
  253. <group id="group1" style="left:0px; top:0px; width:650px; height:13px; ">
  254. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:189px; height:13px; ">의사선택진료여부관리</caption>
  255. </group>
  256. <group id="group3" scroll="auto" style="left:0px; top:13px; width:1185px; height:744px; ">
  257. <group id="group2" style="left:0px; top:10px; width:1185px; height:35px; vertical-align:top; ">
  258. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1185px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  259. <caption id="caption2" class="search_name" style="left:6px; top:9px; width:99px; height:17px; ">근무지기관 :</caption>
  260. <line id="line13" style="x1:1114px; y1:8px; x2:1114px; y2:30px; border-color:#ffe4bb; border-left-style:solid; "/>
  261. <caption id="caption5" class="search_name" visibility="hidden" style="left:954px; top:8px; width:62px; height:17px; ">직종 :</caption>
  262. <caption id="caption7" class="search_name" visibility="visible" style="left:440px; top:8px; width:62px; height:17px; ">직위 :</caption>
  263. <caption id="caption8" class="search_name" style="left:233px; top:9px; width:73px; height:17px; ">근무지 :</caption>
  264. <select1 id="cmb_jobkind" ref="/root/send/data1/jobkindcd" visibility="hidden" appearance="minimal" style="left:1019px; top:8px; width:90px; height:19px; ">
  265. <choices>
  266. <item>
  267. <label>전체</label>
  268. <value>-</value>
  269. </item>
  270. <item>
  271. <label>의사</label>
  272. <value>0330</value>
  273. </item>
  274. <item>
  275. <label>치과의사</label>
  276. <value>0332</value>
  277. </item>
  278. </choices>
  279. </select1>
  280. <select1 id="cmb_jobposcd" ref="/root/send/data1/jobposcd" visibility="visible" appearance="minimal" style="left:505px; top:8px; width:90px; height:19px; ">
  281. <choices>
  282. <item>
  283. <label>전체</label>
  284. <value/>
  285. </item>
  286. <item>
  287. <label>교수</label>
  288. <value>1782</value>
  289. </item>
  290. <item>
  291. <label>임상교수</label>
  292. <value>1847</value>
  293. </item>
  294. <item>
  295. <label>전임강사</label>
  296. <value>1788</value>
  297. </item>
  298. </choices>
  299. </select1>
  300. <button id="btn_dutplcecd" class="icon_search" style="left:418px; top:9px; width:16px; height:16px; ">
  301. <caption/>
  302. <script type="javascript" ev:event="DOMActivate">
  303. <![CDATA[
  304. var sdutplceinstcd = model.getValue("/root/send/data1/dutplceinstcd");
  305. if (sdutplceinstcd != null && sdutplceinstcd != " " & sdutplceinstcd != "") {
  306. zbcfOpenAssignedInstDeptCodeList(sdutplceinstcd, "depthngnm","", "/root/send/data1/dutplcecd", "/root/send/data1/dutplcenm", null, null, new Array("deptcd", "depthngnm"));
  307. } else {
  308. C("근무지기관을 먼저 선택", "I008");
  309. }
  310. ]]>
  311. </script>
  312. </button>
  313. <caption id="caption1" class="search_name" style="left:600px; top:9px; width:89px; height:17px; ">근속기간 :</caption>
  314. <caption id="caption3" class="search_name" style="left:770px; top:9px; width:86px; height:17px; ">근속상태 :</caption>
  315. <select1 id="cmb_workterm" ref="/root/send/data1/workterm" appearance="minimal" style="left:690px; top:8px; width:75px; height:19px; ">
  316. <choices>
  317. <item>
  318. <label>전체</label>
  319. <value>-</value>
  320. </item>
  321. <item>
  322. <label>10년이상</label>
  323. <value>10</value>
  324. </item>
  325. </choices>
  326. </select1>
  327. <select1 id="cmb_preststat" ref="/root/send/data1/preststatcd" appearance="minimal" style="left:860px; top:8px; width:85px; height:19px; ">
  328. <choices>
  329. <item>
  330. <label>전체</label>
  331. <value>-</value>
  332. </item>
  333. <item>
  334. <label>정상근무</label>
  335. <value>01</value>
  336. </item>
  337. </choices>
  338. </select1>
  339. <select1 id="cmb_dutplceinstcd" ref="/root/send/data1/dutplceinstcd" disabled="true" appearance="minimal" style="left:108px; top:8px; width:120px; height:19px; ">
  340. <choices>
  341. <itemset nodeset="/root/init/Z0007list/Z0007">
  342. <label ref="cdnm"/>
  343. <value ref="cdid"/>
  344. </itemset>
  345. </choices>
  346. <script type="javascript" ev:event="xforms-select">
  347. <![CDATA[
  348. // var sdutplceinstcd = model.getValue("/root/send/data1/dutplceinstcd");
  349. // if (sdutplceinstcd != null && sdutplceinstcd != " " & sdutplceinstcd != "") {
  350. // zbcfOpenAssignedInstDeptCodeList(sdutplceinstcd, "depthngnm","", "/root/main/item/posdeptcd", "/root/main/item/dutunitnm", null, null, new Array("deptcd", "depthngnm"));
  351. // }
  352. ]]>
  353. </script>
  354. </select1>
  355. <input id="ipt_dutplcecd" ref="/root/send/data1/dutplcecd" style="left:309px; top:8px; width:106px; height:19px; ">
  356. <script type="javascript" ev:event="onkeypress">
  357. <![CDATA[
  358. if (event.keyCode == "13") {
  359. var sdutplcecd = model.getValue("/root/send/data1/dutplcecd");
  360. if (sdutplcecd != null && sdutplcecd != " " && sdutplcecd != "") {
  361. btn_dutplcecd.dispatch("DOMActivate");
  362. }
  363. }
  364. ]]>
  365. </script>
  366. </input>
  367. <button id="btn_reference" class="btn1_letter2" style="left:1123px; top:7px; width:56px; height:22px; ">
  368. <caption>조회</caption>
  369. <script type="javascript" ev:event="DOMActivate">
  370. <![CDATA[
  371. model.resetInstanceNode("/root/main/list/grdinfolist");
  372. model.refresh();
  373. model.setValue("/root/send/data1/jobkindcd", "-"); //2010-12-27 이동식 수정 경북대는 직종코드가 정확하지 않아 직종코드 전체로 세팅
  374. //model.setValue("/root/send/data1/jobposcd", ""); //2010-12-27 이동식 수정 경북대는 직위코드가 정확하지 않아 직위코드 전체로 세팅
  375. var sDutplceinstcd = model.getValue("/root/send/data1/dutplceinstcd");
  376. if (sDutplceinstcd == "") {
  377. messageBox("근무지기관을", "C001");
  378. return false;
  379. }
  380. submit("TRPMB01003");
  381. model.setValue("/root/send/data1/jobposcd", "");
  382. // 통계정보설정
  383. fSetPercentage();
  384. ]]>
  385. </script>
  386. </button>
  387. </group>
  388. <line id="line8" class="line_1" style="x1:0px; y1:131px; x2:1185px; y2:130px; "/>
  389. <caption id="caption20" class="tit_2" style="left:5px; top:115px; width:113px; height:13px; ">의사정보 리스트</caption>
  390. <datagrid id="grd_drinfo" nodeset="/root/main/list/grdinfolist" caption="부서^사원번호^이름^직종^직위^근속/나이^근무상태^선택진료여부^적용일자^최종수정자^최종수정일^통계^부서위치^수정적용일" colsep="^" colwidth="141, 74, 82, 90, 90, 110, 88, 80, 100, 78, 138, 68, 100, 100" dataheight="23" extendlastcol="scroll" rowheader="update" rowheight="23" rowsep="|" subtotalposition="below" style="left:0px; top:135px; width:1185px; height:608px; ">
  391. <col ref="dutplcenm" style="text-align:center; "/>
  392. <col ref="userid" style="text-align:center; "/>
  393. <col ref="usernm" style="text-align:center; "/>
  394. <col ref="jobkindnm" style="text-align:center; "/>
  395. <col ref="jobposnm" style="text-align:center; "/>
  396. <col ref="worktermage" style="text-align:center; "/>
  397. <col ref="preststatnm" style="text-align:center; "/>
  398. <col class="gridinput" disabled="true" ref="specordyn" type="combo" style="text-align:center; ">
  399. <choices>
  400. <item>
  401. <label>적용</label>
  402. <value>Y</value>
  403. </item>
  404. <item>
  405. <label>비적용</label>
  406. <value>N</value>
  407. </item>
  408. </choices>
  409. </col>
  410. <col ref="fromdd" format="yyyy-mm-dd" style="text-align:center; "/>
  411. <col ref="lastupdtrnm" style="text-align:center; "/>
  412. <col ref="lastupdtdt" format="yyyy-mm-dd hh:nn:ss" style="text-align:center; "/>
  413. <col ref="percentage" format="##,#%" style="text-align:center; "/>
  414. <col ref="dutplcecd" visibility="hidden"/>
  415. <col ref="setfromdd" visibility="hidden"/>
  416. <script type="javascript" ev:event="onclick">
  417. <![CDATA[
  418. var row = grd_drinfo.row;
  419. if(row > 0){
  420. model.resetInstanceNode("/root/main/roominfo");
  421. model.copyNode("/root/send/data2/docinfo","/root/main/list/grdinfolist[" + row + "]");
  422. model.refresh();
  423. }
  424. ]]>
  425. </script>
  426. </datagrid>
  427. <button id="btn_excsave" class="btn2_letter2" style="left:1140px; top:109px; width:42px; height:19px; ">
  428. <caption>엑셀</caption>
  429. <script type="javascript" ev:event="DOMActivate">
  430. <![CDATA[
  431. var file = window.fileDialog("save","","false","","xls","Excel Files(*.xls)|*.xls");
  432. grd_drinfo.saveExcel(file);
  433. ]]>
  434. </script>
  435. </button>
  436. <button id="button1" class="btn2_letter2" style="left:1095px; top:109px; width:42px; height:19px; ">
  437. <caption>출력</caption>
  438. <script type="javascript" ev:event="DOMActivate">
  439. <![CDATA[
  440. fPrntSeq();
  441. ]]>
  442. </script>
  443. </button>
  444. <line id="line2" class="line_1" style="x1:0px; y1:71px; x2:1185px; y2:70px; "/>
  445. <caption id="caption4" class="tit_2" style="left:5px; top:55px; width:100px; height:13px; ">의사정보</caption>
  446. <caption id="caption10" class="cell_1" style="left:0px; top:74px; width:37px; height:23px; vertical-align:middle; ">부서</caption>
  447. <caption id="caption12" class="cell_1" style="left:321px; top:74px; width:34px; height:23px; vertical-align:middle; ">사번</caption>
  448. <line id="line3" class="line_2" style="x1:0px; y1:98px; x2:1180px; y2:98px; "/>
  449. <caption id="caption17" class="cell_1" style="left:401px; top:74px; width:33px; height:23px; vertical-align:middle; ">이름</caption>
  450. <input id="ipt_dutunitnm1" ref="/root/send/data2/docinfo/dutplcenm" class="input_default" disabled="true" navindex="3" imemode="disabled" maxlength="2" style="left:38px; top:76px; width:162px; height:19px; "/>
  451. <input id="ipt_userid1" ref="/root/send/data2/docinfo/userid" class="input_default" disabled="true" navindex="3" imemode="disabled" maxlength="2" style="left:357px; top:76px; width:41px; height:19px; "/>
  452. <input id="ipt_usernm1" ref="/root/send/data2/docinfo/usernm" class="input_default" disabled="true" navindex="3" imemode="disabled" style="left:436px; top:76px; width:50px; height:19px; "/>
  453. <input id="ipt_jobkindnm1" ref="/root/send/data2/docinfo/jobkindnm" class="input_default" disabled="true" navindex="3" imemode="disabled" style="left:526px; top:76px; width:57px; height:19px; "/>
  454. <caption id="caption9" class="cell_1" style="left:489px; top:74px; width:35px; height:23px; vertical-align:middle; ">직종</caption>
  455. <caption id="caption15" class="cell_1" style="left:1037px; top:74px; width:79px; height:23px; vertical-align:middle; ">선택진료여부</caption>
  456. <select1 id="cmb_specordyn1" ref="/root/send/data2/docinfo/specordyn" class="combo_search" appearance="minimal" style="left:1118px; top:76px; width:63px; height:19px; ">
  457. <choices>
  458. <item>
  459. <label>적용</label>
  460. <value>Y</value>
  461. </item>
  462. <item>
  463. <label>비적용</label>
  464. <value>N</value>
  465. </item>
  466. </choices>
  467. </select1>
  468. <!--091209 test-->
  469. <select1 id="rdo_savePattern" ref="/root/hidden/savejudg" visibility="visible" appearance="full" cols="2" overflow="visible" style="left:970px; top:50px; width:140px; height:15px; border-style:none; ">
  470. <choices>
  471. <item>
  472. <label>일괄저장</label>
  473. <value>1</value>
  474. </item>
  475. <item>
  476. <label>개별저장</label>
  477. <value>2</value>
  478. </item>
  479. </choices>
  480. </select1>
  481. <!--091209 test-->
  482. <caption id="caption18" style="left:405px; top:50px; width:556px; height:15px; color:#ff0000; ">* 일괄저장은 근무부서에 상관없이 일괄수정되며, 개별저장은 선택한 근무부서에 대해서만 수정됩니다.</caption>
  483. <caption id="caption19" class="cell_1" style="left:586px; top:74px; width:60px; height:23px; vertical-align:middle; ">시작일자</caption>
  484. <input id="ipt_setfromdd" ref="/root/send/data2/docinfo/setfromdd" class="input_default" navindex="3" inputtype="date" format="yyyy-mm-dd" style="left:948px; top:76px; width:85px; height:19px; ">
  485. <script type="javascript" ev:event="xforms-value-changed">
  486. <![CDATA[
  487. var row = grd_drinfo.row;
  488. if(row > 0){
  489. //grd_drinfo.valueMatrix(row, Number(grd_drinfo.colRef("setfromdd"))) = model.getValue(ipt_setfromdd.attribute("ref"));
  490. model.setValue("/root/main/list/grdinfolist[" + row + "]/setfromdd", model.getValue(ipt_setfromdd.attribute("ref")));
  491. model.refresh();
  492. }
  493. ]]>
  494. </script>
  495. </input>
  496. <caption id="caption11" class="cell_1" style="left:879px; top:74px; width:67px; height:23px; vertical-align:middle; ">수정적용일</caption>
  497. <input id="ipt_fromdd" ref="/root/send/data2/docinfo/fromdd" class="input_default" disabled="true" navindex="3" imemode="disabled" format="yyyy-mm-dd" style="left:648px; top:76px; width:66px; height:19px; "/>
  498. <input id="ipt_dutunitcd" ref="/root/send/data2/docinfo/dutplcecd" class="input_default" disabled="true" navindex="3" imemode="disabled" maxlength="2" style="left:202px; top:76px; width:83px; height:19px; "/>
  499. <input id="input1" ref="/root/send/data2/docinfo/dutplceinstcd" class="input_default" disabled="true" navindex="3" imemode="disabled" maxlength="2" style="left:287px; top:76px; width:31px; height:19px; "/>
  500. <caption id="caption13" class="cell_1" style="left:717px; top:74px; width:60px; height:23px; vertical-align:middle; ">종료일자</caption>
  501. <input id="input2" ref="/root/send/data2/docinfo/todd" class="input_default" disabled="true" navindex="3" imemode="disabled" format="yyyy-mm-dd" style="left:780px; top:76px; width:66px; height:19px; "/>
  502. </group>
  503. <button id="button6" class="btn5_letter4" disabled="true" style="left:1118px; top:62px; width:64px; height:19px; ">
  504. <caption>저 장</caption>
  505. <script type="javascript" ev:event="onclick">
  506. <![CDATA[
  507. if (isNull(model.getValue("/root/send/data2/docinfo/userid"))) {
  508. messageBox("수정할 정보가 선택되지 않았습니다.", "C000");
  509. return;
  510. }
  511. //일괄저장일지 개발저장일지 판별
  512. var saveJudg = model.getValue("/root/hidden/savejudg");
  513. if(saveJudg == 1) {
  514. if( messageBox("일괄저장으로 하시겠습니까?","Q999","")!=6) {
  515. return;
  516. }
  517. } else if (saveJudg == 2) {
  518. if( messageBox("개별저장으로 하시겠습니까?","Q999","")!=6) {
  519. return;
  520. }
  521. }
  522. // 수정구분 설정
  523. model.makeValue("/root/send/data2/docinfo/savejudg", saveJudg);
  524. // 저장
  525. if (submit("TXPMB01003") == true) {
  526. messageBox("선택진료여부 수정 성공","E999","");
  527. btn_reference.dispatch("DOMActivate");
  528. } else {
  529. messageBox("선택진료여부 수정 실패","E999","");
  530. }
  531. /*
  532. model.copyNode("/root/main/list/grdinfolist[" + row + "]","/root/main/docinfo");
  533. var rowstatus = grd_drinfo.rowStatus(row);
  534. if(rowstatus == '0'){
  535. grd_drinfo.addStatus(row,"update");
  536. }
  537. model.refresh();
  538. }
  539. if (grd_drinfo.row >= grd_drinfo.fixedRows) {
  540. // 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환 (tfHelper.js)
  541. var updflag = getGridUpdateData(grd_drinfo);
  542. model.setValue("/root/hidden/updflag",updflag);
  543. var updchk = model.getValue("/root/hidden/updflag");
  544. if (updchk != null && updchk != " " && updchk != "") {
  545. model.setValue("/root/send/data2/grddrinfo",grd_drinfo.getUpdateData());
  546. //alert("grd_drinfo.getUpdateData()==="+grd_drinfo.getUpdateData());
  547. //091209 test
  548. model.setValue("/root/main/list/grdinfolist[" + row + "]/dutplcecd",dutplcecdVal);
  549. //091209 test
  550. if (submit("TXPMB01003") == true) {
  551. if (model.getValue("/root/hidden/rsltflag/resultvalue1") > 0) {
  552. messageBox("선택진료여부 수정성공","E999","");
  553. btn_reference.dispatch("DOMActivate");
  554. return false;
  555. } else {
  556. messageBox("선택진료여부 수정 실패","E999","");
  557. return false;
  558. }
  559. }
  560. }
  561. }
  562. */
  563. ]]>
  564. </script>
  565. </button>
  566. <group id="group5" style="left:0px; top:757px; width:1185px; height:27px; ">
  567. <line id="line1" class="line_6" style="x1:0px; y1:0px; x2:880px; y2:0px; "/>
  568. <button id="btn_save" class="btn4_letter2" visibility="hidden" style="left:1053px; top:5px; width:56px; height:22px; ">
  569. <caption>저장</caption>
  570. <script type="javascript" ev:event="DOMActivate">
  571. <![CDATA[
  572. if (grd_drinfo.row >= grd_drinfo.fixedRows) {
  573. // 그리드 업데이트 데이터 반환, 업데이트 정보가 없을경우 "" 반환 (tfHelper.js)
  574. var updflag = getGridUpdateData(grd_drinfo);
  575. model.setValue("/root/hidden/updflag",updflag);
  576. var updchk = model.getValue("/root/hidden/updflag");
  577. if (updchk != null && updchk != " " && updchk != "") {
  578. model.setValue("/root/send/data2/grddrinfo",grd_drinfo.getUpdateData());
  579. if (submit("TXPMB01003") == true) {
  580. if (model.getValue("/root/hidden/rsltflag/resultvalue1") > 0) {
  581. messageBox("선택진료여부 수정성공","E999","");
  582. btn_reference.dispatch("DOMActivate");
  583. return false;
  584. } else {
  585. messageBox("선택진료여부 수정 실패","E999","");
  586. return false;
  587. }
  588. }
  589. }
  590. }
  591. ]]>
  592. </script>
  593. </button>
  594. <button id="btn_init" class="btn4_letter3" style="left:1112px; top:5px; width:68px; height:22px; ">
  595. <caption>초기화</caption>
  596. <script type="javascript" ev:event="DOMActivate">
  597. <![CDATA[
  598. fInitialize();
  599. ]]>
  600. </script>
  601. </button>
  602. </group>
  603. </xhtml:body>
  604. </xhtml:html>