SMPAO00101.xjs 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[
  3. /************************************************************************************************
  4. @author : 채희철
  5. @version : 2007-07-01
  6. 각종 List와 정보들을 초기화 시킨다.
  7. *************************************************************************************************/
  8. var gPatInfoPath = "/main/patinfo/patinfolist";
  9. var gBaseInfoPath = "/main/baseinfo";
  10. var gOpmiInfoPath = "/main/opmiinfo";
  11. var gSendPath = "/send";
  12. var gHiddenRcvPath = "/hidden/rcv1";
  13. var gAcptPath = "/main/list/acpt";
  14. var gPkgPath = "/main/list/pkglist";
  15. var gAcptDtlPath = "/main/list/acptdtl";
  16. var gRcptDtltPath = "/main/list/rcptdtl";
  17. var gChngPath = "/main/info/chnginfo";
  18. var gCardDtlInfoPath = "/main/info/cardinfo";
  19. var gCashDtlInfoPath = "/main/info/cashinfo";
  20. var gHiddenPath = "/hidden/";
  21. var gActListPath = "/main/baseinfo/actlist/otpt";
  22. //1.보험유형
  23. var gsInsu_BoHeom = "11"; //건강보험
  24. var gsInsu_BoHo1 = "21"; //의료급여1
  25. var gsInsu_BoHo2 = "22"; //의료급여2
  26. var gsInsu_HangYeo = "24"; //행여
  27. var gsInsu_JaboKind = "31"; //자보
  28. var gsInsu_SanJae = "41"; //산재
  29. var gsInsu_GongSang = "42"; //공상
  30. var gsInsu_IlBan = "51"; //일반
  31. var gsInsu_ForIn = "61"; //외국인
  32. var gsInsu_ImSang = "71"; //임상시험
  33. //2.유형보조
  34. var gsSupp_BASE = "00"; //정상
  35. var gsSupp_100 = "01"; //전액본인100%
  36. var gsSupp_INGONG = "02"; //인공신장투석
  37. var gsSupp_BOKMAK = "03"; //복막관류슐
  38. var gsSupp_TRANS = "04"; //장기이식
  39. var gsSupp_GAEDUGAESIM = "05"; //개두개심 10%
  40. var gsSupp_AM = "06"; //암 10%
  41. var gsSupp_SJTR = "07"; //보조 산정특례 20
  42. var gsSupp_LESSTHANSIXAGE = "08"; //입원6세미만
  43. var gsSupp_NATRBABY = "09"; //자연분만
  44. var gsSupp_HOMECARE = "10"; //가정간호
  45. var gsSupp_HOMECAREAM = "11"; //가정간호(등록암) 10%
  46. var gsSupp_SUTAK = "12"; //수탁
  47. var gsSupp_JSJA = "14"; //정신과정액
  48. //var gsSupp_HANDI = "71"; //장애인
  49. //var gsSupp_JABH = "B"; //전액보험자부담액(한도액)
  50. //var gsSupp_IMSANG = "T"; //임상연구
  51. //외래등록 선택시
  52. function fSelectOtpt(){
  53. //fExecCancel_auto("S", ""); //실시내역에 분리된건있으면 취소처리
  54. fClickGrid("grd_eactotpt");
  55. fGetActOrdList();
  56. fCItemRefresh();
  57. fRItemRefresh();
  58. }
  59. //외래접수정보조회(사용)
  60. function fGetActOrdList(){
  61. //조회조건 Copy (외래등록)
  62. copyNodeListType("/root" + gSendPath +"/s_otpt", "/root" + gBaseInfoPath +"/otpt_eactotpt/otpt[otpt_checkflag='true']", "replace");
  63. model.copynode("/root" + gBaseInfoPath +"/actlist", "/root/node_bk" + gBaseInfoPath +"/actlist");
  64. //체크된것이 없다면 stop한다는 의미
  65. if(getNodesetCount("/root/hidden/rcv1/h_opmi/opmi/opmi_pid") > 0){
  66. }else{
  67. return;
  68. }
  69. submit("TRPAO00116");
  70. fEactlistClick0();
  71. }
  72. //실시대상 선택
  73. function fActOrdSelect(){
  74. }
  75. function fEinsuCopy(grd_cnt) {
  76. //var grd_cnt = grd_Eactlist.row;
  77. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/otpt_insukind" , model.getvalue("/root/main/outrgst/ptin/ptin_insukind"));
  78. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/otpt_suppkind" , model.getvalue("/root/main/outrgst/ptin/ptin_suppkind"));
  79. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/otpt_insucd" , model.getvalue("/root/main/outrgst/ptin/ptin_insucd"));
  80. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/otpt_suppkindresn" , model.getvalue("/root/main/outrgst/ptin/ptin_suppkindresn"));
  81. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insukind_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insukind"));
  82. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_suppkind_o" , model.getvalue("/root/main/outrgst/ptin/ptin_suppkind"));
  83. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_suppkindresn_o" , model.getvalue("/root/main/outrgst/ptin/ptin_suppkindresn"));
  84. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insucd_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insucd"));
  85. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insucdnm_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insucdnm"));
  86. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insuno_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insuno"));
  87. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insdnm_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insdnm"));
  88. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insdrela_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insdrela"));
  89. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insdrrgstno1_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insdrrgstno1"));
  90. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_insdrrgstno2_o" , model.getvalue("/root/main/outrgst/ptin/ptin_insdrrgstno2"));
  91. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_fromdd_o" , model.getvalue("/root/main/outrgst/ptin/ptin_fromdd"));
  92. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/ptin_todd_o" , model.getvalue("/root/main/outrgst/ptin/ptin_todd"));
  93. model.setvalue("/root" + gBaseInfoPath + "/actlist/otpt["+ grd_cnt +"]/otpt_disccd" , model.getvalue("/root/main/outrgst/ptdc/ptdc_disccd"));
  94. }
  95. //외래등록 선택시, 해당 수납내역 조회
  96. function fGetOpmiList(){
  97. }
  98. //실시정산 완료된건 조회(취소가 가능한 대상)
  99. function fCancelSelectOtpt(){
  100. }
  101. //실시내역 클릭시
  102. function fEactlistClick0() {
  103. for(var a=0; a<grd_Eactlist.rows; a++){
  104. var actr_insukind = model.getValue("/root/main/baseinfo/actlist/actr["+ a +"]/actr_insukind");
  105. grd_Eactlist.cellComboNodeset(a, 6) = "/root/init/basecdlist/suppkind[insukind = '"+actr_insukind+"' and (ioflag = 'A' or ioflag = 'O')]";
  106. // 미실시 내역에 대한 표시 추가
  107. var execyn = model.getValue("/root/main/baseinfo/actlist/actr["+ a +"]/actr_remfact");
  108. if (execyn == "N") {
  109. grd_Eactlist.rowStyle(a,"all","background-color") = "#7BE6B7";
  110. }
  111. }
  112. }
  113. function fEactlistClick() {
  114. var grd_col = grd_Eactlist.col;
  115. var grd_row = grd_Eactlist.row;
  116. var actr_insukind = model.getValue("/root/main/baseinfo/actlist/actr["+ grd_row +"]/actr_insukind");
  117. if(grd_col != "0" && grd_col != "4" && grd_col != "6") {
  118. copyNodeListType( "/root" + gSendPath +"/s_actr", "/root" + gBaseInfoPath +"/actlist/actr["+ grd_row +"]","replace");
  119. //model.makevalue("/root" + gSendPath +"/s_actr/actr/actr_calcflag", model.getvalue("/root" + gBaseInfoPath +"/otpt_eactotpt/otpt["+ grd_eactotpt.row +"]/otpt_calcflag"));
  120. //model.makevalue("/root" + gSendPath +"/s_actr/actr/actr_holdflag", model.getvalue("/root" + gBaseInfoPath +"/otpt_eactotpt/otpt["+ grd_eactotpt.row +"]/otpt_holdflag"));
  121. submit("TRPAO00117");
  122. //조회하기전에 clear
  123. //model.copynode("/root/main/outrgst/m_oscl" , "/root/node_bk/main/outrgst/m_oscl");
  124. //model.copyNode("/root/main/outrgst/m_oscl" , "/root/main/baseinfo/opmilist/h_oscl/oscl");
  125. model.copyNode("/root/main/outrgst/m_oscl" , "/root/hidden/rcv1/h_oscl");
  126. grd_Eoscllist.rebuild();
  127. setTree(grd_Eoscllist, 0, 0, true);
  128. }
  129. }
  130. function fEactlistClick2() {
  131. grd_Eactlist.refresh();
  132. var grd_col = grd_Eactlist.col;
  133. var grd_row = grd_Eactlist.row;
  134. var actr_insukind = model.getValue("/root/main/baseinfo/actlist/actr["+ grd_row +"]/actr_insukind");
  135. if(grd_col == "4") {
  136. grd_Eactlist.cellComboNodeset(grd_row,6) = "/root/init/basecdlist/suppkind[insukind = '"+actr_insukind+"' and (ioflag = 'A' or ioflag = 'O')]";
  137. grd_Eactlist.refresh();
  138. }
  139. }
  140. //2013-01-08 현재 사용하는 곳 없음!!!! OLD CODE!!!
  141. //의료급여 자동승인버튼
  142. function fbtn_proc_org() {
  143. var otpt_cnt = getNodesetCount("/root/hidden/rcv1/sum_otpt/otpt/otpt_pid");
  144. if(getParameter("SPPMC03900_heallifeamtval") == "") {
  145. var opmi_spec_nopayown = parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_totnopyownbamt"))
  146. + parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_specownbamt"));
  147. //신보험증번호 조회(보험자격조회)
  148. var parm = model.getValue("/root/main/patinfo/patinfolist/rrgstno1") +
  149. model.getValue("/root/main/patinfo/patinfolist/rrgstno2") + "▦" + //주민번호
  150. model.getValue("/root/main/patinfo/patinfolist/hngnm") + "▦" + //이름
  151. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddd") + "▦" + //외래진료일자
  152. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_cretno") + "▦" + //생성번호
  153. "O" + "▦" + //진료형태
  154. "" + "▦" + //퇴원일자
  155. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt") + "▦" + //본인일부부담금
  156. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payinsubamt") + "▦" + //기관부담금
  157. model.getValue("/root/main/patinfo/patinfolist/pid") + "▦" + //등록번호
  158. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddeptcd") + "▦" + //진료과
  159. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_ownbflag") + "▦" + //본인부담구분
  160. opmi_spec_nopayown + "▦" + //비급여총액(nopyownbamt,allownownbamt,specownbamt)
  161. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") + "▦" + //산전지원금
  162. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_insukind") + "▦"; //보조유형
  163. setParameter("SPPMC03900_PARM",parm);
  164. setParameter("SPPMC03900_RTN","");
  165. setParameter("SPPMC03900_RTN_osunap","");
  166. setParameter("SPPMC03900_RTN_osunap_msg4","");
  167. fApproveHeallifeAmt2(); //건유비,산전비 조회
  168. fbtn_proc_check();
  169. //alert( "건유비 잔액 :" + getParameter("SPPMC03900_heallifeamtval"));
  170. //alert( "산전비 잔액 :" + getParameter("SPPMC03900_pregremamtval"));
  171. //alert( "건유비 차감액 :" + getParameter("SPPMC03900_heallifeamtclamamt"));
  172. //alert( "산전비 차감액 :" + getParameter("SPPMC03900_pregdmndamt"));
  173. //model.setvalue("/root/etc/heallifeamtval" , "건유비 잔액 :" + getParameter("SPPMC03900_heallifeamtval"));
  174. //model.setvalue("/root/etc/pregremamtval" , "산전비 잔액 :" + getParameter("SPPMC03900_pregremamtval"));
  175. model.setvalue("/root/etc/union_msg" ,"건유비 잔액: " + getParameter("SPPMC03900_heallifeamtval") + " " +
  176. "산전비 잔액: " + getParameter("SPPMC03900_pregremamtval") +'\n' + model.getValue("/root/etc/union_msg"));
  177. model.setValue("/root/send/sum_otpt" , getNodeListCSV(instance1.selectNodes("/root/hidden/rcv1/sum_otpt/otpt[otpt_checkflag='true']")));
  178. model.setvalue("/root/send/mth_nm" , "getMsg4LifeAmt");
  179. submit("TRPAO00127");
  180. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt", model.getValue("/root/temp5/msg4/heallifeamtclamamt"));
  181. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt" , model.getValue("/root/temp5/msg4/pregdmndamt"));
  182. //납부할 금액 세팅
  183. fCalcRcptexptAmt();
  184. }
  185. if(getParameter("SPPMC03900_heallifeamtval") != "" && otpt_cnt == 1) {
  186. setParameter("SPPMC03900_PARM",parm);
  187. setParameter("SPPMC03900_RTN","");
  188. setParameter("SPPMC03900_RTN_osunap","");
  189. setParameter("SPPMC03900_RTN_osunap_msg4","");
  190. if(getParameter("SPPMC03900_heallifeamtclamamt") == "0") {
  191. if(getParameter("SPPMC03900_heallifeamtval") != "0" || model.getvalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt") != "0") {
  192. if(messageBox("건유비차감 하시겠습니까?","Q999","") == "6") {
  193. alert("건유비차감");
  194. alert("parm :" + parm);
  195. //fApproveHeallifeAmt3();
  196. fApproveHeallifeAmt();
  197. }
  198. }
  199. }
  200. if(getParameter("SPPMC03900_pregdmndamt") == "0") {
  201. if(getParameter("SPPMC03900_pregremamtval") != "0") {
  202. if(messageBox("산전비차감 하시겠습니까?","Q999","") == "6") {
  203. alert("산전비차감");
  204. //fApproveHeallifeAmt4();
  205. }
  206. }
  207. }
  208. model.setValue("/root/send/sum_otpt" , getNodeListCSV(instance1.selectNodes("/root/hidden/rcv1/sum_otpt/otpt[otpt_checkflag='true']")));
  209. model.setvalue("/root/send/mth_nm" , "getMsg4LifeAmt");
  210. submit("TRPAO00127");
  211. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt", model.getValue("/root/temp5/msg4/heallifeamtclamamt"));
  212. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt" , model.getValue("/root/temp5/msg4/pregdmndamt"));
  213. //납부할 금액 세팅
  214. fCalcRcptexptAmt();
  215. return;
  216. }
  217. model.setValue("/root/send/sum_otpt" , getNodeListCSV(instance1.selectNodes("/root/hidden/rcv1/sum_otpt/otpt[otpt_checkflag='true']")));
  218. model.setvalue("/root/send/mth_nm" , "getMsg4LifeAmt");
  219. submit("TRPAO00127");
  220. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt", model.getValue("/root/temp5/msg4/heallifeamtclamamt"));
  221. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt" , model.getValue("/root/temp5/msg4/pregdmndamt"));
  222. //납부할 금액 세팅
  223. fCalcRcptexptAmt();
  224. }
  225. //의료급여 자동승인버튼
  226. function fbtn_proc3() {
  227. var opmi_spec_nopayown = parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_totnopyownbamt"))
  228. + parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_specownbamt"));
  229. //신보험증번호 조회(보험자격조회)
  230. var parm = model.getValue("/root/main/patinfo/patinfolist/rrgstno1") +
  231. model.getValue("/root/main/patinfo/patinfolist/rrgstno2") + "▦" + //주민번호
  232. model.getValue("/root/main/patinfo/patinfolist/hngnm") + "▦" + //이름
  233. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddd") + "▦" + //외래진료일자
  234. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_cretno") + "▦" + //생성번호
  235. "O" + "▦" + //진료형태
  236. "" + "▦" + //퇴원일자
  237. //model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt") + "▦" + //본인일부부담금
  238. //model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payinsubamt") + "▦" + //기관부담금
  239. model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_payownbamt") + "▦" + //본인일부부담금
  240. model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_payinsubamt") + "▦" + //기관부담금
  241. model.getValue("/root/main/patinfo/patinfolist/pid") + "▦" + //등록번호
  242. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddeptcd") + "▦" + //진료과
  243. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_ownbflag") + "▦" + //본인부담구분
  244. opmi_spec_nopayown + "▦" + //비급여총액(nopyownbamt,allownownbamt,specownbamt)
  245. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") + "▦" + //산전지원금
  246. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_insukind") + "▦"; //보조유형
  247. setParameter("SPPMC03900_PARM",parm);
  248. //신종플루진료
  249. setParameter("SPPMC03900_ETCORD",model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_etcordflag"));
  250. setParameter("SPPMC03900_RTN","");
  251. setParameter("SPPMC03900_RTN_osunap","");
  252. setParameter("SPPMC03900_RTN_osunap_msg4","");
  253. fApproveHeallifeAmt2(); //건유비,산전비 조회
  254. model.setvalue("/root/etc/union_msg" ,"건유비 잔액: " + getParameter("SPPMC03900_heallifeamtval") + " " +
  255. "산전비 잔액: " + getParameter("SPPMC03900_pregremamtval") +'\n' + model.getValue("/root/etc/union_msg"));
  256. fbtn_proc_check();
  257. model.setValue("/root/send/sum_otpt" , getNodeListCSV(instance1.selectNodes("/root/hidden/rcv1/sum_otpt/otpt[otpt_checkflag='true']")));
  258. model.setvalue("/root/send/mth_nm" , "getMsg4LifeAmt");
  259. submit("TRPAO00127");
  260. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt", model.getValue("/root/temp5/msg4/heallifeamtclamamt"));
  261. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt" , model.getValue("/root/temp5/msg4/pregdmndamt"));
  262. var SPPMC03900_heallifeamtval = parseInt(getParameter("SPPMC03900_heallifeamtval"));
  263. var SPPMC03900_pregremamtval = parseInt(getParameter("SPPMC03900_pregremamtval"));
  264. //건유비 차감한적이 없을시 예상차감액을 건유비 자리에 보여준다.
  265. if(model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_dracptyn")=="Y"){ // 진료 완료된 건에 대해서 차감 금액 들어가도록 수정(2015/09/25 이정택)
  266. if(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt") == "0" && SPPMC03900_heallifeamtval > 0) {
  267. var opmi_heallifeamtclamamt = 0;
  268. if(parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt100")) < SPPMC03900_heallifeamtval) {
  269. //2015/10/06 이정택 수정
  270. //opmi_heallifeamtclamamt = model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_payownbamt");
  271. opmi_heallifeamtclamamt = model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt100");
  272. //2015/10/06 이정택 수정
  273. }else{
  274. opmi_heallifeamtclamamt = SPPMC03900_heallifeamtval;
  275. }
  276. // 10원절사가 아닌 100원 절사 적용되도록 수정(2015/09/25 이정택)
  277. //opmi_heallifeamtclamamt = Math.floor(opmi_heallifeamtclamamt / 10) * 10;
  278. //opmi_heallifeamtclamamt = Math.floor(opmi_heallifeamtclamamt / 100) * 100;
  279. // 10원절사가 아닌 100원 절사 적용되도록 수정(2015/09/25 이정택)
  280. model.setValue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt",opmi_heallifeamtclamamt);
  281. opt_heallifeamtclamamt.attribute("color") = '#ff0000'; //red
  282. }
  283. //산전비 차감한적이 없을시 예상차감액을 산전비 자리에 보여준다.
  284. if(model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddeptcd")=="2100000000"){ // 산전비는 산부인과에 대해서만 차감 금액 들어가도록 수정(2015/09/25 이정택)
  285. if(SPPMC03900_pregremamtval > 0) {
  286. var opmi_pregdmndamt = 0;
  287. var opmi_payownbamt100 = model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt100"); // 급여본인부담금
  288. var opmi_totnopyownbamt = model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_totnopyownbamt"); // 비급여 본인부담금
  289. var opmi_heallifeamtclamamt = model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt"); // 건강생활유지비
  290. var opmi_prepregdmndamt = model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_prepregdmndamt"); // 기산전액
  291. var temp_opmi_pregdmndamt = (parseInt(opmi_payownbamt100)-parseInt(opmi_heallifeamtclamamt))+parseInt(opmi_totnopyownbamt)-parseInt(opmi_prepregdmndamt);
  292. if(parseInt(temp_opmi_pregdmndamt)>=0){
  293. if(parseInt(temp_opmi_pregdmndamt) < SPPMC03900_pregremamtval){
  294. opmi_pregdmndamt = temp_opmi_pregdmndamt;
  295. }else{
  296. opmi_pregdmndamt = SPPMC03900_pregremamtval;
  297. }
  298. model.setValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt" , opmi_pregdmndamt);
  299. ipt_pregdmndamt.attribute("color") = '#ff0000'; //red
  300. }
  301. }
  302. }
  303. }
  304. //납부할 금액 세팅
  305. fCalcRcptexptAmt();
  306. }
  307. //의료급여 자동승인버튼
  308. function fbtn_proc_4() {
  309. var opmi_spec_nopayown = parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_totnopyownbamt"))
  310. + parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_specownbamt"));
  311. //신보험증번호 조회(보험자격조회)
  312. var parm = model.getValue("/root/main/patinfo/patinfolist/rrgstno1") +
  313. model.getValue("/root/main/patinfo/patinfolist/rrgstno2") + "▦" + //주민번호
  314. model.getValue("/root/main/patinfo/patinfolist/hngnm") + "▦" + //이름
  315. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddd") + "▦" + //외래진료일자
  316. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_cretno") + "▦" + //생성번호
  317. "O" + "▦" + //진료형태
  318. "" + "▦" + //퇴원일자
  319. // 2015/09/24 이정택 절사된 금액으로 승인되도록 프로그램 수정
  320. //model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt") + "▦" + //본인일부부담금
  321. model.getvalue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt100") + "▦" + //본인일부부담금(절사된 금액으로 승인금액 넘어가도록 수정)
  322. // 2015/09/24 이정택 절사된 금액으로 승인되도록 프로그램 수정
  323. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payinsubamt") + "▦" + //기관부담금
  324. model.getValue("/root/main/patinfo/patinfolist/pid") + "▦" + //등록번호
  325. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddeptcd") + "▦" + //진료과
  326. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_ownbflag") + "▦" + //본인부담구분
  327. opmi_spec_nopayown + "▦" + //비급여총액(nopyownbamt,allownownbamt,specownbamt)
  328. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") + "▦" + //산전지원금
  329. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_insukind") + "▦"; //보조유형
  330. setParameter("SPPMC03900_PARM",parm);
  331. //신종플루진료
  332. setParameter("SPPMC03900_ETCORD",model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_etcordflag"));
  333. setParameter("SPPMC03900_RTN","");
  334. setParameter("SPPMC03900_RTN_osunap","");
  335. setParameter("SPPMC03900_RTN_osunap_msg4","");
  336. if(model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_dracptyn")=="Y"){ // 진료 완료된 건에 대해서 차감 금액 들어가도록 수정(2015/09/25 이정택)
  337. if(getParameter("SPPMC03900_heallifeamtclamamt") == "0") {
  338. if(getParameter("SPPMC03900_heallifeamtval") != "0" && model.getvalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt") != "0") {
  339. if(messageBox("건유비승인 하시겠습니까?","Q999","") == "6") {
  340. if(fApproveHeallifeAmt() == false) return false;
  341. }else{
  342. return false;
  343. }
  344. }
  345. }
  346. if(model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddeptcd")=="2100000000"){ // 산전비는 산부인과에 대해서만 차감 금액 들어가도록 수정(2015/09/25 이정택)
  347. if(getParameter("SPPMC03900_pregdmndamt") == "0") {
  348. if(getParameter("SPPMC03900_pregremamtval") != "0" && model.getvalue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") != "0") {
  349. if(messageBox("산전비승인 하시겠습니까?","Q999","") == "6") {
  350. if(fApprovePreDmndAmt() == false) return false;
  351. }else{
  352. return false;
  353. }
  354. }
  355. }
  356. }
  357. }
  358. return true;
  359. }
  360. //의료급여 자동승인버튼
  361. function fbtn_proc3_20150925bak() {
  362. if(getParameter("SPPMC03900_heallifeamtval") == "") {
  363. var opmi_spec_nopayown = parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_totnopyownbamt"))
  364. + parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_specownbamt"));
  365. //신보험증번호 조회(보험자격조회)
  366. var parm = model.getValue("/root/main/patinfo/patinfolist/rrgstno1") +
  367. model.getValue("/root/main/patinfo/patinfolist/rrgstno2") + "▦" + //주민번호
  368. model.getValue("/root/main/patinfo/patinfolist/hngnm") + "▦" + //이름
  369. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddd") + "▦" + //외래진료일자
  370. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_cretno") + "▦" + //생성번호
  371. "O" + "▦" + //진료형태
  372. "" + "▦" + //퇴원일자
  373. //model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt") + "▦" + //본인일부부담금
  374. //model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payinsubamt") + "▦" + //기관부담금
  375. model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_payownbamt") + "▦" + //본인일부부담금
  376. model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_payinsubamt") + "▦" + //기관부담금
  377. model.getValue("/root/main/patinfo/patinfolist/pid") + "▦" + //등록번호
  378. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddeptcd") + "▦" + //진료과
  379. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_ownbflag") + "▦" + //본인부담구분
  380. opmi_spec_nopayown + "▦" + //비급여총액(nopyownbamt,allownownbamt,specownbamt)
  381. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") + "▦" + //산전지원금
  382. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_insukind") + "▦"; //보조유형
  383. setParameter("SPPMC03900_PARM",parm);
  384. //신종플루진료
  385. setParameter("SPPMC03900_ETCORD",model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_etcordflag"));
  386. setParameter("SPPMC03900_RTN","");
  387. setParameter("SPPMC03900_RTN_osunap","");
  388. setParameter("SPPMC03900_RTN_osunap_msg4","");
  389. fApproveHeallifeAmt2(); //건유비,산전비 조회
  390. model.setvalue("/root/etc/union_msg" ,"건유비 잔액: " + getParameter("SPPMC03900_heallifeamtval") + " " +
  391. "산전비 잔액: " + getParameter("SPPMC03900_pregremamtval") +'\n' + model.getValue("/root/etc/union_msg"));
  392. fbtn_proc_check();
  393. }
  394. //alert( "건유비 잔액 :" + getParameter("SPPMC03900_heallifeamtval"));
  395. //alert( "산전비 잔액 :" + getParameter("SPPMC03900_pregremamtval"));
  396. //alert( "건유비 차감액 :" + getParameter("SPPMC03900_heallifeamtclamamt"));
  397. //alert( "산전비 차감액 :" + getParameter("SPPMC03900_pregdmndamt"));
  398. model.setValue("/root/send/sum_otpt" , getNodeListCSV(instance1.selectNodes("/root/hidden/rcv1/sum_otpt/otpt[otpt_checkflag='true']")));
  399. model.setvalue("/root/send/mth_nm" , "getMsg4LifeAmt");
  400. submit("TRPAO00127");
  401. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt", model.getValue("/root/temp5/msg4/heallifeamtclamamt"));
  402. model.makevalue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt" , model.getValue("/root/temp5/msg4/pregdmndamt"));
  403. var SPPMC03900_heallifeamtval = parseInt(getParameter("SPPMC03900_heallifeamtval"));
  404. var SPPMC03900_pregremamtval = parseInt(getParameter("SPPMC03900_pregremamtval"));
  405. //건유비 차감한적이 없을시 예상차감액을 건유비 자리에 보여준다.
  406. if(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt") == "0" && SPPMC03900_heallifeamtval > 0) {
  407. var opmi_heallifeamtclamamt = 0;
  408. if(parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt")) < SPPMC03900_heallifeamtval) {
  409. opmi_heallifeamtclamamt = model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_payownbamt");
  410. }else{
  411. opmi_heallifeamtclamamt = SPPMC03900_heallifeamtval;
  412. }
  413. opmi_heallifeamtclamamt = Math.floor(opmi_heallifeamtclamamt / 10) * 10;
  414. model.setValue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt",opmi_heallifeamtclamamt);
  415. /*
  416. var restamt = 0;
  417. var totownbamt = parseInt(model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_totownbamt100"));
  418. var totownbamt2 = parseInt(model.getValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_totownbamt2"));
  419. if(model.getvalue("/root/init/basecdlist/P0032[cdid='130']/cdnm") == "Y") {
  420. restamt = (totownbamt - opmi_heallifeamtclamamt) % 100;
  421. }else{
  422. restamt = (totownbamt - opmi_heallifeamtclamamt) % 10;
  423. }
  424. model.setValue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt" , opmi_heallifeamtclamamt);
  425. model.setValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_restamt" , restamt);
  426. model.setValue("/root/hidden/rcv1/h_opmi/opmi[opmi_orddd = '"+ getCurrentDate()+ "']/opmi_totownbamt2" , totownbamt - restamt);
  427. */
  428. opt_heallifeamtclamamt.attribute("color") = '#ff0000'; //red
  429. }
  430. //산전비 차감한적이 없을시 예상차감액을 산전비 자리에 보여준다.
  431. if(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") == "0" && SPPMC03900_pregremamtval > 0) {
  432. var opmi_pregdmndamt = 0;
  433. if(parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_rcptexptamt")) < SPPMC03900_pregremamtval) {
  434. opmi_pregdmndamt = model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_rcptexptamt");
  435. }else{
  436. opmi_pregdmndamt = SPPMC03900_pregremamtval;
  437. }
  438. model.setValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt" , opmi_pregdmndamt);
  439. ipt_pregdmndamt.attribute("color") = '#ff0000'; //red
  440. }
  441. //납부할 금액 세팅
  442. fCalcRcptexptAmt();
  443. }
  444. //의료급여 자동승인버튼
  445. function fbtn_proc_4_20150925bak() {
  446. var opmi_spec_nopayown = parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_totnopyownbamt"))
  447. + parseInt(model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_specownbamt"));
  448. //신보험증번호 조회(보험자격조회)
  449. var parm = model.getValue("/root/main/patinfo/patinfolist/rrgstno1") +
  450. model.getValue("/root/main/patinfo/patinfolist/rrgstno2") + "▦" + //주민번호
  451. model.getValue("/root/main/patinfo/patinfolist/hngnm") + "▦" + //이름
  452. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddd") + "▦" + //외래진료일자
  453. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_cretno") + "▦" + //생성번호
  454. "O" + "▦" + //진료형태
  455. "" + "▦" + //퇴원일자
  456. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payownbamt") + "▦" + //본인일부부담금
  457. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_payinsubamt") + "▦" + //기관부담금
  458. model.getValue("/root/main/patinfo/patinfolist/pid") + "▦" + //등록번호
  459. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_orddeptcd") + "▦" + //진료과
  460. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_ownbflag") + "▦" + //본인부담구분
  461. opmi_spec_nopayown + "▦" + //비급여총액(nopyownbamt,allownownbamt,specownbamt)
  462. model.getValue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") + "▦" + //산전지원금
  463. model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_insukind") + "▦"; //보조유형
  464. setParameter("SPPMC03900_PARM",parm);
  465. //신종플루진료
  466. setParameter("SPPMC03900_ETCORD",model.getValue("/root/main/outrgst/m_otpt/otpt/otpt_etcordflag"));
  467. setParameter("SPPMC03900_RTN","");
  468. setParameter("SPPMC03900_RTN_osunap","");
  469. setParameter("SPPMC03900_RTN_osunap_msg4","");
  470. if(getParameter("SPPMC03900_heallifeamtclamamt") == "0") {
  471. if(getParameter("SPPMC03900_heallifeamtval") != "0" && model.getvalue("/root/main/outrgst/m_opmi/opmi/opmi_heallifeamtclamamt") != "0") {
  472. if(messageBox("건유비승인 하시겠습니까?","Q999","") == "6") {
  473. if(fApproveHeallifeAmt() == false) return false;
  474. }else{
  475. return false;
  476. }
  477. }
  478. }
  479. if(getParameter("SPPMC03900_pregdmndamt") == "0") {
  480. if(getParameter("SPPMC03900_pregremamtval") != "0" && model.getvalue("/root/main/outrgst/m_opmi/opmi/opmi_pregdmndamt") != "0") {
  481. if(messageBox("산전비승인 하시겠습니까?","Q999","") == "6") {
  482. if(fApprovePreDmndAmt() == false) return false;
  483. }else{
  484. return false;
  485. }
  486. }
  487. }
  488. return true;
  489. }
  490. //실시정산 대상환자 조회
  491. function fCheckActrList() {
  492. if(getNodesetCount("/root/hidden/item1/pidinfo/h_actr/actr/pid") > 0) {
  493. if (model.getValue("/root/temp3/workgubn") == "E") {
  494. modal("SMPAO00107", "0","50", "50", "SMPAO00107", "/root/hidden/item1/pidinfo", "/root/main");
  495. return;
  496. }
  497. if (model.getValue("/root/temp3/workgubn") == "Y") {
  498. //if(messageBox("실시정산내역이 있습니다. [예]실시정산, [아니오]수납","Q999","") == "6") {
  499. if(messageBox("등록암 본인부담 변경(20091201)에 따른 실시정산내역이 있습니다. 실시정산 하시겠습니까? \n[예]실시정산, [아니오]수납","Q999","") == "6") {
  500. model.setValue("/root/temp3/workgubn" , "E");
  501. fSelectWorkgubn();
  502. fSearch();
  503. fCheckActrList();
  504. return;
  505. }
  506. }
  507. }
  508. }
  509. /*
  510. function fECalculate() {
  511. model.copynode("/root/send/s_actr" , "/root/node_bk/send/s_actr");
  512. removeChildren("/root/send/s_actr/actr");
  513. model.setValue("/root/send/sum_otpt" ,getNodeListCSV(instance1.selectNodes("/root/hidden/rcv1/sum_otpt/otpt[otpt_checkflag='true']")));
  514. model.setvalue("/root/send/mth_nm" ,"setOutOrdActr");
  515. //실시정산에 실시내역
  516. for (var cnt = 1; cnt<= getNodesetCount("/root/main/baseinfo/actlist/actr/actr_pid") ; cnt++) {
  517. copyNodeListType("/root/send/s_actr","/root/main/baseinfo/actlist/actr["+cnt+"]","before");
  518. }//End for grd_Eactlist
  519. submit("TRPAO00127");
  520. }
  521. */]]></Script>