SMMNW12700.js 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747
  1. /*
  2. 퇴원진행 현황관리(SMMNW12700.xrw - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. */
  6. var dschPatlistPath = "/root/main/dschprcsprescondinfo/dschprcsprescondlist"; // 퇴원진행환자리스트 경로(id=grd_dschpatlist)
  7. /**
  8. * @group :
  9. * @ver : 2008.07.02
  10. * @by : 김진아
  11. * @---------------------------------------------------
  12. * @type : function
  13. * @access : public
  14. * @desc : 화면 초기설정
  15. * @param :
  16. * @return :
  17. * @---------------------------------------------------
  18. */
  19. function fInitSetup(){
  20. //** 그리드 초기화 **//
  21. model.removeNodeset("/root/main/dschprcsprescondinfo");
  22. btn_outrmcncl.disabled = true; // 퇴실취소버튼 비활성화
  23. btn_outrmupdt.disabled = true; // 저장커튼 비활성화
  24. //** 공통코드 가져오기 **//
  25. zbcfGetCodeList( new Array ("M0481") // 퇴실지연사유
  26. , new Array ("/root/main/codelist/M0481list"));
  27. //** 조회조건 초기화 **//
  28. model.makeValue("/root/main/cond/wardcd" , getUserInfo("dutplcecd")); // 병동 (로그인 간호사의 소속병동코드)
  29. model.makeValue("/root/main/cond/fromdd" , getCurrentDate() ); // 조회일자(현재일자)
  30. model.makeValue("/root/main/cond/todd" , getCurrentDate() ); // 조회일자(현재일자)
  31. model.makeValue("/root/main/cond/srchopt", "1"); // 구분(1:퇴실전,2:퇴실후,3:전체)
  32. grd_dschpatlist.fixedcellcheckbox(0, grd_dschpatlist.colRef("check")) = true; // 그리드의 전체선택 체크박스 생성
  33. fSettingRN(); // 병동,내환자 리스트 조회
  34. }
  35. /**
  36. * @group :
  37. * @ver : 2008.07.02
  38. * @by : 김진아
  39. * @---------------------------------------------------
  40. * @type : function
  41. * @access : public
  42. * @desc : 병동,내환자 리스트 조회
  43. * @param :
  44. * @return :
  45. * @---------------------------------------------------
  46. */
  47. function fSettingRN(){
  48. model.removenode("/root/send");
  49. model.makeValue ("/root/send/reqdata/wardcd" , model.getValue("/root/main/cond/wardcd"));
  50. model.makeValue ("/root/send/reqdata/wardlistopt" , "A"); // 병동리스트조회옵션(A:[전체]포함)
  51. submit("TRMNW00101");
  52. if(cmb_wardcd.label == ""){
  53. model.makeValue("/root/main/cond/wardcd", "All");
  54. cmb_wardcd.refresh();
  55. }
  56. model.setValue("/root/main/cond/settingrnid", "");
  57. for(i = 1; i <= getNodesetCount("/root/init/settingrn"); i++ ) {
  58. if(model.getValue("/root/main/cond/userid") == model.getValue("/root/init/settingrn["+ i +"]/settingrnid")) {
  59. model.setValue("/root/main/cond/settingrnid", model.getValue("/root/main/cond/userid"));
  60. }
  61. }
  62. }
  63. /**
  64. * @group :
  65. * @ver : 2008.07.02
  66. * @by : 김진아
  67. * @---------------------------------------------------------------------------------
  68. * @type : function
  69. * @access : public
  70. * @desc : 환자정보 조회 팝업
  71. * @param :
  72. * @return :
  73. * @---------------------------------------------------------------------------------
  74. */
  75. function fSearchPatinfoPop() {
  76. model.makeValue("/root/temp/send/pid" , model.getValue("/root/main/cond/pid"));
  77. model.makeValue("/root/temp/send/srchcond", "1");
  78. modal("SPPMC02500", 1, 150, 150, "SPPMC02500", "/root/temp/send", "/root/send");
  79. if(model.getValue("/root/main/popupendflag")=="ok"){
  80. model.setValue("/root/main/cond/pid", model.getValue("/root/main/patinfo/patinfolist/pid"));
  81. }else{
  82. model.setValue("/root/main/cond/pid", "");
  83. }
  84. ipt_pid.refresh();
  85. }
  86. /**
  87. * @group :
  88. * @ver : 2008.07.09
  89. * @by : 김진아
  90. * @---------------------------------------------------------------------------------
  91. * @type : function
  92. * @access : public
  93. * @desc : 퇴원예고환자여부 확인
  94. * @param :
  95. * @return : Y/N
  96. * @---------------------------------------------------------------------------------
  97. */
  98. function fGetDschPatYN() {
  99. var dschYN="";
  100. model.removenode("/root/send");
  101. model.makeValue ("/root/send/reqdata/pid" , model.getValue("/root/main/cond/pid"));
  102. model.makeValue ("/root/send/reqdata/fromdd", model.getValue("/root/main/cond/fromdd"));
  103. model.makeValue ("/root/send/reqdata/todd", model.getValue("/root/main/cond/todd"));
  104. model.removeNodeset("/root/main/chklist");
  105. submit("TRMNW12702");
  106. if(getNodesetCount("/root/main/chklist/chkinfo")>0){
  107. dschYN = model.getValue("/root/main/chklist/chkinfo/dschpatyn"); // 퇴원예고여부
  108. model.makeValue ("/root/main/cond/wardcd", model.getValue("/root/main/chklist/chkinfo/wardcd")); // 해당환자의 병동셋팅
  109. }else{
  110. dschYN = 'N';
  111. }
  112. return dschYN;
  113. }
  114. /**
  115. * @group :
  116. * @ver : 2008.07.07
  117. * @by : 김진아
  118. * @---------------------------------------------------------------------------------
  119. * @type : function
  120. * @access : public
  121. * @desc : 퇴원진행환자리스트 조회
  122. * @param :
  123. * @return :
  124. * @---------------------------------------------------------------------------------
  125. */
  126. function fSrchDschPrcsPatList() {
  127. // 필수조회조건 체크
  128. if(model.getValue("/root/main/cond/wardcd")=="" && model.getValue("/root/main/cond/pid")==""){
  129. messageBox("병동은", "I003", "병동선택 후 다시 시도하십시오.");
  130. model.setFocus("cmb_wardcd");
  131. return;
  132. }
  133. if(model.getValue("/root/main/cond/fromdd")=="" || model.getValue("/root/main/cond/todd")==""){
  134. messageBox("조회일자는", "I003", "조회일자 입력 후 다시 시도하십시오.");
  135. model.setFocus("ipt_fromdd");
  136. return;
  137. }
  138. if(model.getValue("/root/main/cond/fromdd") == model.getValue("/root/main/cond/todd")) { //조회기간이 같을때만 퇴실,퇴실취소,저장이 활성화된다.
  139. btn_outrm.disabled = false;
  140. btn_outrmcncl.disabled = false;
  141. btn_outrmupdt.disabled = false;
  142. } else {
  143. btn_outrm.disabled = true;
  144. btn_outrmcncl.disabled = true;
  145. btn_outrmupdt.disabled = true;
  146. }
  147. model.removenode("/root/send");
  148. model.makeNode ("/root/send");
  149. model.makeValue ("/root/send/reqdata/wardcd" , model.getValue("/root/main/cond/wardcd") ); // 병동
  150. model.makeValue ("/root/send/reqdata/fromdd" , model.getValue("/root/main/cond/fromdd") ); // 조회일자(퇴원예정일)
  151. model.makeValue ("/root/send/reqdata/todd" , model.getValue("/root/main/cond/todd") ); // 조회일자(퇴원예정일)
  152. model.makeValue ("/root/send/reqdata/settingrnid" , model.getValue("/root/main/cond/settingrnid")); // 내환자
  153. model.makeValue ("/root/send/reqdata/pid" , model.getValue("/root/main/cond/pid") ); // 등록번호
  154. model.makeValue ("/root/send/reqdata/srchopt" , model.getValue("/root/main/cond/srchopt") ); // 구분(1:퇴실전,2:퇴실후,3:전체)
  155. model.removeNodeset("/root/main/dschprcsprescondinfo");
  156. submit("TRMNW12701");
  157. grd_dschpatlist.fixedcellischeck(0, grd_dschpatlist.colRef("check")) = false; // 전체선택 체크박스 초기화
  158. //** 퇴원예고등록일자가 당일 이전인 경우 셀색상변경 **//
  159. grd_dschpatlist.allstyle( "all", "background-color" ) = "white";
  160. var dschdclrdd ;
  161. for(var i=1; i<grd_dschpatlist.rows; i++){
  162. if(model.getValue(dschPatlistPath + "[" + i + "]/olddschdclrtrgstyn") == "Y"){ //퇴원예고등록일자 당일이전여부(Y:당일이전)
  163. grd_dschpatlist.cellstyle("background-color", i+1, 10, i+1, 10) = "#ffff00";
  164. }else{
  165. grd_dschpatlist.cellstyle("background-color", i+1, 10, i+1, 10) = "white";
  166. }
  167. dschdclrdd = grd_dschpatlist.valueMatrix(i, grd_dschpatlist.colRef("dschdclrdd2"));
  168. grd_dschpatlist.cellComboNodeset(i,grd_dschpatlist.colRef("rmoutdelyresn")) = "/root/code/codeinfo/codelist[valifromdd<='" + dschdclrdd + "' and valitodd>='" + dschdclrdd + "']";
  169. }
  170. // 등록번호로 조회 시
  171. if(model.getValue("/root/main/cond/pid")!=""){
  172. model.setValue("/root/main/cond/srchopt","3"); // 전체
  173. btn_outrm.disabled = true; // 퇴실버튼 비활성화
  174. btn_outrmcncl.disabled = true; // 퇴실취소버튼 비활성화
  175. btn_outrmupdt.disabled = true; // 저장커튼 비활성화
  176. model.setValue("/root/main/cond/wardcd", model.getValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist[1]/wardcd"));
  177. }
  178. model.refresh();
  179. }
  180. /**
  181. * @group :
  182. * @ver : 2008.07.08
  183. * @by : 김진아
  184. * @---------------------------------------------------------------------------------
  185. * @type : function
  186. * @access : public
  187. * @desc : 체크박스선택, 퇴실정보입력에 따른 그리드 설정
  188. * @param :
  189. * @return :
  190. * @---------------------------------------------------------------------------------
  191. */
  192. function fSetGrdStat() {
  193. var iRow = grd_dschpatlist.row-1;
  194. var iCol = grd_dschpatlist.col;
  195. // 체크박스 선택 시
  196. if(iRow > 0 && iCol == 0){
  197. if(grd_dschpatlist.valueMatrix(iRow+1, grd_dschpatlist.colRef("check")) == "true"){ // 체크박스 선택 시
  198. model.makeValue(dschPatlistPath + "[" + iRow + "]/rmouttm" , getCurrentTime().substr(0,4));
  199. if(getCurrentTime().substr(0,4) < "1100"){
  200. model.makeValue(dschPatlistPath + "[" + iRow + "]/rmoutdelyresn", "01"); // 퇴실지연사유("01":퇴실)
  201. }
  202. model.makeValue(dschPatlistPath + "[" + iRow + "]/status" , "u");
  203. }else if(grd_dschpatlist.valueMatrix(iRow+1, grd_dschpatlist.colRef("check")) == "false"){ // 체크박스 선택 취소 시
  204. model.makeValue(dschPatlistPath + "[" + iRow + "]/rmouttm" , "");
  205. model.makeValue(dschPatlistPath + "[" + iRow + "]/rmoutdelyresn", ""); // 퇴실지연사유
  206. model.makeValue(dschPatlistPath + "[" + iRow + "]/status" , "");
  207. }
  208. }
  209. // 퇴실시간 입력 시
  210. if(iRow > 0 && iCol == grd_dschpatlist.colRef("rmouttm")) {
  211. var rmouttm = model.getValue(dschPatlistPath + "[" + iRow + "]/rmouttm"); // 퇴실시간
  212. var rmoutdelyresn = model.getValue(dschPatlistPath + "[" + iRow + "]/rmoutdelyresn"); // 퇴실지연사유
  213. if(rmouttm != ""){
  214. model.makeValue(dschPatlistPath + "[" + iRow + "]/check" , "true");
  215. model.makeValue(dschPatlistPath + "[" + iRow + "]/status", "u");
  216. if(rmouttm < "1059" && rmouttm > "0000"){
  217. model.makeValue(dschPatlistPath + "[" + iRow + "]/rmoutdelyresn", "01"); // 퇴실지연사유("01":퇴실)
  218. }
  219. if( rmoutdelyresn == "01"){
  220. messageBox("퇴실시간이 00:00~10:59일 때에만 퇴실지연사유를\n퇴실로","C002");
  221. model.setValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist["+ iRow +"]/rmoutdelyresn","");
  222. model.setValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist["+ iRow +"]/rmouttm","");
  223. grd_dschpatlist.refresh();
  224. return;
  225. }
  226. }else{
  227. model.makeValue(dschPatlistPath + "[" + iRow + "]/check" , "false");
  228. model.makeValue(dschPatlistPath + "[" + iRow + "]/status", "");
  229. }
  230. }
  231. if( iRow > 0 && iCol == grd_dschpatlist.colRef("rmoutdelyresn") ) {
  232. if(model.getValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist["+ (grd_dschpatlist.row-1) +"]/rmouttm") == "" ){
  233. messageBox("퇴실시간을 먼저","C001");
  234. model.setValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist["+ (grd_dschpatlist.row-1) +"]/rmoutdelyresn","");
  235. grd_dschpatlist.refresh();
  236. return;
  237. }
  238. var rmouttm = model.getValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist["+ (grd_dschpatlist.row-1) +"]/rmouttm");
  239. if(rmouttm > "1059" && model.getValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist["+ (grd_dschpatlist.row-1) +"]/rmoutdelyresn") == "01"){
  240. messageBox("퇴실시간이 00:00~10:59일 때에만 퇴실지연사유를\n퇴실로","C002");
  241. model.setValue("/root/main/dschprcsprescondinfo/dschprcsprescondlist["+ (grd_dschpatlist.row-1) +"]/rmoutdelyresn","");
  242. grd_dschpatlist.refresh();
  243. return;
  244. }
  245. }
  246. grd_dschpatlist.refresh();
  247. }
  248. /**
  249. * @group :
  250. * @ver : 2008.07.08
  251. * @by : 김진아
  252. * @---------------------------------------------------------------------------------
  253. * @type : function
  254. * @access : public
  255. * @desc : 퇴실정보저장
  256. * @param : setFlag("U":퇴실,저장,"D":퇴실취소)
  257. * @return :
  258. * @---------------------------------------------------------------------------------
  259. */
  260. function fSaveOutRmInfo(setFlag) {
  261. var cnt=0;
  262. if(setFlag=="D"){ // 퇴실취소
  263. for(var i=0;i<grd_dschpatlist.rows;i++){
  264. if(grd_dschpatlist.valueMatrix(i+1, grd_dschpatlist.colRef("check")) == "true"){
  265. model.makeValue(dschPatlistPath + "[" + i + "]/status", "d");
  266. cnt++;
  267. }
  268. }
  269. }else if(setFlag=="U"){ // 퇴실,저장
  270. for(var i=0;i<grd_dschpatlist.rows;i++){
  271. if(grd_dschpatlist.valueMatrix(i+1, grd_dschpatlist.colRef("check")) == "true"){
  272. model.makeValue(dschPatlistPath + "[" + i + "]/status", "u");
  273. if(model.getValue(dschPatlistPath + "[" + i + "]/rmouttm")=="" ){
  274. messageBox("퇴실시간을 입력하지", "E007", "퇴실시간 및 퇴실지연사유 입력 후에만 퇴실처리가 가능합니다." );
  275. return;
  276. }
  277. if( (model.getValue(dschPatlistPath + "[" + i + "]/rmouttm")!="")
  278. && (model.getValue(dschPatlistPath + "[" + i + "]/rmoutdelyresn")=="" || model.getValue(dschPatlistPath + "[" + i + "]/rmoutdelyresn")=="-")){
  279. messageBox("퇴실지연사유를 입력하지", "E007", "퇴실지연사유 입력 후에만 퇴실처리가 가능합니다." );
  280. return;
  281. }
  282. if( (model.getValue(dschPatlistPath + "[" + i + "]/rmouttm")=="")
  283. || (model.getValue(dschPatlistPath + "[" + i + "]/rmoutdelyresn")=="" || model.getValue(dschPatlistPath + "[" + i + "]/rmoutdelyresn")=="-")){
  284. messageBox("퇴실시간 및 퇴실지연사유를 입력하지", "E007", "퇴실시간 및 퇴실지연사유 입력 후에만 퇴실처리가 가능합니다." );
  285. return;
  286. }
  287. cnt++;
  288. }
  289. }
  290. }
  291. if(cnt<1){
  292. messageBox("저장 할 데이터가", "E014", "체크박스 선택 후 다시 시도하십시오.");
  293. return;
  294. }
  295. model.removenode("/root/send");
  296. model.makeValue ("/root/send/savedata", grd_dschpatlist.getupdatedataAll("i"));
  297. submit("TXMNW12701");
  298. fSrchDschPrcsPatList(); // 퇴원진행환자리스트 조회
  299. }
  300. /**
  301. * @group :
  302. * @ver : 2008.07.09
  303. * @by : 김진아
  304. * @---------------------------------------------------------------------------------
  305. * @type : function
  306. * @access : public
  307. * @desc : 마우스 오른쪽 버튼 팝업메뉴 기능
  308. * @param :
  309. * @return :
  310. * @---------------------------------------------------------------------------------
  311. */
  312. function fSubMenu() {
  313. if(grd_dschpatlist.mouseRow>0 && grd_dschpatlist.mouseCol==19) { // 퇴실지연사유 컬럼에서 마우스 클릭 시만
  314. if (event.button == 3) {
  315. var i;
  316. //** 오른쪽 팝업메뉴 설정 **//
  317. var rmouttm;
  318. model.removeNodeset("root/main/poplist");
  319. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.row-1) + "]/rmouttm") != ""){ // 퇴실시간 입력되어 있을 경우
  320. rmouttm = model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.row-1) + "]/rmouttm");
  321. }else{ // 퇴실시간 입력되어 있지 않을 경우
  322. rmouttm = getCurrentTime().substr(0,4);
  323. }
  324. if(rmouttm !=""){
  325. // 11시이전 : "퇴실만"
  326. if(rmouttm<"1100"){
  327. i = 1;
  328. model.makeValue("/root/main/poplist/outrmdelyresnpopinfo/menu["+i+"]/name"
  329. ,model.getValue("/root/main/codelist/M0481list/M0481["+i+"]/cdnm")); // 퇴실지연사유 목록 설정
  330. model.makeValue("/root/main/poplist/outrmdelyresnpopinfo/menu["+i+"]/func"
  331. ,"fSetDelyResnCd"+model.getValue("/root/main/codelist/M0481list/M0481["+i+"]/cdid")); // 호출함수지정
  332. i++;
  333. }
  334. // 11시이후 : "퇴실만빼고"
  335. else{
  336. for(i=1;i<getNodesetCount("/root/main/codelist/M0481list/M0481");i++){
  337. model.makeValue("/root/main/poplist/outrmdelyresnpopinfo/menu["+i+"]/name"
  338. ,model.getValue("/root/main/codelist/M0481list/M0481["+(i+1)+"]/cdnm")); // 퇴실지연사유 목록 설정
  339. model.makeValue("/root/main/poplist/outrmdelyresnpopinfo/menu["+i+"]/func"
  340. ,"fSetDelyResnCd"+model.getValue("/root/main/codelist/M0481list/M0481["+(i+1)+"]/cdid")); // 호출함수지정
  341. }
  342. }
  343. model.makeValue("/root/main/poplist/outrmdelyresnpopinfo/menu["+ i +"]/name", "-");
  344. model.makeNode ("/root/main/poplist/outrmdelyresnpopinfo/menu["+ i +"]/func");
  345. model.makeValue("/root/main/poplist/outrmdelyresnpopinfo/menu["+ i+1 +"]/name", "사유입력취소");
  346. model.makeValue("/root/main/poplist/outrmdelyresnpopinfo/menu["+ i+1 +"]/func","fSetDelyResnCd99");
  347. }
  348. window.setPopupMenu(true, "/root/main/poplist/outrmdelyresnpopinfo/menu", "name", "func", false);
  349. }else {
  350. window.setPopupMenu(false);
  351. }
  352. }else {
  353. window.setPopupMenu(false);
  354. }
  355. }
  356. /**
  357. * @group :
  358. * @ver : 2008.07.09
  359. * @by : 김진아
  360. * @---------------------------------------------------------------------------------
  361. * @type : function
  362. * @access : public
  363. * @desc : 마우스 오른쪽 버튼 팝업메뉴시 퇴실지연사유 코드 설정
  364. * @param :
  365. * @return :
  366. * @---------------------------------------------------------------------------------
  367. */
  368. function fSetDelyResnCd01(){
  369. fSetRmOutTm(grd_dschpatlist.row-1); // 퇴실시간설정
  370. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.row-1) + "]/rmoutdelyresn","01");
  371. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.row-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  372. grd_dschpatlist.refresh();
  373. }
  374. function fSetDelyResnCd02(){
  375. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  376. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  377. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  378. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","02");
  379. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  380. }
  381. }
  382. grd_dschpatlist.refresh();
  383. }
  384. function fSetDelyResnCd03(){
  385. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  386. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  387. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  388. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","03");
  389. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  390. }
  391. }
  392. grd_dschpatlist.refresh();
  393. }
  394. function fSetDelyResnCd04(){
  395. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  396. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  397. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  398. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","04");
  399. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  400. }
  401. }
  402. grd_dschpatlist.refresh();
  403. }
  404. function fSetDelyResnCd05(){
  405. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  406. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  407. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  408. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","05");
  409. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  410. }
  411. }
  412. grd_dschpatlist.refresh();
  413. }
  414. function fSetDelyResnCd06(){
  415. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  416. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  417. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  418. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","06");
  419. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  420. }
  421. }
  422. grd_dschpatlist.refresh();
  423. }
  424. function fSetDelyResnCd07(){
  425. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  426. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  427. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  428. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","07");
  429. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  430. }
  431. }
  432. grd_dschpatlist.refresh();
  433. }
  434. function fSetDelyResnCd08(){
  435. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  436. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  437. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  438. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","08");
  439. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  440. }
  441. }
  442. grd_dschpatlist.refresh();
  443. }
  444. function fSetDelyResnCd09(){
  445. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  446. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  447. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  448. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","09");
  449. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  450. }
  451. }
  452. grd_dschpatlist.refresh();
  453. }
  454. function fSetDelyResnCd10(){
  455. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  456. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  457. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  458. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","10");
  459. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  460. }
  461. }
  462. grd_dschpatlist.refresh();
  463. }
  464. function fSetDelyResnCd11(){
  465. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  466. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  467. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  468. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","11");
  469. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  470. }
  471. }
  472. grd_dschpatlist.refresh();
  473. }
  474. function fSetDelyResnCd12(){
  475. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  476. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  477. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  478. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","12");
  479. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  480. }
  481. }
  482. grd_dschpatlist.refresh();
  483. }
  484. function fSetDelyResnCd13(){
  485. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  486. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  487. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  488. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","13");
  489. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  490. }
  491. }
  492. grd_dschpatlist.refresh();
  493. }
  494. function fSetDelyResnCd14(){
  495. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  496. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  497. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  498. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","14");
  499. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  500. }
  501. }
  502. grd_dschpatlist.refresh();
  503. }
  504. function fSetDelyResnCd15(){
  505. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  506. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  507. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  508. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","15");
  509. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  510. }
  511. }
  512. grd_dschpatlist.refresh();
  513. }
  514. function fSetDelyResnCd16(){
  515. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  516. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  517. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  518. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","16");
  519. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  520. }
  521. }
  522. grd_dschpatlist.refresh();
  523. }
  524. function fSetDelyResnCd17(){
  525. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  526. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  527. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  528. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","17");
  529. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  530. }
  531. }
  532. grd_dschpatlist.refresh();
  533. }
  534. function fSetDelyResnCd18(){
  535. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  536. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  537. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  538. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","18");
  539. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  540. }
  541. }
  542. grd_dschpatlist.refresh();
  543. }
  544. function fSetDelyResnCd19(){
  545. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  546. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  547. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  548. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","19");
  549. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  550. }
  551. }
  552. grd_dschpatlist.refresh();
  553. }
  554. function fSetDelyResnCd20(){
  555. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  556. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  557. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  558. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","20");
  559. }
  560. }
  561. grd_dschpatlist.refresh();
  562. }
  563. function fSetDelyResnCd21(){
  564. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  565. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  566. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  567. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","21");
  568. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  569. }
  570. }
  571. grd_dschpatlist.refresh();
  572. }
  573. function fSetDelyResnCd22(){
  574. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  575. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  576. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  577. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","22");
  578. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  579. }
  580. }
  581. grd_dschpatlist.refresh();
  582. }
  583. function fSetDelyResnCd23(){
  584. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  585. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  586. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  587. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","23");
  588. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  589. }
  590. }
  591. grd_dschpatlist.refresh();
  592. }
  593. function fSetDelyResnCd24(){
  594. for (i = 0; i < grd_dschpatlist.selectedRows; i++) {
  595. fSetRmOutTm(grd_dschpatlist.selectedRow(i)-1); // 퇴실시간설정
  596. if(model.getValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmouttm")>="1100"){
  597. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresn","24");
  598. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.selectedRow(i)-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  599. }
  600. }
  601. grd_dschpatlist.refresh();
  602. }
  603. function fSetDelyResnCd99(){
  604. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.row-1) + "]/rmoutdelyresn","");
  605. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.row-1) + "]/rmoutdelyresnrmk",""); // 퇴실지연사유기타
  606. model.makeValue(dschPatlistPath + "[" + (grd_dschpatlist.row-1) + "]/rmouttm" , ""); // 퇴실시간
  607. grd_dschpatlist.colDisabled(grd_dschpatlist.colRef("rmoutdelyresnrmk")) = true;
  608. grd_dschpatlist.refresh();
  609. }
  610. /**
  611. * @group :
  612. * @ver : 2008.07.09
  613. * @by : 김진아
  614. * @---------------------------------------------------------------------------------
  615. * @type : function
  616. * @access : public
  617. * @desc : 마우스 오른쪽 버튼 팝업메뉴시 퇴실지연사유 코드 설정 시 퇴실시간 지정
  618. * @param :
  619. * @return :
  620. * @---------------------------------------------------------------------------------
  621. */
  622. function fSetRmOutTm(iRow){
  623. if(model.getValue(dschPatlistPath + "[" + iRow + "]/rmouttm") == ""){ // 퇴실시간 입력되어 있지 않을 경우
  624. model.makeValue(dschPatlistPath + "[" + iRow + "]/rmouttm", getCurrentTime().substr(0,4)); // 퇴실시간
  625. }
  626. model.makeValue(dschPatlistPath + "[" + iRow + "]/check" , "true");
  627. model.makeValue(dschPatlistPath + "[" + iRow + "]/status", "u");
  628. }
  629. /**
  630. * @group :
  631. * @ver : 2008.07.17
  632. * @by : 김진아
  633. * @---------------------------------------------------
  634. * @type : function
  635. * @access : public
  636. * @desc : grd_dschpatlist 엑셀저장
  637. * @param :
  638. * @return :
  639. * @---------------------------------------------------
  640. */
  641. function fSaveToExcel(){
  642. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  643. if (fileName != ""){
  644. grd_dschpatlist.saveExcel(fileName, "SheetName", true, true, "", "", false);
  645. }
  646. }
  647. /**
  648. * @group
  649. * @ver : 2008.07.17
  650. * @by : 김진아
  651. * @---------------------------------------------------
  652. * @type : function
  653. * @access : public
  654. * @desc : 출력기능
  655. * @param :
  656. * @return :
  657. * @---------------------------------------------------
  658. */
  659. function fExecPrint(){
  660. var fromdd = model.getValue("/root/main/cond/fromdd"); // 시작일자
  661. var todd = model.getValue("/root/main/cond/todd"); // 종료일자
  662. model.removenode("/root/send");
  663. model.makeNode ("/root/send/printdata/dschprcsprescondinfo");
  664. model.copynode ("/root/send/printdata/dschprcsprescondinfo", "/root/main/dschprcsprescondinfo"); // 리스트copy
  665. for(var i=0;i<grd_dschpatlist.rows;i++){
  666. // 퇴실지연사유(공통코드 값을 Value로..)
  667. var rmoutdelyresn = model.getValue("/root/send/printdata/dschprcsprescondinfo/dschprcsprescondlist["+i+"]/rmoutdelyresn");
  668. if(rmoutdelyresn != ""){
  669. model.makeValue("/root/send/printdata/dschprcsprescondinfo/dschprcsprescondlist["+i+"]/rmoutdelyresn", model.getValue("/root/main/codelist/M0481list/M0481[cdid='"+rmoutdelyresn+"']/cdnm"));
  670. }
  671. // 퇴실시간 format설정
  672. var rmouttm = model.getValue("/root/send/printdata/dschprcsprescondinfo/dschprcsprescondlist["+i+"]/rmouttm");
  673. if(rmouttm != ""){
  674. model.makeValue("/root/send/printdata/dschprcsprescondinfo/dschprcsprescondlist["+i+"]/rmouttm", rmouttm.substr(0,2)+":"+rmouttm.substr(2,2));
  675. }
  676. }
  677. model.makeValue ("/root/send/printdata/cond/wardcd", "("+cmb_wardcd.label+")"); // 병동
  678. model.makeValue ("/root/send/printdata/cond/orddd"
  679. , "업무일자 : "+fromdd.substr(0,4)+"-"+fromdd.substr(4,2)+"-"+fromdd.substr(6,2)
  680. +" ~ "+todd.substr(0,4)+"-"+todd.substr(4,2)+"-"+todd.substr(6,2)); // 조회일자
  681. exeReportPreview("RPMNW12700", "XMLSTR");
  682. }