SMAHR02000_검사결과일반건진.xrw 73 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMAHR01000.xrw
  4. * 설 명 : 검사결과관리[일반건진]
  5. * 설 계 자 : 김호익
  6. * 작 성 자 : 김호익
  7. * 작 성 일 : 2007.07.13
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  13. <xhtml:head>
  14. <xhtml:title>Untitle</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <acptlst>
  20. <item>
  21. <pid/>
  22. <hngnm/>
  23. <engnm/>
  24. <pkgnm/>
  25. <orddd/>
  26. <sex/>
  27. <age/>
  28. <cmpynm/>
  29. <rgstno1/>
  30. <rgstno2/>
  31. <cmpycd/>
  32. <pkgcd/>
  33. <schlgrde/>
  34. <clsid/>
  35. <stuid/>
  36. <rsrvdd/>
  37. <rsrvno/>
  38. <cretno/>
  39. <orddeptcd/>
  40. <healexamdetlflag/>
  41. <reexamfg/>
  42. </item>
  43. <count>
  44. <patcnt/>
  45. <pkgcnt/>
  46. </count>
  47. <inqrlst>
  48. <item>
  49. <inqrcd/>
  50. <inqrcnts/>
  51. <answcd/>
  52. </item>
  53. </inqrlst>
  54. </acptlst>
  55. <acptinfo>
  56. <item>
  57. <pid/>
  58. <hngnm/>
  59. <rgstno1/>
  60. <rgstno2/>
  61. <sex/>
  62. <age/>
  63. <cmpycd/>
  64. <cmpynm/>
  65. <pkgcd/>
  66. <pkgnm/>
  67. <schlgrde/>
  68. <clsid/>
  69. <stuid/>
  70. <plceflag/>
  71. <orddd/>
  72. <judgdd/>
  73. <judgdrid/>
  74. <drnm/>
  75. <reexamfg/>
  76. </item>
  77. <rsltlst>
  78. <item>
  79. <prcpdd/>
  80. <execprcpuniqno/>
  81. <prcpno/>
  82. <testcd/>
  83. <testnm/>
  84. <testrsltcnts>
  85. </testrsltcnts>
  86. <outtestrsltcnts/>
  87. <rsltunit/>
  88. <rsltflag/>
  89. <remcnts/>
  90. <assorsltcnts/>
  91. <judgcd/>
  92. <judgrsltcnts/>
  93. <inptflag/>
  94. <choirslt>
  95. <item/>
  96. </choirslt>
  97. <judgmark/>
  98. <refh/>
  99. <refl/>
  100. </item>
  101. </rsltlst>
  102. <rsltlst2>
  103. <item>
  104. <prcpdd/>
  105. <execprcpuniqno/>
  106. <prcpno/>
  107. <testcd/>
  108. <testnm/>
  109. <testrsltcnts>
  110. </testrsltcnts>
  111. <outtestrsltcnts/>
  112. <rsltunit/>
  113. <rsltflag/>
  114. <remcnts/>
  115. <assorsltcnts/>
  116. <judgcd/>
  117. <judgrsltcnts/>
  118. <inptflag/>
  119. <choirslt>
  120. <item/>
  121. </choirslt>
  122. <judgmark/>
  123. <refh/>
  124. <refl/>
  125. </item>
  126. </rsltlst2>
  127. <judginfo>
  128. <firstjudg>
  129. <fst_inqryn>Y</fst_inqryn>
  130. <fst_estmamt/>
  131. <fst_judgcd/>
  132. <fst_bjudgdetl/>
  133. <fst_rjudgdetl/>
  134. <fst_etcsickcd/>
  135. <fst_etcsickcnts/>
  136. <fst_judgexamcd/>
  137. <fst_judgexamcnts/>
  138. <fst_histflag/>
  139. <fst_histcnts/>
  140. <fst_lifestatflag/>
  141. <fst_lifestatcnts/>
  142. <fst_trmaflag/>
  143. <fst_gnrlstatflag/>
  144. <fst_judgdd/>
  145. <fst_judgdrid/>
  146. </firstjudg>
  147. <secondjudg>
  148. <sec_judgcd/>
  149. <sec_D1sickcd/>
  150. <sec_D2sickcd/>
  151. <sec_aftercd/>
  152. <sec_judgexamcd/>
  153. <sec_judgexamcnts/>
  154. <sec_judgdd/>
  155. <sec_judgdrid/>
  156. <sec_bjudgdetl/>
  157. <sec_cjudgdetl/>
  158. <sec_d2judgdetl/>
  159. <sec_d1judgdetl/>
  160. </secondjudg>
  161. <oraljudg>
  162. <oral_estmamt/>
  163. <oral_judgcd/>
  164. <oral_judgdrid/>
  165. <oral_judgdd/>
  166. </oraljudg>
  167. <specjudg/>
  168. <genrjudg/>
  169. <secsicklst>
  170. <sickcd/>
  171. <sicknm/>
  172. </secsicklst>
  173. </judginfo>
  174. <inqrlst>
  175. <item>
  176. <inqrcd/>
  177. <inqrnm/>
  178. <answcd/>
  179. <answcnts/>
  180. <remcnts/>
  181. <answflag/>
  182. <inptflag/>
  183. <inqrflag/>
  184. </item>
  185. </inqrlst>
  186. </acptinfo>
  187. <etcinfo>
  188. <findpnm/>
  189. </etcinfo>
  190. <tempinfo>
  191. <rslttext>
  192. <rsltcnts/>
  193. <rslt_idx/>
  194. <rslt_col/>
  195. </rslttext>
  196. <anslst>
  197. <anslst>
  198. <item>
  199. <answcd/>
  200. <answcnts/>
  201. <answcnts/>
  202. <reminptyn/>
  203. </item>
  204. </anslst>
  205. </anslst>
  206. <choilst>
  207. <item3>
  208. <sel/>
  209. <rsltcd/>
  210. <rsltnm/>
  211. </item3>
  212. </choilst>
  213. <answcd/>
  214. <assorsltlst>
  215. <itemasso>
  216. <sel/>
  217. <rsltcd/>
  218. <rsltnm/>
  219. </itemasso>
  220. </assorsltlst>
  221. </tempinfo>
  222. </main>
  223. <send>
  224. <srchhealexamdetlflag/>
  225. <srchfromdd/>
  226. <srchtodd/>
  227. <srchcmpycd/>
  228. <srchcmpynm/>
  229. <srchpkgcd/>
  230. <srchpkgnm/>
  231. <srchpid2/>
  232. <srchpnm/>
  233. <srchroomcd/>
  234. <srchinstcd/>
  235. <srchhealexamflag/>
  236. <srchtestcd2/>
  237. <srchrsltflag/>
  238. <save>
  239. <healexamflag/>
  240. <healexamdetlflag/>
  241. <rsrvdd/>
  242. <rsrvno/>
  243. <pid/>
  244. <orddd/>
  245. <cretno/>
  246. <saverslt/>
  247. <saveinqr/>
  248. <pkgcd/>
  249. </save>
  250. <srchorddd/>
  251. <srchcretno/>
  252. <srchrsrvdd/>
  253. <srchrsrvno/>
  254. <srchpid/>
  255. <srchinqrflag/>
  256. <srchstatfg>G</srchstatfg>
  257. <dgflag>1</dgflag>
  258. </send>
  259. <hidden/>
  260. <temp>
  261. <pkginfo>
  262. <item>
  263. <pkgcd/>
  264. <pkgnm/>
  265. </item>
  266. </pkginfo>
  267. <patinfo>
  268. <item/>
  269. </patinfo>
  270. <baseinfo>
  271. <item/>
  272. </baseinfo>
  273. <sickcdlst>
  274. <item>
  275. <sickcd/>
  276. <sicknm/>
  277. <judgcd/>
  278. </item>
  279. </sickcdlst>
  280. <assorsltlst/>
  281. </temp>
  282. <init>
  283. <baseinfo>
  284. <choiflaglst/>
  285. <hedetlflaglst/>
  286. <rslttypelst/>
  287. <plceflag/>
  288. <pamcdlst>
  289. <uncocdlst/>
  290. <disccdlst/>
  291. </pamcdlst>
  292. <inqrflag/>
  293. <drlst>
  294. <itemdr/>
  295. </drlst>
  296. <statlst/>
  297. </baseinfo>
  298. <room>
  299. <roomlst/>
  300. </room>
  301. <judginfo>
  302. <judgcdlst>
  303. <item>
  304. <cd/>
  305. <nm/>
  306. </item>
  307. </judgcdlst>
  308. <Bjudglst>
  309. <item>
  310. <cd/>
  311. <nm/>
  312. </item>
  313. </Bjudglst>
  314. <Rjudglst>
  315. <item>
  316. <cd/>
  317. <nm/>
  318. </item>
  319. </Rjudglst>
  320. <etcsickcdlst>
  321. <item>
  322. <cd/>
  323. <nm/>
  324. </item>
  325. </etcsickcdlst>
  326. <oraljudglst>
  327. <item>
  328. <cd/>
  329. <nm/>
  330. </item>
  331. </oraljudglst>
  332. <sndjudgcdlst>
  333. <item>
  334. <cd/>
  335. <nm/>
  336. </item>
  337. </sndjudgcdlst>
  338. <sndaftercdlst>
  339. <item>
  340. <cd/>
  341. <nm/>
  342. </item>
  343. </sndaftercdlst>
  344. <histdiaglst>
  345. <item>
  346. <cd/>
  347. <nm/>
  348. </item>
  349. </histdiaglst>
  350. <lifestatlst>
  351. <item>
  352. <cd/>
  353. <nm/>
  354. </item>
  355. </lifestatlst>
  356. <lifeflaglst>
  357. <item>
  358. <cd/>
  359. <nm/>
  360. </item>
  361. </lifeflaglst>
  362. <gnrlstatlst>
  363. <item>
  364. <cd/>
  365. <nm/>
  366. </item>
  367. </gnrlstatlst>
  368. <ynlst>
  369. <item>
  370. <cd/>
  371. <nm/>
  372. </item>
  373. </ynlst>
  374. </judginfo>
  375. </init>
  376. </root>
  377. </instance>
  378. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  379. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  380. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  381. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  382. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  383. <script type="javascript" src="../../../ast/healexamweb/js/AHA001.js"/>
  384. <script type="javascript" src="../../../ast/examcureweb/js/AEZ0001.js"/>
  385. <script type="javascript" src="../../../com/pacsweb/js/ZEP001.js"/>
  386. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  387. <script type="javascript" ev:event="xforms-ready">
  388. <![CDATA[
  389. fGetBasicCdList();
  390. fSrchInit();
  391. fInit(false);
  392. fGetRsltPatList();
  393. fDateTypes();
  394. //검사결과 2로 세팅
  395. // iviewer1.grd_rsltlst.visible=true;
  396. // iviewer1.grd_rsltlst2.visible=true;
  397. ]]>
  398. </script>
  399. <submission id="TRZBC00101"/>
  400. <submission id="TRAHR01001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptlst"/>
  401. <submission id="TRAHR01002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptinfo/rsltlst"/>
  402. <submission id="TRAHR01003" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptinfo/inqrlst"/>
  403. <submission id="TRAHB01502" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/room/roomlst"/>
  404. <submission id="TRAHA00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/baseinfo/pamcdlst"/>
  405. <submission id="TXAHR01001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" replace="instance" resultref="/root/hidden"/>
  406. <submission id="TXAHR01002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" replace="instance" resultref="/root/hidden"/>
  407. <submission id="TRAHB00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/tempinfo/choilst"/>
  408. <submission id="TRAHA00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/temp/patinfo"/>
  409. <bind id="bind_rslt" ref="/root/main/rsltlst/item/testrsltcnts" readonly="../rsltflag=&quot;O&quot;"/>
  410. <submission id="TRAHB00604" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/temp/baseinfo/item"/>
  411. <submission id="TRAHR01004" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptinfo/judginfo"/>
  412. <submission id="TRAHB01504" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/baseinfo/drlst"/>
  413. <submission id="TRAHB00107" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/tempinfo/assorsltlst"/>
  414. <submission id="TRAHR01005" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptinfo/rsltlst2"/>
  415. <submission id="TXAHR00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/saveout" replace="instance" resultref="/root/hidden"/>
  416. <submission id="TRAHR00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden"/>
  417. </model>
  418. <script type="javascript">
  419. <![CDATA[
  420. var col_pid = 1;
  421. var col_pnm = 2;
  422. var col_testcd = 4;
  423. var col_rslt = 6;
  424. var col_rsltflag = 9;
  425. var col_assorslt = 11;
  426. var col_inqranswcd = 3;
  427. var col_inqranswcnts = 4;
  428. var col_inqrremcnts = 5;
  429. var col_inqranswflag = 6;
  430. var m_vHealexamflag = "";
  431. var vidx;
  432. function fDateTypes(){
  433. model.removeNodeset("/root/main/tempinfo/choilst/item3");
  434. model.setValue("/root/send/srchinstcd" , getUserInfo("dutplceinstcd"));
  435. model.setValue("/root/send/srchhealexamflag", fGetHealExamFlag());
  436. // model.setValue("/root/send/srchrsltflag" , vRsltFlag);
  437. model.setValue("/root/send/srchrsltflag" , "O");
  438. model.makeValue("/root/send/srchchoiflag","G");
  439. model.makeValue("/root/send/srchhealexamflag","G");
  440. submit("TRAHB00103");
  441. model.setValue("/root/send/srchinstcd" , getUserInfo("dutplceinstcd"));
  442. model.setValue("/root/send/srchhealexamflag", fGetHealExamFlag());
  443. // model.setValue("/root/send/srchrsltflag" , vRsltFlag);
  444. model.setValue("/root/send/srchrsltflag" , "A");
  445. model.makeValue("/root/send/srchchoiflag","G");
  446. model.makeValue("/root/send/srchhealexamflag","G");
  447. submit("TRAHB00107");
  448. }
  449. /**===================================================================================
  450. *초기화
  451. * bDetl => true : 건진자별 상세내역만 초기화
  452. =====================================================================================*/
  453. function fInit(bDetl){
  454. model.removeNodeset(grd_acptlst.nodeset);
  455. model.resetInstanceNode("");
  456. if( bDetl) {
  457. return ;
  458. }
  459. model.resetInstanceNode("/root/main/info/item");
  460. model.removeNodeset(iviewer1.grd_rsltlst.nodeset);
  461. // model.removeNodeset(iviewer1.grd_inqrlst.nodeset);
  462. model.refresh();
  463. }
  464. /**===================================================================================
  465. ** 조회조건 초기화
  466. =====================================================================================*/
  467. function fSrchInit(){
  468. // cmb_srchhealexamdetlflag.refresh();
  469. // cmb_srchhealexamdetlflag.select(0);
  470. var cur_date = getCurrentDate();
  471. model.setValue(ipt_srchfromdd.attribute("ref") , cur_date);
  472. model.setValue(ipt_srchtodd.attribute("ref") , cur_date);
  473. /* if(cmb_srchhealexamdetlflag.value=="G02"){
  474. model.toggle("case_rslt2");
  475. btn_rslt2.selected=true;
  476. }
  477. else{*/
  478. model.toggle("case_rslt");
  479. model.toggle("case_first");
  480. btn_rslt.selected= true ;
  481. // }
  482. }
  483. /**===================================================================================
  484. *기본코드 내역 가져오기
  485. =====================================================================================*/
  486. function fGetBasicCdList(){
  487. m_vHealexamflag = fGetHealExamFlag();
  488. openLoadingBar("기초정보 ") ;//처리중 화면을 오픈한다.
  489. model.setValue("/root/send/srchhealexamflag" , m_vHealexamflag);
  490. zbcfGetCodeList( new Array("A0070", "A0066","A0110","A0106", "A0107")
  491. , new Array( "/root/init/baseinfo/hedetlflaglst", "/root/init/baseinfo/rslttypelst" , "/root/init/baseinfo/plceflag" , "/root/init/baseinfo/inqrflag", "/root/init/baseinfo/statlst") );
  492. submit("TRZBC00101");
  493. //검사실 코드조회
  494. model.setValue("/root/send/srchinstcd", getUserInfo("dutplceinstcd") );
  495. submit("TRAHB01502");
  496. //판정의조회
  497. model.makeNode("/root/send/srchcond" );
  498. model.setValue("/root/send/srchcond", "J");
  499. submit("TRAHB01504");
  500. model.makeValue("/root/send/srchhealexamdetlflag","G01") ;
  501. model.refresh();
  502. btn_rslt.selected = true;
  503. if (btn_rslt.selected==true){
  504. iviewer1.window.javascript.fInitDasplay();
  505. }
  506. iviewer1.model.toggle("case_first");
  507. iviewer1.btn_firstjudg.selected = true ;
  508. /* iviewer1.model.toggle("case_rslt");
  509. iviewer1.btn_rslt.selected = true ;
  510. */
  511. }
  512. /**===================================================================================
  513. *대상자 가져오기
  514. *건진구분/건진일자/검사실/환자id/단체코드/패키지코드별 조회
  515. =====================================================================================*/
  516. function fGetRsltPatList(){
  517. openLoadingBar("결과입력 대상 리스트를 가져오는 중 입니다..") ;//처리중 화면을 오픈한다.
  518. model.removeNodeset(grd_acptlst.nodeset);
  519. model.removeNodeset(iviewer1.grd_rsltlst.nodeset);
  520. //model.removeNodeset(iviewer1.grd_rsltlst2.nodeset);
  521. //판정내역 초기화
  522. model.resetInstanceNode("/root/main/acptinfo/judginfo");
  523. model.makeValue("/root/send/save/srchdgflag",model.getValue("/root/send/dgflag"));
  524. model.setValue("/root/send/srchinstcd" , getUserInfo("dutplceinstcd") );
  525. model.setValue("/root/send/srchpid" , model.getValue("/root/send/srchpid2") );
  526. model.setValue("/root/send/srchhealexamflag", "G");
  527. // model.setValue("/root/send/srchhealexamflag", fGetHealExamFlag());
  528. submit("TRAHR01001");
  529. closeLoadingBar() ;//처리중 화면을 close한다.
  530. }
  531. /**===================================================================================
  532. *건진내역별 상세내역가져오기(검사내역 및 결과)
  533. *건진구분/건진일자/검사실/환자id/단체코드/패키지코드별 조회
  534. =====================================================================================*/
  535. function fGetRsltInfo(bGetJudg){
  536. // 검사결과
  537. if (vidx == "1"){
  538. model.removeNodeset(iviewer1.grd_rsltlst.nodeset);
  539. if( fCheckExamInfo() == false ) return ;
  540. openLoadingBar("검사결과정보 ") ;// 처리중 화면을 오픈한다.
  541. model.makeValue("/root/send/srchhealexamflag","G");
  542. // if( submit("TRAHR01002") == true ){
  543. model.destroy("/root/rsltlst"); //기존의 결과 인스턴스 삭제
  544. if(submit("TRAHR00201")==true){
  545. model.destroy("/root/main/acptinfo/rsltlst");
  546. model.makeNode("/root/main/acptinfo/rsltlst");
  547. model.copyNode("/root/main/acptinfo/rsltlst", "/root/rsltlst");
  548. /* var cnt = iviewer1.grd_rsltlst.rows;
  549. for( var i = 1 ; i <= cnt ; i++){
  550. if( model.getValue( iviewer1.grd_rsltlst.nodeset + "[" + i + "]/inptflag") == "i" )//입력모드
  551. {
  552. iviewer1.grd_rsltlst.addStatus(i, "insert");
  553. }
  554. }
  555. iviewer1.grd_rsltlst.refresh();*/
  556. }
  557. closeLoadingBar() ;//처리중 화면을 close한다.
  558. //판정정보 조회
  559. if( bGetJudg ) {
  560. fGetJudgInfo();
  561. }
  562. }
  563. //문진
  564. if (vidx == "2"){
  565. model.removeNodeset(iviewer1.grd_inqrlst.nodeset);
  566. iviewer1.window.javascript.fGetInqrCdList();
  567. // iviewer1.grd_inqrlst.refresh();
  568. }
  569. }
  570. /**===================================================================================
  571. *건진내역별 상세내역가져오기(검사내역 및 결과)
  572. *건진구분/건진일자/검사실/환자id/단체코드/패키지코드별 조회
  573. =====================================================================================*/
  574. function fGetRsltInfo2(bGetJudg){
  575. model.removeNodeset(iviewer1.grd_rsltlst2.nodeset);
  576. var idx = grd_acptlst.row;
  577. if( idx < 1) {
  578. //messageBox("수진자를 ", "C002");
  579. return false;
  580. }
  581. model.copyNode("/root/main/acptinfo/item", grd_acptlst.nodeset + "[" + idx + "]");
  582. //결과내역가져오기
  583. var sNode = grd_acptlst.nodeset + "[" + idx + "]/";
  584. var rsrvdd = model.getValue(sNode + "rsrvdd");
  585. var rsrvno = model.getValue(sNode + "rsrvno");
  586. var pid = model.getValue(sNode + "pid");
  587. var orddd = model.getValue(sNode + "orddd");
  588. var cretno = model.getValue(sNode + "cretno");
  589. var pkgcd = model.getValue(sNode + "pkgcd");
  590. if( (pid == "" ) || (orddd=="") || (cretno == "") || (rsrvdd == "") || (rsrvno == "") ){
  591. messageBox("유효하지 않은 데이터 입니다!", "E999");
  592. return false;
  593. }
  594. model.setValue("/root/send/srchrsrvdd" , rsrvdd );
  595. model.setValue("/root/send/srchrsrvno" , rsrvno );
  596. model.setValue("/root/send/srchpid" , pid );
  597. model.setValue("/root/send/srchorddd" , orddd );
  598. model.setValue("/root/send/srchcretno" , cretno );
  599. model.setValue("/root/send/srchhealexamflag" , fGetHealExamFlag() );
  600. model.setValue("/root/send/srchinstcd", getUserInfo("dutplceinstcd") );
  601. //model.setValue("/root/send/srchpkgcd" , pkgcd)
  602. openLoadingBar("검사결과정보 ") ;//처리중 화면을 오픈한다.
  603. if( submit("TRAHR01005") == true ){
  604. iviewer1.grd_rsltlst2.refresh();
  605. var cnt = iviewer1.grd_rsltlst2.rows;
  606. for( var i = 1 ; i <= cnt ; i++){
  607. if( model.getValue( iviewer1.grd_rsltlst2.nodeset + "[" + i + "]/inptflag") == "i" )//입력모드
  608. {
  609. iviewer1.grd_rsltlst2.addStatus(i, "insert");
  610. }
  611. }
  612. iviewer1.grd_rsltlst2.refresh();
  613. }
  614. closeLoadingBar() ;//처리중 화면을 close한다.
  615. }
  616. /**
  617. *건진내역별 상세내역가져오기( 판정내역조회)
  618. *건진구분/건진일자/검사실/환자id/단체코드/패키지코드별 조회
  619. */
  620. function fGetJudgInfo( ){
  621. if( fCheckExamInfo() == false ) return ;
  622. openLoadingBar("판정정보 ") ;//처리중 화면을 오픈한다.
  623. model.makeValue("root/send/srchhealexamflag","G");
  624. if(model.getValue("/root/send/dgflag")=="2"){
  625. model.makeValue("/root/send/srchpkgcd","VP002");
  626. }else{
  627. model.makeValue("/root/send/srchpkgcd","");
  628. }
  629. submit("TRAHR01004") ;
  630. closeLoadingBar() ;//처리중 화면을 close한다.
  631. }
  632. /**
  633. *결과 및 판정내역을 조회하기 위한 조건정보 체크
  634. */
  635. function fCheckExamInfo(){
  636. var idx = grd_acptlst.row;
  637. if( idx < 1) {
  638. //messageBox("수진자를 ", "C002");
  639. return false;
  640. }
  641. model.copyNode("/root/main/acptinfo/item", grd_acptlst.nodeset + "[" + idx + "]");
  642. //결과내역가져오기
  643. var sNode = grd_acptlst.nodeset + "[" + idx + "]/";
  644. var rsrvdd = model.getValue(sNode + "rsrvdd");
  645. var rsrvno = model.getValue(sNode + "rsrvno");
  646. var pid = model.getValue(sNode + "pid");
  647. var orddd = model.getValue(sNode + "orddd");
  648. var cretno = model.getValue(sNode + "cretno");
  649. var pkgcd = model.getValue(sNode + "pkgcd");
  650. if( (pid == "" ) || (orddd=="") || (cretno == "") || (rsrvdd == "") || (rsrvno == "") ){
  651. messageBox("유효하지 않은 데이터 입니다!", "E999");
  652. return false;
  653. }
  654. model.setValue("/root/send/srchrsrvdd" , rsrvdd );
  655. model.setValue("/root/send/srchrsrvno" , rsrvno );
  656. model.setValue("/root/send/srchpid" , pid );
  657. model.setValue("/root/send/srchorddd" , orddd );
  658. model.setValue("/root/send/srchcretno" , cretno );
  659. model.setValue("/root/send/srchhealexamflag" , fGetHealExamFlag() );
  660. model.setValue("/root/send/srchinstcd", getUserInfo("dutplceinstcd") );
  661. //model.setValue("/root/send/srchpkgcd" , pkgcd);
  662. }
  663. /**===================================================================================
  664. @desc : 공통 저장정보관련 초기화
  665. =====================================================================================*/
  666. function fInitSaveData(){
  667. model.resetInstanceNode("/root/send/save");
  668. }
  669. /**===================================================================================
  670. @desc : 공통 저장정보관련 check
  671. *접수정보 : 건진구분/건진상세구분/예약일자/예약번호/등록번호/진료일자
  672. *저장구분 : I=> 문진만, R=>결과만, J1 => 1차판정만 ...
  673. =====================================================================================*/
  674. function fCheckSaveInfo(){
  675. var idx = grd_acptlst.row;
  676. if( idx < 1 ) {
  677. return false;
  678. }
  679. if( m_vHealexamflag == "" ) {
  680. messageBox("업무구분이 존재하지 않습니다.", "E999");
  681. return false;
  682. }
  683. var vAcptNode = grd_acptlst.nodeset + "[" + idx;
  684. model.makeNode("/root/send/save/healexamflag");
  685. model.makeNode("/root/send/save/healexamdetlflag");
  686. model.makeNode("/root/send/save/rsrvdd");
  687. model.makeNode("/root/send/save/rsrvno");
  688. model.makeNode("/root/send/save/pid");
  689. model.makeNode("/root/send/save/orddd");
  690. model.makeNode("/root/send/save/cretno");
  691. model.makeNode("/root/send/save/pkgcd");
  692. model.makeNode("/root/send/save/judgdrid");
  693. model.makeNode("/root/send/save/judgdd");
  694. model.setValue("/root/send/save/healexamflag" , m_vHealexamflag );
  695. model.setValue("/root/send/save/healexamdetlflag" , model.getValue(vAcptNode + "]/healexamdetlflag") );
  696. model.setValue("/root/send/save/rsrvdd" , model.getValue(vAcptNode + "]/rsrvdd") );
  697. model.setValue("/root/send/save/rsrvno" , model.getValue(vAcptNode + "]/rsrvno") );
  698. model.setValue("/root/send/save/pid" , model.getValue(vAcptNode + "]/pid") );
  699. model.setValue("/root/send/save/orddd" , model.getValue(vAcptNode + "]/orddd") );
  700. model.setValue("/root/send/save/cretno" , model.getValue(vAcptNode + "]/cretno") );
  701. model.setValue("/root/send/save/pkgcd" , model.getValue(vAcptNode + "]/pkgcd") );
  702. //model.setValue("/root/send/save/judgdrid" , model.getValue(cmb_drid.attribute("ref") ) );
  703. //model.setValue("/root/send/save/judgdd" , model.getValue(ipt_judgdd.attribute("ref") ) );
  704. return true ;
  705. }
  706. function fviewDiaplay(){
  707. // model.copyNode("/root",iviewer1.root);//parent
  708. }
  709. /*********************************************************************
  710. @desc 비자건진 만 따로 뺐음 묶음처방과 출력물로 인하여
  711. 문진 넣는것 요청 나올수 있으니 일단은 플래그 현태로 동일하게 구현하였음
  712. **********************************************************************/
  713. function fSaveRslt2(vSaveFlag){
  714. var ret = false;
  715. if( !fCheckSaveInfo() ) return ret ;
  716. var vSaveRslt= "";
  717. var vSaveInqr = "";
  718. var bSave = true;
  719. //결과 저장
  720. //if( (vSaveFlag == "R" ) || ( vSaveFlag == "A" ) ) {
  721. vSaveRslt= getGridUpdateData(iviewer1.grd_rsltlst2);
  722. model.setValue("/root/send/save/saverslt" , vSaveRslt );
  723. //}
  724. //문진 저장
  725. /*
  726. if( ( vSaveFlag == "I" ) || ( vSaveFlag == "A" ) ) {
  727. vSaveInqr= getGridUpdateData(iviewer1.grd_inqrlst);
  728. model.setValue("/root/send/save/saveinqr" , vSaveInqr);
  729. }
  730. if( vSaveFlag == "A" ) {
  731. if( (vSaveRslt == "") && (vSaveInqr=="") ){
  732. bSave = false;
  733. }
  734. }
  735. else
  736. if( vSaveFlag == "R" ) {
  737. if( vSaveRslt == "" ){
  738. bSave = false;
  739. }
  740. }
  741. else
  742. if( vSaveFlag == "I" ) {
  743. if( vSaveInqr == "" ){
  744. bSave = false;
  745. }
  746. }
  747. */
  748. ret = bSave;
  749. //결과/문진 저장
  750. if( bSave ) {
  751. openLoadingBar("결과 저장 중입니다..") ;//처리중 화면을 오픈한다.
  752. ret = submit("TXAHR01001");
  753. closeLoadingBar() ;//처리중 화면을 close한다.
  754. }
  755. //정상적 저장시 결과/문진내역 재 조회
  756. if( ret == true ) {
  757. if( (vSaveFlag == "A" ) || (vSaveFlag == "R" ) ){
  758. fGetRsltInfo(false);
  759. }
  760. if( (vSaveFlag == "A" ) || (vSaveFlag == "I" ) ){
  761. fGetInqrCdList();
  762. }
  763. }
  764. return ret ;
  765. }
  766. /**===================================================================================
  767. @desc : 결과/문진입력
  768. *접수정보 : 건진구분/건진상세구분/예약일자/예약번호/등록번호/진료일자
  769. *결과내역 : 처방일자/실시처방유일번호/처방번호/검사코드/결과/외래결과/판정코드/판정문구내용
  770. *저장구분 : I=> 문진만, R=>결과만 , A=>문진/결과 동시 저장
  771. =====================================================================================*/
  772. function fSaveRslt( vSaveFlag){
  773. var ret = false;
  774. if( !fCheckSaveInfo() ) return ret ;
  775. var vSaveRslt= "";
  776. var vSaveInqr = "";
  777. var bSave = true;
  778. //결과 저장
  779. // for (var i=0; i<iviewer1.grd_rsltlst.row();i++){
  780. // model.makeValue(ipt_srchfromdd.attribute("ref") +"item", )
  781. // }
  782. model.makeValue("/root/send/save/saveinfo/healexamflag" , "G");
  783. model.makeValue("/root/send/save/healexamflag" , "G");
  784. if( (vSaveFlag == "R" ) || ( vSaveFlag == "A" ) ) {
  785. //if( messageBox("결과를 ", "Q002") != 6) return ;
  786. /* for(var i=1; i < iviewer1.grd_rsltlst2.rows;i++){
  787. iviewer1.grd_rsltlst2.rowStatus(i) = 2;
  788. }*/
  789. vSaveRslt= getGridUpdateData(iviewer1.grd_rsltlst);
  790. model.setValue("/root/send/save/saverslt" , vSaveRslt );
  791. iviewer1.grd_rsltlst.clearStatus();
  792. }
  793. //문진 저장
  794. if( ( vSaveFlag == "I" ) || ( vSaveFlag == "A" ) ) {
  795. /* for(var i=1; i < iviewer1.grd_inqrlst.rows;i++){
  796. iviewer1.grd_inqrlst.rowStatus(i) = 2;
  797. } */
  798. vSaveInqr= getGridUpdateData(iviewer1.grd_inqrlst);
  799. model.setValue("/root/send/save/saveinqr" , vSaveInqr);
  800. }
  801. /*
  802. if( vSaveFlag == "A" ) {
  803. if( (vSaveRslt == "") && (vSaveInqr=="") ){
  804. bSave = false;
  805. }
  806. }
  807. else
  808. if( vSaveFlag == "R" ) {
  809. if( vSaveRslt == "" ){
  810. bSave = false;
  811. }
  812. }
  813. else
  814. if( vSaveFlag == "I" ) {
  815. if( vSaveInqr == "" ){
  816. bSave = false;
  817. }
  818. }*/
  819. ret = bSave;
  820. //결과/문진 저장
  821. if( bSave ) {
  822. openLoadingBar("결과 저장 중입니다..") ;//처리중 화면을 오픈한다.
  823. ret = submit("TXAHR01001");
  824. closeLoadingBar() ;//처리중 화면을 close한다.
  825. }
  826. //정상적 저장시 결과/문진내역 재 조회
  827. if( ret == true ) {
  828. if( (vSaveFlag == "A" ) || (vSaveFlag == "R" ) ){
  829. fGetRsltInfo(false);
  830. }
  831. if( (vSaveFlag == "A" ) || (vSaveFlag == "I" ) ){
  832. fGetInqrCdList();
  833. }
  834. }
  835. return ret ;
  836. }
  837. /**===================================================================================
  838. @desc : 판정입력
  839. *접수정보 : 건진구분/건진상세구분/예약일자/예약번호/등록번호/진료일자
  840. *판정내역 :
  841. @param :bCheckSave => true이면 저장기본정보 check.
  842. 전체저장시는 저장기본정보를 check할 필요가 없으므로...pass하도록...하기위해.
  843. =====================================================================================*/
  844. function fSaveJudg( bCheckSave ){
  845. var ret = false;
  846. if( bCheckSave == true ){
  847. if( !fCheckSaveInfo() ) return ret ;
  848. }
  849. //판정입력구분(1-1차 + 구강 /2- 2차 /O- 구강만 /S- 특수건진 /B- 혈액정밀 / C- 암건진 )
  850. model.makeNode("/root/send/save/judginptflag");
  851. var judgflag = fGetJudgInptFlag();
  852. model.setValue("/root/send/save/judginptflag" ,judgflag );
  853. //1차 + 구강
  854. if( judgflag == "1" ){
  855. if( model.getValue(rdo_firstjudgcd.attribute("ref") ) == "") {
  856. messageBox("판정을 ", "C001");
  857. return ret;
  858. }
  859. /*if( model.getValue( cmb_fstjudgdrid.attribute("ref") ) == "" ) {
  860. messageBox("판정의를 ", "C001");
  861. return ret;
  862. }*/
  863. model.makeNode("/root/send/save/savejudg1");
  864. model.resetInstanceNode("/root/send/save/savejudg1");
  865. model.copyNode("/root/send/save/savejudg1", "/root/main/acptinfo/judginfo/firstjudg");
  866. model.makeNode("/root/send/save/savejudgoral");
  867. model.resetInstanceNode("/root/send/save/savejudgoral");
  868. model.copyNode("/root/send/save/savejudgoral", "/root/main/acptinfo/judginfo/oraljudg");
  869. }
  870. //2차
  871. else if( judgflag == "2" ){
  872. if( model.getValue(cmb_sndjudgcd.attribute("ref") ) == "") {
  873. messageBox("판정을 ", "C002");
  874. return ret;
  875. }
  876. if( model.getValue( cmb_secjudgdrid.attribute("ref") ) == "" ) {
  877. messageBox("판정의를 ", "C001");
  878. return ret;
  879. }
  880. model.makeNode("/root/send/save/savejudg2");
  881. model.resetInstanceNode("/root/send/save/savejudg2");
  882. model.copyNode("/root/send/save/savejudg2", "/root/main/acptinfo/judginfo/secondjudg");
  883. //질환코드
  884. model.makeNode("/root/send/save/savejudg2/sec_savesickcd");
  885. model.setValue("/root/send/save/savejudg2/sec_savesickcd" , grd_sicklst.getUpdateData() );
  886. }
  887. openLoadingBar("판정 저장 중입니다..") ;//처리중 화면을 오픈한다.
  888. ret = submit("TXAHR01002");
  889. closeLoadingBar() ;//처리중 화면을 close한다.
  890. //정상적 저장 시 판정내역 재 조회
  891. if(ret == true){
  892. // fGetJudgInfo();
  893. }
  894. return ret;
  895. }
  896. /**===================================================================================
  897. *결과입력
  898. *접수정보 : 건진구분/건진상세구분/예약일자/예약번호/등록번호/진료일자
  899. *결과내역 : 처방일자/실시처방유일번호/처방번호/검사코드/결과/외래결과/판정코드/판정문구내용
  900. *저장구분 : I=> 문진만, R=>결과만, J1 => 1차판정만 ...
  901. =====================================================================================*/
  902. function fSaveRsltInfo(vSaveFlag){
  903. var retR, retJ ;
  904. model.resetInstanceNode("/root/send/save");
  905. var idx = grd_acptlst.row;
  906. if( idx < 1 ) {
  907. return ;
  908. }
  909. var vSaveRslt= "";
  910. var vSaveInqr = "";
  911. //결과 저장
  912. if( (vSaveFlag == "R" ) || ( vSaveFlag == "" ) ) {
  913. //if( messageBox("결과를 ", "Q002") != 6) return ;
  914. vSaveRslt= getGridUpdateData(iviewer1.grd_rsltlst);
  915. }
  916. //문진 저장
  917. if( ( vSaveFlag == "I" ) || ( vSaveFlag == "" ) ) {
  918. vSaveInqr= getGridUpdateData(iviewer1.grd_inqrlst);
  919. }
  920. if( m_vHealexamflag == "" ) {
  921. messageBox("업무구분이 존재하지 않습니다.", "E999");
  922. return ;
  923. }
  924. var vAcptNode = grd_acptlst.nodeset + "[" + idx;
  925. if( (vSaveFlag == "" ) || ( vSaveFlag == "R" )){
  926. model.setValue("/root/send/save/saverslt" , vSaveRslt );
  927. }
  928. if( (vSaveFlag == "" ) || ( vSaveFlag == "I" )){
  929. model.setValue("/root/send/save/saveinqr" , vSaveInqr);
  930. }
  931. model.makeNode("/root/send/save/healexamflag");
  932. model.makeNode("/root/send/save/healexamdetlflag");
  933. model.makeNode("/root/send/save/rsrvdd");
  934. model.makeNode("/root/send/save/rsrvno");
  935. model.makeNode("/root/send/save/pid");
  936. model.makeNode("/root/send/save/orddd");
  937. model.makeNode("/root/send/save/cretno");
  938. model.makeNode("/root/send/save/pkgcd");
  939. model.makeNode("/root/send/save/judgdrid");
  940. model.makeNode("/root/send/save/judgdd");
  941. model.setValue("/root/send/save/healexamflag" , m_vHealexamflag );
  942. model.setValue("/root/send/save/healexamdetlflag" , model.getValue(vAcptNode + "]/healexamdetlflag") );
  943. model.setValue("/root/send/save/rsrvdd" , model.getValue(vAcptNode + "]/rsrvdd") );
  944. model.setValue("/root/send/save/rsrvno" , model.getValue(vAcptNode + "]/rsrvno") );
  945. model.setValue("/root/send/save/pid" , model.getValue(vAcptNode + "]/pid") );
  946. model.setValue("/root/send/save/orddd" , model.getValue(vAcptNode + "]/orddd") );
  947. model.setValue("/root/send/save/cretno" , model.getValue(vAcptNode + "]/cretno") );
  948. model.setValue("/root/send/save/pkgcd" , model.getValue(vAcptNode + "]/pkgcd") );
  949. model.setValue("/root/send/save/judgdrid" , model.getValue(cmb_drid.attribute("ref") ) );
  950. model.setValue("/root/send/save/judgdd" , model.getValue(ipt_judgdd.attribute("ref") ) );
  951. //전체 저장 혹은 문진저장...
  952. if( (vSaveFlag == "R" ) || (vSaveFlag == "I" ) || (vSaveFlag == "" )){
  953. openLoadingBar("결과 저장 중입니다..") ;//처리중 화면을 오픈한다.
  954. retR = submit("TXAHR01001");
  955. closeLoadingBar() ;//처리중 화면을 close한다.
  956. }
  957. //판정데이터
  958. if( (vSaveFlag == "" ) || ( vSaveFlag == "J" )){
  959. //판정입력구분(1-1차 + 구강 /2- 2차 /O- 구강만 /S- 특수건진 /B- 혈액정밀 / C- 암건진 )
  960. model.makeNode("/root/send/save/judginptflag");
  961. var judgflag = fGetJudgInptFlag();
  962. model.setValue("/root/send/save/judginptflag" ,judgflag );
  963. //1차 + 구강
  964. if( judgflag == "1" ){
  965. model.makeNode("/root/send/save/savejudg1");
  966. model.resetInstanceNode("/root/send/save/savejudg1");
  967. model.copyNode("/root/send/save/savejudg1", "/root/main/acptinfo/judginfo/firstjudg");
  968. model.makeNode("/root/send/save/savejudgoral");
  969. model.resetInstanceNode("/root/send/save/savejudgoral");
  970. model.copyNode("/root/send/save/savejudgoral", "/root/main/acptinfo/judginfo/oraljudg");
  971. }
  972. //2차
  973. else if( judgflag == "2" ){
  974. model.makeNode("/root/send/save/savejudg2");
  975. model.resetInstanceNode("/root/send/save/savejudg2");
  976. model.copyNode("/root/send/save/savejudg2", "/root/main/acptinfo/judginfo/secondjudg");
  977. //질환코드
  978. model.makeNode("/root/send/save/savejudg2/sec_savesickcd");
  979. model.setValue("/root/send/save/savejudg2/sec_savesickcd" , grd_sicklst.getUpdateData() );
  980. }
  981. }
  982. if( (vSaveFlag == "" )|| ( vSaveFlag == "O" ) || ( vSaveFlag == "J" )){
  983. openLoadingBar("판정 저장 중입니다..") ;//처리중 화면을 오픈한다.
  984. retJ = submit("TXAHR01002");
  985. closeLoadingBar() ;//처리중 화면을 close한다.
  986. }
  987. if( retR == true ){
  988. fGetRsltInfo(false);
  989. }
  990. if(retJ == true){
  991. fGetJudgInfo();
  992. }
  993. }
  994. /*===================================================================================
  995. ** 판정입력구분
  996. *1 - 1차 + 구강
  997. *2 - 2차
  998. *S - 특수건진
  999. *B - 혈액정밀
  1000. *C - 암건진
  1001. ===================================================================================*/
  1002. function fGetJudgInptFlag() {
  1003. var judg_idx = swt_judg.selectedIndex ;
  1004. var ret = "1" ;
  1005. switch ( judg_idx ) {
  1006. case 0:
  1007. ret = "1" ;
  1008. break;
  1009. case 1:
  1010. ret = "2" ;
  1011. break;
  1012. case 2:
  1013. ret = "1" ;
  1014. break;
  1015. case 3:
  1016. ret = "S" ;
  1017. break;
  1018. case 4:
  1019. ret = "B" ;
  1020. break;
  1021. case 5:
  1022. ret = "C" ;
  1023. break;
  1024. default:
  1025. ret = "1" ;
  1026. break;
  1027. }
  1028. return ret;
  1029. }
  1030. /**===================================================================================
  1031. *선택형 결과조회
  1032. *IN : 검사코드/결과구분
  1033. ===================================================================================*/
  1034. function fGetRsltExmpList( vTestcd, vRsltFlag, vRslt ){
  1035. model.removeNodeset("/root/main/tempinfo/choilst/item3");
  1036. model.setValue("/root/send/srchtestcd2" , vTestcd) ;
  1037. model.setValue("/root/send/srchinstcd" , getUserInfo("dutplceinstcd"));
  1038. model.setValue("/root/send/srchhealexamflag", fGetHealExamFlag());
  1039. model.setValue("/root/send/srchrsltflag" , vRsltFlag);
  1040. var nd = null;
  1041. var cnt = 0;
  1042. var i = 0 ;
  1043. var k = 0 ;
  1044. //선택형 결과
  1045. model.makeValue("/root/send/srchhealexamflag","G");
  1046. if( (vRsltFlag == "O") && (submit("TRAHB00103") == true ) ){
  1047. nd = instance1.selectNodes("/root/main/tempinfo/choilst/item3");
  1048. cnt = nd.length ;
  1049. if( cnt > 0 ) {
  1050. var iStart = 0 ;
  1051. var iEnd = 0 ;
  1052. var vTmp = "";
  1053. while( vRslt != "" ){ //split함수로 변경
  1054. iEnd = vRslt.indexOf(":", iStart );
  1055. if( iEnd < 1) break;
  1056. vTmp = (vRslt.substring(iStart , iEnd )).replace("\n", "");
  1057. iStart = iEnd +1 ;
  1058. for( i = 0, k= 0 ; i< cnt ; i++){
  1059. if( nd.item(i).rsltcd.text == vTmp ) {
  1060. k = i +1;
  1061. model.setValue("/root/main/tempinfo/choilst/item3[" + k + "]/sel", "Y");
  1062. }
  1063. }
  1064. }
  1065. fGetRsltGrpTop(iviewer1.grp_choi) ;
  1066. iviewer1.grp_choi.visible = true;
  1067. }
  1068. }
  1069. else //공단 결과
  1070. if( (vRsltFlag == "A") && (submit("TRAHB00107") == true ) ){
  1071. nd = instance1.selectNodes("/root/main/tempinfo/assorsltlst/itemasso");
  1072. cnt = nd.length;
  1073. if( cnt > 0){
  1074. fGetRsltGrpTop(iviewer1.grp_asso) ;
  1075. iviewer1.grp_asso.visible = true;
  1076. }
  1077. iviewer1.grd_rsltlst.col = col_assorslt;
  1078. iviewer1.grd_rsltlst.editCell();
  1079. }
  1080. }
  1081. /**===================================================================================
  1082. * 결과입력모드 setting
  1083. ===================================================================================*/
  1084. function fSetRsltInptMode(){
  1085. iviewer1.grp_textrslt.visible = false;
  1086. iviewer1.grp_choi.visible = false;
  1087. // iviewer1.grp_asso.visible = false;
  1088. var idx = iviewer1.grd_rsltlst.row;
  1089. if( idx < 1) return ;
  1090. if( iviewer1.grd_rsltlst.colType(iviewer1.grd_rsltlst.col) == "input" ){
  1091. var vRsltFg = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + idx + "]/rsltflag" );
  1092. if( iviewer1.grd_rsltlst.col == col_rslt ){
  1093. var vCode = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + idx + "]/testcd" );
  1094. var vRslt = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + idx + "]/testrsltcnts" );
  1095. if (vRsltFg == "O") {
  1096. //선택형
  1097. fGetRsltExmpList(vCode, vRsltFg, vRslt );
  1098. // alert("선택형");
  1099. }
  1100. else
  1101. if (vRsltFg == "T") {
  1102. //서술형
  1103. iviewer1.tar_textrslt.value = vRslt;
  1104. //fGetRsltGrpTop(grp_textrslt) ;
  1105. model.setValue("/root/main/tempinfo/rslttext/rslt_col", col_rslt);
  1106. model.setValue("/root/main/tempinfo/rslttext/rslt_idx", idx );
  1107. iviewer1.grp_textrslt.visible = true;
  1108. }
  1109. else {
  1110. iviewer1.grd_rsltlst.editCell();
  1111. }
  1112. }
  1113. else
  1114. if( iviewer1.grd_rsltlst.col == col_assorslt ) {
  1115. //공단연계결과
  1116. var vCode = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + idx + "]/testcd" );
  1117. var vRslt = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + idx + "]/assorsltcnts" );
  1118. fGetRsltExmpList(vCode, "A", vRslt );
  1119. }
  1120. else {
  1121. iviewer1.grd_rsltlst.editCell();
  1122. }
  1123. }
  1124. }
  1125. /**===================================================================================
  1126. * 결과입력모드 setting
  1127. ===================================================================================*/
  1128. function fSetRsltInptMode2(){
  1129. grp_text_rslt.visible = false;
  1130. grp_choi.visible = false;
  1131. iviewer1.grp_asso.visible = false;
  1132. var idx = iviewer1.grd_rsltlst2.row;
  1133. if( idx < 1) return ;
  1134. if( iviewer1.grd_rsltlst2.colType(iviewer1.grd_rsltlst2.col) == "input" ){
  1135. var vRsltFg = model.getValue(iviewer1.grd_rsltlst2.nodeset + "[" + idx + "]/rsltflag" );
  1136. if( iviewer1.grd_rsltlst2.col == col_rslt ){
  1137. var vCode = model.getValue(iviewer1.grd_rsltlst2.nodeset + "[" + idx + "]/testcd" );
  1138. var vRslt = model.getValue(iviewer1.grd_rsltlst2.nodeset + "[" + idx + "]/testrsltcnts" );
  1139. if (vRsltFg == "T") {
  1140. //서술형
  1141. textarea1.value = vRslt;
  1142. //fGetRsltGrpTop(grp_textrslt) ;
  1143. model.setValue("/root/main/tempinfo/rslttext/rslt_col", col_rslt);
  1144. model.setValue("/root/main/tempinfo/rslttext/rslt_idx", idx );
  1145. grp_text_rslt.visible = true;
  1146. }
  1147. else {
  1148. iviewer1.grd_rsltlst2.editCell();
  1149. }
  1150. }
  1151. else {
  1152. iviewer1.grd_rsltlst2.editCell();
  1153. }
  1154. }
  1155. }
  1156. /**===================================================================================
  1157. * 선택결과 입력
  1158. ===================================================================================*/
  1159. function fAddRsltChoi(){
  1160. var idx = iviewer1.grd_rsltlst.row ;
  1161. if( idx < 1) return ;
  1162. var oldrslt = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + idx + "]/rsltcnts" );
  1163. if( grd_choilst.col != 1 ) return ;
  1164. var i = grd_choilst.row;
  1165. if( i < 1) return ;
  1166. var nodeList = instance1.selectNodes(grd_choilst.nodeset +"[sel='Y']");
  1167. var rslt = "";
  1168. var node = null;
  1169. if( nodeList.length > 0 ){
  1170. for( var j = 0 ; j < nodeList.length ; j++){
  1171. rslt = rslt + nodeList.item(j).rsltcd.text + ":" + nodeList.item(j).rsltnm.text + "\n" ;
  1172. }
  1173. }
  1174. model.setValue(iviewer1.grd_rsltlst.nodeset + "[" + idx + "]/testrsltcnts", rslt );
  1175. iviewer1.grd_rsltlst.refresh();
  1176. }
  1177. /**=====================================================================================================================
  1178. *기본정보 가져오기
  1179. vClsCd: F=>1차, S:2차,
  1180. vDetlCd: 상세항목코드
  1181. =====================================================================================================================*/
  1182. function fGetEtcInfo(vClsCd, vDetlCd){
  1183. model.makeNode("/root/send/srchclscd");
  1184. model.setValue("/root/send/srchclscd", vClsCd);
  1185. model.makeNode("/root/send/srchetccd");
  1186. model.setValue("/root/send/srchetccd", vDetlCd);
  1187. model.makeNode("/root/send/srchinstcd");
  1188. model.setValue("/root/send/srchinstcd", getUserInfo("dutplceinstcd") );
  1189. model.removeNodeset("/root/temp/baseinfo/comcodelst");
  1190. return submit("TRAHB00604");
  1191. }
  1192. /**=====================================================================================================================
  1193. @desc : 문진내역가져오기
  1194. =====================================================================================================================*/
  1195. function fGetInqrCdList(){
  1196. model.removeNodeset(iviewer1.grd_inqrlst.nodeset);
  1197. model.setValue("/root/send/srchinstcd", getUserInfo("dutplceinstcd") );
  1198. openLoadingBar("문진정보 ") ;//처리중 화면을 오픈한다.
  1199. if( submit("TRAHR01003") == true ){
  1200. iviewer1.grd_inqrlst.refresh();
  1201. var cnt = iviewer1.grd_inqrlst.rows;
  1202. for( var i = 1 ; i <= cnt ; i++){
  1203. if( model.getValue( iviewer1.grd_inqrlst.nodeset + "[" + i + "]/inptflag") == "i" )//입력모드
  1204. {
  1205. iviewer1.grd_inqrlst.addStatus(i, "insert");
  1206. }
  1207. }
  1208. iviewer1.grd_inqrlst.refresh();
  1209. }
  1210. closeLoadingBar() ;//처리중 화면을 close한다.
  1211. }
  1212. /**
  1213. * BMI구하기
  1214. * 체중(KG)/신장(M)^2
  1215. */ function fGetBMI(vWt/*kg*/, vHeight /*cm*/ ){
  1216. if( vWt == "" ) return 0 ;
  1217. if( vHeight == "" ) return 0 ;
  1218. vHeight = parseFloat(vHeight) * 0.01;
  1219. var vBmi = parseFloat(vWt) /(vHeight*vHeight);
  1220. return vBmi;
  1221. }
  1222. /**
  1223. * 소견 및 조치내용 가져오기
  1224. * 소견및 조치내용은 종합판정문구 관리에서 건진구분 - 일반으로 관리.
  1225. * vEditObj : 선택한 판정내용이 입력될 입력컨트롤명
  1226. * SPAHR00300_PARAM1: 다중선택여부(Y/N)
  1227. * SPAHR00300_PARAM2: 목적노드Set
  1228. * SPAHR00300_PARAM3: 종합판정문구코드 목적노드
  1229. * SPAHR00300_PARAM4: 종합판정문구내용 목적노드
  1230. * SPAHR00300_PARAM5: 종합판정문구검색코드
  1231. * SPAHR00300_PARAM6: 종합판정문구검색내용
  1232. * SPAHR00300_PARAM7: 건진구분
  1233. */ function fGetJudgExmpCnts(vEditObj){
  1234. if( vEditObj == null ) return ;
  1235. model.makeNode("/root/temp/judgexaminfo");
  1236. setParameter("SPAHR00300_PARAM1", "Y");
  1237. setParameter("SPAHR00300_PARAM2", "/root/temp/judgexaminfo");
  1238. setParameter("SPAHR00300_PARAM7", fGetHealExamFlag() );
  1239. modal("SPAHR00300", 100, 100, "SPAHR00300");
  1240. if( model.getValue("/root/temp/SPAHR00300/okflag") != "ok" ) return ;
  1241. var vNodeList = instance1.selectNodes("/root/temp/judgexaminfo/list");
  1242. if( vNodeList == null ) reutrn ;
  1243. var vJudgCnts = model.getValue( vEditObj.attribute("ref") );
  1244. for( var i = 0 ; i < vNodeList.length ; i++){
  1245. vJudgCnts += vNodeList.item(i).judghangshrtcnts.text;
  1246. }
  1247. model.setValue( vEditObj.attribute("ref") , vJudgCnts );
  1248. vEditObj.refresh();
  1249. }
  1250. /**
  1251. * 공단 선택형 결과입력
  1252. */
  1253. function fSetAssoRslt(vAssoRslt ){
  1254. var rslt_idx = iviewer1.grd_rsltlst.row;
  1255. if( rslt_idx < 1) return ;
  1256. var asso_idx = 0;
  1257. //공단연계답안 grid에서 double click했을 경우
  1258. if( vAssoRslt == "" ) {
  1259. asso_idx = iviewer1.grd_assorsltlst.row ;
  1260. if( asso_idx < 1) return ;
  1261. vAssoRslt = iviewer1.grd_assorsltlst.valueMatrix( asso_idx , 1)
  1262. }
  1263. else {
  1264. //공단연계결과가 선택형 이고
  1265. //공단연계입력란에서 답안 입력 후 enter 입력시 해당 답이 존재할 경우 true
  1266. if( iviewer1.grp_asso.visible == true ){
  1267. bExistRslt = false;
  1268. for( var i = 1 ; i < iviewer1.grd_assorsltlst.rows ; i++){
  1269. if( vAssoRslt == iviewer1.grd_assorsltlst.valueMatrix( i , 1) ){
  1270. bExistRslt = true;
  1271. }
  1272. }
  1273. if( !bExistRslt ){
  1274. iviewer1.grd_rsltlst.valueMatrix(rslt_idx, col_assorslt ) = "" ;
  1275. iviewer1.grd_rsltlst.row = rslt_idx;
  1276. iviewer1.grd_rsltlst.col = col_assorslt;
  1277. iviewer1.grd_rsltlst.editCell();
  1278. return ;
  1279. }
  1280. }
  1281. }
  1282. iviewer1.grd_rsltlst.valueMatrix(rslt_idx, col_assorslt ) = vAssoRslt ;
  1283. iviewer1.grp_asso.visible = false;
  1284. //row증가
  1285. if( rslt_idx < iviewer1.grd_rsltlst.rows -1 ) {
  1286. rslt_idx++;
  1287. iviewer1.grd_rsltlst.row = rslt_idx;
  1288. }
  1289. else {
  1290. return ;
  1291. }
  1292. fSetRsltInptMode();
  1293. /*
  1294. if( rslt_idx < iviewer1.grd_rsltlst.rows -1 ){
  1295. rslt_idx++;
  1296. iviewer1.grd_rsltlst.row = rslt_idx;
  1297. var vCode = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + rslt_idx++ + "]/testcd" );
  1298. var vRslt = model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + rslt_idx++ + "]/assorsltcnts" );
  1299. fGetRsltExmpList(vCode, "A", vRslt );
  1300. }*/
  1301. }
  1302. /**
  1303. * 선택형 결과 및 공단결과/서술형 결과 입력 group box를 띄울때 box의 적합한 위치를 가져온다.
  1304. */
  1305. function fGetRsltGrpTop(vGrpObj ){
  1306. if( vGrpObj == null ) return ;
  1307. var grp_height = parseInt(vGrpObj.attribute("height")) ;
  1308. var rslt_height = parseInt( iviewer1.grd_rsltlst.attribute("height") ) ;
  1309. //결과grid bottom
  1310. var rslt_bottom = parseInt( iviewer1.grd_rsltlst.attribute("top") ) + parseInt(rslt_height) ;
  1311. // group object의 top
  1312. var grp_top = parseInt( iviewer1.grd_rsltlst.attribute("top") ) + parseInt( iviewer1.grd_rsltlst.rowheight(1) )* parseInt(iviewer1.grd_rsltlst.row +1);
  1313. var grp_bottom = parseInt(grp_top) + parseInt(grp_height );
  1314. if( grp_bottom > rslt_bottom ) {
  1315. grp_top = grp_top - grp_height - parseInt( iviewer1.grd_rsltlst.rowheight(1) ) ;
  1316. }
  1317. vGrpObj.attribute("top") = grp_top;
  1318. }
  1319. /**
  1320. * 건진 구분별 판정 버튼 visible/hidden처리
  1321. * vG01DetlFg : 공단건진 상세분류 (1/2차 )
  1322. */ function fSetJudgBtnState(vG01DetlFg){
  1323. var healexamdetlfg = cmb_srchhealexamdetlflag.value;
  1324. if( healexamdetlfg == "G01") //공단건진
  1325. {
  1326. btn_fstjudg.visible = true;
  1327. btn_secondjudg.visible = true;
  1328. btn_oraljudg.visible = true;
  1329. model.toggle("case_first");
  1330. }
  1331. else
  1332. if( healexamdetlfg == "G03" )//특수
  1333. {
  1334. btn_specjudg.visible = true;
  1335. model.toggle("case_spec");
  1336. }/*
  1337. else//혈액정밀
  1338. {
  1339. btn_genrjudg.visible = true;
  1340. model.toggle("case_genr");
  1341. }
  1342. */
  1343. }
  1344. /**
  1345. ** 결과입력 grid size 늘이기/줄이기
  1346. */ function fSetRsltSwtSize2( bLarge ){
  1347. //기존상태 높이
  1348. var cur_height = 298;
  1349. var max_height = 553 ;
  1350. if( bLarge == true ){
  1351. cur_height = max_height ;
  1352. btn_down.visible = false;
  1353. btn_up.visible = true;
  1354. }
  1355. else {
  1356. btn_down.visible = true;
  1357. btn_up.visible = false;
  1358. }
  1359. iviewer1.grd_rsltlst2.attribute("height") = parseInt( cur_height ) ;
  1360. }
  1361. /**===================================================================================
  1362. @desc : 외래결과연동 (해당 건진자에 대한 연동....)
  1363. ===================================================================================*/
  1364. function fGetOutRslt(){
  1365. var sPid = model.getValue("/root/main/acptinfo/item/pid") ;
  1366. if( sPid == "" ) return ;
  1367. var sOrddd = model.getValue("/root/main/acptinfo/item/orddd") ;
  1368. var iCretno = model.getValue("/root/main/acptinfo/item/cretno") ;
  1369. var sHealExamFlag = fGetHealExamFlag() ;
  1370. var sRsrvdd = model.getValue("/root/main/acptinfo/item/rsrvdd") ;
  1371. var sRsrvno = model.getValue("/root/main/acptinfo/item/rsrvno") ;
  1372. var sHealExamDetlFlag = model.getValue("/root/main/acptinfo/item/healexamdetlflag") ;
  1373. model.makeValue("/root/send/saveout/pid" , sPid );
  1374. model.makeValue("/root/send/saveout/orddd" , sOrddd );
  1375. model.makeValue("/root/send/saveout/cretno" , iCretno );
  1376. model.makeValue("/root/send/saveout/healexamflag" , sHealExamFlag );
  1377. model.makeValue("/root/send/saveout/healexamdetlflag" , sHealExamDetlFlag );
  1378. model.makeValue("/root/send/saveout/rsrvdd" , sRsrvdd );
  1379. model.makeValue("/root/send/saveout/rsrvno" , sRsrvno );
  1380. model.makeValue("/root/send/saveout/instcd" , getUserInfo("dutplceinstcd") );
  1381. openLoadingBar("외래결과 ") ;//처리중 화면을 오픈한다.
  1382. var ret = submit("TXAHR00202");
  1383. closeLoadingBar() ;//처리중 화면을 close한다.
  1384. if( ret == true ){
  1385. fGetRsltInfo();
  1386. }
  1387. }
  1388. /**
  1389. ** 결과입력 grid size 늘이기/줄이기
  1390. */ function fSetRsltSwtSize( bLarge ){
  1391. //기존상태 높이
  1392. var cur_height = 298;
  1393. var max_height = 553 ;
  1394. if( bLarge == true ){
  1395. cur_height = max_height ;
  1396. btn_large.visible = false;
  1397. btn_small.visible = true;
  1398. }
  1399. else {
  1400. btn_large.visible = true;
  1401. btn_small.visible = false;
  1402. }
  1403. iviewer1.grd_rsltlst.attribute("height") = parseInt( cur_height ) ;
  1404. }
  1405. ]]>
  1406. </script>
  1407. </xhtml:head>
  1408. <xhtml:body guideline="1,529;">
  1409. <line id="line8" class="line_1" style="x1:0px; y1:95px; x2:410px; y2:95px; "/>
  1410. <button id="button1" class="btn2_letter6" visibility="hidden" style="left:1103px; top:75px; width:86px; height:19px; ">
  1411. <caption>통합검사결과</caption>
  1412. <script type="javascript" ev:event="DOMActivate">
  1413. <![CDATA[
  1414. ahafOpenRsltView( opt_pid.attribute("ref") );
  1415. ]]>
  1416. </script>
  1417. </button>
  1418. <select id="chk_reexamfg" ref="/root/main/acptinfo/item/reexamfg" overflow="visible" appearance="full" style="left:1133px; top:129px; width:51px; height:15px; border-style:none; ">
  1419. <choices>
  1420. <item>
  1421. <label>대상</label>
  1422. <value>1</value>
  1423. </item>
  1424. </choices>
  1425. </select>
  1426. <output id="opt_pkgcd" ref="/root/main/acptinfo/item/pkgcd" class="output_fix" visibility="hidden" style="left:810px; top:127px; width:70px; height:19px; "/>
  1427. <output id="opt_sex" ref="/root/main/acptinfo/item/sex" class="output_fix" style="left:1005px; top:102px; width:25px; height:19px; "/>
  1428. <line id="line9" class="line_2" style="x1:0px; y1:123px; x2:410px; y2:123px; "/>
  1429. <button id="button2" class="btn5_letter4" style="left:1060px; top:154px; width:64px; height:19px; ">
  1430. <caption>결과저장</caption>
  1431. <script type="javascript" ev:event="DOMActivate">
  1432. <![CDATA[
  1433. if( messageBox("결과내역을 ", "Q002") == 6 ) {
  1434. //비자건진일시 저장 하는 서브밋이 다름 묶음과 재검코드 깨문에 따로 뺌
  1435. if(cmb_srchhealexamdetlflag.value=="G02"){
  1436. //공통 데이터 저장 인스턴스 초기화
  1437. fInitSaveData();
  1438. //건진 결과 테이블에 저장
  1439. fSaveRslt2("R");
  1440. }
  1441. //비자건진이 아니면
  1442. else{
  1443. fInitSaveData();
  1444. fSaveRslt("R");
  1445. } //fSaveRsltInfo
  1446. }
  1447. ]]>
  1448. </script>
  1449. </button>
  1450. <output id="output21" ref="/root/main/acptinfo/item/rgstno2" class="output_fix" style="left:878px; top:102px; width:60px; height:19px; "/>
  1451. <button id="btn_canc" class="btn_sw" visibility="hidden" group="tab" style="left:710px; top:155px; width:72px; height:22px; ">
  1452. <caption>암검사결과</caption>
  1453. <toggle case="case_canc" ev:event="onclick"/>
  1454. </button>
  1455. <output id="opt_cmpynm" ref="/root/main/acptinfo/item/cmpynm" class="output_fix" style="left:589px; top:127px; width:160px; height:19px; "/>
  1456. <line id="line10" class="line_2" style="x1:0px; y1:713px; x2:410px; y2:713px; "/>
  1457. <button id="btn_inqr" class="btn_sw" group="tab" style="left:500px; top:153px; width:66px; height:22px; ">
  1458. <caption>문진표</caption>
  1459. <script type="javascript" ev:event="onclick">
  1460. <![CDATA[
  1461. iviewer1.src = "../../../ast/healexamweb/xrw/SMAHR02300_문진결과.xrw";
  1462. iviewer1.window.javascript.fInitDasplay();
  1463. grd_acptlst.dispatch("onclick");
  1464. ]]>
  1465. </script>
  1466. </button>
  1467. <input id="ipt_findpnm" ref="/root/main/etcinfo/findpnm" class="input_default" style="left:65px; top:102px; width:115px; height:19px; ">
  1468. <script type="javascript" ev:event="onkeyup">
  1469. <![CDATA[
  1470. inputEnterKey("btn_findpnm","DOMActivate");
  1471. ]]>
  1472. </script>
  1473. </input>
  1474. <line id="line11" class="line_2" style="x1:415px; y1:123px; x2:1179px; y2:123px; "/>
  1475. <select1 id="rdo_plceflag" ref="/root/main/acptinfo/item/plceflag" disabled="true" overflow="visible" appearance="full" cols="2" rows="1" style="left:1099px; top:102px; width:80px; height:20px; border-style:none; ">
  1476. <choices>
  1477. <itemset nodeset="/root/init/baseinfo/plceflag/A0110">
  1478. <label ref="cdnm"/>
  1479. <value ref="cdid"/>
  1480. </itemset>
  1481. </choices>
  1482. </select1>
  1483. <output id="opt_cmpycd" ref="/root/main/acptinfo/item/cmpycd" class="output_fix" visibility="hidden" style="left:473px; top:127px; width:75px; height:19px; "/>
  1484. <caption id="caption20" class="cell_1" style="left:551px; top:125px; width:35px; height:23px; vertical-align:middle; ">단체</caption>
  1485. <output id="opt_hngnm" ref="/root/main/acptinfo/item/hngnm" class="output_fix" style="left:589px; top:102px; width:160px; height:19px; "/>
  1486. <line id="line12" class="line_2" style="x1:10px; y1:738px; x2:410px; y2:738px; "/>
  1487. <caption id="caption54" class="search_n_b" style="left:864px; top:102px; width:12px; height:17px; font-weight:bolder; ">-</caption>
  1488. <caption id="caption21" class="cell_1" style="left:941px; top:125px; width:61px; height:23px; vertical-align:middle; ">반/번호</caption>
  1489. <group id="group2" style="left:0px; top:14px; width:1195px; height:60px; vertical-align:top; ">
  1490. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1194px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  1491. <caption id="caption13" class="search_name" style="left:5px; top:34px; width:94px; height:17px; ">건진일자 :</caption>
  1492. <caption id="caption34" class="search_n_b" style="left:196px; top:32px; width:12px; height:17px; font-weight:bolder; ">~</caption>
  1493. <select1 id="cmb_srchhealexamdetlflag" ref="/root/send/srchhealexamdetlflag" class="combo_search" appearance="minimal" style="left:92px; top:8px; width:223px; height:19px; ">
  1494. <choices>
  1495. <itemset nodeset="/root/init/baseinfo/hedetlflaglst/A0070">
  1496. <label ref="cdnm"/>
  1497. <value ref="cdid"/>
  1498. </itemset>
  1499. </choices>
  1500. <script type="javascript" ev:event="xforms-select">
  1501. <![CDATA[
  1502. //비자건진 이라면
  1503. if(cmb_srchhealexamdetlflag.value=="G02"){
  1504. btn_rslt2.dispatch("onclick");
  1505. fSetJudgBtnState();
  1506. fGetRsltPatList();
  1507. }
  1508. else{
  1509. fSetJudgBtnState();
  1510. fGetRsltPatList();
  1511. }
  1512. ]]>
  1513. </script>
  1514. </select1>
  1515. <input id="ipt_srchfromdd" ref="/root/send/srchfromdd" class="input_s_essential" inputtype="date" style="left:92px; top:30px; width:100px; height:19px; "/>
  1516. <input id="ipt_srchtodd" ref="/root/send/srchtodd" class="input_s_essential" inputtype="date" style="left:215px; top:30px; width:100px; height:19px; ">
  1517. <script type="javascript" ev:event="xforms-value-changed">
  1518. <![CDATA[
  1519. fGetRsltPatList();
  1520. ]]>
  1521. </script>
  1522. </input>
  1523. <input id="ipt_srchcmpycd" ref="/root/send/srchcmpycd" class="input_search" style="left:855px; top:8px; width:80px; height:19px; ">
  1524. <script type="javascript" ev:event="onkeyup">
  1525. <![CDATA[
  1526. inputEnterKey("btn_selcmpy", "DOMActivate");
  1527. ]]>
  1528. </script>
  1529. </input>
  1530. <button id="btn_selcmpy" class="icon_search" style="left:940px; top:11px; width:16px; height:16px; ">
  1531. <caption/>
  1532. <script type="javascript" ev:event="DOMActivate">
  1533. <![CDATA[
  1534. fGetComnCd("SMAHA00400", "08" , "nm", ipt_srchcmpycd.currentText ,ipt_srchcmpycd.attribute("ref"), opt_srchcmpynm.attribute("ref"));
  1535. ]]>
  1536. </script>
  1537. </button>
  1538. <output id="opt_srchcmpynm" ref="/root/send/srchcmpynm" class="output_fix" style="left:960px; top:8px; width:140px; height:19px; "/>
  1539. <input id="ipt_srchpkgcd" ref="/root/send/srchpkgcd" class="input_search" style="left:855px; top:30px; width:80px; height:19px; ">
  1540. <script type="javascript" ev:event="onkeyup">
  1541. <![CDATA[
  1542. inputEnterKey("btn_selpkg","DOMActivate");
  1543. ]]>
  1544. </script>
  1545. </input>
  1546. <button id="btn_selpkg" class="icon_search" style="left:940px; top:32px; width:16px; height:16px; ">
  1547. <caption/>
  1548. <script type="javascript" ev:event="DOMActivate">
  1549. <![CDATA[
  1550. model.resetInstanceNode("/root/temp/pkginfo/item");
  1551. fGetPkgCd("SMAHA00100", "P", "N","nm" , ipt_srchpkgcd.currentText , model.getValue("/root/send/srchhealexamdetlflag") , "" , "/root/temp/pkginfo/item");
  1552. if(model.getValue("/root/temp/pkginfo/item/pkgcd") != "") {
  1553. model.setValue(ipt_srchpkgcd.attribute("ref") , model.getValue("/root/temp/pkginfo/item/pkgcd") );
  1554. ipt_srchpkgcd.refresh();
  1555. model.setValue(opt_srchpkgnm.attribute("ref") , model.getValue("/root/temp/pkginfo/item/pkgnm") );
  1556. opt_srchpkgnm.refresh();
  1557. }
  1558. ]]>
  1559. </script>
  1560. </button>
  1561. <output id="opt_srchpkgnm" ref="/root/send/srchpkgnm" class="output_fix" style="left:960px; top:30px; width:140px; height:19px; "/>
  1562. <caption id="caption42" class="search_name" style="left:776px; top:8px; width:86px; height:17px; ">거래처 :</caption>
  1563. <button id="btn_search" class="btn1_letter2" style="left:1124px; top:19px; width:56px; height:22px; ">
  1564. <caption>조회</caption>
  1565. <script type="javascript" ev:event="DOMActivate">
  1566. <![CDATA[
  1567. fGetRsltPatList();
  1568. ]]>
  1569. </script>
  1570. </button>
  1571. <line id="line3" style="x1:1108px; y1:8px; x2:1108px; y2:51px; border-color:#ffe4bb; border-left-style:solid; "/>
  1572. <caption id="caption4" class="search_name" style="left:5px; top:9px; width:86px; height:17px; ">검진구분 :</caption>
  1573. <caption id="caption8" class="search_name" style="left:776px; top:30px; width:86px; height:17px; ">패키지 :</caption>
  1574. <input id="ipt_pid" ref="/root/send/srchpid2" class="input_search" style="left:410px; top:8px; width:60px; height:19px; ">
  1575. <script type="javascript" ev:event="onkeyup">
  1576. <![CDATA[
  1577. if( event.keyCode != 13) return ;
  1578. fGetPatInfo(2);
  1579. model.setValue(ipt_pid.attribute("ref"), model.getValue("/root/temp/patinfo/item/pid") );
  1580. model.setValue(ipt_pnm.attribute("ref"), model.getValue("/root/temp/patinfo/item/hngnm") );
  1581. fGetRsltPatList();
  1582. ]]>
  1583. </script>
  1584. </input>
  1585. <button id="btn_srchpat" class="icon_search" style="left:473px; top:10px; width:16px; height:16px; ">
  1586. <caption/>
  1587. <script type="javascript" ev:event="DOMActivate">
  1588. <![CDATA[
  1589. fSearchPatInfo("SMAHA00100", "pnm", ipt_pnm.currentText , "N", "/root/send" ,ipt_pid.attribute("ref"), ipt_pnm.attribute("ref") );
  1590. if( model.getValue(ipt_pid.attribute("ref")) != "" ) fGetRsltPatList();
  1591. ]]>
  1592. </script>
  1593. </button>
  1594. <input id="ipt_pnm" ref="/root/send/srchpnm" class="input_search" style="left:490px; top:10px; width:90px; height:19px; ">
  1595. <script type="javascript" ev:event="onkeyup">
  1596. <![CDATA[
  1597. inputEnterKey("btn_srchpat","DOMActivate");
  1598. ]]>
  1599. </script>
  1600. </input>
  1601. <caption id="caption14" class="search_name" style="left:320px; top:8px; width:89px; height:17px; ">환자검색 :</caption>
  1602. <select1 id="cmb_srchroomcd" ref="/root/send/srchroomcd" class="combo_s_essential" appearance="minimal" style="left:660px; top:10px; width:97px; height:19px; ">
  1603. <choices>
  1604. <itemset nodeset="/root/init/room/roomlst/itemroom">
  1605. <label ref="testroomnm"/>
  1606. <value ref="testroomcd"/>
  1607. </itemset>
  1608. </choices>
  1609. </select1>
  1610. <caption id="caption9" class="search_name" style="left:320px; top:30px; width:89px; height:17px; ">조회구분 :</caption>
  1611. <caption id="caption32" class="search_name" style="left:592px; top:11px; width:74px; height:17px; ">검사실:</caption>
  1612. <select1 id="rdo_srchcond" ref="/root/send/srchstatfg" class="radio_search" overflow="visible" appearance="full" cellspacing="5" cols="3" style="left:410px; top:30px; width:95px; height:20px; border-style:none; ">
  1613. <choices>
  1614. <item>
  1615. <label>결과</label>
  1616. <value>G</value>
  1617. </item>
  1618. <item>
  1619. <label>판정</label>
  1620. <value>H</value>
  1621. </item>
  1622. </choices>
  1623. <script type="javascript" ev:event="xforms-select">
  1624. <![CDATA[
  1625. fGetRsltPatList();
  1626. ]]>
  1627. </script>
  1628. </select1>
  1629. <select id="checkbox1" ref="/root/send/dgflag" overflow="visible" appearance="full" cols="2" style="left:615px; top:30px; width:130px; height:20px; border-style:none; ">
  1630. <choices>
  1631. <item>
  1632. <label>1차검사</label>
  1633. <value>1</value>
  1634. </item>
  1635. <item>
  1636. <label>2차검사</label>
  1637. <value>2</value>
  1638. </item>
  1639. </choices>
  1640. </select>
  1641. </group>
  1642. <caption id="caption1" class="cell_1" style="left:415px; top:100px; width:55px; height:23px; vertical-align:middle; ">등록번호</caption>
  1643. <button id="btn_rslt" class="btn_sw" group="tab" style="left:414px; top:153px; width:84px; height:22px; ">
  1644. <caption>검사결과</caption>
  1645. <script type="javascript" ev:event="onclick">
  1646. <![CDATA[
  1647. iviewer1.src = "../../../ast/healexamweb/xrw/SMAHR02100_1차건진결과.xrw";
  1648. iviewer1.window.javascript.fInitDasplay();
  1649. grd_acptlst.dispatch("onclick");
  1650. ]]>
  1651. </script>
  1652. </button>
  1653. <caption id="caption11" class="cell_1" style="left:752px; top:125px; width:55px; height:23px; vertical-align:middle; ">패키지</caption>
  1654. <caption id="caption2" class="tit_2" style="left:419px; top:80px; width:95px; height:13px; ">결과입력</caption>
  1655. <caption id="caption23" class="cell_1" style="left:1062px; top:100px; width:36px; height:23px; vertical-align:middle; ">장소</caption>
  1656. <output id="opt_pid" ref="/root/main/acptinfo/item/pid" class="output_fix" style="left:473px; top:102px; width:75px; height:19px; "/>
  1657. <caption id="caption12" class="tit_2" style="left:5px; top:80px; width:151px; height:13px; ">수진자명단</caption>
  1658. <caption id="caption3" class="cell_1" style="left:551px; top:100px; width:35px; height:23px; vertical-align:middle; ">성명</caption>
  1659. <output id="opt_rgstno1" ref="/root/main/acptinfo/item/rgstno1" class="output_fix" style="left:810px; top:102px; width:50px; height:19px; "/>
  1660. <output id="ipt_orddd" ref="/root/main/acptinfo/item/orddd" class="output_fix" format="yyyy-mm-dd" style="left:473px; top:127px; width:75px; height:19px; "/>
  1661. <caption id="caption47" class="cell_1" style="left:1099px; top:125px; width:35px; height:23px; vertical-align:middle; ">재검</caption>
  1662. <output id="opt_clsid" ref="/root/main/acptinfo/item/clsid" class="output_fix" style="left:1033px; top:127px; width:25px; height:19px; "/>
  1663. <line id="line1" class="line_2" style="x1:415px; y1:148px; x2:1179px; y2:148px; "/>
  1664. <caption id="caption5" class="cell_1" style="left:752px; top:100px; width:55px; height:23px; vertical-align:middle; ">주민번호</caption>
  1665. <line id="line17" class="line_1" style="x1:414px; y1:95px; x2:1189px; y2:95px; "/>
  1666. <caption id="caption15" class="cell_1" style="left:941px; top:100px; width:61px; height:23px; vertical-align:middle; ">성별/나이</caption>
  1667. <caption id="caption16" class="cell_1" style="left:415px; top:125px; width:55px; height:23px; vertical-align:middle; ">검진일자</caption>
  1668. <output id="opt_schlgrde" ref="/root/main/acptinfo/item/schlgrde" class="output_fix" style="left:1005px; top:127px; width:25px; height:19px; "/>
  1669. <caption id="caption18" class="cell_1" style="left:0px; top:100px; width:62px; height:23px; vertical-align:middle; ">수진자명</caption>
  1670. <output id="output1" ref="/root/main/acptlst/count/patcnt" class="output_fix" format="#,###" style="left:134px; top:717px; width:130px; height:19px; text-align:right; "/>
  1671. <button id="btn_savepatinfo" class="btn5_letter4" style="left:1125px; top:154px; width:64px; height:19px; ">
  1672. <caption>문진저장</caption>
  1673. <script type="javascript" ev:event="DOMActivate">
  1674. <![CDATA[
  1675. if( messageBox("문진을 ", "Q002") == 6 ) {
  1676. fInitSaveData();
  1677. fSaveRslt("I"); //fSaveRsltInfo 저장
  1678. }
  1679. ]]>
  1680. </script>
  1681. </button>
  1682. <output id="output2" ref="/root/main/acptinfo/item/age" class="output_fix" style="left:1034px; top:102px; width:25px; height:19px; "/>
  1683. <button id="btn_rslt2" class="btn_sw" visibility="hidden" group="tab" style="left:634px; top:153px; width:70px; height:22px; ">
  1684. <caption>검사결과2</caption>
  1685. <toggle case="case_rslt2" ev:event="onclick"/>
  1686. </button>
  1687. <line id="line6" class="line_3" style="x1:0px; y1:741px; x2:410px; y2:741px; "/>
  1688. <caption id="caption19" class="cell_1" style="left:-5px; top:715px; width:136px; height:23px; vertical-align:middle; ">총 수진자/총 패키지</caption>
  1689. <button id="btn_findpnm" class="icon_search" style="left:183px; top:102px; width:16px; height:16px; ">
  1690. <caption/>
  1691. <script type="javascript" ev:event="DOMActivate">
  1692. <![CDATA[
  1693. var idx = grd_acptlst.findRow(ipt_findpnm.currentText, 1, col_pnm);
  1694. grd_acptlst.row = idx;
  1695. model.setFocus("grd_acptlst");
  1696. fGetRsltInfo(true);
  1697. ]]>
  1698. </script>
  1699. </button>
  1700. <output id="output3" ref="/root/main/acptinfo/item/stuid" class="output_fix" style="left:1061px; top:127px; width:36px; height:19px; "/>
  1701. <output id="opt_pkgnm" ref="/root/main/acptinfo/item/pkgnm" class="output_fix" style="left:810px; top:127px; width:128px; height:19px; "/>
  1702. <output id="opt_pkgcnt" ref="/root/main/acptlst/count/pkgcnt" class="output_fix" format="#,###" style="left:267px; top:717px; width:140px; height:19px; text-align:right; "/>
  1703. <datagrid id="grd_acptlst" nodeset="/root/main/acptlst/item" caption="등록번호^성명^성명(영)^패키지명^접수일자^sex^age^단체명^주민번호1^주민번호2^단체코드^패키지코드^학년^반^번호^예약등록일자^예약번호^원무생성번호^진료과^상세구분^구분^진료과" colsep="^" colwidth="66, 69, 67, 110, 78, 30, 35, 100, 71, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 100, 65" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" tooltip="true" style="left:0px; top:127px; width:410px; height:579px; border-style:solid; ">
  1704. <col ref="pid"/>
  1705. <col ref="hngnm"/>
  1706. <col ref="engnm" visibility="hidden"/>
  1707. <col ref="pkgnm"/>
  1708. <col ref="orddd" format="yyyy-mm-dd"/>
  1709. <col ref="sex" visibility="hidden"/>
  1710. <col ref="age" visibility="hidden"/>
  1711. <col ref="cmpynm" visibility="hidden"/>
  1712. <col ref="rgstno1" visibility="hidden"/>
  1713. <col ref="rgstno2" visibility="hidden"/>
  1714. <col ref="cmpycd" visibility="hidden"/>
  1715. <col ref="pkgcd" visibility="hidden"/>
  1716. <col ref="schlgrde" visibility="hidden"/>
  1717. <col ref="clsid" visibility="hidden"/>
  1718. <col ref="stuid" visibility="hidden"/>
  1719. <col ref="rsrvdd" visibility="hidden"/>
  1720. <col ref="rsrvno" visibility="hidden"/>
  1721. <col ref="cretno" visibility="hidden"/>
  1722. <col ref="orddeptcd" visibility="hidden"/>
  1723. <col ref="healexamdetlflag" visibility="hidden"/>
  1724. <col disabled="true" ref="statflag" type="combo">
  1725. <choices>
  1726. <itemset nodeset="/root/init/baseinfo/statlst/A0107">
  1727. <label ref="cdnm"/>
  1728. <value ref="cdid"/>
  1729. </itemset>
  1730. </choices>
  1731. </col>
  1732. <script type="javascript" ev:event="onclick">
  1733. <![CDATA[
  1734. //조회가 비자건진 이라면 fGetRsltInfo
  1735. if(cmb_srchhealexamdetlflag.value=="G02"){
  1736. iviewer1.grd_rsltlst2.visible=true;
  1737. fGetRsltInfo2(true);
  1738. }
  1739. //비자 이외의 건진일시에
  1740. else{
  1741. iviewer1.window.javascript.fViewNum();
  1742. fGetRsltInfo(true);
  1743. iviewer1.window.javascript.fInitDasplay();
  1744. // iviewer1.window.javascript.fInitDasplayResult();
  1745. }
  1746. ]]>
  1747. </script>
  1748. <script type="javascript" ev:event="onaftersort">
  1749. <![CDATA[
  1750. grd_acptlst.gridToInstance();
  1751. ]]>
  1752. </script>
  1753. </datagrid>
  1754. <iviewer id="iviewer1" src="../../../ast/healexamweb/xrw/SMAHR02100_1차건진결과.xrw" style="left:414px; top:175px; width:785px; height:565px; "/>
  1755. <button id="button3" class="btn5_letter4" style="left:994px; top:154px; width:64px; height:19px; ">
  1756. <caption>외래결과</caption>
  1757. <script type="javascript" ev:event="DOMActivate">
  1758. <![CDATA[
  1759. fGetOutRslt();
  1760. ]]>
  1761. </script>
  1762. </button>
  1763. <button id="button4" class="btn2_letter4" style="left:929px; top:154px; width:64px; height:19px; ">
  1764. <caption>CDIS연동</caption>
  1765. <script type="javascript" ev:event="DOMActivate">
  1766. <![CDATA[
  1767. model.makeValue("/root/temp/prcpdd" , model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + iviewer1.grd_rsltlst.row + "]/prcpdd"));
  1768. model.makeValue("/root/temp/seqno" , model.getValue(iviewer1.grd_rsltlst.nodeset + "[" + iviewer1.grd_rsltlst.row + "]/execprcpuniqno"));
  1769. model.makeValue("/root/temp/instcd" ,getUserInfo("dutplceinstcd"));
  1770. fClickCDISResultList(iviewer1.grd_rsltlst);
  1771. ]]>
  1772. </script>
  1773. </button>
  1774. <button id="button6" class="btn2_letter5" style="left:853px; top:154px; width:75px; height:19px; ">
  1775. <caption>PACS연동</caption>
  1776. <script type="javascript" ev:event="DOMActivate">
  1777. <![CDATA[
  1778. // fClickPACSOrdPatResultList(model.getValue("/root/main/acptinfo/item/orddd"),model.getValue("/root/main/acptinfo/item/pid"));
  1779. // fClickPACSOrdPatResultList(grd_mainserious);
  1780. // zepfpacsAll(model.getValue("/root/main/acptinfo/item/orddd"),model.getValue("/root/main/acptinfo/item/pid"));
  1781. if ( grd_acptlst.row == 0 ) return;
  1782. if ( model.getValue("/root/main/acptinfo/item/pid") == "" ) {
  1783. messageBox("등록번호를 입력하세요.","I999");
  1784. return true;
  1785. }else{
  1786. fClickPACSOrdPatResultList(grd_acptlst);
  1787. }
  1788. ]]>
  1789. </script>
  1790. </button>
  1791. <button id="btn_prntdiag" class="btn3_letter5" style="left:0px; top:745px; width:96px; height:22px; ">
  1792. <caption>결과출력</caption>
  1793. <script type="javascript" ev:event="onclick">
  1794. <![CDATA[
  1795. clearParameter("SMAHR00900_PARAM1");
  1796. setParameter("SMAHR00900_PARAM1","G");
  1797. setParameter("SMAHR00900_PARAM100","G");
  1798. modal( "SMAHR00900");
  1799. ]]>
  1800. </script>
  1801. </button>
  1802. </xhtml:body>
  1803. </xhtml:html>