MMR00702.js 54 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447
  1. /**
  2. * MMR00702.js
  3. * SMMMR00702_응급기록JCI.xrw
  4. * 2014.01.22 이윤주
  5. */
  6. /**
  7. * @desc : [item코드목록]
  8. * "0000931001"//주호소
  9. * "0001173001"//현병력
  10. * "0000098001"//과거력
  11. * "0000969001"//통증
  12. * "0000079001"//계통문진
  13. * "0000570001"//신체검진
  14. * "0000553001"//신경학적검사
  15. * "0001019001"//추정진단
  16. * "0022826001"//care plan
  17. * "0013328001"//퇴원계획
  18. * [버튼목록]
  19. * "btn_imge_0001173001" //현병력 이미지버튼
  20. * "btn_etcrec_0001173001" //현병력 추가기록버튼
  21. * "btn_imge_0000098001" //과거력 이미지버튼
  22. * "btn_fmy_0000098001" //과거력 가계도버튼
  23. * "btn_etcrec_0000098001" //과거력 추가기록버튼
  24. * "btn_imge_0000079001" //계통문진 이미지버튼
  25. * "btn_etcrec_0000079001" //계통문진 추가기록버튼
  26. * "btn_imge_0000570001" //신체검진 이미지버튼
  27. * "btn_etcrec_0000570001" //신체검진 추가기록버튼
  28. * "btn_imge_0000553001" //신경학적검사 이미지버튼
  29. * "btn_etcrec_0000553001" //신경학적검사 추가기록버튼
  30. * "btn_etcrec_0001019001" //추정진단 추가기록버튼
  31. * "btn_dsch_0013328001" //퇴원계획 퇴원요구도버튼
  32. */
  33. var gItemCds = new Array(
  34. "0000931001"//주호소
  35. , "0022826001"//care plan
  36. , "0013328001"//퇴원계획
  37. , "0000969001"//통증
  38. , "0001173001"//현병력
  39. , "0000098001"//과거력
  40. , "0000079001"//계통문진
  41. , "0000570001"//신체검진
  42. , "0000553001"//신경학적검사
  43. , "0001019001"//추정진단
  44. );
  45. var gItemCdsTextArea = new Array(
  46. "0000931001"//주호소
  47. , "0001173001"//현병력
  48. , "0000098001"//과거력
  49. , "0000969001"//통증
  50. , "0000079001"//계통문진
  51. , "0000570001"//신체검진
  52. , "0000553001"//신경학적검사
  53. , "0001019001"//추정진단
  54. , "0022826001"//care plan
  55. , "0013328001"//퇴원계획
  56. );
  57. /**
  58. * @desc : 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시를 위한 버튼목록
  59. * @id :
  60. * @authur : 안치원
  61. * @history : 2009.09.09 신규 안치원 ACW_090909A
  62. */
  63. var gExtnBtnIds = new Array(
  64. "btn_imge_0001173001" //현병력 이미지버튼
  65. , "btn_etcrec_0001173001" //현병력 추가기록버튼
  66. , "btn_imge_0000098001" //과거력 이미지버튼
  67. , "btn_fmy_0000098001" //과거력 가계도버튼
  68. , "btn_etcrec_0000098001" //과거력 추가기록버튼
  69. , "btn_imge_0000079001" //계통문진 이미지버튼
  70. , "btn_etcrec_0000079001" //계통문진 추가기록버튼
  71. , "btn_imge_0000570001" //신체검진 이미지버튼
  72. , "btn_etcrec_0000570001" //신체검진 추가기록버튼
  73. , "btn_imge_0000553001" //신경학적검사 이미지버튼
  74. , "btn_etcrec_0000553001" //신경학적검사 추가기록버튼
  75. , "btn_etcrec_0001019001" //추정진단 추가기록버튼
  76. , "btn_dsch_0013328001" //퇴원계획 퇴원요구도버튼
  77. );
  78. var gLoadFormCnts = 0;
  79. // knuh_20110713_추가(신체검진의 triage 정보 조회시 2번 가져오는 부분을 체크하기 위함)
  80. var gImge = "";
  81. /**
  82. * @group :
  83. * @ver : 2008.06.13
  84. * @by : snoweye
  85. * @---------------------------------------------------
  86. * @type : function
  87. * @access : private
  88. * @desc : 화면 로딩후 초기화 작업 수행
  89. * @param :
  90. * @return :
  91. * @---------------------------------------------------
  92. */
  93. function fFormReady()
  94. {
  95. mmbfGetHardCodeInfoNm("/root/send/formhrdcd", "/root/mappingcd/inten", 1009); //의도성
  96. mmbfGetHardCodeInfoNm("/root/send/formhrdcd", "/root/mappingcd/injmech", 1010); //손상기전
  97. mmbfGetHardCodeInfoNm("/root/send/formhrdcd", "/root/mappingcd/proc", 1011); //보호장구
  98. //트리아제 기록 연동데이터 조회(2009-05-21 박종훈)
  99. model.removeNodeset("/root/send/reqdata");
  100. model.makeValue("/root/send/reqdata/pid" , parent.window.javascript.fGetFormRec("pid"));
  101. model.makeValue("/root/send/reqdata/orddd", parent.window.javascript.fGetFormRec("orddd"));
  102. model.makeValue("/root/send/reqdata/cretno", parent.window.javascript.fGetFormRec("cretno"));
  103. model.makeValue("/root/send/reqdata/queryflag", "K");
  104. submit("TRMNE04403");
  105. grup_base.attribute("border-style") = "none";
  106. //섹션사이즈초기화
  107. setSectionSize(gItemCds, 0, 683);
  108. //섹션별 버튼초기화
  109. InitBtnImge(gItemCds);
  110. InitBtnFmy(gItemCds);
  111. InitBtnDiag("0001019001");
  112. InitBtnEtcRec(gItemCds);
  113. //기본 첫번째 부분서식을 로딩해서 보여준다.
  114. dispOnLoadComplete(COMN_FORM);//COMN_FORM : 1
  115. //폼레디 완료 후 MMRCommon.js의 initSection()에서 로딩되지 않은 부분서식 로딩한다.
  116. //loadUnitForm_MMR00701(gItemCds);
  117. //2010.01.21, hkjoo
  118. initCmbExtnList(gItemCds);
  119. }
  120. /**
  121. * @desc : 기록데이터 조회
  122. * @id :
  123. * @event : xforms-ready
  124. * @return : void
  125. * @authur : 박종훈
  126. */
  127. function fLoadData()
  128. {
  129. InitPgmFormData();
  130. InitUnitFormData(gItemCds);
  131. }
  132. /**
  133. * @group :
  134. * @ver : 2008.06.13
  135. * @by : snoweye
  136. * @---------------------------------------------------
  137. * @type : function
  138. * @access : private
  139. * @desc : 부분서식 로딩
  140. * @param :
  141. * @return :
  142. * @---------------------------------------------------
  143. */
  144. function fLoadUnitForm()
  145. {
  146. initSection(gItemCds);
  147. }
  148. /**
  149. * @group :
  150. * @ver : 2008.06.13
  151. * @by : snoweye
  152. * @---------------------------------------------------
  153. * @type : function
  154. * @access : private
  155. * @desc : 부분서식 로딩후 후처리
  156. * @param :
  157. * @return :
  158. * @---------------------------------------------------
  159. */
  160. function fOnLoadComplete()
  161. {
  162. var curLoadFormCd = getParameter("loadformcd");
  163. var nodes = model.instances(0).selectNodes(gPageInfo.forminfoRef + "/unitformmast[formcd='" + curLoadFormCd + "']");
  164. var fstLevlItemCd = "";
  165. //var fstLevlItemCd = model.getValue(gPageInfo.forminfoRef + "/unitformmast[formcd='" + curLoadFormCd + "' and loaded != 'true']/orgsupdegnitemcd");
  166. for (var i=0; i<nodes.length; i++) {
  167. var unitformload = nodes.item(i).selectSingleNode("loaded").text;
  168. if (unitformload != "true") {
  169. fstLevlItemCd = nodes.item(i).selectSingleNode("orgsupdegnitemcd").text;
  170. var ivwObj = document.controls("ivw_" + fstLevlItemCd);
  171. if(ivwObj != null)
  172. {
  173. model.setValue(gPageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='" + fstLevlItemCd + "']/loaded", "true");
  174. setFstLevlItemCdOnUnitForm(ivwObj, nodes.item(i).selectSingleNode("orgsupdegnitemno").text);//부분서식의 아이템에 부분서식 상위코드를 세팅
  175. break;
  176. }
  177. }
  178. }
  179. //주호소 부분서식 로딩후 처리
  180. if(fstLevlItemCd == '0000931001')//주호소
  181. {
  182. fSetSizeFormCC();
  183. //주호소는 미리 셋팅
  184. // fSetCC();
  185. }
  186. //20091216 dhkim
  187. ////진단명 부분서식 로딩후 처리
  188. //if(fstLevlItemCd == '0001019001')//추정진단
  189. // fSetSizeFormDiag();
  190. //부분서식 로딩후 처리
  191. if(
  192. fstLevlItemCd == "0000931001" //주호소
  193. || fstLevlItemCd == "0022826001" //care plan
  194. || fstLevlItemCd == "0013328001" //퇴원계획
  195. )
  196. fSetSizeFormCC(fstLevlItemCd);
  197. gLoadFormCnts++;
  198. if(gItemCds.length == gLoadFormCnts)
  199. {
  200. dispOnLoadComplete(UNIT_FORM);
  201. //서식 로딩 후 포커스 처리
  202. if (parent.window.javascript.fGetFormRec("status") == "C")
  203. {
  204. SetDefFocusMTX(gItemCds);
  205. }
  206. }
  207. }
  208. /**
  209. * @group :
  210. * @ver : 2008.11.28
  211. * @by : jonghun
  212. * @---------------------------------------------------
  213. * @type : function
  214. * @access : private
  215. * @desc : 동일 서식이 떠있을 경우 내부 인스턴스 로딩 후 디폴트 조회내용 조회
  216. * @param :
  217. * @return :
  218. * @---------------------------------------------------
  219. */
  220. function fGetDefData()
  221. {
  222. dispOnLoadComplete(UNIT_FORM);
  223. if (parent.window.javascript.fGetFormRec("status") == "C")
  224. {
  225. // knuh_20110713_추가
  226. //alert("gImge1:" + gImge);
  227. gImge = "";
  228. // //트리아제 기록 연동데이터 조회(2009-05-21 박종훈)
  229. // model.removeNodeset("/root/send/reqdata");
  230. // model.makeValue("/root/send/reqdata/pid" , parent.window.javascript.fGetFormRec("pid"));
  231. // model.makeValue("/root/send/reqdata/orddd", parent.window.javascript.fGetFormRec("orddd"));
  232. // model.makeValue("/root/send/reqdata/cretno", parent.window.javascript.fGetFormRec("cretno"));
  233. // model.makeValue("/root/send/reqdata/queryflag", "K");
  234. //
  235. // if(submit("TRMNE04403"))
  236. // {
  237. // //주호소는 미리 셋팅
  238. // fSetCC();
  239. // var iobj = document.controls("ivw_0001173001");
  240. // var iobj1 = document.controls("ivw_0000570001");
  241. // fSetErTriageRec(iobj, "0001173");
  242. // fSetErTriageRec(iobj1, "0000570");
  243. // }
  244. SetDefFocusMTX(gItemCds);
  245. }
  246. }
  247. /**
  248. * @desc : 서식 주호소 사이즈 조절
  249. * @
  250. * @param :
  251. * @return :
  252. * @---------------------------------------------------
  253. */
  254. function fSetSizeFormCC(gItemCd_MMR00701)
  255. {
  256. //서식 주호소 화면 로딩
  257. if(gItemCd_MMR00701 == "0000931001")
  258. ivw_0000931001.window.javascript.fInitPage(false, parseInt(ivw_0000931001.attribute("height")), parseInt(ivw_0000931001.attribute("width")));
  259. //Care Plan 화면 로딩
  260. else if(gItemCd_MMR00701 == "0022826001")//상용구팝업 hidden
  261. ivw_0022826001.window.javascript.fInitPage(true, parseInt(ivw_0022826001.attribute("height")), parseInt(ivw_0022826001.attribute("width")));
  262. //퇴원계획화면 로딩
  263. else if(gItemCd_MMR00701 == "0013328001")//상용구팝업 visible
  264. ivw_0013328001.window.javascript.fInitPage(false, parseInt(ivw_0013328001.attribute("height")), parseInt(ivw_0013328001.attribute("width")));
  265. }
  266. /**
  267. * @group :
  268. * @ver : 2009.12.04
  269. * @by : dhkim
  270. * @---------------------------------------------------
  271. * @type : function
  272. * @access : private
  273. * @desc : 부분서식 로딩
  274. * (0022826001) Care Plan,
  275. * (0013328001) 퇴원계획,
  276. * @param : gItemCds
  277. * @return :
  278. * @---------------------------------------------------
  279. */
  280. function loadUnitForm_MMR00701(itemCds){
  281. var pageInfo = new PAGEINFO();
  282. copyNodeset("/root/main", "/root/main", "replace", model, parent.model);
  283. model.removeNodeset("/root/main/recinfo");
  284. makeRefByDegnitemno();
  285. for (var i = 0; i < itemCds.length; i++)
  286. {
  287. var formdegnseq = model.getValue(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+itemCds[i]+"']/formdegnseq");
  288. var unitformcd = model.getValue(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+itemCds[i]+"']/formcd");
  289. var ivwObj = document.controls("ivw_" + itemCds[i]);
  290. var tarObj = document.controls("tar_" + itemCds[i]);
  291. if( itemCds[i] == "0022826001" //care plan
  292. || itemCds[i] == "0013328001" //퇴원계획
  293. ){
  294. ivwObj.visible = true;
  295. tarObj.visible = false;
  296. var unitformprogflag = model.getValue(pageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+itemCds[i]+"']/formprogflag");
  297. ivwObj.attribute("supdegnitemcd") = itemCds[i];
  298. ivwObj.attribute("unitformcd") = unitformcd;
  299. model.addLog(unitformcd + " Loading 시작 : " + getCurrentTime());
  300. loadUnitForm(ivwObj, itemCds[i]);
  301. model.addLog(unitformcd + " Loading 끝 : " + getCurrentTime());
  302. }
  303. }
  304. }
  305. /**
  306. * @desc : care plan ivw 확대
  307. * @
  308. * @param :
  309. * @return :
  310. * @authur : dhkim
  311. */
  312. function expandSection_MMR00701(){
  313. var ctrlID = event.target;
  314. var itemcd = ctrlID.replace("lbl_", "");
  315. var bFold = itemcd == gMaxSectionID ? true : false;
  316. var ctrl = null;
  317. var unitformcd = "";
  318. var itemCds = gItemCds;
  319. for (var i = 0; i < itemCds.length; i++)
  320. {
  321. var secCtrl = document.controls("lbl_" + itemCds[i]);
  322. var formdegnseq = model.getValue(gPageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+itemCds[i]+"']/formdegnseq");
  323. unitformcd = model.getValue(gPageInfo.forminfoRef + "/unitformmast[orgsupdegnitemcd='"+itemCds[i]+"']/formcd");
  324. if(formdegnseq == "")
  325. ctrl = document.controls("tar_" + itemCds[i]);
  326. else
  327. ctrl = document.controls("ivw_" + itemCds[i]);
  328. //20100106 dhkim ivw 축소/확장
  329. if(itemcd == itemCds[i]){
  330. if(bFold){
  331. ctrl.attribute("height") = gMaxSectionHei;
  332. if (unitformcd == "0900006875")//care plan 상용구 hidden
  333. {
  334. ctrl.window.javascript.fInitPage(true, parseInt(gMaxSectionHei), parseInt(ctrl.attribute("width")));
  335. }else{
  336. ctrl.window.javascript.fInitPage(false, parseInt(gMaxSectionHei), parseInt(ctrl.attribute("width")));
  337. }
  338. }else{
  339. ctrl.attribute("height") = ctrl.attribute("orgheight");
  340. if (unitformcd == "0900006875")//care plan 상용구 hidden
  341. {
  342. ctrl.window.javascript.fInitPage(true, parseInt(ctrl.attribute("orgheight")), parseInt(ctrl.attribute("width")));
  343. }else{
  344. ctrl.window.javascript.fInitPage(false, parseInt(ctrl.attribute("orgheight")), parseInt(ctrl.attribute("width")));
  345. }
  346. }
  347. }
  348. /*
  349. if (unitformcd == "0900006875")//care plan
  350. {
  351. ctrl.window.javascript.fInitPage(false, parseInt(ctrl.attribute("height")), parseInt(ctrl.attribute("width")));
  352. }
  353. */
  354. }
  355. }
  356. /**
  357. * @group :
  358. * @ver : 2009.10.09
  359. * @by :
  360. * @---------------------------------------------------
  361. * @type : function
  362. * @access : private
  363. * @desc :
  364. * @param :
  365. * @return :
  366. * @---------------------------------------------------
  367. */
  368. function setInterfaceData()
  369. {
  370. var ifItemCds = new Array(
  371. "0000931001"//주호소
  372. , "0001173001"//현병력
  373. , "0000098001"//과거력
  374. , "0000969001"//통증
  375. , "0000079001"//계통문진
  376. , "0000570001"//신체검진
  377. , "0000553001"//신경학적검사
  378. , "0001019001"//추정진단
  379. , "0022826001"//care plan
  380. , "0013328001"//퇴원계획
  381. );
  382. copyNodeset(gPageInfo.recItemRef2, "/root/main/recifinfo/recitem", "replace", model, parent.model);
  383. setSrchData(gPageInfo.recItemRef2 , window);
  384. InitUnitFormData(ifItemCds);
  385. setButtonToggleAllByRecYn(window, gExtnBtnIds);
  386. }
  387. /**
  388. * @desc : 서식 데이터 Clear
  389. * @
  390. * @param :
  391. * @return :
  392. * @authur : 박종훈
  393. */
  394. function fClearComnFormData()
  395. {
  396. if (gMaxSectionID != "")
  397. {
  398. var MaxObj = document.controls("lbl_" + gMaxSectionID);
  399. MaxObj.dispatch("onclick");
  400. }
  401. ClearComnFormData(gItemCds);
  402. clearData();
  403. //포커스 처리
  404. SetDefFocusMTX(gItemCds);
  405. }
  406. /**
  407. * @desc : 기록 인스턴스 연결
  408. * @
  409. * @param :
  410. * @return :
  411. * @authur : 박종훈
  412. */
  413. function fSetRecItemValue(reciteminfo)
  414. {
  415. return SetCommMediFormValue(gItemCds, reciteminfo);
  416. }
  417. /**
  418. * @desc : 저장전 체크 로직
  419. * @id :
  420. * @event : xforms-ready
  421. * @return : void
  422. * @authur : 박종훈
  423. */
  424. //function fChkPreSave()
  425. //{
  426. // return ivw_0000931001.window.javascript.fChkGrdPreSave();
  427. //}
  428. /**
  429. * @desc : 저장전 체크 로직
  430. (주호소, care plan, 퇴원계획)필수체크
  431. "0000931001"//주호소
  432. "0022826001"//Care Plan
  433. "0013328001"//퇴원계획
  434. * @id :
  435. * @event : xforms-ready
  436. * @return : void
  437. * @authur : 2010.01.06 dhkim
  438. */
  439. function fChkPreSave()
  440. {
  441. var rtnVal = ivw_0000931001.window.javascript.fChkGrdPreSave();//주호소 필수체크
  442. if(rtnVal == true){
  443. //2010.01.15 안치원 - 통증기록 필수입력 체크
  444. if (isNull(ivw_0000969001.src) == false) {
  445. // debugger;
  446. var isValid = true;
  447. var degnitemnm = null;
  448. var itemval_vas = new ITEMVAL();
  449. //통증
  450. var degnitemlevlcd = "0000969.0000969";
  451. var itemval_pain = ivw_0000969001.window.javascript.getFormItemValue(degnitemlevlcd);
  452. if (itemval_pain.rectermcd == "0002277001") {
  453. //무
  454. //통증점수 제거
  455. ivw_0000969001.window.javascript.setFormItemValue("0000969.0001099", itemval_vas);
  456. } else if (itemval_pain.rectermcd == "0003770001") {
  457. //유
  458. //통증 점수
  459. degnitemlevlcd = "0000969.0001099";
  460. itemval_vas = ivw_0000969001.window.javascript.getFormItemValue(degnitemlevlcd);
  461. if (itemval_vas.rectermcd == "") {
  462. degnitemnm = "통증 점수"
  463. isValid = false;
  464. } else if (parseInt(itemval_vas.rectermnm) >= 4) {
  465. //통증점수 4이상일때 필수입력
  466. //부위
  467. degnitemlevlcd = "0000969.0000360";
  468. isValid = ! fIsNullValue_MMR007001(degnitemlevlcd, "cnts");
  469. //양상
  470. if (isValid) {
  471. degnitemlevlcd = "0000969.0001952";
  472. var cnt = getNodesetCnt(ivw_0000969001.window.model, "/root/main/recinfo/recitem[degnitemlevlcd = '"+degnitemlevlcd+"' and rectermcd != '']");
  473. if (cnt == 0) {
  474. isValid = false;
  475. }
  476. }
  477. //기간
  478. if (isValid) {
  479. degnitemlevlcd = "0000969.0000951";
  480. isValid = ! fIsNullValue_MMR007001(degnitemlevlcd, "cnts");
  481. }
  482. //빈도
  483. if (isValid) {
  484. degnitemlevlcd = "0000969.0000393";
  485. isValid = ! fIsNullValue_MMR007001(degnitemlevlcd, "cd");
  486. }
  487. }
  488. } else if (itemval_pain.rectermcd == "0022237001") {
  489. //확인불가
  490. degnitemlevlcd = "0000969.0000969";
  491. itemval_vas = ivw_0000969001.window.javascript.getFormItemValue(degnitemlevlcd);
  492. if (itemval_vas.reccnts == "") {
  493. degnitemnm = "확인불가의 상세내역"
  494. isValid = false;
  495. }
  496. //통증점수 제거
  497. //ivw_0000969001.window.javascript.setFormItemValue("0000969.0001099", itemval_vas);
  498. } else {
  499. isValid = false;
  500. }
  501. if (isValid == false) {
  502. if (degnitemnm == null) {
  503. var node = ivw_0000969001.window.model.instance1.selectSingleNode("/root/main/recinfo/recitem[degnitemlevlcd = '"+degnitemlevlcd+"']/degnitemnm");
  504. degnitemnm = node.text;
  505. }
  506. messageBox("필수 입력항목(통증-" + degnitemnm + ")이 입력되지", "E007");
  507. return isValid;
  508. }
  509. }
  510. //care plan 필수체크
  511. var pageInfo = new PAGEINFO();
  512. var itemNm = model.instances(0).selectSingleNode(pageInfo.formdegnRef + "[degnitemcd = '0022826001']").getXPathString("itemnm");
  513. //var rtnVal = ivw_0022826001.window.javascript.fChkGrdPreSave(itemNm);
  514. var rtnVal = true;
  515. if(rtnVal == false){
  516. return rtnVal;
  517. }else{
  518. itemNm = model.instances(0).selectSingleNode(pageInfo.formdegnRef + "[degnitemcd = '0013328001']").getXPathString("itemnm");
  519. return ivw_0013328001.window.javascript.fChkGrdPreSave(itemNm);
  520. }
  521. }else{
  522. return rtnVal;
  523. }
  524. }
  525. function fIsNullValue_MMR007001(degnitemlevlcd, field) {
  526. var itemval_vas = ivw_0000969001.window.javascript.getFormItemValue(degnitemlevlcd);
  527. var val = "";
  528. if (field == "cd") {
  529. val = itemval_vas.rectermcd;
  530. } else if (field == "cnts") {
  531. val = itemval_vas.reccnts;
  532. }
  533. return isNull(val);
  534. }
  535. /**
  536. * @group :
  537. * @ver : 2008.09.02
  538. * @by : jonghun
  539. * @---------------------------------------------------
  540. * @type : function
  541. * @access : private
  542. * @desc : 추가기록창 팝업처리
  543. * @param :
  544. * @return :
  545. * @---------------------------------------------------
  546. */
  547. function fEtcRec()
  548. {
  549. //setParameter("etc_rec", "추가 기타기록 테스트입니다...");
  550. modal("SPMMR06100");
  551. var recrtn = getParameter("etcrec_rtn");
  552. if (recrtn != "")
  553. {
  554. model.setValue("/root/main/recinfo/recitem[degnitemlevlcd='0000098.0008458']/reccnts", recrtn);
  555. setParameter("etc_rec", recrtn);
  556. }
  557. //alert(recrtn);
  558. }
  559. /**
  560. * @desc : 서식 진단명 사이즈 조절
  561. * @
  562. * @param :
  563. * @return :
  564. * @---------------------------------------------------
  565. */
  566. function fSetSizeFormDiag()
  567. {
  568. ivw_0001019001.window.javascript.fInitPage(false, parseInt(ivw_0001019001.attribute("height")), parseInt(ivw_0001019001.attribute("width")));
  569. }
  570. /**
  571. * @group :
  572. * @ver : 2008.11.28
  573. * @by : jonghun
  574. * @---------------------------------------------------
  575. * @type : function
  576. * @access : private
  577. * @desc : 주호소 트리아제 연동
  578. * @param :
  579. * @return :
  580. * @---------------------------------------------------
  581. */
  582. function fSetCC()
  583. {
  584. model.removeNodeset("/root/ccrectmp/recitem");
  585. var attackdd = model.getValue("/root/interface/ertriage/ertriage/attackdd"); //발생일
  586. var attacktm = model.getValue("/root/interface/ertriage/ertriage/attacktm"); //발생시간
  587. var mainsympnm = model.getValue("/root/interface/ertriage/ertriage/mainsympnm"); //주증상
  588. var mainsympcd = model.getValue("/root/interface/ertriage/ertriage/mainsympcd"); //주증상코드
  589. var mainsympnm1 = model.getValue("/root/interface/ertriage/ertriage/mainsympnm1"); //주증상1
  590. var mainsympcd1 = model.getValue("/root/interface/ertriage/ertriage/mainsympcd1"); //주증상코드1
  591. var mainsympnm2 = model.getValue("/root/interface/ertriage/ertriage/mainsympnm2"); //주증상2
  592. var mainsympcd2 = model.getValue("/root/interface/ertriage/ertriage/mainsympcd2"); //주증상코드2
  593. var etcsymp = model.getValue("/root/interface/ertriage/ertriage/etcsymp"); //기타증상
  594. var i = 1;
  595. if (mainsympnm != "")
  596. {
  597. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  598. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  599. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  600. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  601. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formcd");
  602. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  603. model.makeNode("/root/ccrectmp/recitem[" + i + "]/degnitemno");
  604. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000931001");
  605. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931");
  606. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rectermcd");
  607. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  608. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  609. model.makeNode("/root/ccrectmp/recitem[" + i + "]/reccnts");
  610. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  611. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "MTX");
  612. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "주호소");
  613. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "1");
  614. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rectermnm");
  615. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rowno");
  616. model.makeNode("/root/ccrectmp/recitem[" + i + "]/colno");
  617. i++;
  618. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  619. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  620. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  621. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  622. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  623. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  624. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "1");
  625. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000931001");
  626. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931");
  627. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rectermcd");
  628. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  629. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  630. model.makeNode("/root/ccrectmp/recitem[" + i + "]/reccnts");
  631. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  632. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GRD");
  633. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "주호소");
  634. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "2");
  635. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rectermnm");
  636. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 0);
  637. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", -1);
  638. i++;
  639. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  640. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  641. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  642. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  643. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  644. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  645. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "5");
  646. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000931001");
  647. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000931");
  648. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", mainsympcd);
  649. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  650. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  651. model.makeNode("/root/ccrectmp/recitem[" + i + "]/reccnts");
  652. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  653. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  654. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "주호소");
  655. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  656. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", mainsympnm);
  657. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 0);
  658. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 0);
  659. i++;
  660. if (attackdd != "")
  661. {
  662. attackdd = attackdd.substr(0, 4) + "-" + attackdd.substr(4, 2) + "-" + attackdd.substr(6, 2);
  663. if (attacktm != "")
  664. {
  665. attacktm = attacktm.substr(0, 2) + ":" + attacktm.substr(2, 2);
  666. }
  667. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  668. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  669. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  670. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  671. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  672. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  673. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "10");
  674. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000299002");
  675. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000299");
  676. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", "");
  677. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  678. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  679. model.makeValue("/root/ccrectmp/recitem[" + i + "]/reccnts", attackdd + " " + attacktm);
  680. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  681. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  682. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "발생일");
  683. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  684. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", "");
  685. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 0);
  686. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 2);
  687. i++;
  688. }
  689. }
  690. if (mainsympnm1 != "")
  691. {
  692. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  693. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  694. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  695. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  696. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  697. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  698. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "5");
  699. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000931001");
  700. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000931");
  701. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", mainsympcd1);
  702. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  703. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  704. model.makeNode("/root/ccrectmp/recitem[" + i + "]/reccnts");
  705. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  706. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  707. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "주호소");
  708. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  709. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", mainsympnm1);
  710. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 1);
  711. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 0);
  712. i++;
  713. if (attackdd != "")
  714. {
  715. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  716. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  717. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  718. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  719. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  720. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  721. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "10");
  722. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000299002");
  723. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000299");
  724. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", "");
  725. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  726. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  727. model.makeValue("/root/ccrectmp/recitem[" + i + "]/reccnts", attackdd + " " + attacktm);
  728. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  729. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  730. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "발생일");
  731. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  732. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", "");
  733. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 1);
  734. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 2);
  735. i++;
  736. }
  737. }
  738. if (mainsympnm2 != "")
  739. {
  740. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  741. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  742. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  743. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  744. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  745. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  746. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "5");
  747. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000931001");
  748. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000931");
  749. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", mainsympcd2);
  750. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  751. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  752. model.makeNode("/root/ccrectmp/recitem[" + i + "]/reccnts");
  753. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  754. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  755. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "주호소");
  756. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  757. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", mainsympnm2);
  758. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 2);
  759. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 0);
  760. i++;
  761. if (attackdd != "")
  762. {
  763. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  764. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  765. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  766. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  767. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  768. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  769. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "10");
  770. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000299002");
  771. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000299");
  772. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", "");
  773. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  774. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  775. model.makeValue("/root/ccrectmp/recitem[" + i + "]/reccnts", attackdd + " " + attacktm);
  776. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  777. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  778. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "발생일");
  779. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  780. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", "");
  781. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 2);
  782. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 2);
  783. i++;
  784. }
  785. }
  786. if (etcsymp != "")
  787. {
  788. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  789. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  790. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  791. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  792. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  793. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  794. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "5");
  795. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000931001");
  796. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000931");
  797. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", "-");
  798. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  799. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  800. model.makeNode("/root/ccrectmp/recitem[" + i + "]/reccnts");
  801. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  802. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  803. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "주호소");
  804. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  805. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", etcsymp);
  806. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 3);
  807. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 0);
  808. i++;
  809. if (attackdd != "")
  810. {
  811. model.makeNode("/root/ccrectmp/recitem[" + i + "]");
  812. model.makeValue("/root/ccrectmp/recitem[" + i + "]/instcd", getUserInfo("dutplceinstcd"));
  813. model.makeNode("/root/ccrectmp/recitem[" + i + "]/rechistseq");
  814. model.makeValue("/root/ccrectmp/recitem[" + i + "]/fstlevlitemcd", "0000931001");
  815. model.makeValue("/root/ccrectmp/recitem[" + i + "]/formcd", "0000000901");
  816. model.makeNode("/root/ccrectmp/recitem[" + i + "]/formdegnseq");
  817. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemno", "10");
  818. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemcd", "0000299002");
  819. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlcd", "0000931.0000931.0000299");
  820. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermcd", "");
  821. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recrefcd");
  822. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recitemnm");
  823. model.makeValue("/root/ccrectmp/recitem[" + i + "]/reccnts", attackdd + " " + attacktm);
  824. model.makeNode("/root/ccrectmp/recitem[" + i + "]/recimge");
  825. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemkind", "GSU");
  826. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemnm", "발생일");
  827. model.makeValue("/root/ccrectmp/recitem[" + i + "]/degnitemlevlno", "3");
  828. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rectermnm", "");
  829. model.makeValue("/root/ccrectmp/recitem[" + i + "]/rowno", 3);
  830. model.makeValue("/root/ccrectmp/recitem[" + i + "]/colno", 2);
  831. i++;
  832. }
  833. }
  834. var nodeList = model.instances(0).selectNodes("/root/ccrectmp/recitem");
  835. ivw_0000931001.window.javascript.clearData();
  836. if (nodeList.length > 0)
  837. {
  838. setSrchData("/root/ccrectmp/recitem", ivw_0000931001);
  839. ivw_0000931001.window.javascript.fAddrow();
  840. }
  841. }
  842. function fSetErTriageRec(ivwObj, levlcd, ImgeYN)
  843. {
  844. // if (parent.window.javascript.fGetFormRec("status") != "C")
  845. // {
  846. // return;
  847. // }
  848. //현병력
  849. if (ivwObj.attribute("id") == "ivw_0001173001" && ivwObj.src != "")
  850. {
  851. //의도성
  852. var itemVal = new ITEMVAL();
  853. var intenflag = model.getValue("/root/interface/ertriage/ertriage/intenflag"); //의도성코드
  854. if (intenflag != "" && intenflag != "-")
  855. {
  856. var intntermcd = model.getValue("/root/mappingcd/inten/hardcd[hardcd = '" + intenflag + "']/hardcdnm");
  857. var intntermnm = ivwObj.model.getValue("/root/main/forminfo/vallist[grupcd = '0001775002' and valcd = '" + intntermcd + "']/valitemnm");
  858. itemVal.rectermcd = intntermcd;
  859. itemVal.rectermnm = intntermnm;
  860. if (levlcd != null)
  861. {
  862. ivwObj.window.javascript.setFormItemValue(levlcd + ".0001667", itemVal, true);
  863. }
  864. else
  865. {
  866. ivwObj.window.javascript.setFormItemValue("0001667", itemVal, true);
  867. }
  868. }
  869. //손상기전
  870. var itemVal1 = new ITEMVAL();
  871. var injmechflag = model.getValue("/root/interface/ertriage/ertriage/injmechflag"); //손상기전코드
  872. if (injmechflag != "" && injmechflag != "-")
  873. {
  874. var injmechcd = model.getValue("/root/mappingcd/injmech/hardcd[hardcd = '" + injmechflag + "']/hardcdnm");
  875. var injmechnm = ivwObj.model.getValue("/root/main/forminfo/vallist[grupcd = '0001776002' and valcd = '" + injmechcd + "']/valitemnm");
  876. itemVal1.rectermcd = injmechcd;
  877. itemVal1.rectermnm = injmechnm;
  878. if (levlcd != null)
  879. {
  880. ivwObj.window.javascript.setFormItemValue(levlcd + ".0020479", itemVal1, true);
  881. }
  882. else
  883. {
  884. ivwObj.window.javascript.setFormItemValue("0020479", itemVal1, true);
  885. }
  886. }
  887. //보호장구
  888. var itemVal2 = new ITEMVAL();
  889. var proceqmtflag = model.getValue("/root/interface/ertriage/ertriage/proceqmtflag"); //보호장구
  890. if (proceqmtflag != "" && proceqmtflag != "-")
  891. {
  892. var arrProceqmtflag = proceqmtflag.split("|")
  893. if (arrProceqmtflag.length > 0)
  894. {
  895. var proceqmtcd = "";
  896. var proceqmtnm = "";
  897. var compproceqmtflag = "";
  898. var tmpProceqmtflag = "";
  899. var tmpProceqmtnm = "";
  900. for (var i = 0; i < arrProceqmtflag.length; i++)
  901. {
  902. tmpProceqmtcd = model.getValue("/root/mappingcd/proc/hardcd[hardcd = '" + arrProceqmtflag[i] + "']/hardcdnm");
  903. tmpProceqmtnm = ivwObj.model.getValue("/root/main/forminfo/vallist[grupcd = '0001774002' and valcd = '" + tmpProceqmtcd + "']/valitemnm");
  904. proceqmtcd += tmpProceqmtcd + " ";
  905. proceqmtnm += tmpProceqmtnm + "▦";
  906. }
  907. itemVal2.rectermcd = proceqmtcd.substring(0, proceqmtcd.length - 1);
  908. itemVal2.rectermnm = proceqmtnm.substring(0, proceqmtnm.length - 1);
  909. if (levlcd != null)
  910. {
  911. ivwObj.window.javascript.setFormItemValue(levlcd + ".0020478", itemVal2, true);
  912. }
  913. else
  914. {
  915. ivwObj.window.javascript.setFormItemValue("0020478", itemVal2, true);
  916. }
  917. }
  918. }
  919. //2010.05.10 김달현 추가
  920. //내원사유(M0120)
  921. var itemVal3 = new ITEMVAL();
  922. var chosresnflag = model.getValue("/root/interface/ertriage/ertriage/chosresnflag");
  923. var chosresncd, chosresnnm;
  924. if(chosresnflag == "1"){//질병
  925. chosresncd = "0003034001";
  926. }else if(chosresnflag == "2"){//질병외
  927. chosresncd = "0038976001";
  928. }else if(chosresnflag == "3"){//진료외방문
  929. chosresncd = "0038977001";
  930. }else if(chosresnflag == "9"){//미상
  931. chosresncd = "0017158001";
  932. }
  933. chosresnnm = ivwObj.window.javascript.model.getValue("/root/main/forminfo/vallist[valcd='"+chosresncd+"']/valitemnm");
  934. if(chosresnflag != null && chosresnflag != ""){
  935. itemVal3.rectermcd = chosresncd;
  936. itemVal3.rectermnm = chosresnnm;
  937. if (levlcd != null)
  938. {
  939. ivwObj.window.javascript.setFormItemValue(levlcd + ".0019376", itemVal3, true);
  940. }
  941. else
  942. {
  943. ivwObj.window.javascript.setFormItemValue("0019376", itemVal3, true);
  944. }
  945. }
  946. //2010.05.10 김달현 추가
  947. //내원수단(M0119)
  948. var itemVal4 = new ITEMVAL();
  949. var choswayflag = model.getValue("/root/interface/ertriage/ertriage/choswayflag");
  950. var choswaycd, choswaynm;
  951. if(choswayflag == "1"){//119 구급차
  952. choswaycd = "0035600001";
  953. }else if(choswayflag == "2"){//병원구급차
  954. choswaycd = "0038986001";
  955. }else if(choswayflag == "3"){//기타구급차
  956. choswaycd = "0035601001";
  957. }else if(choswayflag == "4"){//경찰차 등 공공차량
  958. choswaycd = "0038978001";
  959. }else if(choswayflag == "5"){//항공이송
  960. choswaycd = "0038983001";
  961. }else if(choswayflag == "6"){//기타 자동차
  962. choswaycd = "0038984001";
  963. }else if(choswayflag == "7"){//도보
  964. choswaycd = "0002199001";
  965. }else if(choswayflag == "8"){//기타
  966. choswaycd = "0002141001";
  967. }else if(choswayflag == "9"){//미상
  968. choswaycd = "0017158001";
  969. }
  970. choswaynm = ivwObj.window.javascript.model.getValue("/root/main/forminfo/vallist[valcd='"+choswaycd+"']/valitemnm");
  971. if(choswayflag != null && choswayflag != ""){
  972. itemVal4.rectermcd = choswaycd;
  973. itemVal4.rectermnm = choswaynm;
  974. if (levlcd != null)
  975. {
  976. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000169", itemVal4, true);
  977. }
  978. else
  979. {
  980. ivwObj.window.javascript.setFormItemValue("0000169", itemVal4, true);
  981. }
  982. }
  983. //2010.05.10 김달현 추가
  984. //내원경로(M0118)
  985. var itemVal5 = new ITEMVAL();
  986. var chospathflag = model.getValue("/root/interface/ertriage/ertriage/chospathflag");
  987. var chospathcd, chospathnm;
  988. if(chospathflag == "1"){//직접내원
  989. chospathcd = "0000374001";
  990. }else if(chospathflag == "2"){//외부에서 전원
  991. chospathcd = "0038982001";
  992. }else if(chospathflag == "3"){//외래에서 의뢰
  993. chospathcd = "0038987001";
  994. }else if(chospathflag == "8"){//기타
  995. chospathcd = "0002141001";
  996. }else if(chospathflag == "9"){//미상
  997. chospathcd = "0017158001";
  998. }
  999. chospathnm = ivwObj.window.javascript.model.getValue("/root/main/forminfo/vallist[valcd='"+chospathcd+"']/valitemnm");
  1000. if(chospathflag != null && chospathflag != ""){
  1001. itemVal5.rectermcd = chospathcd;
  1002. itemVal5.rectermnm = chospathnm;
  1003. if (levlcd != null)
  1004. {
  1005. ivwObj.window.javascript.setFormItemValue(levlcd + ".0023492", itemVal5, true);
  1006. }
  1007. else
  1008. {
  1009. ivwObj.window.javascript.setFormItemValue("0023492", itemVal5, true);
  1010. }
  1011. }
  1012. }
  1013. //신체검진
  1014. if (ivwObj.attribute("id") == "ivw_0000570001" && ivwObj.src != "")
  1015. {
  1016. //분당맥박수
  1017. var itemVal = new ITEMVAL();
  1018. var mntpulsecnt = model.getValue("/root/interface/ertriage/ertriage/mntpulsecnt");
  1019. itemVal.reccnts = mntpulsecnt;
  1020. if (levlcd != null)
  1021. {
  1022. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000879.0001221.0000258", itemVal, true);
  1023. }
  1024. else
  1025. {
  1026. ivwObj.window.javascript.setFormItemValue("0000879.0001221.0000258", itemVal, true);
  1027. }
  1028. //분당호흡수
  1029. itemVal = new ITEMVAL();
  1030. var mntbrethcnt = model.getValue("/root/interface/ertriage/ertriage/mntbrethcnt");
  1031. itemVal.reccnts = mntbrethcnt;
  1032. if (levlcd != null)
  1033. {
  1034. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000879.0001221.0000993", itemVal, true);
  1035. }
  1036. else
  1037. {
  1038. ivwObj.window.javascript.setFormItemValue("0000879.0001221.0000993", itemVal, true);
  1039. }
  1040. //내원시체온
  1041. itemVal = new ITEMVAL();
  1042. var chosbdtp = model.getValue("/root/interface/ertriage/ertriage/chosbdtp");
  1043. itemVal.reccnts = chosbdtp;
  1044. if (levlcd != null)
  1045. {
  1046. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000879.0001221.0000992", itemVal, true);
  1047. }
  1048. else
  1049. {
  1050. ivwObj.window.javascript.setFormItemValue("0000879.0001221.0000992", itemVal, true);
  1051. }
  1052. //수축기혈압
  1053. itemVal = new ITEMVAL();
  1054. var highbp = model.getValue("/root/interface/ertriage/ertriage/highbp");
  1055. itemVal.reccnts = highbp;
  1056. if (levlcd != null)
  1057. {
  1058. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000879.0001221.0001180.0000525", itemVal, true);
  1059. }
  1060. else
  1061. {
  1062. ivwObj.window.javascript.setFormItemValue("0000879.0001221.0001180.0000525", itemVal, true);
  1063. }
  1064. //이완기혈압
  1065. itemVal = new ITEMVAL();
  1066. var lowbp = model.getValue("/root/interface/ertriage/ertriage/lowbp");
  1067. itemVal.reccnts = lowbp;
  1068. if (levlcd != null)
  1069. {
  1070. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000879.0001221.0001180.0000791", itemVal, true);
  1071. }
  1072. else
  1073. {
  1074. ivwObj.window.javascript.setFormItemValue("0000879.0001221.0001180.0000791", itemVal, true);
  1075. }
  1076. //산소포화도
  1077. itemVal = new ITEMVAL();
  1078. var oxyconcen = model.getValue("/root/interface/ertriage/ertriage/oxyconcen");
  1079. itemVal.reccnts = oxyconcen;
  1080. if (levlcd != null)
  1081. {
  1082. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000879.0001221.0005957", itemVal, true);
  1083. }
  1084. else
  1085. {
  1086. ivwObj.window.javascript.setFormItemValue("0000879.0001221.0005957", itemVal, true);
  1087. }
  1088. //2010.05.10 김달현 추가
  1089. //의식(AVPU Scale)
  1090. itemVal = new ITEMVAL();
  1091. var cscsflag = model.getValue("/root/interface/ertriage/ertriage/cscsflag");
  1092. var cscscd, cscsnm;
  1093. if(cscsflag == "A"){//Alert
  1094. cscscd = "0000544";
  1095. }else if(cscsflag == "V"){//Verbal response
  1096. cscscd = "0014272";
  1097. }else if(cscsflag == "P"){//Painful response
  1098. cscscd = "0015321";
  1099. }else if(cscsflag == "U"){//Unresponsive
  1100. cscscd = "0038958";
  1101. }
  1102. cscsnm = ivwObj.window.javascript.model.getValue("/root/main/forminfo/vallist[valcd='" + cscscd + "']/valitemnm");
  1103. if(cscscd != null && cscscd != ""){
  1104. itemVal.rectermcd = cscscd;
  1105. itemVal.rectermnm = cscsnm;
  1106. if(levlcd != null){
  1107. ivwObj.window.javascript.setFormItemValue(levlcd + ".0000900.0000898.0023476", itemVal, true);
  1108. }else{
  1109. ivwObj.window.javascript.setFormItemValue("0000900.0000898.0023476", itemVal, true);
  1110. }
  1111. }
  1112. }
  1113. // knuh_20110708_추가_text박스인 경우는 내용으로 셋팅하기 위함.
  1114. // 신체검진에서 가져와야 되는 항목 : 내원수단, 의식, VS(수축기혈압, 이완기혈압, 분당맥박수, 분당호흡수, 내원시 체온)
  1115. else if (ivwObj.attribute("id") == "ivw_0000570001" && ivwObj.src == "")
  1116. {
  1117. var pid = "";
  1118. var choswayflagnm = ""; // 내원수단
  1119. var cscsflagnm = ""; // 의식
  1120. var highbp = ""; // 수축기혈압
  1121. var lowbp = ""; // 이완기혈압
  1122. var mntpulsecnt = ""; // 분당맥박수
  1123. var mntbrethcnt = ""; // 분당호흡수
  1124. var chosbdtp = ""; // 내원시 체온
  1125. // triage 내용
  1126. var reccnts_old = "";
  1127. var reccnts = "";
  1128. // triage 정보 2번 가져오는 부분 체크(신규일때 현병력 화면 크기 조절시)
  1129. //alert(ImgeYN);
  1130. if (ImgeYN == "Y")
  1131. {
  1132. reccnts_old = model.getValue("/root/main/recinfo/recitem[fstlevlitemcd='0000570001']/reccnts");
  1133. if (reccnts_old != "")
  1134. {
  1135. reccnts_old = reccnts_old + "\n" + "\n";
  1136. }
  1137. pid = model.getValue("/root/interface/ertriage/ertriage/pid");
  1138. if (pid == "")
  1139. {
  1140. // messageBox("Triage 기록이 작성되지", "E007");
  1141. }
  1142. else
  1143. {
  1144. choswayflagnm = model.getValue("/root/interface/ertriage/ertriage/choswayflagnm");
  1145. cscsflagnm = model.getValue("/root/interface/ertriage/ertriage/cscsflagnm");
  1146. highbp = model.getValue("/root/interface/ertriage/ertriage/highbp");
  1147. lowbp = model.getValue("/root/interface/ertriage/ertriage/lowbp");
  1148. mntpulsecnt = model.getValue("/root/interface/ertriage/ertriage/mntpulsecnt");
  1149. mntbrethcnt = model.getValue("/root/interface/ertriage/ertriage/mntbrethcnt");
  1150. chosbdtp = model.getValue("/root/interface/ertriage/ertriage/chosbdtp");
  1151. reccnts = reccnts_old +
  1152. "내원수단 : " + choswayflagnm + "\n" +
  1153. "의식 : " + cscsflagnm + "\n" +
  1154. "수축기혈압 : " + highbp + "\n" +
  1155. "이완기혈압 : " + lowbp + "\n" +
  1156. "분당맥박수 : " + mntpulsecnt + "\n" +
  1157. "분당호흡수 : " + mntbrethcnt + "\n" +
  1158. "내원시 체온 : " + chosbdtp;
  1159. //alert(recrtn);
  1160. //alert(model.getValue("/root/main/recinfo/recitem[fstlevlitemcd='0000570001']/reccnts"));
  1161. model.setValue("/root/main/recinfo/recitem[fstlevlitemcd='0000570001']/reccnts", reccnts);
  1162. }
  1163. }
  1164. model.refresh();
  1165. }
  1166. }
  1167. /**
  1168. * @desc : 퇴원요구도/교육요구도 jci 팝업 호출
  1169. * @
  1170. * @param :
  1171. * @return :
  1172. * @authur : dhkim 20091216
  1173. */
  1174. function fPopEduDsch_SMMMR00701(){
  1175. var pid = parent.window.javascript.fGetPamInfo("pid");
  1176. var indd = parent.window.javascript.fGetPamInfo("indd");
  1177. var cretno = parent.window.javascript.fGetPamInfo("cretno");
  1178. setParameter("SPMRJ00300_pid", pid);
  1179. setParameter("SPMRJ00300_orddd", indd);
  1180. setParameter("SPMRJ00300_cretno", cretno);
  1181. modal("SPMRJ00300", 1, 0, 0, "", "", "");
  1182. }
  1183. /**
  1184. * MMR01300.js에서 submit직전에 submitID를 설정하기 위해서 호출한다.
  1185. * @return
  1186. */
  1187. function getSubmitID_MMR01300I() {
  1188. parent.window.javascript.fSetFormRec("addexecflag", "careplan");
  1189. //2010.02.23 dhkim - 통합기록조회용 JCI구분자추가(fSetXsltFlag없애고 getSubmitID_MMR01300I로 이동)
  1190. parent.window.javascript.fSetFormRec("xsltflag", "JCI2");
  1191. return TX_SUBMIT_EXTN_FORM;
  1192. }
  1193. /**
  1194. * MMR01100.js에서 서식load를 완료한 후에 호출한다.
  1195. * @return
  1196. */
  1197. function initFormAtLast_MMR01100I() {
  1198. //ivw_0022826001.window.javascript.fAddrow();
  1199. ivw_0013328001.window.javascript.fAddrow();
  1200. if (parent.window.javascript.fGetFormRec("status") == "C") {
  1201. //alert("gImge2 : "+gImge);
  1202. //if (gImge == "")
  1203. //{
  1204. fSetTriageValue_MMR00701("A", true);
  1205. fSetTriageValue_MMR00701("C", false);
  1206. //}
  1207. fSetTriageValue_MMR00701("B", false);
  1208. gImge = "N";
  1209. }
  1210. //2010.01.19 dhkim - 통합기록조회용 JCI구분자추가
  1211. //parent.window.javascript.fSetFormRec("xsltflag", "JCI");//fSetXsltFlag없애고 getSubmitID_MMR01300I로 이동
  1212. }
  1213. /**
  1214. * Triage 입력내용을 설정한다.
  1215. * @param flag
  1216. * <li>A : 주호소
  1217. * <li>B : 신체검진
  1218. * @return
  1219. */
  1220. function fSetTriageValue_MMR00701(flag, isSubmit, ibuttnyn) {
  1221. if (isSubmit == null || isSubmit == "") {
  1222. isSubmit = true;
  1223. }
  1224. if (ibuttnyn == null)
  1225. {
  1226. if (gImge == "N")
  1227. {
  1228. ibuttnyn = "N";
  1229. }
  1230. else
  1231. {
  1232. ibuttnyn = "Y";
  1233. }
  1234. }
  1235. var isSet = true;
  1236. if (isSubmit) {
  1237. model.removeNodeset("/root/send/reqdata");
  1238. model.makeValue("/root/send/reqdata/pid" , parent.window.javascript.fGetFormRec("pid"));
  1239. model.makeValue("/root/send/reqdata/orddd", parent.window.javascript.fGetFormRec("orddd"));
  1240. model.makeValue("/root/send/reqdata/cretno", parent.window.javascript.fGetFormRec("cretno"));
  1241. model.makeValue("/root/send/reqdata/queryflag", "K");
  1242. isSet = submit("TRMNE04403");
  1243. }
  1244. if (flag == "A") {
  1245. //주호소
  1246. if(isSet) {
  1247. fSetCC();
  1248. }
  1249. } else if (flag == "B") {
  1250. //현병력
  1251. if(isSet) {
  1252. var iobj = document.controls("ivw_0001173001");
  1253. fSetErTriageRec(iobj, "0001173");
  1254. }
  1255. } else if (flag == "C") {
  1256. //신체검진
  1257. if(isSet) {
  1258. var iobj = document.controls("ivw_0000570001");
  1259. fSetErTriageRec(iobj, "0000570", ibuttnyn);
  1260. }
  1261. }
  1262. }