SMMNA00500.js 40 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072
  1. /*
  2. 헌혈접수=APU메인 (SMMNA00500.xrw - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. */
  6. // --------------------------------------------------
  7. // 화면 read
  8. // --------------------------------------------------
  9. function finit() {
  10. aezfSetSuppDeptcd_local();
  11. zbcfGetCodeList( new Array("M0029", "M0007"), new Array("/root/init/cmbinfo/payflagcd", "/root/init/cmbinfo/opansflagcd"));
  12. model.removeNodeset("/root/main/direcprcp/direcprcpinfo");
  13. model.removeNodeset("/root/main/prcpdetl/prcpdetlinfo");
  14. model.setValue("/root/main/cond/baseinfo/tdate", getCurrentDate());
  15. //var date = getCurrentDate().toDate().getAddDate(-3,"D").getDateFormat("YYYYMMDD");
  16. model.setValue("/root/main/cond/baseinfo/sdate", getCurrentDate());//20080825 당일로 변경
  17. model.toggle("case1");
  18. btn_case1.selected = true;
  19. btn_case2.selected = false;
  20. model.toggle("case_apu");
  21. btn_apu.selected = true;
  22. btn_om.selected = false;
  23. grd_keepbaclist.frozenCols = grd_keepbaclist.colRef("prcpnm");
  24. datagrid1.frozenCols = datagrid1.colRef("prcpnm");
  25. datagrid2.frozenCols = datagrid2.colRef("prcpnm");
  26. //공통코드(급여구분)
  27. zbcfGetCodeList(new Array( "M0029" ), new Array("/root/init/payflagcd"),true);
  28. //fInqurySelectedPrgm();
  29. btn_apu.selected = true;
  30. model.toggle("case_apu");
  31. //readfunc(); //OPEN 시 조회
  32. //model.refresh();
  33. datagrid1.fixedcellcheckbox(0,1) = true; //그리드 헤더에 체크버튼 추가
  34. datagrid2.fixedcellcheckbox(0,1) = true; //그리드 헤더에 체크버튼 추가
  35. }
  36. // --------------------------------------------------
  37. //switch 작업 토클
  38. // --------------------------------------------------
  39. function fInqurySelectedPrgm()
  40. {
  41. var xPathMainCond = "/root/main/cond";
  42. var xPathMainApu = "/root/main/direcprcp/direcprcpinfo";
  43. var flag = model.getValue(xPathMainCond + "/workflag");
  44. var pGrd = grd_keepbaclist;
  45. //if (flag == "om" || flag == "prn") {
  46. if (flag == "prn") {
  47. if (pGrd.rows <= 0 || pGrd.row <= 0 ) {
  48. messageBox("자료를 선택하십시오.", "E999", "");
  49. return;
  50. }
  51. if (model.getValue(xPathMainApu + "[" + pGrd.row + "]/iogb") != "I"
  52. && model.getValue(xPathMainApu + "[" + pGrd.row + "]/iogb") != "E" ) {
  53. messageBox("입원환자인경우만 해당됩니다.", "E999", "");
  54. return;
  55. }
  56. var tempprcpdd = model.getValue(xPathMainApu + "[" + pGrd.row + "]/prcpdd");
  57. var temppid = model.getValue(xPathMainApu + "[" + pGrd.row + "]/pid");
  58. //var tempwardcd = model.getValue(xPathMainApu + "[" + pGrd.row + "]/prcpdd");
  59. var tempsexage = model.getValue(xPathMainApu + "[" + pGrd.row + "]/sex") + "/" +
  60. model.getValue(xPathMainApu + "[" + pGrd.row + "]/age");
  61. var temppatnm = model.getValue(xPathMainApu + "[" + pGrd.row + "]/hngnm");
  62. btn_om.selected = true;
  63. model.toggle("case_om");
  64. //------------------(20080625)
  65. //tempprcpdd : 처방일자가 아닌 현재일자
  66. //PRN : 처방저장일(=처방발생일) ~ 처방적용일(=처방희망일)까지임
  67. //prcp.rgstdd AND prcp.prcphopedd
  68. var rgstdd = model.getValue(xPathMainApu + "[" + pGrd.row + "]/prcpdd");
  69. var prcphopedd = model.getValue(xPathMainApu + "[" + pGrd.row + "]/prcphopedd");
  70. //alert('a ' + rgstdd + ' b ' + prcphopedd + ' c ' + getCurrentDate() + ' d ' );
  71. if ( rgstdd <= getCurrentDate() && getCurrentDate() <= prcphopedd) {
  72. //prn발생가능/조회가능
  73. model.setValue("/root/main_om/cond/prnstat", "1");
  74. radio2.disabled = false;
  75. } else {
  76. //조회만 가능하도록
  77. model.setValue("/root/main_om/cond/prnstat", "2");
  78. radio2.disabled = true;
  79. }
  80. tempprcpdd = getCurrentDate();
  81. //-------------------------------------------------------
  82. model.setValue("/root/main/cond/orddd", tempprcpdd); // 업무일자
  83. // model.setValue("/root/main_om/cond/pid", temppid);
  84. // //model.setValue("/root/main_om/cond/roomcd", "병실");
  85. // model.setValue("/root/main_om/cond/sexage", tempsexage);
  86. // model.setValue("/root/main_om/cond/patnm", temppatnm);
  87. model.setValue("/root/main_om/cond/pid", "등록번호");
  88. model.setValue("/root/main_om/cond/roomcd", "병실");
  89. model.setValue("/root/main_om/cond/sexage", "S/A");
  90. model.setValue("/root/main_om/cond/patnm", "환자명");
  91. //------------------(20080625)
  92. }
  93. switch(flag) {
  94. case "om" :
  95. fGetOMPatList("apu");
  96. // fGetOMPatList("");
  97. break;
  98. case "prn" :
  99. fSetPrnMode();
  100. fGetOMPatList("apu");
  101. // fGetOMPatList("");
  102. break;
  103. default :
  104. btn_apu.selected = true;
  105. model.toggle("case_apu");
  106. readfunc();
  107. break;
  108. }
  109. }
  110. //-----------------------------
  111. // APU 메인 조회
  112. //-----------------------------
  113. function readfunc(){
  114. if (model.getValue("/root/main/cond/baseinfo/sdate") == ""){
  115. messageBox("조회 시작일자는 필수 입력항목입니다.", "E999", "");
  116. return;
  117. }
  118. if (isDate(model.getValue("/root/main/cond/baseinfo/sdate")) == false){
  119. messageBox("조회 시작일자의 날짜 형식이 잘못 입력되었습니다.", "E999", "");
  120. return;
  121. }
  122. if (model.getValue("/root/main/cond/baseinfo/tdate") == ""){
  123. messageBox("조회 종료일자는 필수 입력항목입니다.", "E999", "");
  124. return;
  125. }
  126. if (isDate(model.getValue("/root/main/cond/baseinfo/tdate")) == false){
  127. messageBox("조회 종료일자의 날짜 형식이 잘못 입력되었습니다.", "E999", "");
  128. return;
  129. }
  130. if (model.getValue("/root/main/cond/baseinfo/sdate") > model.getValue("/root/main/cond/baseinfo/tdate")){
  131. messageBox("조회 시작일자가 종료일자 보다 큽니다.", "E999", "");
  132. return;
  133. }
  134. // model.toggle("case1");
  135. // btn_case1.selected = true;
  136. // btn_case2.selected = false;
  137. model.toggle("case_apu");
  138. btn_apu.selected = true;
  139. btn_om.selected = false;
  140. model.removeNodeset("/root/main/direcprcp/direcprcpinfo");
  141. model.removeNodeset("/root/main/prcpdetl/prcpdetlinfo");
  142. model.removeNodeset("/root/main/execprcp/execprcpinfo");
  143. model.removeNodeset("/root/send");
  144. model.makeValue("/root/send/baseinfo/pid", model.getValue("/root/main/cond/baseinfo/pid"));
  145. model.makeValue("/root/send/baseinfo/sdate", model.getValue("/root/main/cond/baseinfo/sdate"));
  146. model.makeValue("/root/send/baseinfo/tdate", model.getValue("/root/main/cond/baseinfo/tdate"));
  147. model.makeValue("/root/send/baseinfo/iogb", model.getValue("/root/main/cond/baseinfo/iogb"));
  148. //model.makeValue("/root/send/baseinfo/deptcd", model.getValue("/root/main/cond/globalinstance/instance1"));
  149. model.makeValue("/root/send/baseinfo/prcpflag", model.getValue("/root/main/cond/baseinfo/prcpflag"));
  150. if (submit("TRMNA00501")){
  151. var prcphistcd , dschdcrltyn;
  152. //20080912 메인그리드의 처방상태가 dc이면 빨간색으로 글자색을 바꿈
  153. //20081126 dhkim 퇴원예고 이후의 환자를 파란색으로 글자색을 바꿈
  154. for(var i = 1; i < grd_keepbaclist.rows; i++){
  155. prcphistcd = model.getValue('/root/main/direcprcp/direcprcpinfo[' + i + ']/prcphistcd');
  156. dschdcrltyn = model.getValue('/root/main/direcprcp/direcprcpinfo[' + i + ']/dschdclrtyn');
  157. if(prcphistcd == 'L'){//처방상태 삭제
  158. grd_keepbaclist.cellStyle("color", i, grd_keepbaclist.colRef("pid"), i, grd_keepbaclist.colRef("prcpcd")) = "#FF0000";//빨강
  159. }else if(dschdcrltyn == 'Y'){//퇴원예고
  160. grd_keepbaclist.cellStyle("color", i, grd_keepbaclist.colRef("pid"), i, grd_keepbaclist.colRef("prcpcd")) = "#0000FF";//파랑
  161. }else{
  162. grd_keepbaclist.cellStyle("color", i, grd_keepbaclist.colRef("pid"), i, grd_keepbaclist.colRef("prcpcd")) = "#000000";//검정
  163. }
  164. }
  165. }
  166. model.refresh();
  167. //조회후 전부 수정불가
  168. var pGrd = grd_keepbaclist;
  169. if (pGrd.rows <= 1 ) return;
  170. pGrd.isReadOnly(1,1,pGrd.rows-1,pGrd.cols-1)= true;
  171. }
  172. //-----------------------------
  173. // 처방내역 조회
  174. //-----------------------------
  175. function readfunc1(){
  176. model.removeNodeset("/root/main/prcpdetl/prcpdetlinfo");
  177. model.removeNodeset("/root/send");
  178. model.makeValue("/root/send/baseinfo1/pid", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/pid"));
  179. model.makeValue("/root/send/baseinfo1/prcpdd", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpdd"));
  180. model.makeValue("/root/send/baseinfo1/prcpcd", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpcd"));
  181. model.makeValue("/root/send/baseinfo1/deptcd", model.getValue("/root/main/cond/globalinstance/instance1"));
  182. model.makeValue("/root/send/baseinfo1/hsctlnkno", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/hsctlnkno"));
  183. model.makeValue("/root/send/baseinfo1/dispflag", "N");
  184. model.makeValue("/root/send/baseinfo1/prcpflag", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpflag"));
  185. model.makeValue("/root/send/baseinfo1/iogb", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/iogb"));
  186. model.makeValue("/root/send/baseinfo1/instcd", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/instcd"));
  187. model.makeValue("/root/send/baseinfo1/prcpno", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpno"));
  188. model.makeValue("/root/send/baseinfo1/prcphistno", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcphistno"));
  189. //[20081126 dhkim] ITC 변경요청으로 퇴원확정 이후부터의 환자 acting 불가
  190. var dschnotiyn = model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/dschnotiyn");//퇴원확정여부
  191. if (submit("TRMNA00502")){
  192. //-----------------------------------------------
  193. //선택불가로 변경
  194. //-----------------------------------------------
  195. var pGrd = datagrid1;
  196. var pGrdMain = grd_keepbaclist;
  197. if (pGrdMain.rows <= 1 || pGrdMain.row < 1) return;
  198. if (pGrd.rows <= 1 ) return;
  199. var tempprcpflag = model.getValue("/root/main/direcprcp/direcprcpinfo[" + pGrdMain.row + "]/prcpflag");
  200. //전부 수정불가
  201. pGrd.isReadOnly(1, 1, pGrd.rows-1, pGrd.cols-1)= true;
  202. for (var row=1;row<pGrd.rows;row++) {
  203. dschnotiyn = model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/dschnotiyn"); //[20081126 dhkim] 퇴원확정여부
  204. //prn도 지시처방을 풀어야 한다.
  205. //if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/prnprcpflag") == "Y") {
  206. // continue;
  207. //}
  208. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/dr") == "D/C") {
  209. pGrd.cellStyle("color", row, pGrd.colRef("flag"), row, pGrd.colRef("prnprcpflag")) = "#FF0000";
  210. continue;
  211. }else{
  212. pGrd.cellStyle("color", row, pGrd.colRef("flag"), row, pGrd.colRef("prnprcpflag")) = "#000000";
  213. }
  214. //[20081126 dhkim] itc 변경요청으로 퇴원확정이후 acting/dc 불가
  215. if(dschnotiyn == 'Y'){
  216. continue;
  217. }
  218. //지시처방이면서
  219. if (tempprcpflag == "2") {
  220. //hscttempprcpflag ='Y' 인경우는 ACTING에 관계없이 처리가능하다.
  221. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/hscttempprcpflag") != "Y" ){
  222. continue;
  223. }
  224. //반납의뢰된 사항은 처리불가
  225. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/iogb") == "I" &&
  226. model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/dr") == "반납의뢰" ){
  227. continue;
  228. }
  229. } else {
  230. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/iogb") == "O" &&
  231. model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/rcptyn") == "N"){
  232. return; //외래 AND 수납N인경우
  233. }
  234. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/iogb") == "O" &&
  235. model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/rcptyn") == "Y" &&
  236. model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/execyn") == "Y") {
  237. return; //외래 AND 수납Y AND ACTING =Y'인 경우
  238. }
  239. //LBT90001 / LBT90101 은 막음(20080129)
  240. var prcpcd = model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/prcpcd");
  241. if (prcpcd == "LBT90001" || prcpcd == "LBT90101" ){
  242. continue;
  243. }
  244. }
  245. //입력가능
  246. pGrd.isReadOnly(row,pGrd.colRef("chk"),row,pGrd.colRef("chk")) = false;
  247. }
  248. }
  249. model.refresh();
  250. }
  251. //-----------------------------
  252. // 실처방 내역 조회
  253. //-----------------------------
  254. function readfunc2(){
  255. model.removeNodeset("/root/main/execprcp/execprcpinfo");
  256. model.removeNodeset("/root/send");
  257. model.makeValue("/root/send/baseinfo1/pid", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/pid"));
  258. model.makeValue("/root/send/baseinfo1/prcpdd", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpdd"));
  259. model.makeValue("/root/send/baseinfo1/prcpcd", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpcd"));
  260. model.makeValue("/root/send/baseinfo1/deptcd", model.getValue("/root/main/cond/globalinstance/instance1"));
  261. model.makeValue("/root/send/baseinfo1/hsctlnkno", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/hsctlnkno"));
  262. model.makeValue("/root/send/baseinfo1/dispflag", "Y");//실시처방내역
  263. model.makeValue("/root/send/baseinfo1/prcpflag", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpflag"));
  264. model.makeValue("/root/send/baseinfo1/iogb", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/iogb"));
  265. model.makeValue("/root/send/baseinfo1/instcd", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/instcd"));
  266. model.makeValue("/root/send/baseinfo1/prcpno", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpno"));
  267. model.makeValue("/root/send/baseinfo1/prcphistno", model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcphistno"));
  268. //[20081126 dhkim] ITC 변경요청으로 퇴원확정 이후부터의 환자 acting 불가
  269. var dschnotiyn = model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/dschnotiyn");//퇴원확정여부
  270. if(submit("TRMNA00503")){
  271. //-----------------------------------------------
  272. //선택불가로 변경
  273. //-----------------------------------------------
  274. var pGrd = datagrid2;
  275. var pGrdMain = grd_keepbaclist;
  276. if (pGrdMain.rows <= 1 || pGrdMain.row < 1) return;
  277. if (pGrd.rows <= 1 ) return;
  278. var tempprcpflag = model.getValue("/root/main/direcprcp/direcprcpinfo[" + pGrdMain.row + "]/prcpflag");
  279. //전부 수정불가
  280. pGrd.isReadOnly(1,1,pGrd.rows-1,pGrd.cols-1)= true;
  281. for (var row=1;row<pGrd.rows;row++) {
  282. dschnotiyn = model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/dschnotiyn"); //[20081126 dhkim] 퇴원확정여부
  283. if (model.getValue("/root/main/execprcp/execprcpinfo[" + row + "]/prnprcpflag") == "Y"){
  284. continue;
  285. }
  286. if (model.getValue("/root/main/execprcp/execprcpinfo[" + row + "]/dr") == "D/C") {
  287. pGrd.cellStyle("color", row, pGrd.colRef("flag"), row, pGrd.colRef("prnprcpflag")) = "#FF0000";
  288. continue;
  289. }
  290. //[20081126 dhkim] itc 변경요청으로 퇴원확정이후 acting/dc 불가
  291. if(dschnotiyn == 'Y'){
  292. continue;
  293. }
  294. //취소는 지시처방이고 입원인 경우만 해당된다.
  295. if (tempprcpflag == "2") {
  296. if (model.getValue("/root/main/execprcp/execprcpinfo[" + row + "]/iogb") == "I" ) {
  297. } else {
  298. continue;
  299. }
  300. } else {
  301. continue;
  302. }
  303. //입력가능
  304. pGrd.isReadOnly(row,pGrd.colRef("chk"),row,pGrd.colRef("chk")) = false;
  305. }
  306. }
  307. model.refresh();
  308. }
  309. /*------------------------------
  310. acting MAIN
  311. ------------------------------*/
  312. function fSaveData() {
  313. var pGrd0 = grd_keepbaclist;
  314. if (pGrd0.rows <= 1 ) return;
  315. var pGrd1 = datagrid1;
  316. if (pGrd1.rows <= 1 ) return;
  317. //----------------------------------------------------
  318. //설정된 상단정보를 불러옴("내리기")
  319. //체크하기 위해 자료불러오기
  320. model.removenodeset("/root/main/paminfo");
  321. model.makeNode("/root/main/paminfo");
  322. var node = getGlobalVariable("paminfo");
  323. setCSVToNode("/root/main/paminfo", node);
  324. //----------------------------------------------------
  325. if (model.getValue("/root/main/direcprcp/direcprcpinfo[" + pGrd0.row + "]/iogb") == "I") {
  326. fSaveDataI();
  327. } else {
  328. fSaveDataO();
  329. }
  330. }
  331. /*------------------------------
  332. acting(입원)
  333. ------------------------------*/
  334. function fSaveDataI() {
  335. var pGrd0 = grd_keepbaclist;
  336. var pGrd1 = datagrid1;
  337. var k = 0;
  338. // dschnotiyn = 'Y'
  339. var xPath = "/root/main/paminfo/list";
  340. if (model.getValue(xPath + "/dschnotiyn") == "Y") {
  341. messageBox("간호퇴원확정된 자료는 Acting할수 없습니다.", "E999", "");
  342. return;
  343. }
  344. // lastmdlclamdd IS '최종중간청구 일자',
  345. var tempDate = getCurrentDate();
  346. if (model.getValue(xPath + "/lastmdlclamdd") != '-') {
  347. if (model.getValue(xPath + "/lastmdlclamdd") >= tempDate ) {
  348. messageBox("중간정산일 이전일은 Acting할수 없습니다....", "E999", "");
  349. return;
  350. }
  351. }
  352. // alert( model.getValue(xPath + "/dschnotiyn") + "/" +
  353. // model.getValue(xPath + "/lastmdlclamdd") + "/" +
  354. // tempDate);
  355. //조회후 막으므로 저장시는 막지 않는다.
  356. //체크여부만 확인 한다.
  357. var colchk = pGrd1.colRef("chk");
  358. for (var i = 1; i < pGrd1.rows; i++){
  359. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/chk") == "true"){
  360. if (pGrd1.isReadOnly(i,colchk,i,colchk) != true) {
  361. /* 막음
  362. // if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/prnprcpflag") == "Y"){
  363. // messageBox("PRN처방은 ACTING할 수 없습니다..", "E999", "");
  364. // return;
  365. // }
  366. // if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/execyn") == "Y"){
  367. // messageBox("이미 Acting된 자료입니다...", "E999", "");
  368. // return;
  369. // }
  370. // if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/dr") == "반납의뢰"){
  371. // messageBox("반납의뢰된 자료입니다...", "E999", "");
  372. // return;
  373. // }
  374. */
  375. k = parseInt(k) + 1;
  376. }
  377. }
  378. }
  379. if (k == 0){
  380. messageBox("처리할 내역이 선택되지 않았습니다.", "E999", "");
  381. return;
  382. }
  383. var update = getGridUpdateData(datagrid1);
  384. model.removenodeset("/root/send");
  385. model.makeValue("/root/send/execdata/prcpdetlinfo",update);
  386. //--------------------------------------------
  387. //수익interface를 태우는 작업을 추가해야 한다.
  388. //(현재이전일 acting인 경우만
  389. //--------------------------------------------
  390. //app에서 처리함
  391. //--------------------------------------------
  392. //20081126 dhkim acting된 데이터는 다시 액팅할수 없도록 막는다.
  393. //20081126 dhkim acting전에 퇴원확정된 환자는 액팅할수 없도록 막는다.
  394. if (messageBox("Acting ",'Q003',"") != 6) return;
  395. if(submit("TXMNA00501")){
  396. readfunc1();
  397. }
  398. }
  399. /*------------------------------
  400. acting(외래)
  401. ------------------------------*/
  402. function fSaveDataO() {
  403. var pGrd1 = datagrid1;
  404. var k = 0;
  405. var colchk = pGrd1.colRef("chk");
  406. for (var i = 1; i < pGrd1.rows; i++){
  407. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/chk") == "true"){
  408. if (pGrd1.isReadOnly(i,colchk,i,colchk) != true) {
  409. /* 막음
  410. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/rcptyn") != "Y"){
  411. messageBox("외래인 경우는 수납된 자료만 Acting가능 합니다...", "E999", "");
  412. return;
  413. }
  414. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/prnprcpflag") == "Y"){
  415. messageBox("PRN처방은 ACTING할 수 없습니다..", "E999", "");
  416. return;
  417. }
  418. if (model.getValue("/root/main/prcpdetl/prcpdetlinfo[" + i + "]/execyn") == "Y" ){
  419. messageBox("이미 Acting된 자료입니다...", "E999", "");
  420. return;
  421. }
  422. */
  423. k = parseInt(k) + 1;
  424. }
  425. }
  426. }
  427. if (k == 0){
  428. messageBox("처리할 내역이 선택되지 않았습니다.", "E999", "");
  429. return;
  430. }
  431. var update = getGridUpdateData(datagrid1);
  432. model.removenodeset("/root/send");
  433. model.makeValue("/root/send/execdata/prcpdetlinfo",update);
  434. //--------------------------------------------
  435. //수익interface를 태우는 작업을 추가해야 한다.
  436. //--------------------------------------------
  437. //app에서 처리함
  438. //--------------------------------------------
  439. if (messageBox("Acting ",'Q003',"") != 6) return;
  440. if(submit("TXMNA00501")){
  441. readfunc1();
  442. }
  443. }
  444. //-----------------------------
  445. // DC MAIN
  446. //-----------------------------
  447. function fSaveDataCancel() {
  448. var pGrd0 = grd_keepbaclist;
  449. if (pGrd0.rows <= 1 ) return;
  450. var pGrd1 = datagrid1;
  451. if (pGrd1.rows <= 1 ) return;
  452. //----------------------------------------------------
  453. //설정된 상단정보를 불러옴("내리기")
  454. //체크하기 위해 자료불러오기
  455. model.removenodeset("/root/main/paminfo");
  456. model.makeNode("/root/main/paminfo");
  457. var node = getGlobalVariable("paminfo");
  458. setCSVToNode("/root/main/paminfo", node);
  459. //----------------------------------------------------
  460. if (model.getValue("/root/main/direcprcp/direcprcpinfo[" + pGrd0.row + "]/iogb") == "I") {
  461. fSaveDataCancelI();
  462. } else {
  463. messageBox("외래처방은 반납의뢰 할 수 없습니다..", "E999", "");
  464. //fSaveDataCancelO();
  465. }
  466. }
  467. //-----------------------------
  468. // DC (입원)
  469. //-----------------------------
  470. function fSaveDataCancelI() {
  471. //acting 취소+ D/C + 후인증
  472. var pGrd1 = datagrid2;
  473. var k = 0;
  474. // dschnotiyn = 'Y'
  475. var xPath = "/root/main/paminfo/";
  476. var colchk = pGrd1.colRef("chk");
  477. if (model.getValue(xPath + "/dschnotiyn") == "Y") {
  478. messageBox("간호퇴원확정된 자료는 반납의뢰 할 수 없습니다....", "E999", "");
  479. return;
  480. }
  481. for (var i = 1; i < pGrd1.rows; i++){
  482. if (model.getValue("/root/main/execprcp/execprcpinfo[" + i + "]/chk") == "true"){
  483. if (pGrd1.isReadOnly(i,colchk,i,colchk) != true) {
  484. /* 막음
  485. if (model.getValue("/root/main/execprcp/execprcpinfo[" + i + "]/prnprcpflag") == "Y"){
  486. messageBox("PRN처방은 반납의뢰 할 수 없습니다.", "E999", "");
  487. return;
  488. }
  489. */
  490. k = parseInt(k) + 1;
  491. }
  492. }
  493. }
  494. if (k == 0){
  495. messageBox("처리할 내역이 선택되지 않았습니다.", "E999", "");
  496. return;
  497. }
  498. if (messageBox("반납의뢰 ",'Q003',"") != 6) return;
  499. fActingCancel(); //grid -> send로 이동
  500. //----------------------(20080627)
  501. //반환사유등록기능 추가(테스트완료)일단 막음
  502. //fnEndddSave();
  503. //return;
  504. //----------------------
  505. if(submit("TXMNA00503")){
  506. readfunc2();
  507. }
  508. }
  509. //-----------------------------
  510. // DC (외래)
  511. //-----------------------------
  512. function fSaveDataCancelO() {
  513. //acting 취소
  514. var k = 0;
  515. var tempDate = getCurrentDate();
  516. for (var i = 1; i < datagrid2.rows; i++){
  517. if (model.getValue("/root/main/execprcp/execprcpinfo[" + i + "]/chk") == "true"){
  518. if (model.getValue("/root/main/execprcp/execprcpinfo[" + i + "]/execdd") != tempDate){
  519. messageBox("당일 Acting 건에 대한 취소만 가능합니다.", "E999", "");
  520. return;
  521. }
  522. /*
  523. //수정해야함(임시)
  524. if (model.getValue("/root/main/execprcp/execprcpinfo[" + i + "]/AAAAA") == "Y"){
  525. messageBox("선처치는 Acting가 불가능합니다.", "E999", "");
  526. return;
  527. }
  528. */
  529. k = parseInt(k) + 1;
  530. }
  531. }
  532. if (k == 0){
  533. messageBox("처리할 내역이 선택되지 않았습니다.", "E999", "");
  534. return;
  535. }
  536. if (messageBox("반납의뢰 ",'Q003',"") != 6) return;
  537. fActingCancel();
  538. //--------------------------------------------
  539. //수익interface를 태우는 작업을 추가해야 한다.
  540. //--------------------------------------------
  541. // 외래DC는 없음
  542. //--------------------------------------------
  543. if(submit("TXMNA00503")){
  544. readfunc2();
  545. }
  546. }
  547. //----------------------------------------------
  548. // Acting 취소 처리
  549. //----------------------------------------------
  550. function fActingCancel() {
  551. var update = getGridUpdateData(datagrid2);
  552. model.removenodeset("/root/send");
  553. model.makeValue("/root/send/execdata/execprcpinfo",update);
  554. }
  555. //--AEZ0001.JS (원본)
  556. function aezfSetSuppDeptcd_local() {
  557. var dutplcecd = getUserInfo("dutplcecd");
  558. //var dutplcenm = getUserInfo("dutplcenm");
  559. var selectplcecd = getScreenPrestDeptCd();
  560. //alert(dutplcecd + "/////" + selectplcecd);
  561. if ( selectplcecd == "" ) {
  562. selectplcecd = dutplcecd;
  563. //selectplcenm = dutplcenm;
  564. }
  565. model.setValue("/root/main/cond/globalinstance/instance1", selectplcecd);
  566. }
  567. /*//20080912
  568. * 모처방 dc여부
  569. */
  570. function fIsMomPrcpDC(){
  571. model.removenode('/root/send/reqdata');
  572. model.makenode('/root/send/reqdata');
  573. model.makeValue('/root/send/reqdata/ioflag', model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/iogb"));
  574. model.makeValue('/root/send/reqdata/prcpflag', model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpflag"));//실처방/지시처방구분
  575. model.makeValue('/root/send/reqdata/pid', model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/pid"));
  576. model.makeValue('/root/send/reqdata/prcpdd', model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpdd"));
  577. model.makeValue('/root/send/reqdata/prcpno', model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcpno"));
  578. model.makeValue('/root/send/reqdata/prcphistno', model.getValue("/root/main/direcprcp/direcprcpinfo[" + grd_keepbaclist.row + "]/prcphistno"));
  579. if(submit('TRMNA00511')){
  580. var prcpflag = model.getValue('/root/hidden/momdcinfo/prcpflag');
  581. var isdc = model.getValue('/root/hidden/momdcinfo/isdc');
  582. if(prcpflag == '1'){//실처방
  583. return 'N';//dc아님
  584. }else if(prcpflag == '2'){//지시처방
  585. if(isdc == 'Y'){
  586. return 'Y';//dc됨
  587. }else {
  588. return 'N';//dc아님
  589. }
  590. }
  591. }else{
  592. messageBox('처방내역 조회를 실패하였습니다', 'E');
  593. return false;
  594. }
  595. // return true;//true이면 자처방 검색 안함
  596. }
  597. //----------------------------------------------
  598. // 하단 질의문
  599. //----------------------------------------------
  600. function fQueryDetail() {
  601. //하단그리드에 전체선택버튼 비선택으로전환
  602. datagrid1.fixedcellischeck(0,1) = false; //그리드 헤더에 체크버튼 추가
  603. datagrid2.fixedcellischeck(0,1) = false; //그리드 헤더에 체크버튼 추가
  604. //하단그리드자료 조회
  605. var pGrd = grd_keepbaclist;
  606. if ( (pGrd.row >= pGrd.fixedRows) && (pGrd.isCell(event.target))) {
  607. model.toggle("case1");
  608. btn_case1.selected = true;
  609. btn_case2.selected = false;
  610. if (btn_case1.selected == true){
  611. readfunc1();
  612. }else{
  613. readfunc2();
  614. }
  615. }
  616. }
  617. //----------------------------------------------
  618. // 상단올리기
  619. //----------------------------------------------
  620. function fSetPatInfo() {
  621. var pGrd = grd_keepbaclist;
  622. var xPath = "/root/main/direcprcp/direcprcpinfo";
  623. var condparam = "";
  624. if (pGrd.rows <= 1 || pGrd.row <= 0 ) return;
  625. //--------------------------상단올리기 flag --------------------------
  626. // 01 O:외래, I:입원구분, T:수술예약 , E:응급
  627. // 02 등록번호
  628. // 03 수술시작일자
  629. // 04 cretno(없는 경우 ""로 처리)
  630. // 05 기관코드
  631. // 06 집도과부서
  632. // 07 집도의ID
  633. // 08 환자구분
  634. // 09 F -처리구분 무조건 F로 설정
  635. // 10 수술예약번호
  636. // 11 수술이력번호
  637. // 12 조회일자 2007-09-13 오지훈 추가...
  638. //------------------------------------------------------------------
  639. var pid = "";
  640. var indd= "";
  641. var cretno="";
  642. var instcd = "";
  643. var orddd= "";
  644. var ordtype = "";//"I";
  645. ioflag = model.getValue(xPath + "["+pGrd.row+"]/iogb") ;
  646. if ( ioflag == "D" ) ioflag == "I";
  647. pid = model.getValue(xPath + "["+pGrd.row+"]/pid") ;
  648. indd = model.getValue(xPath + "["+pGrd.row+"]/indd") ;
  649. cretno = model.getValue(xPath + "["+pGrd.row+"]/cretno") ; //그리드에 추가해야함
  650. instcd = model.getValue(xPath + "["+pGrd.row+"]/instcd"); //전역변수에 추가해야함
  651. orddd = model.getValue(xPath + "["+pGrd.row+"]/prcpdd"); //처방일(orddd)
  652. ordtype = ioflag;
  653. // 상단 세팅을 위한 파라미터
  654. condparam = ordtype + "▦" + pid + "▦" + indd + "▦" + cretno + "▦" + instcd+ "▦" + orddd ;
  655. setParameter("condparam", condparam);
  656. //상단 세팅 화면 사이즈 작게 띄움 (id,monNo,xPos,yPos,wid,ref,resultref,userProp,prevPos)
  657. //modal("SPMMO08900", "", "100", "100", '100', "SPMMO08900", "", ""); //alert("환자기본정보설정중......");
  658. modal("SPMMO08900", 1, "", "", "", "SPMMO08900", "", "left:0; right:0; width:0; height:0; sysmenu:hidden; caption:hidden; min:hidden, max:hidden;");
  659. //----------------------------------------------------
  660. //설정된 상단정보를 불러옴
  661. // alert("내리기");
  662. // model.makeNode("/root/main/paminfo");
  663. // var node = getGlobalVariable("paminfo");
  664. // setCSVToNode("/root/main/paminfo", node);
  665. //----------------------------------------------------
  666. }
  667. //---------------------------------------
  668. // 자동설정기능 제어
  669. //---------------------------------------
  670. function fGrdSelect(sflag) {
  671. var pGrd;
  672. if (sflag == "1") {
  673. pGrd = datagrid1; //처방내역
  674. } else {
  675. pGrd = datagrid2; //실시내역
  676. }
  677. if (pGrd.rows <= 1 ) return;
  678. if (pGrd.col != pGrd.colRef("chk") || pGrd.row != 0) {
  679. return;
  680. } else {
  681. for (var row=1;row<pGrd.rows;row++) {
  682. //선택하면 안되는 자료를 제외시킨다.
  683. if (pGrd.isReadOnly(row,pGrd.colref("chk"),row,pGrd.colref("chk") )== "1") {
  684. if (sflag=="1") {
  685. model.setValue("/root/main/prcpdetl/prcpdetlinfo[" + row + "]/chk","false");
  686. } else {
  687. model.setValue("/root/main/execprcp/execprcpinfo[" + row + "]/chk","false");
  688. }
  689. } else {
  690. pGrd.addStatus(row,"update"); //수정된것으로 본다.
  691. }
  692. }
  693. }
  694. model.refresh();
  695. }
  696. // --------------------------------------------------
  697. // 오른쪽 마우스버튼
  698. // --------------------------------------------------
  699. function fnonmousedown() {
  700. var pGrd = grd_keepbaclist;
  701. pGrd.row = pGrd.mouseRow;
  702. if (pGrd.rows <= 1 || pGrd.row <= 0 ) return;
  703. fShowPopupMenu("grd_keepbaclist","/root/main/menuitems/inmenu/item");
  704. /*
  705. if (model.getValue( "/root/main/dsc/dscList["+grd_dscList.mouseRow+"]/pid")== "") return;
  706. var colnm = grd_dscList.valueMatrix(0, grd_dscList.mouseCol);
  707. var tmpcareinrmdd = model.getValue( "/root/main/dsc/dscList["+grd_dscList.mouseRow+"]/tmpcareinrmdd");
  708. var oppatflagcd = model.getValue( "/root/main/dsc/dscList["+grd_dscList.mouseRow+"]/oppatflagcd");
  709. colnm = colnm.substring(0,2);
  710. var sdschdd1 = model.getValue( "/root/main/dsc/dscList["+grd_dscList.mouseRow+"]/dschdd");
  711. sdschdd1 = sdschdd1.replace("-","");
  712. sdschdd1 = sdschdd1.substring(0,1);
  713. //---(수술환자+angio(수술정보없음)
  714. // if(oppatflagcd=="D"&&colnm== "입실"&&tmpcareinrmdd.substring(0,1)=="-") { // DSC 환자, 입실시각칼럼, 입실시각이 적용되지 않은 경우("-")에만 입실시각 메뉴 나타나도록
  715. // fShowPopupMenu("grd_dscList","/root/main/menuitems/inmenu/item");
  716. // }else {
  717. // fShowPopupMenu("grd_dscList","/root/main/menuitems/grdmenu/item");
  718. // }
  719. if (rdo_dscflag.value == "D") {
  720. //if(colnm== "입실"&&tmpcareinrmdd.substring(0,1)=="-") { // DSC 환자, 입실시각칼럼, 입실시각이 적용되지 않은 경우("-")에만 입실시각 메뉴 나타나도록
  721. if(colnm== "입실") { // DSC 환자, 입실시각칼럼, 입실시각이 적용되지 않은 경우("-")에만 입실시각 메뉴 나타나도록
  722. fShowPopupMenu("grd_dscList","/root/main/menuitems/inmenu/item");
  723. }else {
  724. fShowPopupMenu("grd_dscList","/root/main/menuitems/grdmenu/item");
  725. }
  726. } else {
  727. fShowPopupMenu("grd_dscList","/root/main/menuitems/grdmenu/item");
  728. }
  729. */
  730. }
  731. // --------------------------------------------------
  732. // 팝업메뉴
  733. // --------------------------------------------------
  734. function fShowPopupMenu(gridID, menuPath)
  735. {
  736. var gridObj = document.controls.item(gridID);
  737. if(event.button == 3) {
  738. if(gridObj.isCell(event.target) && gridObj.mouseRow >= gridObj.fixedrows){
  739. window.setPopupMenu(true, menuPath, "name", "func", false);
  740. }else{
  741. window.setPopupMenu(false);
  742. }
  743. }
  744. }
  745. //-------------------------------------
  746. // 오른쪽 마우스 호출되는 팝업둑ENR
  747. //-------------------------------------
  748. function fSetPopup01() {
  749. //상단올리기
  750. fSetPatInfo();
  751. modal("SMMNA00700", "", "", "", "", "", ""); //공여자문진
  752. }
  753. function fSetPopup02() {
  754. //상단올리기
  755. fSetPatInfo();
  756. modal("SMLBD01300", "", "", "", "", "", ""); //공여자처방입력
  757. }
  758. function fSetPopup03() {
  759. //상단올리기
  760. fSetPatInfo();
  761. modal("SMLBD00900", "", "", "", "", "", ""); //검사결과판정조회
  762. }
  763. function fSetPopup04() {
  764. //상단올리기
  765. fSetPatInfo();
  766. modal("SMMRF02300", "", "", "", "", "", ""); //ocr서식지출력
  767. }
  768. function fSetPopup05() {
  769. //상단올리기
  770. fSetPatInfo();
  771. modal("SMMMO02500", "", "", "", "", "", ""); //환자진료정보조회
  772. }
  773. function fSetPopup06() {
  774. modal("SMMNA01600", "", "", "", "", "", ""); //APU혈액불출등록
  775. }
  776. function fSetPopup07() {
  777. //상단올리기
  778. fSetPatInfo();
  779. modal("SMAER00800", "", "", "", "", "", ""); //통합검사결과조회
  780. }
  781. function fSetPopup08() {
  782. //상단올리기
  783. fSetPatInfo();
  784. modal("SMMRI00400", "", "", "", "", "", ""); //통합기록조회
  785. }
  786. function fSetPopup09() {
  787. //상단올리기
  788. fSetPatInfo();
  789. modal("SMLBD00500", "", "", "", "", "", ""); //APU간호기록_치료.BMT
  790. }
  791. function fSetPopup10() {
  792. //상단올리기
  793. fSetPatInfo();
  794. modal("SMLBD00600", "", "", "", "", "", ""); //APU간호기록_헌혈
  795. }
  796. function fSetPopup11() {
  797. //상단올리기
  798. fSetPatInfo();
  799. modal("SMMNA00600", "", "", "", "", "", ""); //공여자매핑
  800. }
  801. //--------------------------
  802. // prn 선택시
  803. //--------------------------
  804. function fnPrn() {
  805. //선택구분설정
  806. var xPathMainCond = "/root/main/cond";
  807. model.setValue(xPathMainCond + "/workflag", "prn");
  808. fInqurySelectedPrgm();
  809. }
  810. /**
  811. * @group :
  812. * @ver : 2008.06.27
  813. * @by : 김보성
  814. * @---------------------------------------------------
  815. * @type : function
  816. * @access : public
  817. * @desc : 반환사유내역등록기능
  818. * @param :
  819. * @param :
  820. * @return :
  821. * @---------------------------------------------------
  822. */
  823. function fnEndddSave() {
  824. var sPathSave = "/root/main/execprcp/execprcpinfo"; //저장원본
  825. var sPathEndCond = "/root/endsave/endcond"; //enddd 확인 결과(조회)
  826. var sPathEndResult = "/root/endsave/endresult"; //enddd 확인 결과(결과)
  827. var sPathEndSave = "/root/endsave/endinfo"; //반환사유정보생성path
  828. var sRows = getNodesetCount(sPathSave); //저장원본총갯수
  829. var sRowsEnd = 0;
  830. var sTempExecdd = "";
  831. var sinstcd = getUserInfo("dutplceinstcd");
  832. var sEndFlag = false;
  833. var sprcpdd = "";
  834. var sprcpno = "";
  835. var sprcphistno = "";
  836. var sexecprcpno = "";
  837. var sinstcd = "";
  838. var sioflag = "";
  839. model.removeNodeset(sPathEndSave);
  840. model.makeNode(sPathEndSave);
  841. //alert("반환");
  842. for (var row=1;row<=sRows;row++) {
  843. var chk = model.getValue(sPathSave+ "[" + row + "]/chk");
  844. //alert (sRows + " / " + row + " / " + chk);
  845. if (chk != "true") continue;
  846. sTempExecdd = model.getValue(sPathSave+ "[" + row + "]/execdd");
  847. sEndFlag = false;
  848. sprcpdd = model.getValue(sPathSave+ "[" + row + "]/prcpdd");
  849. sprcpno = model.getValue(sPathSave+ "[" + row + "]/prcpno");
  850. sprcphistno = model.getValue(sPathSave+ "[" + row + "]/prcphistno");
  851. sexecprcpno = model.getValue(sPathSave+ "[" + row + "]/execprcpno");
  852. sinstcd = getUserInfo("dutplceinstcd");
  853. sioflag = model.getValue(sPathSave+ "[" + row + "]/iogb");
  854. //alert(sprcpdd + "/" + sprcpno + "/" + sprcphistno +"/" +sexecprcpno +"/"+sinstcd +"/"+sioflag);
  855. //acting된것
  856. if (sTempExecdd != "00000000" ) {
  857. //DB갔다와야함(코딩해야함)
  858. model.removeNodeset(sPathEndCond);
  859. model.makeNode(sPathEndCond);
  860. //model.removeNodeset(sPathEndResult+"/enddd");
  861. //model.makeNode(sPathEndResult+"/enddd");
  862. model.makeValue(sPathEndCond + "/prcpdd", sprcpdd);
  863. model.makeValue(sPathEndCond + "/prcpno", sprcpno);
  864. model.makeValue(sPathEndCond + "/prcphistno", sprcphistno);
  865. model.makeValue(sPathEndCond + "/execprcpno", sexecprcpno);
  866. model.makeValue(sPathEndCond + "/instcd", sinstcd);
  867. model.makeValue(sPathEndCond + "/ioflag", sioflag);
  868. submit("TRMNA00510"); //마감여부체크
  869. //alert(model.getValue(sPathEndResult + "/enddd"));
  870. if ((model.getValue(sPathEndResult + "/enddd") == "00000000") ||
  871. (model.getValue(sPathEndResult + "/enddd") == "") ||
  872. (model.getValue(sPathEndResult + "/enddd") == "-")) {
  873. sEndFlag = false;
  874. } else {
  875. sEndFlag = true;
  876. }
  877. }
  878. if ( sEndFlag ) {
  879. //check: acting된것인데, enddd가 있는경우에 미확인으로 처리할경우인지를 확인해야함
  880. sRowsEnd++;
  881. model.removeNodeset(sPathEndSave);
  882. model.makeNode(sPathEndSave);
  883. model.makeValue(sPathEndSave+"/list/prcpdd", sprcpdd );
  884. model.makeValue(sPathEndSave+"/list/prcpno", sprcpno );
  885. model.makeValue(sPathEndSave+"/list/prcphistno", sprcphistno );
  886. model.makeValue(sPathEndSave+"/list/execprcpno", sexecprcpno );
  887. model.makeValue(sPathEndSave+"/list/instcd", sinstcd );
  888. model.makeValue(sPathEndSave+"/list/ioflag", sioflag );
  889. //alert("반환사유 테스트");
  890. if (getNodesetCount (sPathEndSave+"/list") > 0 ) {
  891. modal("SPPAS03000", "2", "100", "100", "SPPAS03000", sPathEndSave, "root/target",
  892. "left:100; top:100; width:400; height:400; sysmenu:hidden; min:visible; max:hidden; :hidden; resize:true; caption:visible;", false);
  893. model.removeNodeset(sPathEndSave);
  894. }
  895. }
  896. }
  897. }