SMADC02100.js 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517
  1. /**
  2. * 파 일 명 : SMADC02100.js
  3. * 설 명 : 복약지도환자조회 Javascriot
  4. * 설 계 자 : 공두경
  5. * 작 성 자 : 공두경
  6. * 수정이력 : 2008.01.08 / 최초작성 / 공두경
  7. */
  8. /**
  9. * 초기화
  10. */
  11. var gTimer;
  12. var chk_count=0;
  13. var chk_cnt = 1;
  14. function fInit() {
  15. model.setValue("/root/temp/srchinfo/prcpddstart",getCurrentDate());
  16. model.setValue("/root/temp/srchinfo/prcpddend",getCurrentDate());
  17. var dutplceinstcd = getUserInfo("dutplceinstcd");
  18. if(dutplceinstcd == ""){
  19. dutplceinstcd = "012";
  20. }
  21. model.setValue("/root/send/deptinfo/deptflag", "D");
  22. submit("TRADC02103");
  23. astfAddCombo("/root/init/orddept", "dept", "deptcd,deptnm", ",");
  24. model.setValue("/root/send/deptinfo/deptflag", "W");
  25. submit("TRADC02102");
  26. astfAddCombo("/root/init/deptlist", "ward", "deptcd,deptnm", "T,전체");
  27. submit("TRADB00109"); // 2011.01.14 pymi 복약분류조회
  28. //구분 초기화
  29. model.setValue("/root/temp/srchinfo/srchflag","2");
  30. fChkSrchflag();
  31. model.setValue("/root/temp/srchinfo/prcpclscd","A2|A4|A6"); //2008-12-11 외용제 포함
  32. model.refresh();
  33. }
  34. /**
  35. * 환자리스트 조회
  36. */
  37. function fSrchPatList() {
  38. /* 필수 입력사항 체크 */
  39. if(model.getValue("/root/temp/srchinfo/srchflag") == "" ){
  40. messageBox("구분을 선택","I008");
  41. return;
  42. }
  43. // 병동 조회조건
  44. chk_ward.visible = false;
  45. //// 2016년 4월20일 김치국
  46. // model.setValue("/root/temp/srchinfo/outfirst", "");
  47. if (model.getValue ("/root/temp/srchinfo/outfirst") == "Y" ) {
  48. var selok = "N";
  49. var selstr = model.getValue ("/root/temp/srchinfo/srchflag") ;
  50. var strno = selstr.length ;
  51. for ( var nn = 0; nn < strno; nn++ ) {
  52. var nstr = selstr.substr(nn, 1);
  53. if ( nstr == "3" ) {
  54. selok = "Y";
  55. }
  56. }
  57. if ( selok == "Y") {
  58. model.setValue("/root/temp/srchinfo/outfirst", "Y");
  59. }
  60. }
  61. model.copyNode("/root/send/srchinfo","/root/temp/srchinfo");
  62. model.removeNodeset("/root/main/patinfo/patlist");
  63. model.refresh();
  64. submit("TRADC02101");
  65. //해당row에 색깔 처리
  66. grd_patlist.rebuildStyle();
  67. setRowStyle("grd_patlist" , "6" , "Y" , "exptypeyn", "equal" );
  68. //2008-11-25 복약설명서 출력여부 색깔표시
  69. for(var i = grd_patlist.fixedRows; i < grd_patlist.rows; i++){
  70. if (model.getValue ("/root/main/patinfo/patlist["+i+"]/prntdt") != '' ) {
  71. // 20100309_laboru_동일한 환자의 경우 출력상태 색 입힐때 다효능 제외
  72. if(model.getValue("/root/main/patinfo/patlist["+i+"]/exptypeyn") != "Y") {
  73. grd_patlist.rowstyle(i, "data", "background-color") = "#7BE6B7" ;
  74. }
  75. }
  76. }
  77. if ( model.getValue("/root/temp/srchinfo/prcpclscd").indexOf("D") >=0 ){
  78. grd_patlist.colHidden( grd_patlist.colRef("prtlnm") ) = false;
  79. grd_patlist.colHidden( grd_patlist.colRef("anticncrdayno") ) = false;
  80. } else {
  81. grd_patlist.colHidden( grd_patlist.colRef("prtlnm") ) = true;
  82. grd_patlist.colHidden( grd_patlist.colRef("anticncrdayno") ) = true;
  83. }
  84. }
  85. /**
  86. * 복약설명서일괄출력
  87. */
  88. function fGetTmedlist() {
  89. var strBase64 = "";
  90. if(grd_patlist.rows > 1){
  91. var initCnt = grd_patlist.fixedRows; // 그리드상 첫 행 초기값
  92. var success = ""; // submit 성공여부
  93. var prePid; // 이전 행의 pid
  94. var curPid; // 현재 행의 pid
  95. var sCurOrddd; // 현재 행의 Orddd
  96. var sPreOrddd; // 이전 행의 Orddd
  97. var sCurOrdDeptcd; // 현재 행의 OrdDeptcd
  98. var sPreOrdDeptcd; // 이전 행의 OrdDeptcd
  99. var sCurCretno; // 현재 행의 Cretno
  100. var sPreCretno; // 이전 행의 Cretno
  101. var AutNuFlag ;
  102. for(var i = grd_patlist.fixedRows; i < grd_patlist.rows; i++){
  103. prePid = "";
  104. curPid = "";
  105. sCurOrddd = "";
  106. sPreOrddd = "";
  107. sCurOrdDeptcd = "";
  108. sPreOrdDeptcd = "";
  109. sCurCretno = "";
  110. sPreCretno = "";
  111. // 1. 일괄출력 가능 항목만 진행
  112. if(model.getValue("/root/main/patinfo/patlist["+i+"]/exptypeyn") == "N"){
  113. if(initCnt != i){ // 첫행은 비교대상에서 제외
  114. prePid = model.getValue("/root/main/patinfo/patlist["+(i-1)+"]/pid");
  115. sPreOrddd = model.getValue("/root/main/patinfo/patlist["+(i-1)+"]/orddd");
  116. sPreOrdDeptcd = model.getValue("/root/main/patinfo/patlist["+(i-1)+"]/orddeptcd");
  117. sPreCretno = model.getValue("/root/main/patinfo/patlist["+(i-1)+"]/cretno");
  118. }else{
  119. prePid = "0";
  120. sPreOrddd = "0";
  121. sPreOrdDeptcd = "0";
  122. sPreCretno = "0";
  123. }
  124. curPid = model.getValue("/root/main/patinfo/patlist["+i+"]/pid");
  125. sCurOrddd = model.getValue("/root/main/patinfo/patlist["+i+"]/orddd");
  126. sCurOrdDeptcd = model.getValue("/root/main/patinfo/patlist["+i+"]/orddeptcd");
  127. sCurCretno = model.getValue("/root/main/patinfo/patlist["+i+"]/cretno");
  128. model.makeValue("/root/main/patinfo/patlist["+i+"]/difflagcd", model.getValue("/root/init/difflagcd")); //복약설명서 출력조건[병원자료:1 , DIF한글:2, DIF영문:3]
  129. model.makeValue("/root/main/patinfo/patlist["+i+"]/pimagepath", getDomain()+"/dif/images/", true); //DIF 이미지 경로
  130. model.copyNode("/root/send/tmedinfo/tmedlisth","/root/main/patinfo/patlist["+i+"]"); // 복약설명서 조회조건 설정
  131. // 2. 복약설명서 조회 submit("TRADC02201",false); //TRADC02105
  132. if(submit("TRADC02105")){
  133. for (var iNo=1; iNo <= getNodesetCount("/root/main/tmedinfo/tmedlist"); iNo++) {
  134. //DIF의 jpg 이미지를 base64로 인코딩
  135. if(model.getValue("/root/init/difflagcd") != "1") {
  136. Base64_Preview1.SetViewMode(3);
  137. Base64_Preview1.LoadImage(model.getValue("/root/main/tmedinfo/tmedlist["+ iNo +"]/pimagepath"));
  138. strBase64 = Base64_Preview1.SaveImageBase64();
  139. if(strBase64 != ""){
  140. model.setValue("/root/main/tmedinfo/tmedlist["+ iNo +"]/medpic", strBase64);
  141. }
  142. Base64_Preview1.Clear();
  143. strBase64 = "";
  144. }
  145. }
  146. //20110929_laboru_전체 출력시 개인 출력 form 과 동일하도록 맞춤
  147. model.makeNode("/root/main/tmedinfo/patinfo");
  148. model.copyNode("/root/main/tmedinfo/patinfo", "/root/main/patinfo/patlist["+i+"]");
  149. // 3.복약설명서 출력
  150. if((prePid != curPid) || (sPreOrddd != sCurOrddd) || (sPreOrdDeptcd != sCurOrdDeptcd) || (sPreCretno != sCurCretno)){ // 이전 등록번호와 다를 때만 출력
  151. //exeReportPreview("RPADC02102", "XMLSTR", "", "", "false","","","","","false"); //2008-09-20 미리보기 화면 빼기
  152. /* if(model.getValue("/root/main/patinfo/patlist["+i+"]/roomcd") != "-"){
  153. exeReportPreview("RPADC02102", "XMLSTR", "/root/main/tmedinfo/tmedlist", "","true", "", "", "", "", "","","grp_report");
  154. }else{
  155. exeReportPreview("RPADC02103", "XMLSTR", "/root/main/tmedinfo/tmedlist", "","true", "", "", "", "", "","","grp_report");
  156. }*/
  157. AutNuFlag = model.getValue("/root/temp/srchinfo/autoprntnurseflag");
  158. if (AutNuFlag != "Y") {
  159. //20110929_laboru_전체 출력시 개인 출력 form 과 동일하도록 맞춤
  160. if(model.getValue("/root/main/patinfo/patlist/prcpgenrflag") == "O" ) {
  161. exeReportPreview("RPADC02203", "XMLSTR", "", "", "true","","","","","true"); // 외래
  162. } else {
  163. exeReportPreview("RPADC02201", "XMLSTR", "", "", "true","","","","","true");
  164. }
  165. }else{
  166. //2014년 12월 1일 복약상단 출력물 간호 출력 김치국
  167. if (model.getValue("/root/main/patinfo/patinfo/prcpgenrflag") == "O"){
  168. exeReportPreview("RPADC02303", "XMLSTR", "", "", "true","","","","","true"); // 외래
  169. }else{ // 입원
  170. exeReportPreview("RPADC02301", "XMLSTR", "", "", "true","","","","","true");
  171. }
  172. }
  173. }
  174. model.copyNode("/root/send/tmedinfo/tmedlistd","/root/main/tmedinfo");
  175. for(var j = 1; j <= getNodesetCount("/root/send/tmedinfo/tmedlistd/tmedlist"); j++){
  176. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/orddeptcd",model.getValue("/root/send/tmedinfo/tmedlisth/orddeptcd")); //과코드
  177. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/orddrid",model.getValue("/root/send/tmedinfo/tmedlisth/orddrid")); //의사코드
  178. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/cretno",model.getValue("/root/send/tmedinfo/tmedlisth/cretno")); //생성번호
  179. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/drugno",model.getValue("/root/send/tmedinfo/tmedlisth/drugno")); //생성번호
  180. }
  181. submit("TXADC02101"); //개별상세내역출려과같이 사용함
  182. model.setValue( "/root/main/patinfo/patlist["+i+"]/prntdt", getCurrentDate() + getCurrentTime().substr(0,4) );
  183. grd_patlist.rowstyle(i, "data", "background-color") = "#7BE6B7" ; // 색깔표시
  184. }
  185. }
  186. }
  187. }
  188. }
  189. /**
  190. * 20100223_laboru_자동출력 체크시
  191. */
  192. function fChkAutoDescPrnt() {
  193. var autoflag = model.getValue("/root/temp/srchinfo/autoprntflag");
  194. if (autoflag == "Y"){
  195. if (gTimer == null) {
  196. group4.visible = true;
  197. //model.setValue("/root/hidden/prcpsrch/drugno", "");
  198. gTimer = window.setInterval("fDescPrint()",13000);
  199. }
  200. } else {
  201. if (gTimer != null) {
  202. window.clearinterval(gTimer);
  203. gTimer = null;
  204. group4.visible = false;
  205. }
  206. }
  207. model.refresh();
  208. }
  209. /**
  210. * 20100223_laboru_복약설명서 자동출력
  211. */
  212. function fDescPrint() {
  213. var strBase64 = "";
  214. //// 2016년 4월20일 김치국
  215. if (model.getValue ("/root/temp/srchinfo/outfirst") == "Y" ) {
  216. var selok = "N";
  217. var selstr = model.getValue ("/root/temp/srchinfo/srchflag") ;
  218. var strno = selstr.length ;
  219. for ( var nn = 0; nn < strno; nn++ ) {
  220. var nstr = selstr.substr(nn, 1);
  221. if ( nstr == "3" ) {
  222. selok = "Y";
  223. }
  224. }
  225. if ( selok == "Y") {
  226. model.setValue("/root/temp/srchinfo/outfirst", "Y");
  227. }
  228. }
  229. ////
  230. // 미출력 상태만 조회
  231. model.setValue("/root/temp/srchinfo/prtflag", "2");
  232. //alert("Call");
  233. fSrchPatList();
  234. chk_count++;
  235. if ( ( chk_count % 4 )=="0" ){
  236. caption16.text="자동 출력중[/]";
  237. }
  238. if ( ( chk_count % 4 )=="1" ){
  239. caption16.text="자동 출력중[―]";
  240. }
  241. if ( ( chk_count % 4 )=="2" ){
  242. caption16.text="자동 출력중[\]";
  243. }
  244. if ( ( chk_count % 4 )=="3" ){
  245. caption16.text="자동 출력중[|]";
  246. }
  247. caption16.refresh();
  248. if(grd_patlist.rows > 1){
  249. var initCnt = grd_patlist.fixedRows; // 그리드상 첫 행 초기값
  250. var success = ""; // submit 성공여부
  251. var prePid; // 이전 행의 pid
  252. var curPid; // 현재 행의 pid
  253. var sCurOrddd; // 현재 행의 Orddd
  254. var sPreOrddd; // 이전 행의 Orddd
  255. var sCurOrdDeptcd; // 현재 행의 OrdDeptcd
  256. var sPreOrdDeptcd; // 이전 행의 OrdDeptcd
  257. var sCurCretno; // 현재 행의 Cretno
  258. var sPreCretno; // 이전 행의 Cretno
  259. chk_cnt = 1;
  260. // for(var chk_cnt = grd_patlist.fixedRows; chk_cnt < grd_patlist.rows; chk_cnt++){
  261. prePid = "";
  262. curPid = "";
  263. sCurOrddd = "";
  264. sPreOrddd = "";
  265. sCurOrdDeptcd = "";
  266. sPreOrdDeptcd = "";
  267. sCurCretno = "";
  268. sPreCretno = "";
  269. // 1. 일괄출력 가능 항목만 진행
  270. if(model.getValue("/root/main/patinfo/patlist["+chk_cnt+"]/exptypeyn") == "N"){
  271. if(initCnt != chk_cnt){ // 첫행은 비교대상에서 제외
  272. prePid = model.getValue("/root/main/patinfo/patlist["+(chk_cnt-1)+"]/pid");
  273. sPreOrddd = model.getValue("/root/main/patinfo/patlist["+(chk_cnt-1)+"]/orddd");
  274. sPreOrdDeptcd = model.getValue("/root/main/patinfo/patlist["+(chk_cnt-1)+"]/orddeptcd");
  275. sPreCretno = model.getValue("/root/main/patinfo/patlist["+(chk_cnt-1)+"]/cretno");
  276. }else{
  277. prePid = "0";
  278. sPreOrddd = "0";
  279. sPreOrdDeptcd = "0";
  280. sPreCretno = "0";
  281. }
  282. curPid = model.getValue("/root/main/patinfo/patlist["+chk_cnt+"]/pid");
  283. sCurOrddd = model.getValue("/root/main/patinfo/patlist["+chk_cnt+"]/orddd");
  284. sCurOrdDeptcd = model.getValue("/root/main/patinfo/patlist["+chk_cnt+"]/orddeptcd");
  285. sCurCretno = model.getValue("/root/main/patinfo/patlist["+chk_cnt+"]/cretno");
  286. model.makeValue("/root/main/patinfo/patlist["+chk_cnt+"]/difflagcd", model.getValue("/root/init/difflagcd")); //복약설명서 출력조건[병원자료:1 , DIF한글:2, DIF영문:3]
  287. model.makeValue("/root/main/patinfo/patlist["+chk_cnt+"]/pimagepath", getDomain()+"/dif/images/", true); //DIF 이미지 경로
  288. model.copyNode("/root/send/tmedinfo/tmedlisth","/root/main/patinfo/patlist["+chk_cnt+"]"); // 복약설명서 조회조건 설정
  289. model.makeValue("/root/send/tmedinfo/tmedlisth/autoprntflag","Y"); // 자동출력 flag
  290. // 2. 복약설명서 조회
  291. if(submit("TRADC02105")){
  292. // alert("SMADC02100.js row:295 TRADC02105CAll ");
  293. for (var iNo=1; iNo <= getNodesetCount("/root/main/tmedinfo/tmedlist"); iNo++) {
  294. //DIF의 jpg 이미지를 base64로 인코딩
  295. if(model.getValue("/root/init/difflagcd") != "1") {
  296. Base64_Preview1.SetViewMode(3);
  297. Base64_Preview1.LoadImage(model.getValue("/root/main/tmedinfo/tmedlist["+ iNo +"]/pimagepath"));
  298. strBase64 = Base64_Preview1.SaveImageBase64();
  299. if(strBase64 != ""){
  300. model.setValue("/root/main/tmedinfo/tmedlist["+ iNo +"]/medpic", strBase64);
  301. }
  302. Base64_Preview1.Clear();
  303. strBase64 = "";
  304. }
  305. }
  306. //20110929_laboru_전체 출력시 개인 출력 form 과 동일하도록 맞춤
  307. model.makeNode("/root/main/tmedinfo/patinfo");
  308. model.copyNode("/root/main/tmedinfo/patinfo", "/root/main/patinfo/patlist");
  309. // 3.복약설명서 출력
  310. if((prePid != curPid) || (sPreOrddd != sCurOrddd) || (sPreOrdDeptcd != sCurOrdDeptcd) || (sPreCretno != sCurCretno)){ // 이전 등록번호와 다를 때만 출력
  311. //exeReportPreview("RPADC02102", "XMLSTR", "", "", "false","","","","","false"); //2008-09-20 미리보기 화면 빼기
  312. /* if(model.getValue("/root/main/patinfo/patlist["+chk_cnt+"]/roomcd") != "-"){
  313. exeReportPreview("RPADC02102", "XMLSTR", "/root/main/tmedinfo/tmedlist", "","true", "", "", "", "", "","","grp_report");
  314. }else{
  315. exeReportPreview("RPADC02103", "XMLSTR", "/root/main/tmedinfo/tmedlist", "","true", "", "", "", "", "","","grp_report");
  316. }*/
  317. //20110929_laboru_전체 출력시 개인 출력 form 과 동일하도록 맞춤
  318. // if(model.getValue("/root/main/patinfo/patlist/prcpgenrflag") == "O" ) {
  319. // exeReportPreview("RPADC02203", "XMLSTR", "", "", "true","","","","","true"); // 외래
  320. // } else {
  321. // exeReportPreview("RPADC02201", "XMLSTR", "", "", "true","","","","","true");
  322. // }
  323. ///////////////////////2014년 12월4일 김치국
  324. AutNuFlag = model.getValue("/root/temp/srchinfo/autoprntnurseflag");
  325. if (AutNuFlag != "Y") {
  326. //20110929_laboru_전체 출력시 개인 출력 form 과 동일하도록 맞춤
  327. if(model.getValue("/root/main/patinfo/patlist/prcpgenrflag") == "O" ) {
  328. exeReportPreview("RPADC02203", "XMLSTR", "", "", "true","","","","","true"); // 외래
  329. } else {
  330. exeReportPreview("RPADC02201", "XMLSTR", "", "", "true","","","","","true");
  331. }
  332. }else{
  333. //2014년 12월 1일 복약상단 출력물 간호 출력 김치국
  334. if (model.getValue("/root/main/patinfo/patinfo/prcpgenrflag") == "O"){
  335. exeReportPreview("RPADC02303", "XMLSTR", "", "", "true","","","","","true"); // 외래
  336. }else{ // 입원
  337. exeReportPreview("RPADC02301", "XMLSTR", "", "", "true","","","","","true");
  338. }
  339. }
  340. //////////////////////////
  341. }
  342. model.copyNode("/root/send/tmedinfo/tmedlistd","/root/main/tmedinfo");
  343. j=1;
  344. for(var j = 1; j <= getNodesetCount("/root/send/tmedinfo/tmedlistd/tmedlist"); j++){
  345. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/orddeptcd",model.getValue("/root/send/tmedinfo/tmedlisth/orddeptcd")); //과코드
  346. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/orddrid",model.getValue("/root/send/tmedinfo/tmedlisth/orddrid")); //의사코드
  347. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/cretno",model.getValue("/root/send/tmedinfo/tmedlisth/cretno")); //생성번호
  348. model.makeValue("/root/send/tmedinfo/tmedlistd/tmedlist[" + j + "]/drugno",model.getValue("/root/send/tmedinfo/tmedlisth/drugno")); //생성번호
  349. }
  350. submit("TXADC02101"); //개별상세내역출려과같이 사용함
  351. model.setValue( "/root/main/patinfo/patlist["+chk_cnt+"]/prntdt", getCurrentDate() + getCurrentTime().substr(0,4) );
  352. grd_patlist.rowstyle(chk_cnt, "data", "background-color") = "#7BE6B7" ; // 색깔표시
  353. }
  354. }
  355. }
  356. //}
  357. }
  358. /**
  359. * 재원/퇴원/외래 구분 체크시
  360. */
  361. function fChkSrchflag() {
  362. var gubuncode = model.getValue("/root/temp/srchinfo/srchflag");
  363. var temp = gubuncode.split("|");
  364. if(temp.length == 3){
  365. model.setValue("/root/temp/srchinfo/srchflagall", "Y");
  366. if(chk_hosinhosoutflag.disabled){
  367. chk_hosinhosoutflag.disabled = false;
  368. chk_hosinhosoutflagall.disabled = false;
  369. model.setValue("/root/temp/srchinfo/hosinhosoutflag", "I|O");
  370. model.setValue("/root/temp/srchinfo/hosinhosoutflagall", "Y");
  371. }
  372. if(rdo_newdrugflag.disabled){
  373. rdo_newdrugflag.disabled = false;
  374. model.setValue("/root/temp/srchinfo/newdrugflag", "1");
  375. }
  376. } else {
  377. model.setValue("/root/temp/srchinfo/srchflagall", "");
  378. //외래 선택시 원내/원외 컨트롤 활성화
  379. if(isSearchString(model.getValue("/root/temp/srchinfo/srchflag"),"3")){
  380. chk_hosinhosoutflag.disabled = false;
  381. chk_hosinhosoutflagall.disabled = false;
  382. //////2016년 4월18일 김치국
  383. rdo_outfirst.disabled = false;
  384. model.setValue("/root/temp/srchinfo/outfirst", "");
  385. model.setValue("/root/temp/srchinfo/hosinhosoutflag", "I|O");
  386. model.setValue("/root/temp/srchinfo/hosinhosoutflagall", "Y");
  387. } else {
  388. chk_hosinhosoutflag.disabled = true;
  389. chk_hosinhosoutflagall.disabled = true;
  390. //////2016년 4월18일 김치국
  391. rdo_outfirst.disabled = true;
  392. model.setValue("/root/temp/srchinfo/outfirst", "");
  393. model.setValue("/root/temp/srchinfo/hosinhosoutflag", "");
  394. model.setValue("/root/temp/srchinfo/hosinhosoutflagall", "");
  395. }
  396. //외래/재원 선택시 새처방 컨트롤 활성화
  397. if(isSearchString(model.getValue("/root/temp/srchinfo/srchflag"),"3") || isSearchString(model.getValue("/root/temp/srchinfo/srchflag"),"1")){
  398. if(rdo_newdrugflag.disabled){
  399. rdo_newdrugflag.disabled = false;
  400. model.setValue("/root/temp/srchinfo/newdrugflag", "1");
  401. }
  402. }else{
  403. rdo_newdrugflag.disabled = true;
  404. model.setValue("/root/temp/srchinfo/newdrugflag", "");
  405. }
  406. }
  407. model.refresh();
  408. }
  409. /**
  410. * 재원/퇴원/외래 전체 구분 체크시
  411. */
  412. function fChkSrchflagAll() {
  413. var allflag = model.getValue("/root/temp/srchinfo/srchflagall");
  414. model.setValue("/root/temp/srchinfo/srchflag","");
  415. if(allflag == "Y"){
  416. model.setValue("/root/temp/srchinfo/srchflag","1|2|3");
  417. }else{
  418. model.setValue("/root/temp/srchinfo/srchflag","");
  419. }
  420. fChkSrchflag();
  421. }
  422. /**
  423. * 원내/원외 구분 체크시
  424. */
  425. function fChkHosinhosoutflag() {
  426. var allflag = model.getValue("/root/temp/srchinfo/hosinhosoutflag");
  427. if(allflag.length == 3){
  428. model.setValue("/root/temp/srchinfo/hosinhosoutflagall","Y");
  429. }else{
  430. model.setValue("/root/temp/srchinfo/hosinhosoutflagall","");
  431. }
  432. model.refresh();
  433. }
  434. /**
  435. * 원내/원외 전체 구분 체크시
  436. */
  437. function fChkHosinhosoutflagAll() {
  438. var allflag = model.getValue("/root/temp/srchinfo/hosinhosoutflagall");
  439. model.setValue("/root/temp/srchinfo/hosinhosoutflag","");
  440. if(allflag == "Y"){
  441. model.setValue("/root/temp/srchinfo/hosinhosoutflag","I|O");
  442. }else{
  443. model.setValue("/root/temp/srchinfo/hosinhosoutflag","");
  444. }
  445. model.refresh();
  446. }
  447. /**
  448. * 출력건수 조회
  449. */
  450. function fPrntCnt(){
  451. var prntcnt =0;
  452. for (var i = 1 ; i < grd_patlist.rows; i++ ) {
  453. if (model.getValue( "/root/main/patinfo/patlist[" + i + "]/prntdt") != '' ) {
  454. prntcnt += 1;
  455. }
  456. }
  457. txtCnt.attribute("text") = "Total : " + ( grd_patlist.rows - 1 ) + " 출력 : " + prntcnt ;
  458. }