MMR00701.js 54 KB

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