SPPIJ02501_재원심사기왕증분리.xrw 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960
  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. <list1>
  11. <iscl/>
  12. </list1>
  13. <list2>
  14. <iscl/>
  15. </list2>
  16. </main>
  17. <send>
  18. <pid/>
  19. <indd/>
  20. <mskind/>
  21. <ownbrate/>
  22. <insukindcd/>
  23. <insukind/>
  24. <suppkindcd/>
  25. <suppkind/>
  26. <fromdd/>
  27. <todd/>
  28. <orddeptcd/>
  29. <atdoc/>
  30. <anamne/>
  31. <ordlist/>
  32. <calcscorcd/>
  33. <choicdsrch>calcscorcd</choicdsrch>
  34. <execddyn/>
  35. <execfromdd/>
  36. <exectodd/>
  37. <prcpfromdd/>
  38. <prcptodd/>
  39. </send>
  40. <hidden>
  41. <popupmenu>
  42. <iscl>
  43. <item>
  44. <name>처방유형변경(기왕증)</name>
  45. <func>fOrdChangeInsukind</func>
  46. </item>
  47. </iscl>
  48. <iscl2>
  49. <item>
  50. <name>삭제</name>
  51. <func>fOrdChangeInsukinDdelete</func>
  52. </item>
  53. </iscl2>
  54. </popupmenu>
  55. <list1>
  56. <iscllist>
  57. <seq/>
  58. <snglcalcscorcls/>
  59. <grupcalcscorcd/>
  60. <snglcalcscorcd/>
  61. <edicd/>
  62. <estmmeancd/>
  63. <estmcd/>
  64. <hngnm/>
  65. <calcpayflag/>
  66. <ownbrate/>
  67. <payownbrate/>
  68. <appunitcost/>
  69. <calcqty/>
  70. <calctims/>
  71. <calcdays/>
  72. <calcamt/>
  73. <cnfmcd/>
  74. <text/>
  75. <unithospaddamt/>
  76. <unitspecamt/>
  77. <unitaddamt/>
  78. <totordamt/>
  79. <ownbamt/>
  80. <hospaddamt/>
  81. <specamt/>
  82. <addamt/>
  83. <ordnm/>
  84. <grupcalcscorcls/>
  85. </iscllist>
  86. <isclsrch>
  87. <!-- 처방 조회부 Radio 선택 또는 Input 입력값 -->
  88. <judgChanged/>
  89. <inpCalcScorCd/>
  90. <inpEDICd/>
  91. <selectedRdoPay/>
  92. <selectedRdoItem>-</selectedRdoItem>
  93. </isclsrch>
  94. <isclitem1>
  95. <!-- 처방 목록에 해당하는 항목이 있는 경우 Radio item을 굵게 표시 -->
  96. <grupcalcscorcls_all/>
  97. <grupcalcscorcls_01/>
  98. <grupcalcscorcls_02/>
  99. <grupcalcscorcls_03/>
  100. <grupcalcscorcls_04/>
  101. <grupcalcscorcls_05/>
  102. <grupcalcscorcls_06/>
  103. <grupcalcscorcls_07/>
  104. <grupcalcscorcls_08/>
  105. <grupcalcscorcls_09/>
  106. <grupcalcscorcls_10/>
  107. <grupcalcscorcls_SS/>
  108. </isclitem1>
  109. <isclcond>
  110. <!-- 재행/급여/항목 구분 Radio 에서 선택된 값에 따라 처방 Grid에 보여질 값들의 조건식
  111. (수가 마스터에서 사용하는 구분값과 심사 화면에서 조건으로 사용되는 값들이 서로 맞지 않아 조건식을 조합하여 작성함 -->
  112. <judgchanged/>
  113. <calcpayflag/>
  114. <grupcalcscorcls/>
  115. </isclcond>
  116. </list1>
  117. <list2>
  118. <cond>
  119. <calcflag/>
  120. <pid/>
  121. <indd/>
  122. <mskind/>
  123. <insukind/>
  124. <suppkind/>
  125. <cretno/>
  126. <pdexchindx/>
  127. <pcalcmthdflag/>
  128. <pbrateflag/>
  129. <pjudgflag/>
  130. <snglcalcscorcd/>
  131. <estmmeancd/>
  132. <estmcd/>
  133. <calcpayflag/>
  134. <freeflag/>
  135. <calcqty/>
  136. <calctims/>
  137. <calcdays/>
  138. <calcseqno/>
  139. <calcscorseqno/>
  140. <execdd/>
  141. <orddd/>
  142. <specordyn/>
  143. <brthdd/>
  144. <estmcls/>
  145. </cond>
  146. <rslt>
  147. <iscl/>
  148. </rslt>
  149. </list2>
  150. <listdept>
  151. <deptlist>
  152. <deptcd/>
  153. <depthngnm/>
  154. </deptlist>
  155. </listdept>
  156. <listatdoc>
  157. <atdoctlist>
  158. <atdoctid/>
  159. <atdocthngnm/>
  160. <specordyn/>
  161. </atdoctlist>
  162. </listatdoc>
  163. <smpic00100>
  164. <cond>
  165. <calcscorcd/>
  166. <judgflag/>
  167. </cond>
  168. </smpic00100>
  169. <smpic00200>
  170. <judgsrch>
  171. <con1_dd/>
  172. <con2_gsflag/>
  173. <con3_search1/>
  174. <con4_search2/>
  175. <con5_insu/>
  176. <con6_calcscorcd/>
  177. <con7_todd/>
  178. <con8_instcd/>
  179. </judgsrch>
  180. <rslt>
  181. <clinclrg/>
  182. <earncls1/>
  183. <grupcalcscorcd/>
  184. <snglcalcscorcd/>
  185. <edicd/>
  186. <ordnm/>
  187. <edicdflag/>
  188. <ediunitcost/>
  189. </rslt>
  190. </smpic00200>
  191. <sppiz00800>
  192. <cond>
  193. <insukind/>
  194. <estmcls/>
  195. <estmmncd/>
  196. <todd/>
  197. <repcd/>
  198. </cond>
  199. <rslt>
  200. <clcd>
  201. <estmcls/>
  202. <estmmncd/>
  203. <estmcd/>
  204. <estmcdnm/>
  205. <addmthd/>
  206. <pnt/>
  207. <amt/>
  208. <rate/>
  209. <todd/>
  210. </clcd>
  211. </rslt>
  212. </sppiz00800>
  213. <sppiz01000>
  214. <cond>
  215. <cdid/>
  216. </cond>
  217. <rslt>
  218. <cdid/>
  219. </rslt>
  220. </sppiz01000>
  221. <rslt/>
  222. <cond/>
  223. <tmp>
  224. <isclsrch>
  225. <ordfilflag/>
  226. </isclsrch>
  227. </tmp>
  228. <listval>
  229. <uuee>
  230. <scrnid/>
  231. <compsnm/>
  232. <compscnts/>
  233. <compsrefcnts/>
  234. <compssizecnts/>
  235. </uuee>
  236. </listval>
  237. <judgresn/>
  238. <prcpdd/>
  239. <prcpno/>
  240. <prcphistno/>
  241. <chngexec>
  242. <chngdd/>
  243. <chnghh/>
  244. <chngmn/>
  245. </chngexec>
  246. <op>
  247. <nigtprpcflag/>
  248. <erprcpflag/>
  249. </op>
  250. <inpt>
  251. <dschnotidt/>
  252. </inpt>
  253. <smpic00200>
  254. <judgsrch>
  255. <con1_dd/>
  256. <con2_gsflag/>
  257. <con3_search1/>
  258. <con4_search2/>
  259. <con5_insu/>
  260. <con6_calcscorcd/>
  261. <con7_todd/>
  262. <con8_instcd/>
  263. </judgsrch>
  264. <rslt>
  265. <ediitem1/>
  266. <ediitem2/>
  267. <grupcalcscorcd/>
  268. <snglcalcscorcd/>
  269. <edicd/>
  270. <ordnm/>
  271. <edicdflag/>
  272. <ediunitcost/>
  273. </rslt>
  274. </smpic00200>
  275. </hidden>
  276. </root>
  277. </instance>
  278. <script type="javascript" ev:event="xforms-ready">
  279. <![CDATA[
  280. fInitialize();
  281. ]]>
  282. </script>
  283. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  284. <submission id="TRPIJ00411" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list1"/>
  285. <submission id="TRPIJ00309" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list1"/>
  286. <submission id="TXPIJ00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/temp"/>
  287. <submission id="TRPIJ00412" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list2"/>
  288. </model>
  289. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  290. <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
  291. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  292. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  293. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  294. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  295. <script type="javascript" src="../../../com/instantmsgweb/js/ZMI001.js"/>
  296. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  297. <script type="javascript">
  298. <![CDATA[
  299. function fInitialize(){
  300. // 공통코드를 조회한다.
  301. model.resetInstanceNode("/root/init/P0153list") ;
  302. zbcfGetCodeList(
  303. new Array("P0153","M0006","M0007","M0008"),
  304. new Array("/root/init/P0153list","/root/init/M0006list","/root/init/M0007list","/root/init/M0008list") );
  305. model.refresh();
  306. var dschjudgprcsstat = opener.model.getValue("/root/main/item1/iteminfo/dschjudgprcsstat");
  307. var chksave = "Y";
  308. var chksave = opener.model.getValue("root/hidden/item1/chksave");
  309. if(dschjudgprcsstat == "C" || dschjudgprcsstat == "E" || chksave == "Y"){
  310. btn_changeinsukind.visible = false;
  311. }else{
  312. btn_changeinsukind.visible = true;
  313. }
  314. datagrid1.rowHidden(0) = true;
  315. submit("TRPIJ00412");
  316. datagrid1.rowhidden(0)=true;
  317. fGetIsclList();
  318. }
  319. function fGetIsclList(){
  320. model.removenode("/root/main/list1");
  321. model.removenode("/root/main/list2");
  322. submit("TRPIJ00411");
  323. fSetItemBold();
  324. }
  325. // 필터 전에 변경된 데이타 존재 여부 체크
  326. function fChkUpdateData() {
  327. var flag = true;
  328. for (var i=1; i<grd_ordlist.rows; i++) {
  329. var status = grd_ordlist.rowStatus(i);
  330. if (status !=0) {
  331. flag = false;
  332. }
  333. }
  334. return flag;
  335. }
  336. // 처방 조회부 - 재행/급여/항목구분 Radio 선택에 따라 처방 내역을 보여준다.
  337. function fGetSelectedOrderData() {
  338. var selecteditem = model.getValue("/root/hidden/list1/isclsrch/selectedRdoItem");
  339. // var judgchanged = model.getValue("/root/hidden/list1/isclsrch/judgChanged");
  340. for (var i = grd_ordlist.fixedRows; i <= grd_ordlist.rows; i ++ ) {
  341. grd_ordlist.rowHidden(i) = false;
  342. var rowcnt = getNodesetCount("/root/main/list1/iscl");
  343. var estmmncd = model.getValue("/root/main/list1/iscl["+ i + "]/estmmncd");
  344. var estmmnnm = model.getValue("/root/main/list1/iscl["+ i + "]/estmmnnm");
  345. if (estmmnnm != "") {
  346. grd_ordlist.tooltipText(i, grd_ordlist.colref("estmmncd")) = "[산정의미코드:" + estmmncd + "]" + estmmnnm;
  347. }
  348. if(selecteditem != "-" && selecteditem != "99"){
  349. // 2008. 02. 12 박지욱 추가(식대는 02항에 10, 11목인 경우)
  350. if (selecteditem == "021011") {
  351. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("clinclrg")) != "02") {
  352. grd_ordlist.rowHidden(i) = true;
  353. } else {
  354. if (grd_ordlist.valueMatrix(i, grd_ordlist.colRef("earncls1")) != "10" && grd_ordlist.valueMatrix(i, grd_ordlist.colRef("earncls1")) != "11") {
  355. grd_ordlist.rowHidden(i) = true;
  356. }
  357. }
  358. // 2008.07.26 박창원 추가 입원을 선택 했을경우 식대를 제외하고 보여준다.
  359. } else if (selecteditem == "02") {
  360. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("clinclrg")) != "02") {
  361. grd_ordlist.rowHidden(i) = true;
  362. } else {
  363. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("earncls1")) == "10" || grd_ordlist.valueMatrix(i, grd_ordlist.colRef("earncls1")) == "11") {
  364. grd_ordlist.rowHidden(i) = true;
  365. }
  366. }
  367. } else {
  368. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("clinclrg")) != selecteditem){
  369. grd_ordlist.rowHidden(i) = true;
  370. }
  371. }
  372. } else if (selecteditem == "99") { // 원외추가 - 20090703 박창원
  373. if(grd_ordlist.valueMatrix(i, grd_ordlist.colRef("hosinhosoutflag")) != "O") {
  374. grd_ordlist.rowHidden(i) = true;
  375. }
  376. }
  377. }
  378. }
  379. function fOrdChangeInsukind() {
  380. for (var i=0; i < grd_ordlist.selectedRows; i++) {
  381. var cRrow = grd_ordlist.selectedRow(i);
  382. var maxcnt = 0;
  383. maxcnt = parseInt(model.getXPathValue("count(/root/main/list2/iscl[string-length(pid) > 0])")) + 1;
  384. model.makeNode("/root/main/list2/iscl["+maxcnt+"]");
  385. model.setValue("/root/main/list1/iscl[rn='"+grd_ordlist.valueMatrix(cRrow,grd_ordlist.colRef("rn"))+"']/chkflag", "Y");
  386. model.copyNode("/root/main/list2/iscl["+(maxcnt)+"]","/root/main/list1/iscl[rn='"+grd_ordlist.valueMatrix(cRrow,grd_ordlist.colRef("rn"))+"']");
  387. model.removenode("/root/main/list1/iscl[rn='"+grd_ordlist.valueMatrix(cRrow,grd_ordlist.colRef("rn"))+"']");
  388. }
  389. model.refresh();
  390. }
  391. function fOrdChangeInsukinDdelete() {
  392. var cRrow =0;
  393. grd_ordlist2.deleteRow(grd_ordlist2.row);
  394. }
  395. function fSetItemBold(){
  396. rdo_ordfilflag.item(0).attribute("font-weight") = "bold"; // "전체" 항목은 default 로 굵게 표시한다.
  397. //우선 초기화를 한다.
  398. rdo_ordfilflag.item(1).attribute("font-weight") = "normal";
  399. rdo_ordfilflag.item(2).attribute("font-weight") = "normal";
  400. rdo_ordfilflag.item(3).attribute("font-weight") = "normal";
  401. rdo_ordfilflag.item(4).attribute("font-weight") = "normal";
  402. rdo_ordfilflag.item(5).attribute("font-weight") = "normal";
  403. rdo_ordfilflag.item(6).attribute("font-weight") = "normal";
  404. rdo_ordfilflag.item(7).attribute("font-weight") = "normal";
  405. rdo_ordfilflag.item(8).attribute("font-weight") = "normal";
  406. rdo_ordfilflag.item(9).attribute("font-weight") = "normal";
  407. rdo_ordfilflag.item(10).attribute("font-weight") = "normal";
  408. rdo_ordfilflag.item(11).attribute("font-weight") = "normal";
  409. var rowcnt = getNodesetCount("/root/main/list1/iscl"); // 필터
  410. rowcnt = eval(rowcnt) + 1;
  411. var old_item1 = "";
  412. // for (var i = 1; i < rowcnt ; i++) {
  413. // 처방 조회부 항목구분 Radio에서 해당 처방이 있는 item을 굵게 표시한다.
  414. var item1 = model.getValue("/root/main/list1/iscl[clinclrg='01']/clinclrg"); //항목구분 에 Bold처리하기 위한 체크
  415. var item2 = model.getValue("/root/main/list1/iscl[clinclrg='02']/clinclrg");
  416. var item3 = model.getValue("/root/main/list1/iscl[clinclrg='03']/clinclrg");
  417. var item4 = model.getValue("/root/main/list1/iscl[clinclrg='04']/clinclrg");
  418. var item5 = model.getValue("/root/main/list1/iscl[clinclrg='05']/clinclrg");
  419. var item6 = model.getValue("/root/main/list1/iscl[clinclrg='06']/clinclrg");
  420. var item7 = model.getValue("/root/main/list1/iscl[clinclrg='07']/clinclrg");
  421. var item8 = model.getValue("/root/main/list1/iscl[clinclrg='08']/clinclrg");
  422. var item9 = model.getValue("/root/main/list1/iscl[clinclrg='09']/clinclrg");
  423. var item10 = model.getValue("/root/main/list1/iscl[clinclrg='10']/clinclrg");
  424. var itemSS = model.getValue("/root/main/list1/iscl[clinclrg='SS']/clinclrg");
  425. //var itemSS = model.getValue("/root/main/ist1/iscl[clinclrg='SS']/clinclrg");
  426. // if (item1 != old_item1) {
  427. if (item1 == "01") {
  428. rdo_ordfilflag.item(1).attribute("font-weight") = "bold";
  429. }
  430. if (item2 == "02") {
  431. rdo_ordfilflag.item(2).attribute("font-weight") = "bold";
  432. }
  433. if (item3 == "03") {
  434. rdo_ordfilflag.item(3).attribute("font-weight") = "bold";
  435. }
  436. if (item4 == "04") {
  437. rdo_ordfilflag.item(4).attribute("font-weight") = "bold";
  438. }
  439. if (item5 == "05") {
  440. rdo_ordfilflag.item(5).attribute("font-weight") = "bold";
  441. }
  442. if (item6 == "06") {
  443. rdo_ordfilflag.item(6).attribute("font-weight") = "bold";
  444. }
  445. if (item7 == "07") {
  446. rdo_ordfilflag.item(7).attribute("font-weight") = "bold";
  447. }
  448. if (item8 == "08") {
  449. rdo_ordfilflag.item(8).attribute("font-weight") = "bold";
  450. }
  451. if (item9 == "09") {
  452. rdo_ordfilflag.item(9).attribute("font-weight") = "bold";
  453. }
  454. if (item10 == "10") {
  455. rdo_ordfilflag.item(10).attribute("font-weight") = "bold";
  456. }
  457. if (itemSS == "SS") {
  458. rdo_ordfilflag.item(11).attribute("font-weight") = "bold";
  459. }
  460. //old_item1 = item1
  461. // }
  462. // }
  463. }
  464. ]]>
  465. </script>
  466. </xhtml:head>
  467. <xhtml:body pagewidth="1211" pageheight="750" guideline="1,1195;2,722;1,0;" style="margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
  468. <group id="group3" scroll="auto" style="left:0px; top:0px; width:1195px; height:730px; ">
  469. <group id="group8" class="roundrect_example" style="left:230px; top:70px; width:651px; height:25px; ">
  470. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:647px; height:25px; "/>
  471. <select1 id="rdo_ordfilflag" ref="/root/hidden/list1/isclsrch/selectedRdoItem" class="radio_search" appearance="full" cols="14" overflow="visible" style="left:5px; top:5px; width:640px; height:14px; ">
  472. <choices>
  473. <item>
  474. <label>전체</label>
  475. <value>-</value>
  476. </item>
  477. <item>
  478. <label>진찰</label>
  479. <value>01</value>
  480. </item>
  481. <item>
  482. <label>입원</label>
  483. <value>02</value>
  484. </item>
  485. <item>
  486. <label>투약</label>
  487. <value>03</value>
  488. </item>
  489. <item>
  490. <label>주사</label>
  491. <value>04</value>
  492. </item>
  493. <item>
  494. <label>마취</label>
  495. <value>05</value>
  496. </item>
  497. <item>
  498. <label>이학</label>
  499. <value>06</value>
  500. </item>
  501. <item>
  502. <label>정신</label>
  503. <value>07</value>
  504. </item>
  505. <item>
  506. <label>수술</label>
  507. <value>08</value>
  508. </item>
  509. <item>
  510. <label>검사</label>
  511. <value>09</value>
  512. </item>
  513. <item>
  514. <label>방사선</label>
  515. <value>10</value>
  516. </item>
  517. <item>
  518. <label>특수</label>
  519. <value>SS</value>
  520. </item>
  521. </choices>
  522. <script type="javascript" ev:event="xforms-select">
  523. <![CDATA[
  524. var selectedRdoItem = model.getValue("/root/hidden/list1/isclsrch/selectedRdoItem");
  525. var ordfilflag = model.getValue("/root/hidden/tmp/isclsrch/ordfilflag");
  526. if (selectedRdoItem == "" || selectedRdoItem == "-") { // 전체
  527. model.setValue("/root/hidden/list1/isclcond/grupcalcscorcls","*");
  528. } else {
  529. //grd_ordlist.attribute("nodeset") = "/root/main/list1/iscl[grupcalcscorcls='"+selectedRdoItem+"']";
  530. model.setValue("/root/hidden/list1/isclcond/grupcalcscorcls","clinclrg='"+selectedRdoItem+"'");
  531. }
  532. // if (!fChkUpdateData()) {
  533. // model.setValue("/root/hidden/list1/isclsrch/selectedRdoItem", ordfilflag);
  534. // rdo_ordfilflag.value = ordfilflag;
  535. //
  536. // messageBox("변경된 데이타 있는 경우 먼저 변경된 데이타를 저장 후 적용하십시요. ", "E100");
  537. // return;
  538. // } else {
  539. model.setValue("/root/hidden/tmp/isclsrch/ordfilflag", selectedRdoItem);
  540. /* }*/
  541. //fGetSelectedOrderData()
  542. grd_ordlist.nodeset = "/root/main/list1/iscl["+ model.getValue("/root/hidden/list1/isclcond/grupcalcscorcls")+"]"
  543. ]]>
  544. </script>
  545. </select1>
  546. </group>
  547. <group id="group2" style="left:0px; top:0px; width:1190px; height:65px; vertical-align:top; ">
  548. <shape id="roundrect1" class="roundrerct_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:1px; top:5px; width:1188px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  549. <button id="btn_srch" class="btn1_letter2" style="left:1112px; top:12px; width:56px; height:22px; ">
  550. <caption>조회</caption>
  551. <script type="javascript" ev:event="onclick">
  552. <![CDATA[
  553. var cond = model.getValue("/root/send/choicdsrch");
  554. var calcscorcd = model.getValue("/root/send/calcscorcd");
  555. if (calcscorcd != "") {
  556. switch(cond){
  557. case 'calcscorcd':
  558. // 수가코드 체크
  559. if(ipt_cd.currentText.length < 2 ){
  560. messageBox("수가코드는 2자리 이상", "C001");
  561. return ;
  562. }
  563. break;
  564. case 'edicd':
  565. // 수가코드 체크
  566. if(ipt_cd.currentText.length < 1 ){
  567. messageBox("EDI코드는 2자리 이상", "C001");
  568. return ;
  569. }
  570. break;
  571. case 'hngnm':
  572. //환자등록번호 체크
  573. if(ipt_cd.currentText.length < 2 ){
  574. messageBox("수가명칭는 2자리 이상", "C001");
  575. return ;
  576. }
  577. break;
  578. default :
  579. return ;
  580. break;
  581. }
  582. }
  583. fGetIsclList();
  584. ]]>
  585. </script>
  586. </button>
  587. <line id="line1" class="line_4" style="x1:1097px; y1:12px; x2:1097px; y2:60px; border-color:#ffe4bb; border-left-style:solid; "/>
  588. <caption id="caption5" class="search_name" style="left:370px; top:35px; width:95px; height:17px; ">처방일자 :</caption>
  589. <input id="ipt_fromdd" ref="/root/send/prcpfromdd" class="input_search" inputtype="date" style="left:455px; top:35px; width:85px; height:19px; "/>
  590. <caption id="caption6" style="left:543px; top:35px; width:14px; height:18px; ">~</caption>
  591. <input id="ipt_todd" ref="/root/send/prcptodd" class="input_search" inputtype="date" style="left:558px; top:35px; width:85px; height:19px; "/>
  592. <caption id="caption8" class="search_name" style="left:370px; top:11px; width:86px; height:17px; ">코드조회 :</caption>
  593. <input id="ipt_cd" ref="/root/send/calcscorcd" class="input_search" inputtype="button" _chartype="upper" style="left:596px; top:10px; width:112px; height:19px; ">
  594. <script type="javascript" ev:event="onbuttonclick">
  595. <![CDATA[
  596. // 처방시작일 또는 종료일이 입력된 경우 해당 날짜를 수가조회 기준일자로 설정
  597. model.setValue("/root/hidden/smpic00200/judgsrch/con2_gsflag", "S");
  598. model.setValue("/root/hidden/smpic00200/judgsrch/con3_search1", model.getValue("/root/send/choicdsrch" ));
  599. model.setValue("/root/hidden/smpic00200/judgsrch/con4_search2", model.getValue("/root/send/calcscorcd")); // SMPIC00200_수가조회 용
  600. model.setValue("/root/hidden/smpic00200/judgsrch/con1_dd", getCurrentDate());
  601. var insukindcd = model.getValue("/root/send/insukindcd");
  602. if (insukindcd == "11") {
  603. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "insu");
  604. }
  605. else if (insukindcd == "21" || insukindcd == "22") {
  606. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "proc");
  607. }
  608. else if (insukindcd == "31") {
  609. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "indus");
  610. }
  611. else if (insukindcd == "41") {
  612. model.setValue("/root/hidden/smpic00200/judgsrch/con5_insu", "autm");
  613. }
  614. model.removeNodeset("/root/hidden/smpic00200/rslt/mech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
  615. model.removeNodeset("/root/hidden/smpic00200/rslt/picmmech"); // SMPIC00200_수가조회 에서 선택된 결과가 copyNode되는 경로임
  616. modal("SMPIC00200", 1,150, 150, "SMPIC00200", "root/hidden/smpic00200", "/root/temp", "", "");
  617. model.setValue("/root/send/calcscorcd", model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  618. model.refresh();
  619. ]]>
  620. </script>
  621. </input>
  622. <caption id="caption4" class="search_name" style="left:10px; top:10px; width:90px; height:17px; ">주부유형 :</caption>
  623. <select1 id="rdo_mchrgcode" ref="/root/send/choicdsrch" class="radio_search" appearance="full" cellspacing="5" cols="3" overflow="visible" style="left:456px; top:12px; width:140px; height:15px; border-style:none; ">
  624. <choices>
  625. <item>
  626. <label>수가</label>
  627. <value>calcscorcd</value>
  628. </item>
  629. <item>
  630. <label>EDI</label>
  631. <value>edicd</value>
  632. </item>
  633. <item>
  634. <label>명칭</label>
  635. <value>hngnm</value>
  636. </item>
  637. </choices>
  638. </select1>
  639. <input id="input1" ref="/root/send/exectodd" class="input_search" editable="false" inputtype="date" style="left:850px; top:35px; width:85px; height:19px; "/>
  640. <caption id="caption23" style="left:835px; top:36px; width:14px; height:18px; ">~</caption>
  641. <input id="input2" ref="/root/send/execfromdd" class="input_search" editable="false" inputtype="date" style="left:745px; top:35px; width:85px; height:19px; "/>
  642. <caption id="caption24" class="search_name" style="left:655px; top:37px; width:90px; height:17px; ">실시일자 :</caption>
  643. <select id="checkbox1" ref="/root/send/execddyn" overflow="visible" appearance="full" style="left:985px; top:35px; width:85px; height:20px; border-style:none; ">
  644. <choices>
  645. <item>
  646. <label>미실시포함</label>
  647. <value>Y</value>
  648. </item>
  649. </choices>
  650. </select>
  651. </group>
  652. <caption id="caption10" class="tit_2" style="left:5px; top:79px; width:205px; height:15px; ">setp 1. 재원심사기왕증분리</caption>
  653. <line id="line2" class="line_1" style="x1:0px; y1:97px; x2:1195px; y2:97px; "/>
  654. <datagrid id="grd_ordlist" nodeset="/root/main/list1/iscl" class="datagrid2" autosizemouse="true" caption="환자번호^최초입원일^주/부유형^보험유형^보조유형^처방일자^실시일자^처방코드^처방명^1회 수량^횟수^날수^caption13^caption14^caption15^caption16^caption17^caption18^caption19^caption20^caption2^caption3^caption4^caption5^caption6^caption7^caption9^caption10^caption8^caption21^caption1" colsep="^" colwidth="67, 83, 64, 62, 54, 72, 75, 82, 417, 64, 49, 48, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" explorerbar="sortshowmove" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:102px; width:1195px; height:398px; ">
  655. <col ref="pid" style="text-align:center; "/>
  656. <col ref="orddd" format="yyyy-mm-dd"/>
  657. <col ref="mskind"/>
  658. <col ref="insukind"/>
  659. <col ref="suppkind"/>
  660. <col ref="prcpdd" format="yyyy-mm-dd"/>
  661. <col ref="execdd" format="yyyy-mm-dd"/>
  662. <col ref="prcpcd"/>
  663. <col ref="prcpnm"/>
  664. <col ref="prcptims"/>
  665. <col ref="prcpdayno"/>
  666. <col ref="prcphistno"/>
  667. <col ref="drprcpetc8" type="combo" visibility="hidden">
  668. <choices>
  669. <item>
  670. <label>1</label>
  671. <value>2</value>
  672. </item>
  673. <item>
  674. <label>2</label>
  675. <value>3</value>
  676. </item>
  677. </choices>
  678. </col>
  679. <col ref="prcpno" visibility="hidden"/>
  680. <col ref="cretno" visibility="hidden"/>
  681. <col ref="subcretno" visibility="hidden"/>
  682. <col ref="execprcpuniqno" visibility="hidden"/>
  683. <col ref="clinclrg" visibility="hidden"/>
  684. <col ref="earncls1" visibility="hidden"/>
  685. <col ref="earncls2" visibility="hidden"/>
  686. <col ref="earncls3" visibility="hidden"/>
  687. <col ref="aftercretno" visibility="hidden"/>
  688. <col ref="ordchangeyn" visibility="hidden"/>
  689. <col ref="chkflag" visibility="hidden"/>
  690. <col ref="rn" visibility="hidden"/>
  691. <col ref="oldmskind" visibility="hidden"/>
  692. <col ref="indd" visibility="hidden"/>
  693. <col ref="proccalctype" visibility="hidden"/>
  694. <co ref="newexecdd"/>
  695. <script type="javascript" ev:event="onmousedown">
  696. <![CDATA[
  697. if (event.button == 3) { // 3 : 오른쪽 버튼
  698. if (grd_ordlist.isCell(event.target) && grd_ordlist.mouseRow >= grd_ordlist.fixedrows) {
  699. var rowstatus = grd_ordlist.rowstatus(grd_ordlist.mouseRow);
  700. window.setPopupMenu(true, "/root/hidden/popupmenu/iscl/item", "name", "func", false);
  701. } else {
  702. window.setPopupMenu(false);
  703. }
  704. }
  705. ]]>
  706. </script>
  707. <script type="javascript" ev:event="DOMFocusOut">
  708. <![CDATA[
  709. window.setPopupMenu(false);
  710. ]]>
  711. </script>
  712. </datagrid>
  713. <caption id="caption1" class="tit_2" style="left:0px; top:508px; width:315px; height:13px; ">setp2. 처방유형 변경(기왕증) 처리 할 리스트</caption>
  714. <line id="line3" class="line_1" style="x1:0px; y1:524px; x2:930px; y2:525px; "/>
  715. <datagrid id="grd_ordlist2" nodeset="/root/main/list2/iscl" caption="환자번호^최초입원일^주/부유형^보험유형^보조유형^처방일자^실시일자^처방코드^처방명^1회 수량^횟수^날수^caption13^caption14^caption15^caption16^caption17^caption18^caption19^caption20^caption2^caption3^caption4^caption5^caption6^caption7^caption8^caption9^caption11^caption10^caption21^caption1" colsep="^" colwidth="67, 83, 64, 62, 54, 72, 75, 82, 161, 64, 49, 48, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:528px; width:930px; height:192px; ">
  716. <col ref="pid"/>
  717. <col ref="orddd"/>
  718. <col ref="mskind"/>
  719. <col ref="insukind"/>
  720. <col ref="suppkind"/>
  721. <col ref="prcpdd"/>
  722. <col ref="execdd"/>
  723. <col ref="prcpcd"/>
  724. <col ref="prcpnm"/>
  725. <col ref="prcptims"/>
  726. <col ref="prcpdayno"/>
  727. <col ref="prcphistno"/>
  728. <col ref="drprcpetc8" type="combo" visibility="hidden">
  729. <choices>
  730. <item>
  731. <label>1</label>
  732. <value>2</value>
  733. </item>
  734. <item>
  735. <label>2</label>
  736. <value>3</value>
  737. </item>
  738. </choices>
  739. </col>
  740. <col ref="prcpno" visibility="hidden"/>
  741. <col ref="cretno" visibility="hidden"/>
  742. <col ref="subcretno" visibility="hidden"/>
  743. <col ref="execprcpuniqno" visibility="hidden"/>
  744. <col ref="clinclrg" visibility="hidden"/>
  745. <col ref="earncls1" visibility="hidden"/>
  746. <col ref="earncls2" visibility="hidden"/>
  747. <col ref="earncls3" visibility="hidden"/>
  748. <col ref="aftercretno" visibility="hidden"/>
  749. <col ref="ordchangeyn" visibility="hidden"/>
  750. <col ref="chkflag" visibility="hidden"/>
  751. <col ref="rn" visibility="hidden"/>
  752. <col ref="oldmskind" visibility="hidden"/>
  753. <col ref="newexecdd" visibility="hidden"/>
  754. <col ref="indd" visibility="hidden"/>
  755. <col ref="proccalctype" visibility="hidden"/>
  756. <script type="javascript" ev:event="onmousedown">
  757. <![CDATA[
  758. if (event.button == 3) { // 3 : 오른쪽 버튼
  759. if (grd_ordlist2.isCell(event.target) && grd_ordlist2.mouseRow >= grd_ordlist2.fixedrows) {
  760. var rowstatus = grd_ordlist2.rowstatus(grd_ordlist2.mouseRow);
  761. window.setPopupMenu(true, "/root/hidden/popupmenu/iscl2/item", "name", "func", false);
  762. } else {
  763. window.setPopupMenu(false);
  764. }
  765. }
  766. ]]>
  767. </script>
  768. <script type="javascript" ev:event="DOMFocusOut">
  769. <![CDATA[
  770. window.setPopupMenu(false);
  771. ]]>
  772. </script>
  773. </datagrid>
  774. <datagrid id="grd_insuhistory" nodeset="/root/main/list3/insulist" class="datagrid2" caption="유형^보조^M^개시일^종료일^cretno" colsep="^" colwidth="34, 34, 18, 70, 70, 40" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="25" rowsep="|" selectionmode="byrow" style="left:935px; top:528px; width:260px; height:192px; ">
  775. <col ref="insukind"/>
  776. <col ref="suppkind"/>
  777. <col ref="mskind"/>
  778. <col ref="fromdd"/>
  779. <col ref="todd"/>
  780. <col ref="cretno" visibility="hidden"/>
  781. </datagrid>
  782. <caption id="cpt_detail" class="tit_2" style="left:935px; top:509px; width:260px; height:13px; ">setp3. 처방유형 변경(기왕증) 유형선택</caption>
  783. <line id="line4" class="line_1" style="x1:935px; y1:525px; x2:1195px; y2:524px; "/>
  784. <datagrid id="datagrid1" nodeset="/root/main/list3/insulist" class="datagrid2" caption="유형^보조^M^개시일^종료일^cretno" colsep="^" colwidth="34, 34, 18, 70, 70, 40" dataheight="25" defaultrows="-1" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="25" rowsep="|" selectionmode="byrow" style="left:105px; top:10px; width:260px; height:50px; ">
  785. <col ref="mskind"/>
  786. <col ref="insukind"/>
  787. <col ref="suppkind"/>
  788. <col ref="fromdd"/>
  789. <col ref="todd"/>
  790. <col ref="cretno" visibility="hidden"/>
  791. <script type="javascript" ev:event="onclick">
  792. <![CDATA[
  793. if(datagrid1.isCell(event.target) && datagrid1.row >= datagrid1.fixedRows) { //20100322 정승우 해당 row를 더블클릭했을 경우만 이벤트 타도록 적용..김용민 요청
  794. //보험리스트에 유형종료일이 9999-12-31인 경우 대신 퇴원예정일을 보여준다. 퇴원예정일이 없는경우 null로 보여준다.
  795. var mskind = model.getValue( "/root/main/list3/insulist[" + datagrid1.row + "]/mskind");
  796. var fromdd = model.getValue( "/root/main/list3/insulist[" + datagrid1.row + "]/fromdd");
  797. var todd = model.getValue( "/root/main/list3/insulist[" + datagrid1.row + "]/dschnotidt");
  798. var insukind = model.getValue( "/root/main/list3/insulist[" + datagrid1.row + "]/insukind");
  799. var suppkind = model.getValue( "/root/main/list3/insulist[" + datagrid1.row + "]/suppkind");
  800. var cretno = model.getValue( "/root/main/list3/insulist[" + datagrid1.row + "]/cretno");
  801. var seqno = model.getValue( "/root/main/list3/insulist[" + datagrid1.row + "]/seqno");
  802. //주석 처리함. 2007.08.22 박도형
  803. //model.setValue("/root/main/item1/iteminfo/insukindcd",insukind);
  804. //model.setValue("/root/main/item1/iteminfo/suppkindcd",suppkind);
  805. model.setValue("/root/send/mskind",mskind);
  806. model.setValue("/root/send/fromdd",fromdd);
  807. model.setValue("/root/send/todd",todd);
  808. model.setValue("/root/send/insukind",insukind);
  809. model.setValue("/root/send/suppkind",suppkind);
  810. model.setValue("/root/send/cretno",cretno);
  811. model.setValue("/root/send/execfromdd",fromdd);
  812. model.setValue("/root/send/exectodd",todd);
  813. model.setValue("/root/send/prcpfromdd",fromdd);
  814. model.setValue("/root/send/prcptodd",todd);
  815. fGetIsclList();
  816. }
  817. ]]>
  818. </script>
  819. </datagrid>
  820. </group>
  821. <button id="btn_changeinsukind" class="btn4_letter2" style="left:1083px; top:722px; width:56px; height:22px; ">
  822. <caption>변경</caption>
  823. <script type="javascript" ev:event="DOMActivate">
  824. <![CDATA[
  825. //2008.03.03 박지욱 수정
  826. //선택된 row의 체크값을 'Y' 로 해주는 함수
  827. //fCheckYSelectedRows();
  828. var mskind = model.getValue( "/root/main/list3/insulist[" + grd_insuhistory.row + "]/mskind");
  829. model.setValue("/root/send/anamne","Y");
  830. var cretno = 0;
  831. if (mskind.length == 0) { messageBox("setp3. 처방유형변경을", "C002"); return false;}
  832. cretno = model.getValue( "/root/main/list3/insulist[" + grd_insuhistory.row + "]/cretno");
  833. for( var i = grd_ordlist2.fixedRows; i < grd_ordlist2.rows; i++ ){
  834. //선택된row
  835. var cRrow = i;
  836. // 2008.01.28 박지욱 추가 (처방유형변경시 구수가코드 ordinptflag == 'x' 이면 변경할 수 없음 처리)
  837. var ordinptflag = model.getValue("/root/main/list2/iscl[" + cRrow + "]/ordinptflag");
  838. if (ordinptflag == "X") {
  839. messageBox("처방유형변경이 불가한 코드", "E008");
  840. } else {
  841. // 선택된 row 와 같은 snglcalcscorcd 를 가진 선택안된 row가 있다면 모두 변경을 할 것인지 메세지로 확인하도록 처리한다.
  842. var prcpdd1 = model.getValue("/root/main/list2/iscl["+ cRrow +"]/prcpdd");
  843. var prcpno1 = model.getValue("/root/main/list2/iscl["+ cRrow +"]/prcpno");
  844. var prcphistno1 = model.getValue("/root/main/list2/iscl["+ cRrow +"]/prcphistno");
  845. var hngnm = model.getValue("/root/main/list2/iscl["+ cRrow +"]/hngnm");
  846. var messageYn = "N";
  847. // 선택안된 같은 처방 row를 담을 배열
  848. var samecalclist = new Array();
  849. var index = 0;
  850. for (var j = grd_ordlist2.fixedRows; j < grd_ordlist2.rows; j++) {
  851. var chkflag = model.getValue("/root/main/list2/iscl["+ j +"]/chkflag");
  852. var prcpdd2 = model.getValue("/root/main/list2/iscl["+ j +"]/prcpdd");
  853. var prcpno2 = model.getValue("/root/main/list2/iscl["+ j +"]/prcpno");
  854. var prcphistno2 = model.getValue("/root/main/list2/iscl["+ j +"]/prcphistno");
  855. if (chkflag == "N" && prcpdd1 == prcpdd2 && prcpno1 == prcpno2 && prcphistno1 == prcphistno2) {
  856. messageYn = "Y";
  857. samecalclist[index++] = j;
  858. }
  859. }
  860. // 동일한 선택안된 row가 있다면
  861. if (messageYn == "Y") {
  862. if (messageBox("선택되지 않은 동일한 처방이 있습니다. 모두 변경", "S001") == 6) {
  863. model.setValue("/root/main/list2/iscl[" + cRrow + "]/aftercretno",cretno);
  864. model.setValue("/root/main/list2/iscl[" + cRrow + "]/mskind",mskind);
  865. model.setValue("/root/main/list2/iscl[" + cRrow + "]/ordchangeyn","Y");
  866. grd_ordlist2.rowstatus(cRrow) = 2;
  867. for(var k=0; k < index; k++) {
  868. var row = samecalclist[k];
  869. model.setValue("/root/main/list2/iscl[" + row + "]/aftercretno",cretno);
  870. model.setValue("/root/main/list2/iscl[" + row + "]/mskind",mskind);
  871. model.setValue("/root/main/list2/iscl[" + row + "]/ordchangeyn","Y");
  872. model.setValue("/root/main/list2/iscl[" + row + "]/chkflag","Y");
  873. grd_ordlist2.rowstatus(row) = 2;
  874. }
  875. }
  876. } else {
  877. model.setValue("/root/main/list2/iscl[" + cRrow + "]/aftercretno",cretno);
  878. model.setValue("/root/main/list2/iscl[" + cRrow + "]/mskind",mskind);
  879. model.setValue("/root/main/list2/iscl[" + cRrow + "]/ordchangeyn","Y");
  880. grd_ordlist2.rowstatus(cRrow) = 2;
  881. }
  882. }
  883. }
  884. model.refresh();
  885. var updtdata = getGridUpdateData(grd_ordlist2);
  886. if (updtdata == "") {
  887. messageBox("변경된 데이터가","I004");
  888. return;
  889. }
  890. if (messageBox("변경 및 재계산", "S001") == 6) {
  891. model.setValue("/root/send/ordlist",grd_ordlist2.getUpdateData());
  892. if ( submit("TXPIJ00401") ) {
  893. fGetIsclList();
  894. messageBox("변경 및 재계산이","I002");
  895. }
  896. }
  897. //row의 체크값을 'N' 로 해주는 함수
  898. //fCheckNSelectedRows();
  899. ]]>
  900. </script>
  901. </button>
  902. <button id="button1" class="btn4_letter2" style="left:1139px; top:722px; width:56px; height:22px; ">
  903. <caption>닫기</caption>
  904. <script type="javascript" ev:event="DOMActivate">
  905. <![CDATA[
  906. window.close();
  907. ]]>
  908. </script>
  909. </button>
  910. </xhtml:body>
  911. </xhtml:html>