SMMMO06100_응급증상관리.xrw 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374
  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. <ersympresn>
  10. <ersympresnlist>
  11. <status/>
  12. <resnnm/>
  13. <erclscd/>
  14. <payflagcd/>
  15. <useyn/>
  16. <calcscorcd/>
  17. <ordnm/>
  18. <refseq/>
  19. <instcd/>
  20. <ersympresncd/>
  21. <ersympresnabbr/>
  22. </ersympresnlist>
  23. </ersympresn>
  24. <send>
  25. <cond1/>
  26. <cond2/>
  27. <cond3/>
  28. <cond4/>
  29. <cond5/>
  30. <cond6/>
  31. <cond99/>
  32. </send>
  33. <reset>
  34. <ersympresnlist>
  35. <status>I</status>
  36. <resnnm/>
  37. <erclscd/>
  38. <payflagcd/>
  39. <useyn>Y</useyn>
  40. <calcscorcd>-</calcscorcd>
  41. <ordnm/>
  42. <refseq/>
  43. <instcd/>
  44. <ersympresncd/>
  45. <ersympresnabbr/>
  46. </ersympresnlist>
  47. </reset>
  48. <init>
  49. <payflagcd/>
  50. <erclscd/>
  51. <msrght>
  52. <mouserght>
  53. <label>삭제</label>
  54. <func>fDeleteRow</func>
  55. </mouserght>
  56. </msrght>
  57. <prcp/>
  58. </init>
  59. <result/>
  60. <patersympresn>
  61. <pid/>
  62. <orddd/>
  63. <cretno/>
  64. <histno/>
  65. <instcd/>
  66. <histcd/>
  67. <ersympresncd/>
  68. <tempstat/>
  69. </patersympresn>
  70. </root>
  71. </instance>
  72. <submission id="TRMMO06100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/ersympresn"/>
  73. <script type="javascript" ev:event="xforms-model-construct-done">
  74. <![CDATA[
  75. /*
  76. 응급의료 관리료 수정팝업 띄우기 ( 응급일때만 오른쪽 마우스 메뉴 보임 )
  77. 1. 수가코드가 ercalcscorcd 에 값이 있으면 띄운다.
  78. 응급의료 관리료 수정팝업 저장
  79. 1. 저장된 수가코드값이 있고 수가코드 값이 없는 사유를 선택할 경우 "응급의학관리처방이 존재합니다. D/C후 처리가 가능합니다." 라고 메시지를 띄운다.
  80. 2. 수가코드가 없는 것으로 저장할 때는 이력발생시키고 저장시킨다. ( 처방 화면에 있는 fInitSrch 를 호출한다. )
  81. 2.1 화면에 있는 수가코드는 지워준다.
  82. 3. 수가코드 있는 것으로 화면에 있는 것과 바꿔준다.
  83. 응급의료 관리료 약어명 관리 추가(입력, 수정)
  84. 처방화면 상단 표시
  85. erprcpyn 값이 있으면 처방상단에 응급의료 관리료 약어명 표시
  86. */
  87. model.setValue ( "/root/init/prcp" , opener.javascript.getParameter ( "SMMMO00100_cond1" ));
  88. if ( model.getValue ( "/root/init/prcp" ) == "Y" ) {
  89. datagrid1.colHidden(4) =true;
  90. datagrid1.colHidden(7) =true;
  91. button37.visible = false;
  92. }
  93. zbcfGetCodeList(new Array("M0029", "M0012" ), new Array("/root/init/payflagcd", "/root/init/erclscd"));
  94. submit ( "TRMMO06100" );
  95. datagrid1.autoResize = true ;
  96. model.refresh();
  97. ]]>
  98. </script>
  99. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post"/>
  100. <submission id="TXMMO06100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/ersympresn"/>
  101. <submission id="TRMMO00100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/prcpsrch"/>
  102. <submission id="TXMMO06200" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/result"/>
  103. <!-- 처방 복사 로직변경 xml 2013.07.05 by 엄영만-->
  104. <submission id="TRMMO00150" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/prcpcopy"/>
  105. <submission id="TRMMO00151" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  106. <submission id="TXMMO00120" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/monitoringlog/reqdata" resultref="/root/monitoringlog"/>
  107. <bind id="bind1" ref="/root/ersympresn/ersympresnlist/resnnm" readonly="/root/init/prcp = &quot;Y&quot;"/>
  108. <bind id="bind2" ref="/root/ersympresn/ersympresnlist/erclscd" readonly="/root/init/prcp = &quot;Y&quot;"/>
  109. <bind id="bind3" ref="/root/ersympresn/ersympresnlist/payflagcd" readonly="/root/init/prcp = &quot;Y&quot;"/>
  110. <bind id="bind4" ref="/root/ersympresn/ersympresnlist/ersympresnabbr" readonly="/root/init/prcp = &quot;Y&quot;"/>
  111. </model>
  112. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  113. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  114. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  115. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  116. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  117. <script type="javascript">
  118. <![CDATA[
  119. function fDeleteRow () {
  120. var selectedRows = datagrid1.selectedRows;
  121. for (i= selectedRows-1; i >= 0; i--){
  122. var status = model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.selectedrow(i) + "]/status" );
  123. if (status=="-" || status=="U" ) {
  124. model.setValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.selectedrow(i)+ "]/status", "D" );
  125. } else if ( status =="I" ){
  126. model.removeNode ( "/root/ersympresn/ersympresnlist[" + datagrid1.selectedrow(i) + "]" );
  127. } else if (status=="D" ) {
  128. model.setValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.selectedrow(i)+ "]/status", "-" );
  129. }
  130. }
  131. model.refresh();
  132. }
  133. function fMouseRghtBtnPopup() {
  134. if (event.button == 3) {
  135. if (datagrid1.isCell(event.target) && datagrid1.mouseRow >= datagrid1.fixedRows) {
  136. app.showPopupMenu(true);
  137. window.setPopupMenu(true, "/root/init/msrght/mouserght", "label", "func", false);
  138. } else {
  139. window.setPopupMenu(false);
  140. }
  141. }
  142. }
  143. function fErSave() {
  144. if ( datagrid1.row < 1 ) {
  145. messageBox ( "선택된 응급증상명이", "I004" );
  146. }
  147. var prcpcd = model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row + "]/calcscorcd" );
  148. if ( prcpcd == "-" ) {
  149. var erprcpcd = opener.javascript.getParameter ( "SMMMO06100_erprcpcd" );
  150. if ( !isNull(erprcpcd)) { //저장된 수가 코드 값이 있으면
  151. messageBox ( "응급의학관리료 처방이 존재합니다. D/C후 처리가", "I006" );
  152. return;
  153. }
  154. var ioflag = opener.model.getvalue ( "/root/paminfo/list/ioflag" );
  155. var orddd = "";
  156. if ( ioflag == "O" ) {
  157. orddd = opener.model.getvalue ( "/root/paminfo/list/orddd" );
  158. } else {
  159. orddd = opener.model.getvalue ( "/root/paminfo/list/indd" );
  160. }
  161. model.setValue ( "/root/patersympresn/pid", opener.model.getValue ( "/root/paminfo/list/pid"));
  162. model.setValue ( "/root/patersympresn/orddd", orddd );
  163. model.setValue ( "/root/patersympresn/cretno", opener.model.getValue ( "/root/paminfo/list/cretno") );
  164. model.setValue ( "/root/patersympresn/histno", 0 );
  165. model.setValue ( "/root/patersympresn/instcd", getUserInfo("dutplceinstcd"));
  166. model.setValue ( "/root/patersympresn/histcd", "O" );
  167. model.setValue ( "/root/patersympresn/ersympresncd", model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row + "]/ersympresncd" ) );
  168. model.setValue ( "/root/patersympresn/tempstat", "I" );
  169. var savedata = model.instances(0).selectNodes( "/root/patersympresn" );
  170. model.setValue ( "/root/send/cond1", getNodeListCSV(savedata));
  171. if ( submit ( "TXMMO06200", false )) {
  172. var openerrow = opener.javascript.getParameter ( "SMMMO06100_currow" );
  173. if ( !isNull(openerrow) ) {
  174. if ( opener.model.getValue ( "/root/main/prcp/prcplist[" + openerrow + "]/status" ) != "S" ) {
  175. opener.model.removenode ( "/root/main/prcp/prcplist[" + openerrow + "]" );
  176. }
  177. }
  178. opener.javascript.fInitSrch();
  179. window.close();
  180. }
  181. } else {
  182. var prcpdd = "";
  183. if ( !isNull(opener.model.getValue ( "/root/init/prcpdd" ))) {
  184. prcpdd = opener.model.getValue ( "/root/init/prcpdd" );
  185. } else {
  186. prcpdd = getCurrentDate();
  187. }
  188. fPrcpSrchCom ( prcpcd, prcpdd, opener.model.getValue ( "/root/paminfo/list/insukind"), "TRMMO00100", "-", false, "getPrcpCdSrchInfo" );
  189. var srchLength = model.instances(0).selectNodes( "/root/prcpsrch/prcplist" ).length;
  190. if( srchLength >= 1) {
  191. model.setValue ( "/root/prcpsrch/prcplist/ermediscmngtresncd", model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row + "]/ersympresncd" ));
  192. model.setValue ( "/root/prcpsrch/prcplist/payflagcd", model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row + "]/payflagcd" ));
  193. var openerrow = opener.javascript.getParameter ( "SMMMO06100_currow" );
  194. if ( isNull(openerrow) ) {
  195. srchRow = addPrcpDetl ( "child" , "/root/prcpsrch/prcplist" , "/root/main/prcp" , 1 , opener.grd_prcplist.rows-1, "00" );
  196. if (srchRow !=0 ) {
  197. focusMain ( srchRow, "child" );
  198. }
  199. } else {
  200. if ( opener.model.getValue ( "/root/main/prcp/prcplist[" + openerrow + "]/status" ) != "S" ) {
  201. opener.model.removenode ( "/root/main/prcp/prcplist[" + openerrow + "]" );
  202. }
  203. srchRow = addPrcpDetl ( "child" , "/root/prcpsrch/prcplist" , "/root/main/prcp" , 1 , openerrow, "00" );
  204. }
  205. }
  206. opener.model.setValue ( "/root/init/erresn", model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row + "]/ersympresnabbr" ));
  207. if ( model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row + "]/ersympresnabbr" ) == "G3" ) {
  208. opener.model.setValue ( "/root/init/hosinprcpresncd", "11" );
  209. }
  210. opener.model.refresh();
  211. return true;
  212. }
  213. }
  214. ]]>
  215. </script>
  216. </xhtml:head>
  217. <xhtml:body guideline="1,1194;2,783;1,800;">
  218. <caption id="caption18" class="tit_2" style="left:12px; top:5px; width:395px; height:13px; ">
  219. <![CDATA[응급의학관리료에 대한 응급증상 및 이에 준하는 증상 사유 관리]]>
  220. <script type="javascript" ev:event="ondblclick">
  221. <![CDATA[
  222. // setParameter ( "SMMMB00500_formrecseq", "800000000326104" );
  223. // modal ( "SMMMB00500" );
  224. ]]>
  225. </script>
  226. </caption>
  227. <button id="button37" class="btn2_letter2" style="left:1109px; top:2px; width:42px; height:19px; ">
  228. <caption>추가</caption>
  229. <script type="javascript" ev:event="onclick">
  230. <![CDATA[
  231. model.setValue ( "/root/reset/ersympresnlist/instcd", getUserInfo("dutplceinstcd"));
  232. model.setValue ( "/root/reset/ersympresnlist/refseq", "1");
  233. appendChildPrcp ( "/root/reset/ersympresnlist", "/root/ersympresn", "main" );
  234. model.refresh();
  235. ]]>
  236. </script>
  237. </button>
  238. <button id="button2" class="btn5_letter2" style="left:1155px; top:2px; width:42px; height:19px; ">
  239. <caption>저장</caption>
  240. <script type="javascript" ev:event="DOMActivate">
  241. <![CDATA[
  242. if ( model.getValue ( "/root/init/prcp" ) == "Y" ) { // 처방화면 저장
  243. if(fErSave()) {
  244. window.close();
  245. }
  246. } else {
  247. for ( var i=1; i < datagrid1.rows; i++ ) {
  248. if ( model.getValue ( "/root/ersympresn/ersympresnlist[" + i + "]/status" ) == "I" ) {
  249. if ( isNull ( model.getValue ( "/root/ersympresn/ersympresnlist[" + i + "]/resnnm" ) )) {
  250. messageBox ( "응급증상명이", "I004" );
  251. return;
  252. }
  253. if ( isNull ( model.getValue ( "/root/ersympresn/ersympresnlist[" + i + "]/erclscd" ) )) {
  254. messageBox ( "분류가", "I004" );
  255. return;
  256. }
  257. if ( isNull ( model.getValue ( "/root/ersympresn/ersympresnlist[" + i + "]/payflagcd" ) )) {
  258. messageBox ( "급여구분이", "I004" );
  259. return;
  260. }
  261. }
  262. }
  263. var savedata = model.instances(0).selectNodes( "/root/ersympresn/ersympresnlist" );
  264. model.setValue ( "/root/send/cond1", getNodeListCSV(savedata));
  265. submit ( "TXMMO06100" );
  266. }
  267. ]]>
  268. </script>
  269. </button>
  270. <line id="line5" class="line_1" style="x1:7px; y1:25px; x2:1201px; y2:25px; "/>
  271. <datagrid id="datagrid1" nodeset="/root/ersympresn/ersympresnlist" autoresize="true" caption="^약어명^응급증상명^분류^급여구분^사용구분^수가코드^수가명^순서" colsep="^" colwidth="38, 100, 430, 140, 80, 60, 100, 278, 50" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowsep="|" style="left:7px; top:29px; width:1194px; height:752px; word-wrap:word; ">
  272. <col disabled="true" ref="status" type="combo" style="text-align:center; ">
  273. <choices>
  274. <item>
  275. <label>신규</label>
  276. <value>I</value>
  277. </item>
  278. <item>
  279. <label>수정</label>
  280. <value>U</value>
  281. </item>
  282. <item>
  283. <label>삭제</label>
  284. <value>D</value>
  285. </item>
  286. <item>
  287. <label>-</label>
  288. <value>-</value>
  289. </item>
  290. </choices>
  291. </col>
  292. <col ref="ersympresnabbr" type="input"/>
  293. <col ref="resnnm" type="input"/>
  294. <col ref="erclscd" type="combo" style="text-align:left; ">
  295. <choices>
  296. <itemset nodeset="/root/init/erclscd/M0012">
  297. <label ref="cdnm"/>
  298. <value ref="cdid"/>
  299. </itemset>
  300. </choices>
  301. </col>
  302. <col ref="payflagcd" type="combo" style="text-align:center; ">
  303. <choices>
  304. <itemset nodeset="/root/init/payflagcd/M0029">
  305. <label ref="cdnm"/>
  306. <value ref="cdid"/>
  307. </itemset>
  308. </choices>
  309. </col>
  310. <col ref="useyn" type="combo" style="text-align:center; ">
  311. <choices>
  312. <item>
  313. <label>사용</label>
  314. <value>Y</value>
  315. </item>
  316. <item>
  317. <label>불가</label>
  318. <value>N</value>
  319. </item>
  320. </choices>
  321. </col>
  322. <col ref="calcscorcd" style="text-align:center; "/>
  323. <col ref="ordnm"/>
  324. <col imemode="disabled" ref="refseq" type="input"/>
  325. <script type="javascript" ev:event="xforms-value-changed">
  326. <![CDATA[
  327. var status = model.getValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row + "]/status" );
  328. if (status=="-" ) {
  329. model.setValue ( "/root/ersympresn/ersympresnlist[" + datagrid1.row+ "]/status", "U" );
  330. }
  331. model.refresh();
  332. ]]>
  333. </script>
  334. <script type="javascript" ev:event="onmousedown">
  335. <![CDATA[
  336. if ( model.getValue ( "/root/init/prcp" ) != "Y" ) {
  337. fMouseRghtBtnPopup();
  338. }
  339. ]]>
  340. </script>
  341. <script type="javascript" ev:event="ondblclick">
  342. <![CDATA[
  343. if( datagrid1.isCell(event.target) && datagrid1.row >= datagrid1.fixedRows ){
  344. if ( datagrid1.col == datagrid1.colRef("calcscorcd") && model.getValue ( "/root/init/prcp" ) != "Y" ) {
  345. modal ( "SPMMO06600" );
  346. }
  347. if ( model.getValue ( "/root/init/prcp" ) == "Y" ) {
  348. if(fErSave()) {
  349. window.close();
  350. }
  351. }
  352. }
  353. ]]>
  354. </script>
  355. </datagrid>
  356. </xhtml:body>
  357. </xhtml:html>