SMMNH015.js 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751
  1. /*****************************************************************************************************************************************************************************
  2. 호스피스기록지(SMMNH009.xfm - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. ******************************************************************************************************************************************************************************/
  6. var xHospiceDetlPath = '/root/main/hospiceinfo/hospicedetl'; //호스피스 기본 인적사항 xPath
  7. var xPafaPath = '/root/main/hospicefamy/famylist'; //가족사항
  8. var xHiddenPath = '/root/hidden'; //hidden xPath
  9. /**
  10. * @group :
  11. * @ver : 2007.05.21
  12. * @by : 하재륜
  13. * @---------------------------------------------------
  14. * @type : function
  15. * @access : public
  16. * @desc : 호스피스 기록지 조회
  17. * @param :
  18. * @param :
  19. * @return :
  20. * @---------------------------------------------------
  21. */
  22. function fSearch(){
  23. //조회하기 전 넘겨줄 기본 조건 값 세팅
  24. model.removenode("/root/send");
  25. model.makeValue("/root/send/pid",model.getValue("/root/hidden/pid"));
  26. model.makeValue("/root/send/cretdt",model.getValue("/root/hidden/cretdt"));
  27. model.makeValue("/root/send/reqdeptcd",model.getValue("/root/hidden/reqdeptcd"));
  28. model.makeValue("/root/send/reqdd",model.getValue("/root/hidden/reqdd"));
  29. model.removenodeset(xHospiceDetlPath);
  30. grd_skinstatspec.rebuild();
  31. if(submit("TRMNH01501")){
  32. if( (model.getValue(xHospiceDetlPath + "/hngnm")) =="" ){
  33. if(checkOpener()){
  34. messageBox("등록된자료가 ","I004");
  35. window.close();
  36. }else{
  37. model.reset();
  38. model.refresh();
  39. messageBox("등록된자료가 ","I004");
  40. }
  41. }else{
  42. var opt_rrgstno = model.getValue(xHospiceDetlPath + "/rrgstno");
  43. model.setValue(xHospiceDetlPath + "/rrgstno",opt_rrgstno.substring(0,8)+"******");//주민번호 세팅
  44. fSearchFamy();//가족사항 조회
  45. fSearchInpt();//입원내역조회
  46. fSearchMasv();//심리사회적평가 조회
  47. if((model.getValue(xHospiceDetlPath + "/reqtypeflag"))=="1")
  48. cmb_reqhospnm.disabled = true;
  49. else
  50. cmb_reqhospnm.disabled = false;
  51. var genogrmnm = model.getValue(xHospiceDetlPath + "/genogrmnm");
  52. if( genogrmnm == ""){
  53. caption133.visible = false;
  54. }else{
  55. caption133.visible = true;
  56. }
  57. var agonalcd = model.getValue(xHospiceDetlPath + "/agonaldd");
  58. var agonal49 = getAddDay(agonalcd,"49");
  59. var agonal365 = getAddDay(agonalcd,"365");
  60. model.setValue("/root/temp/hospicedetl/agonal49",agonal49);
  61. model.setValue("/root/temp/hospicedetl/agonal365",agonal365);
  62. var cureprescondspec = model.getValue(xHospiceDetlPath + "/cureprescondspec");
  63. if ((isSearchString(cureprescondspec, "6")) ==true)
  64. ipt_cureprescondetcnm.disabled = false;
  65. else
  66. ipt_cureprescondetcnm.disabled = true;
  67. var ccspec = model.getValue(xHospiceDetlPath + "/ccspec");
  68. if ((isSearchString(ccspec, "5")) ==true)
  69. ipt_ccetcnm.disabled = false;
  70. else
  71. ipt_ccetcnm.disabled = true;
  72. if(Number(model.getValue(xHospiceDetlPath + "/chstval") ) > 0 ){
  73. model.setValue("/root/temp/hospicedetl/chstval","C");
  74. ipt_chstval.disabled = false;
  75. }
  76. if(Number(model.getValue(xHospiceDetlPath + "/pelvval") ) > 0 ){
  77. model.setValue("/root/temp/hospicedetl/pelvval","P");
  78. ipt_pelvval.disabled = false;
  79. }
  80. if(Number(model.getValue(xHospiceDetlPath + "/regionvas") ) > 0 ){
  81. model.setValue("/root/temp/hospicedetl/regionvas","R");
  82. ipt_regionvas.disabled = false;
  83. }
  84. if(Number(model.getValue(xHospiceDetlPath + "/neckvas") ) > 0 ){
  85. model.setValue("/root/temp/hospicedetl/neckvas","N");
  86. ipt_neckvas.disabled = false;
  87. }
  88. if(Number(model.getValue(xHospiceDetlPath + "/waistvas") ) > 0 ){
  89. model.setValue("/root/temp/hospicedetl/waistvas","W");
  90. ipt_waistvas.disabled =false;
  91. }
  92. if(Number(model.getValue(xHospiceDetlPath + "/headval") ) > 0 ){
  93. model.setValue("/root/temp/hospicedetl/headval","H");
  94. ipt_headval.disabled = false;
  95. }
  96. if(Number(model.getValue(xHospiceDetlPath + "/etcval") ) > 0 ){
  97. model.setValue("/root/temp/hospicedetl/etcval","E");
  98. ipt_etcval.disabled = false;
  99. ipt_etcnm.disabled = false;
  100. }
  101. //입실시간
  102. //if(ipt_inrmtm.value == ""){
  103. // ipt_inrmtm.value = getCurrentTime().substring(0,4);
  104. //}
  105. //피부상태
  106. if(grd_skinstatspec.valueMatrix(1,0)==""){
  107. chk_skinstatyn.value = "1";
  108. }else{
  109. chk_skinstatyn.value = "0";
  110. }
  111. if(chk_skinstatyn.value == "1"){
  112. grd_skinstatspec.isReadOnly(1,0) = true;
  113. grd_skinstatspec.isReadOnly(1,1) = true;
  114. btn_skinadd.disabled = true;
  115. }else{
  116. grd_skinstatspec.isReadOnly(1,0) = false;
  117. grd_skinstatspec.isReadOnly(1,1) = false;
  118. btn_skinadd.disabled = false;
  119. }
  120. model.makeNode(xHospiceDetlPath + "/deptcd");
  121. model.makeNode(xHospiceDetlPath + "/docucode");
  122. model.makeNode(xHiddenPath + "/mapindd");
  123. model.setValue(xHiddenPath + '/mapindd', model.getValue(xHospiceDetlPath + '/mapindd'));
  124. model.refresh();
  125. }
  126. }else{
  127. messageBox('조희를', 'E009');
  128. }
  129. }
  130. /**
  131. * @group :
  132. * @ver : 2007.05.24
  133. * @by : 하재륜
  134. * @---------------------------------------------------
  135. * @type : function
  136. * @access : public
  137. * @desc : 호스피스 환자가족 조회 (
  138. * @param :
  139. * @param :
  140. * @return :
  141. * @---------------------------------------------------
  142. */
  143. function fSearchFamy(){
  144. model.removenode("/root/send");
  145. model.makeValue("/root/send/pid",model.getValue(xHospiceDetlPath + "/pid"));
  146. model.removenodeset(xPafaPath);
  147. submit("TRMNH01503");
  148. }
  149. /**
  150. * @group :
  151. * @ver : 2007.05.28
  152. * @by : 하재륜
  153. * @---------------------------------------------------
  154. * @type : function
  155. * @access : public
  156. * @desc : 호스피스 입원내역 조회 (
  157. * @param : pid
  158. * @param :
  159. * @return :
  160. * @---------------------------------------------------
  161. */
  162. function fSearchInpt(){
  163. model.removenode("/root/send");
  164. model.makeValue("/root/send/pid",model.getValue(xHospiceDetlPath + "/pid"));
  165. model.makeValue("/root/send/cretdt",model.getValue(xHospiceDetlPath + "/cretdt"));
  166. model.removenodeset("/root/main/hospiceinpt/inptlist");
  167. submit("TRMNH01504");
  168. }
  169. /**
  170. * @group :
  171. * @ver : 2007.05.28
  172. * @by : 하재륜
  173. * @---------------------------------------------------
  174. * @type : function
  175. * @access : public
  176. * @desc : 심리사회적평가 조회 (
  177. * @param : pid
  178. * @param :
  179. * @return :
  180. * @---------------------------------------------------
  181. */
  182. function fSearchMasv(){
  183. model.removenode("/root/send");
  184. model.makeValue("/root/send/pid", model.getValue(xHospiceDetlPath + "/pid"));
  185. model.makeValue("/root/send/instcd",model.getValue(xHospiceDetlPath + "/instcd"));
  186. model.makeValue("/root/send/cretdt",model.getValue(xHospiceDetlPath + "/cretdt"));
  187. model.makeValue("/root/send/reqdeptcd",model.getValue(xHospiceDetlPath + "/reqdeptcd"));
  188. model.makeValue("/root/send/reqdd",model.getValue(xHospiceDetlPath + "/reqdd"));
  189. submit("TRMNH01505");
  190. }
  191. /**
  192. * @group :
  193. * @ver : 2007.05.18
  194. * @by : 하재륜
  195. * @---------------------------------------------------
  196. * @type : function
  197. * @access : public
  198. * @desc : 호스피스 기록지 저장
  199. * @desc : 가계도 저장 로직 추가
  200. 2007.11.10 - dhkim
  201. * @param :
  202. * @param :
  203. * @return :
  204. * @---------------------------------------------------
  205. */
  206. function fSave(){
  207. //임종일이 입력되어 있으면 환자구분을 제외(O), 퇴원사유를 병원임종(01), 종결일자를 임종일로 저장한다.
  208. var agonaldd = model.getValue(xHospiceDetlPath + "/agonaldd");
  209. var wardcd = model.getValue(xHospiceDetlPath + '/wardcd');
  210. var waitstat = model.getValue(xHospiceDetlPath + '/waitstat');
  211. var inrmdt = model.getValue(xHospiceDetlPath + '/inrmdt');
  212. if(agonaldd.length == 8){
  213. model.setValue(xHospiceDetlPath + "/waitstat","O");
  214. model.setValue(xHospiceDetlPath + "/dschtype","01");
  215. model.setValue(xHospiceDetlPath + "/enddd",agonaldd);
  216. model.refresh();
  217. }else{
  218. //대기상태(W)였을때 입실일이 입력되면 waitstat=I로 저장.
  219. //호스피스병동(병동코드:3050136000)에 입실된 환자가 아닌 경우에는 입실일 입력할수 없는 경고메세지 출력
  220. if(waitstat == 'W' && inrmdt.length == 8){
  221. if(wardcd == '3050136000'){
  222. model.setValue(xHospiceDetlPath + '/waitstat', 'I');
  223. }else{
  224. messageBox('호스피스병동에 입원한 환자가 아니므로 입실일을 입력', 'E001');
  225. model.setValue(xHospiceDetlPath + '/inrmdt', '');
  226. model.setValue(xHospiceDetlPath + '/inrmtm', '');
  227. model.setValue(xHospiceDetlPath + '/inrmmthdcd', '');
  228. model.setValue(xHospiceDetlPath + '/inrmacompstcd', '');
  229. model.refresh();
  230. return false;
  231. }
  232. }
  233. //제외일을 지울때 대기일자가 있으면 상태값을 대기상태로 변경
  234. if(waitstat == 'O'){
  235. if(model.getValue(xHospiceDetlPath + '/waitdt') != ''){
  236. model.setValue(xHospiceDetlPath + "/waitdt", "");
  237. model.setValue(xHospiceDetlPath + "/waitstat", "R");
  238. }
  239. }
  240. }
  241. //피부상태
  242. model.removenode("/root/send/skinstatspec/skinstatlists");
  243. if(grd_skinstatspec.rows<2) grd_skinstatspec.addRow();
  244. var chstval = model.getValue(xHospiceDetlPath + "/chstval") ; //가슴값
  245. var pelvval = model.getValue(xHospiceDetlPath + "/pelvval") ; //골반값
  246. var regionvas = model.getValue(xHospiceDetlPath + "/regionvas"); //복부값
  247. var neckvas = model.getValue(xHospiceDetlPath + "/neckvas") ; //목값
  248. var waistvas = model.getValue(xHospiceDetlPath + "/waistvas") ; //허리값
  249. var headval = model.getValue(xHospiceDetlPath + "/headval") ; //머리값
  250. var etcval = model.getValue(xHospiceDetlPath + "/etcval") ; //기타값
  251. //널처리
  252. if(chstval == "")
  253. chstval = "0";
  254. if(pelvval == "")
  255. pelvval = "0";
  256. if(regionvas == "")
  257. regionvas = "0";
  258. if(neckvas == "")
  259. neckvas = "0";
  260. if(waistvas == "")
  261. waistvas = "0";
  262. if(headval == "")
  263. headval = "0";
  264. if(etcval == "")
  265. etcval = "0";
  266. //파리채 column 명 정의
  267. var sData = "pid" // 01 등록번호
  268. + "▦cretdt" // 02 생성일자
  269. + "▦reqdeptcd" // 02-1 의뢰과
  270. + "▦reqdd" // 02-2 의뢰일자
  271. + "▦reqindd" // 02-3 의뢰희망일자
  272. + "▦instcd" // 03 기관코드
  273. + "▦indd" // 04 입원일자
  274. + "▦cretno" // 05 생성번호
  275. + "▦patcntctel" // 06 환자전화번호
  276. + "▦procercntctel" // 07 보호자전화번호
  277. + "▦endawaryn" // 08 말기에대한인식 환자
  278. + "▦proendawaryn" // 09 말기에대한인식 보호자
  279. + "▦cncrawaryn" // 09-1 암에대한인식 환자
  280. + "▦procncrawaryn" // 09-2 암에대한인식 보호자
  281. + "▦intvdd" // 10 면담일자
  282. + "▦reqdeptcd" // 11 의뢰과코드
  283. + "▦atdoctid" // 12 주치의ID
  284. + "▦atdoctnm" // 13 주치의명
  285. + "▦reqtypeflag" // 14 의뢰형태구분
  286. + "▦reqresnflag" // 15 의뢰사유구분
  287. + "▦reqhospnm" // 16 의뢰병원명
  288. + "▦exptresn" // 17 제외사유
  289. + "▦dschtype" // 18 퇴원사유
  290. + "▦diagcd" // 19 진단코드
  291. + "▦religncd" // 20 종교코드
  292. + "▦parishchrchnm" // 21 본당명
  293. + "▦baptnm" // 22 세례명
  294. + "▦zipcd1" // 23 우편번호1
  295. + "▦zipcd2" // 24 우편번호2
  296. + "▦zipcdseq" // 25 우편번호순서
  297. + "▦detladdr" // 26 상세주소
  298. + "▦baptismdd" // 27 영세일자
  299. + "▦emerbaptdd" // 28 대세일자
  300. + "▦sickdivser" // 29 병자성사
  301. + "▦attackdd" // 30 발병일자
  302. + "▦agonalhopeplcecd" // 31 임종희망장소코드
  303. + "▦agonaldd" // 32 임종일자
  304. + "▦agonalplcecd" // 33 임종장소코드
  305. + "▦chldrncnt" // 34 자녀수
  306. + "▦marystatcd" // 35 결혼상태코드
  307. + "▦recmdocuyn" // 36 추천서여부
  308. + "▦recmpsgecd" // 37 추천경유코드
  309. + "▦diagnmawaryn" // 38 진단명인지여부
  310. + "▦visittims" // 39 방문횟수
  311. + "▦chngroomdelyresncd" // 40 이실지연사유코드
  312. + "▦homecarereqyn" // 41 가정간호의뢰여부
  313. + "▦inrmdt" // 42 입실일자
  314. + "▦inrmtm" // 43 입실시간
  315. + "▦waitstat" // 44 환자구분
  316. + "▦waitdt" // 45 대기일자
  317. + "▦enddd" // 46 종결일자
  318. + "▦roomgrdecnts" // 47 병실등급내용
  319. + "▦recdd" // 48 등록일자
  320. + "▦rectm" // 49 등록시간
  321. + "▦inrmmthdcd" // 50 입실방법코드
  322. + "▦inrmacompstcd" // 51 입실시동반자코드
  323. + "▦itrdmoodcd" // 52 소개기분코드
  324. + "▦edcugrdecd" // 53 교육정도코드
  325. + "▦separationfamyyn" // 54 사별가족방문여부
  326. + "▦memodoryn" // 55 추모식행사여부
  327. + "▦mmmassyn" // 56 월미사참석여부
  328. + "▦donatyn" // 57 시신기증여부
  329. + "▦cureprescondspec" // 58 치료현황내역
  330. + "▦cureprescondetcnm" // 59 치료현황기타명
  331. + "▦jobcd" // 59-1 직업코드
  332. + "▦jobnm" // 60 직업명
  333. + "▦ccspec" // 61 C/C내역
  334. + "▦ccetcnm" // 62 C/C기타명
  335. + "▦skinstatyn" // 63 피부상태증상여부
  336. + "▦skinstatspec" // 64 피부상태내역
  337. + "▦emotstatspec" // 65 정서상태내역
  338. + "▦intesympspec" // 66 영적고통내역
  339. + "▦intereqspec" // 67 영적요구내역
  340. + "▦chstval" // 68 가슴값
  341. + "▦pelvval" // 69 골반값
  342. + "▦regionvas" // 70 복부값
  343. + "▦neckvas" // 71 목값
  344. + "▦waistvas" // 72 허리값
  345. + "▦headval" // 73 머리값
  346. + "▦etcval" // 74 기타값
  347. + "▦etcnm" // 75 기타명
  348. //가계도 데이터 설정
  349. + "▦mapindd" // 76 등록일자
  350. + "▦deptcd" // 77 등록부서
  351. + "▦docucode" // 78 서식코드
  352. + "▦genogrmnm" // 79 가계도 내용
  353. + "▦status" // 80 저장할 상태
  354. + "▦recdd" // 81 등록일자
  355. + "▦rectm" // 82 등록시간
  356. + "▦diagcd1" // 83 진단코드1
  357. + "▦diagcd2" // 84 진단코드2
  358. + "▩" ;
  359. //피부상태 xml데이터
  360. var xSkinstatspec = instance1.selectSingleNode(xHospiceDetlPath + "/skinstatspec/skinstatlists").xml;
  361. var xMap = instance1.selectSingleNode(xHospiceDetlPath + '/genogrmnm') ;
  362. if(model.getValue(xHospiceDetlPath + "/cretdt") == "" || model.getValue(xHospiceDetlPath + "/cretdt") == null)
  363. model.setValue(xHospiceDetlPath + "/cretdt",getCurrentDate());
  364. if(model.getValue(xHospiceDetlPath + "/waitdt") == "" || model.getValue(xHospiceDetlPath + "/waitdt") == null)
  365. model.setValue(xHospiceDetlPath + "/waitdt",getCurrentDate());
  366. sData += model.getValue(xHospiceDetlPath + "/pid") // 01 등록번호
  367. + "▦" + model.getValue(xHospiceDetlPath + "/cretdt") // 02 생성일자
  368. + "▦" + model.getValue(xHospiceDetlPath + "/reqdeptcd") // 02-1 의뢰과
  369. + "▦" + model.getValue(xHospiceDetlPath + "/reqdd") // 02-2 의뢰일자
  370. + "▦" + model.getValue(xHospiceDetlPath + "/reqindd") // 02-3 의뢰희망일자
  371. + "▦" + model.getValue(xHospiceDetlPath + "/instcd") // 03 기관코드
  372. + "▦" + model.getValue(xHospiceDetlPath + "/indd") // 04 입원일자
  373. + "▦" + model.getValue(xHospiceDetlPath + "/cretno") // 05 생성번호
  374. + "▦" + model.getValue(xHospiceDetlPath + "/patcntctel") // 06 환자전화번호
  375. + "▦" + model.getValue(xHospiceDetlPath + "/procercntctel") // 07 보호자전화번호
  376. + "▦" + model.getValue(xHospiceDetlPath + "/endawaryn") // 08 말기에대한인식 환자
  377. + "▦" + model.getValue(xHospiceDetlPath + "/proendawaryn") // 09 말기에대한인식 보호자
  378. + "▦" + model.getValue(xHospiceDetlPath + "/cncrawaryn") // 09-1 암에대한인식 환자
  379. + "▦" + model.getValue(xHospiceDetlPath + "/procncrawaryn") // 09-2 암에대한인식 보호자
  380. + "▦" + model.getValue(xHospiceDetlPath + "/intvdd") // 10 면담일자
  381. + "▦" + model.getValue(xHospiceDetlPath + "/reqdeptcd") // 11 의뢰과코드
  382. + "▦" + model.getValue(xHospiceDetlPath + "/atdoctid") // 12 주치의ID
  383. + "▦" + model.getValue(xHospiceDetlPath + "/atdoctnm") // 13 주치의명
  384. + "▦" + model.getValue(xHospiceDetlPath + "/reqtypeflag") // 14 의뢰형태구분
  385. + "▦" + model.getValue(xHospiceDetlPath + "/reqresnflag") // 15 의뢰사유구분
  386. + "▦" + model.getValue(xHospiceDetlPath + "/reqhospnm") // 16 의뢰병원명
  387. + "▦" + model.getValue(xHospiceDetlPath + "/exptresn") // 17 제외사유
  388. + "▦" + model.getValue(xHospiceDetlPath + "/dschtype") // 18 퇴원사유
  389. + "▦" + model.getValue(xHospiceDetlPath + "/diagcd") // 19 진단코드
  390. + "▦" + model.getValue(xHospiceDetlPath + "/religncd") // 20 종교코드
  391. + "▦" + model.getValue(xHospiceDetlPath + "/parishchrchnm") // 21 본당명
  392. + "▦" + model.getValue(xHospiceDetlPath + "/baptnm") // 22 세례명
  393. + "▦" + model.getValue(xHospiceDetlPath + "/zipcd1") // 23 우편번호1
  394. + "▦" + model.getValue(xHospiceDetlPath + "/zipcd2") // 24 우편번호2
  395. + "▦" + model.getValue(xHospiceDetlPath + "/zipcdseq") // 25 우편번호순서
  396. + "▦" + model.getValue(xHospiceDetlPath + "/detladdr") // 26 상세주소
  397. + "▦" + model.getValue(xHospiceDetlPath + "/baptismdd") // 27 영세일자
  398. + "▦" + model.getValue(xHospiceDetlPath + "/emerbaptdd") // 28 대세일자
  399. + "▦" + model.getValue(xHospiceDetlPath + "/sickdivser") // 29 병자성사
  400. + "▦" + model.getValue(xHospiceDetlPath + "/attackdd") // 30 발병일자
  401. + "▦" + model.getValue(xHospiceDetlPath + "/agonalhopeplcecd") // 31 임종희망장소코드
  402. + "▦" + model.getValue(xHospiceDetlPath + "/agonaldd") // 32 임종일자
  403. + "▦" + model.getValue(xHospiceDetlPath + "/agonalplcecd") // 33 임종장소코드
  404. + "▦" + model.getValue(xHospiceDetlPath + "/chldrncnt") // 34 자녀수
  405. + "▦" + model.getValue(xHospiceDetlPath + "/marystatcd") // 35 결혼상태코드
  406. + "▦" + model.getValue(xHospiceDetlPath + "/recmdocuyn") // 36 추천서여부
  407. + "▦" + model.getValue(xHospiceDetlPath + "/recmpsgecd") // 37 추천경유코드
  408. + "▦" + model.getValue(xHospiceDetlPath + "/diagnmawaryn") // 38 진단명인지여부
  409. + "▦" + model.getValue(xHospiceDetlPath + "/visittims") // 39 방문횟수
  410. + "▦" + model.getValue(xHospiceDetlPath + "/chngroomdelyresncd") // 40 이실지연사유코드
  411. + "▦" + model.getValue(xHospiceDetlPath + "/homecarereqyn") // 41 가정간호의뢰여부
  412. + "▦" + model.getValue(xHospiceDetlPath + "/inrmdt") // 42 입실일자
  413. + "▦" + model.getValue(xHospiceDetlPath + "/inrmtm") // 43 입실시간
  414. + "▦" + model.getValue(xHospiceDetlPath + "/waitstat") // 44 환자구분
  415. + "▦" + model.getValue(xHospiceDetlPath + "/waitdt") // 45 대기일자
  416. + "▦" + model.getValue(xHospiceDetlPath + "/enddd") // 46 종결일자
  417. + "▦" + model.getValue(xHospiceDetlPath + "/roomgrdecnts") // 47 병실등급내용
  418. + "▦" + model.getValue(xHospiceDetlPath + "/recdd") // 48 등록일자
  419. + "▦" + model.getValue(xHospiceDetlPath + "/rectm") // 49 등록시간
  420. + "▦" + model.getValue(xHospiceDetlPath + "/inrmmthdcd") // 50 입실방법코드
  421. + "▦" + model.getValue(xHospiceDetlPath + "/inrmacompstcd") // 51 입실시동반자코드
  422. + "▦" + model.getValue(xHospiceDetlPath + "/itrdmoodcd") // 52 소개기분코드
  423. + "▦" + model.getValue(xHospiceDetlPath + "/edcugrdecd") // 53 교육정도코드
  424. + "▦" + model.getValue(xHospiceDetlPath + "/separationfamyyn") // 54 사별가족방문여부
  425. + "▦" + model.getValue(xHospiceDetlPath + "/memodoryn") // 55 추모식행사여부
  426. + "▦" + model.getValue(xHospiceDetlPath + "/mmmassyn") // 56 월미사참석여부
  427. + "▦" + model.getValue(xHospiceDetlPath + "/donatyn") // 57 시신기증여부
  428. + "▦" + model.getValue(xHospiceDetlPath + "/cureprescondspec") // 58 치료현황내역
  429. + "▦" + model.getValue(xHospiceDetlPath + "/cureprescondetcnm") // 59 치료현황기타명
  430. + "▦" + model.getValue(xHospiceDetlPath + "/jobcd") // 59-1 직업코드
  431. + "▦" + model.getValue(xHospiceDetlPath + "/jobnm") // 60 직업명
  432. + "▦" + model.getValue(xHospiceDetlPath + "/ccspec") // 61 C/C내역
  433. + "▦" + model.getValue(xHospiceDetlPath + "/ccetcnm") // 62 C/C기타명
  434. + "▦" + model.getValue(xHospiceDetlPath + "/skinstatyn") // 63 피부상태증상여부
  435. + "▦" + xSkinstatspec // 64 피부상태내역
  436. + "▦" + model.getValue(xHospiceDetlPath + "/emotstatspec") // 65 정서상태내역
  437. + "▦" + model.getValue(xHospiceDetlPath + "/intesympspec") // 66 영적고통내역
  438. + "▦" + model.getValue(xHospiceDetlPath + "/intereqspec") // 67 영적요구내역
  439. + "▦" + chstval // 68 가슴값
  440. + "▦" + pelvval // 69 골반값
  441. + "▦" + regionvas // 70 복부값
  442. + "▦" + neckvas // 71 목값
  443. + "▦" + waistvas // 72 허리값
  444. + "▦" + headval // 73 머리값
  445. + "▦" + etcval // 74 기타값
  446. + "▦" + model.getValue(xHospiceDetlPath + "/etcnm") // 75 기타명
  447. //가계도 데이터 설정
  448. + "▦" + model.getValue(xHospiceDetlPath + "/mapindd") // 76 가계도 등록일자
  449. + "▦" + model.getValue(xHospiceDetlPath + "/deptcd") // 77 등록부서
  450. + "▦" + model.getValue(xHospiceDetlPath + "/docucode") // 78 서식코드
  451. + "▦" + model.getValue(xHospiceDetlPath + "/genogrmnm") // 79 가계도내용
  452. + "▦" + '' // 80 저장할 상태
  453. + "▦" + model.getValue(xHospiceDetlPath + "/recdd") // 81 등록일자
  454. + "▦" + model.getValue(xHospiceDetlPath + "/rectm") // 82 등록시간
  455. + "▦" + model.getValue(xHospiceDetlPath + "/diagcd1") // 83 진단코드1
  456. + "▦" + model.getValue(xHospiceDetlPath + "/diagcd2") // 84 진단코드2
  457. + "▩" ;
  458. //가족사항
  459. var sPafaData =
  460. "pid" //01 등록번호
  461. + "▦cretseqno" //02 생성일련번호
  462. + "▦instcd" //03 병원기관코드
  463. + "▦famyrel" //04 가족관계
  464. + "▦zipcd1" //05 우편번호1
  465. + "▦zipcd2" //06 우편번호2
  466. + "▦zipcdseq" //07 우편번호 순서(일련번호)
  467. + "▦detladdr" //08 상세주소(하위주소)
  468. + "▦famynm" //09 가족이름
  469. + "▦marytypeflag" //10 결혼형태구분
  470. + "▦cntctel" //11 전화번호
  471. + "▦maincarednor" //12 주간호제공자
  472. + "▦cmt" //13 비고
  473. + "▦separationfamyyn" //14 사별가족여부
  474. + "▩" ;
  475. for (i=1;i < grd_famylist.rows; i++ ) {
  476. sPafaData +=
  477. model.getValue(xPafaPath + '[' + i + ']/pid') //01 등록번호
  478. + '▦' + model.getValue(xPafaPath + '[' + i + ']/cretseqno') //02 생성일련번호
  479. + '▦' + model.getValue(xPafaPath + '[' + i + ']/instcd') //03 병원기관코드
  480. + '▦' + model.getValue(xPafaPath + '[' + i + ']/famyrel') //04 가족관계
  481. + '▦' + model.getValue(xPafaPath + '[' + i + ']/zipcd1') //05 우편번호1
  482. + '▦' + model.getValue(xPafaPath + '[' + i + ']/zipcd2') //06 우편번호2
  483. + '▦' + model.getValue(xPafaPath + '[' + i + ']/zipcdseq') //07 우편번호 순서(일련번호)
  484. + '▦' + model.getValue(xPafaPath + '[' + i + ']/detladdr') //08 상세주소(하위주소)
  485. + '▦' + model.getValue(xPafaPath + '[' + i + ']/famynm') //09 가족이름
  486. + '▦' + model.getValue(xPafaPath + '[' + i + ']/marytypeflag') //10 결혼형태구분
  487. + '▦' + model.getValue(xPafaPath + '[' + i + ']/cntctel') //11 전화번호
  488. + '▦' + model.getValue(xPafaPath + '[' + i + ']/maincarednor') //12 주간호제공자
  489. + '▦' + model.getValue(xPafaPath + '[' + i + ']/cmt') //13 비고
  490. + '▦' + model.getValue(xPafaPath + '[' + i + ']/separationfamyyn') //14 사별가족여부
  491. + '▩';
  492. }
  493. //심리사회적 평가
  494. var xMasvPath = "/root/main/hospicemasv/masvdetl/";
  495. var sMasvData =
  496. 'pid' //01 등록번호
  497. + '▦cretdt' //02 생성일자
  498. + '▦reqdeptcd' //02-1 의뢰과
  499. + '▦reqdd' //02-2 의뢰일자
  500. + '▦instcd' //03 병원기관코드
  501. + '▦intvdt' //04 면담일자
  502. + '▦recvintvnm' //05 피면담자명
  503. + '▦intvnm' //06 면담자명
  504. + '▦corpgrntcd' //07 의료보장코드
  505. + '▦soclinsuspec' //08 사회보험내역
  506. + '▦econstatcd' //09 경제상태코드
  507. + '▦econstatspec' //09-1 경제상태내역
  508. + '▦mainincmspec' //10 주 수입원내역
  509. + '▦ordamtownspec' //12 진료비부담자내역
  510. + '▦residncstatcd' //13 주거형태코드
  511. + '▦residncstatspec' //14 주거형태내역
  512. + '▦aidassocnyn' //15 회원회도움여부
  513. + '▦disbefocharspec' //16 병전성격내역
  514. + '▦soclstatpatflag' //17 심리사회적상태환자
  515. + '▦soclstatprocerflag' //18 심리사회적상태보호자
  516. + '▦mainprocerflag' //19 주보호자구분
  517. + '▦suptsysspec' //20 지지체계내역
  518. + '▦nursingstresspec' //21 간병관련스트레스내역
  519. + '▦funrlprepcd' //22 장례준비코드
  520. + '▦funrlprepspec' //23 장례준비내역
  521. + '▦cmt' //24 소견
  522. + '▩' ;
  523. sMasvData +=
  524. model.getValue(xMasvPath + 'pid') //01 등록번호
  525. + '▦' + model.getValue(xMasvPath + 'cretdt') //02 생성일자
  526. + '▦' + model.getValue(xMasvPath + 'reqdeptcd') //02-1 의뢰과
  527. + '▦' + model.getValue(xMasvPath + 'reqdd') //02-2 의뢰일자
  528. + '▦' + model.getValue(xMasvPath + 'instcd') //03 병원기관코드
  529. + '▦' + model.getValue(xMasvPath + 'intvdt') //04 면담일자
  530. + '▦' + model.getValue(xMasvPath + 'recvintvnm') //05 피면담자명
  531. + '▦' + model.getValue(xMasvPath + 'intvnm') //06 면담자명
  532. + '▦' + model.getValue(xMasvPath + 'corpgrntcd') //07 의료보장코드
  533. + '▦' + model.getValue(xMasvPath + 'soclinsuspec') //08 사회보험내역
  534. + '▦' + model.getValue(xMasvPath + 'econstatcd') //09 경제상태코드
  535. + '▦' + model.getValue(xMasvPath + 'econstatspec') //09-1 경제상태내역
  536. + '▦' + model.getValue(xMasvPath + 'mainincmspec') //10 주 수입원내역
  537. + '▦' + model.getValue(xMasvPath + 'ordamtownspec') //12 진료비부담자내역
  538. + '▦' + model.getValue(xMasvPath + 'residncstatcd') //13 주거형태코드
  539. + '▦' + model.getValue(xMasvPath + 'residncstatspec') //14 주거형태내역
  540. + '▦' + model.getValue(xMasvPath + 'aidassocnyn') //15 회원회도움여부
  541. + '▦' + model.getValue(xMasvPath + 'disbefocharspec') //16 병전성격내역
  542. + '▦' + model.getValue(xMasvPath + 'soclstatpatflag') //17 심리사회적상태환자
  543. + '▦' + model.getValue(xMasvPath + 'soclstatprocerflag') //18 심리사회적상태보호자
  544. + '▦' + model.getValue(xMasvPath + 'mainprocerflag') //19 주보호자구분
  545. + '▦' + model.getValue(xMasvPath + 'suptsysspec') //20 지지체계내역
  546. + '▦' + model.getValue(xMasvPath + 'nursingstresspec') //21 간병관련스트레스내역
  547. + '▦' + model.getValue(xMasvPath + 'funrlprepcd') //22 장례준비코드
  548. + '▦' + model.getValue(xMasvPath + 'funrlprepspec') //23 장례준비내역
  549. + '▦' + model.getValue(xMasvPath + 'cmt') //24 소견
  550. + '▩';
  551. model.removenode("/root/send");
  552. model.makeNode("/root/send");
  553. model.makeValue("/root/send/sData" ,sData );
  554. model.makeValue("/root/send/sPafaData" ,sPafaData );
  555. model.makeValue("/root/send/sMasvData" ,sMasvData );
  556. submit("TXMNH01502");
  557. if(checkOpener()){
  558. messageBox("자료 저장이 ","I002");
  559. }else{
  560. model.reset();
  561. model.refresh();
  562. }
  563. }
  564. /**
  565. * @group :
  566. * @ver : 2007.04.23
  567. * @by : 하재륜
  568. * @---------------------------------------------------
  569. * @type : function
  570. * @access : public
  571. * @desc : 화면 로드시
  572. * @param :
  573. * @return : 입력한날짜 + 날자
  574. * @---------------------------------------------------
  575. */
  576. function getAddDay(inputday,addend){
  577. var backDate ="";
  578. var rt = 0;
  579. var yyyy = inputday.substring(0,4) +"";
  580. var mm = inputday.substring(4,6) +"";
  581. var dd = inputday.substring(6,8) +"";
  582. var startDate = new Date(yyyy,(eval(mm)-1),dd);
  583. startDate.setTime(startDate.getTime()+(86400000*addend));
  584. NowYear = startDate.getYear();// 년
  585. NowMonth = startDate.getMonth()+1;// 월
  586. NowDay = startDate.getDate(); // 일
  587. backDate += NowYear ; //년도
  588. if (NowMonth < 10 )
  589. backDate += "0" + NowMonth ;
  590. else
  591. backDate += (startDate.getMonth() + 1);
  592. if (NowDay < 10 )
  593. backDate += "0" + NowDay ;
  594. else
  595. backDate += (startDate.getDate());
  596. return backDate ;
  597. }
  598. /**
  599. * @group :
  600. * @ver : 2007.11.01
  601. * @by : dhkim
  602. * @---------------------------------------------------
  603. * @type : function
  604. * @access : public
  605. * @desc : 호스피스 환자 가계도 팝업 호출해 가계도를 그려서 그 값을 리턴한다.
  606. * @param :
  607. * @param :
  608. * @return : xml instance
  609. * @---------------------------------------------------
  610. */
  611. function fGetFamyMap(){//GENOGRMNM
  612. var stMap = model.getValue(xHospiceDetlPath + '/genogrmnm');//DB에 저장된 가계도 instance를 stMap변수에 담는다.
  613. setParameter("SPMMR04711_shape", stMap); //가계도 팝업을 호출하기 전 parameter를 정의한다.
  614. modal("SPMMR04700", 1,10, 10, "SPMMR04700" ,"/root/temp/strmeta", "/root/send"); //가계도 팝업 호출
  615. return getParameter("SPMMR04711_shape"); //팝업화면에서 가계도를 그린 후의 결과를 리턴
  616. }
  617. /**
  618. * @group :
  619. * @ver : 2007.11.01
  620. * @by : dhkim
  621. * @---------------------------------------------------
  622. * @type : function
  623. * @access : public
  624. * @desc : 입력 및 수정할 데이터를 저장할 instance에 set한다.
  625. * mapindd(recd에
  626. * @param :
  627. * @param :
  628. * @return :
  629. * @---------------------------------------------------
  630. */
  631. function fSetFamyMapValue(popMapRslt){
  632. var pid = model.getValue(xHospiceDetlPath + '/pid'); //db에서 조회해 온 환자등록번호
  633. var sysDate = getCurrentDate(); //현재 날짜
  634. var stDate = model.getValue(xHiddenPath + '/mapindd'); //DB에 저장된 날짜(hidden에서 가져옴)
  635. //팝업에서 확인버튼 누르면 instance에 담아 DB에 저장, 닫기버튼 누르면 적용 안됨.
  636. if(sysDate == stDate){//update
  637. model.setValue(xHospiceDetlPath + '/mapindd', stDate); //indd 등록일자
  638. }else{//insert
  639. model.setValue(xHospiceDetlPath + '/mapindd', sysDate); //indd 등록일자
  640. }
  641. model.setValue(xHospiceDetlPath + '/genogrmnm', popMapRslt); // genogrmnm : 가계도 실지 내용
  642. }