SPPMC02500_환자조회.xrw 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <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">
  4. <xhtml:head>
  5. <xhtml:title>환자기초정보조회</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <patinfo>
  11. <patinfolist/>
  12. </patinfo>
  13. </main>
  14. <send>
  15. <srchcond/>
  16. <pid/>
  17. <hngnm/>
  18. <rrgstno1/>
  19. <rrgstno2/>
  20. <acptdd/>
  21. </send>
  22. <init>
  23. <P0350list>
  24. <P0350>
  25. <cdnm/>
  26. <cdid/>
  27. </P0350>
  28. </P0350list>
  29. <orddeptcd>
  30. <orddeptcdlist>
  31. <cd/>
  32. <nm/>
  33. </orddeptcdlist>
  34. </orddeptcd>
  35. <orddrid>
  36. <orddridlist>
  37. <cd/>
  38. <nm/>
  39. <dp/>
  40. <sp/>
  41. </orddridlist>
  42. </orddrid>
  43. </init>
  44. <hidden>
  45. <uid>
  46. <myself/>
  47. <opener/>
  48. </uid>
  49. <tmp/>
  50. </hidden>
  51. </root>
  52. </instance>
  53. <script type="javascript" ev:event="xforms-ready">
  54. <![CDATA[
  55. zbcfGetCodeList(new Array("P0350"), new Array("/root/init/P0350list"));
  56. //진료과코드 진료의사ID 조회
  57. pamGetDeptCDDrIDList();
  58. //플래그 초기화!
  59. opener.model.makeNode("/root/main/popupendflag");
  60. opener.model.setValue("/root/main/popupendflag", "cancel");
  61. var sp = opener.document.url.split("/");
  62. var nsp = sp[sp.length-1].split(".")[0].substr(0,10);
  63. // pamcomnweb/pam.js 추가이력 20100224 JHP SPPMC02500_환자조회 원무쪽과 원무이외의쪽 구분하는 구분 변수 var PatRefPamFlag 전역변수
  64. PatRefPamFlag = nsp.substr(0,3);
  65. if(PatRefPamFlag == "SMP" || PatRefPamFlag == "SPP"){
  66. grd_patinfo.visible = true;
  67. grd_patinfo2.visible= false;
  68. }else{
  69. grd_patinfo.visible = false;
  70. grd_patinfo2.visible= true;
  71. }
  72. if( getNodesetCount("/root/send/srchcond") > 0 ){
  73. if( model.getValue("/root/send/checkfnexam") != "1" ){
  74. //조회조건에서 '예약일시'를 제거한다.
  75. cmb_cond.choices.itemset.attribute("nodeset") = "/root/init/P0350list/P0350[cdid != '5' ]";
  76. }
  77. if( model.getValue("/root/send/srchcond") == '' || model.getValue("/root/send/srchcond") == '-' ){
  78. model.setValue("/root/send/srchcond", "4");
  79. }
  80. fChangeSearchCondition( model.getValue("/root/send/srchcond") );
  81. model.refresh();
  82. //값이 부모창에서 입력되었을 경우 조회한다.
  83. if(model.getValue("/root/send/srchcond") != '5' && fInputValueCheckXformsReady() ){
  84. //if( fInputValueCheckXformsReady() ){
  85. if( submit("TRPMC02500") ){
  86. if(PatRefPamFlag == "SMP" || PatRefPamFlag == "SPP"){
  87. if( grd_patinfo.rows == 2 ){
  88. if( model.getValue("/root/send/autoflag").toUpperCase() == "Y" ){ //조회 내역이 1건일 경우 자동 화면 닫기
  89. model.setFocus("grd_patinfo");
  90. btn_confirm.dispatch("DOMActivate");
  91. window.close();
  92. }
  93. }
  94. if( grd_patinfo.rows > 1 ){
  95. model.setFocus("grd_patinfo");
  96. }else{
  97. if( model.getValue("/root/send/autoflag").toUpperCase() == "NON" ){ //조회 내역이 없을 경우 자동 화면 닫기
  98. //model.setFocus("grd_patinfo");
  99. btn_cancel.dispatch("DOMActivate");
  100. //window.close();
  101. }
  102. fChangeSearchCondition( cmb_cond.value );
  103. }
  104. }else{
  105. if( grd_patinfo2.rows == 2 ){
  106. if( model.getValue("/root/send/autoflag").toUpperCase() == "Y" ){ //조회 내역이 1건일 경우 자동 화면 닫기
  107. model.setFocus("grd_patinfo2");
  108. btn_confirm.dispatch("DOMActivate");
  109. window.close();
  110. }
  111. }
  112. if( grd_patinfo2.rows > 1 ){
  113. model.setFocus("grd_patinfo2");
  114. }else{
  115. if( model.getValue("/root/send/autoflag").toUpperCase() == "NON" ){ //조회 내역이 없을 경우 자동 화면 닫기
  116. //model.setFocus("grd_patinfo");
  117. btn_cancel.dispatch("DOMActivate");
  118. //window.close();
  119. }
  120. fChangeSearchCondition( cmb_cond.value );
  121. }
  122. }
  123. }
  124. }
  125. }else{
  126. //조회조건에서 '예약일시'를 제거한다.
  127. cmb_cond.choices.itemset.attribute("nodeset") = "/root/init/P0350list/P0350[cdid != '5' ]";
  128. model.makeNode("/root/send/srchcond");
  129. model.makeNode("/root/send/pid");
  130. model.makeNode("/root/send/hngnm");
  131. model.makeNode("/root/send/rrgstno1");
  132. model.makeNode("/root/send/rrgstno2");
  133. model.makeNode("/root/send/acptdd");
  134. model.refresh();
  135. }
  136. //진료일 오늘 날짜 디폴트 세팅
  137. model.makeNode("/root/send/acptdd");
  138. model.setValue("/root/send/acptdd", getCurrentDate() );
  139. ]]>
  140. </script>
  141. <submission id="TRPAM00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance" resultref="/root/hidden/tmp"/>
  142. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  143. <submission id="TRPMC02500" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/patinfo"/>
  144. </model>
  145. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  146. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  147. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  148. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  149. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  150. <script type="javascript">
  151. <![CDATA[
  152. //창 생성시 부모창으로 부터 받은 입력값의 유효범위 체크
  153. function fInputValueCheckXformsReady(){
  154. var cond = model.getValue("/root/send/srchcond");
  155. switch(cond){
  156. case '1':
  157. //환자등록번호 체크
  158. if(ipt_pid.currentText.length >= 1 ){
  159. model.setValue("/root/send/pid", ipt_pid.currentText);
  160. return (true);
  161. }else{
  162. //messageBox("환자등록번호를 정확히", "C001");
  163. return (false);
  164. }
  165. break;
  166. case '2':
  167. //환자이름 체크
  168. //if( ipt_hngnm.currentText.length >= 2 ) return (true);
  169. if(ipt_hngnm.currentText.length >= 1 ){
  170. model.setValue("/root/send/hngnm", ipt_hngnm.currentText);
  171. return (true);
  172. }else{
  173. //messageBox("환자이름을 2자리 이상", "C001");
  174. return (false);
  175. }
  176. break;
  177. case '3':
  178. //환자 주민번호 체크
  179. if( ipt_rrgstno1.currentText.length >= 1 || ipt_rrgstno2.currentText.length >= 1){
  180. model.setValue("/root/send/rrgstno1", ipt_rrgstno1.currentText);
  181. model.setValue("/root/send/rrgstno2", ipt_rrgstno2.currentText);
  182. return (true);
  183. }else{
  184. //messageBox("환자 주민번호를", "C001");
  185. return (false);
  186. }
  187. break;
  188. case '4':
  189. //환자이름 유효성 체크. 환자 주민번호 체크
  190. if(ipt_hngnm.currentText.length >= 1 || ipt_rrgstno1.currentText.length >= 1 || ipt_rrgstno2.currentText.length >= 1){
  191. model.setValue("/root/send/hngnm", ipt_hngnm.currentText);
  192. model.setValue("/root/send/rrgstno1", ipt_rrgstno1.currentText);
  193. model.setValue("/root/send/rrgstno2", ipt_rrgstno2.currentText);
  194. }else{
  195. //messageBox("환자이름을 2자리 이상", "C001");
  196. return (false);
  197. }
  198. return( true );
  199. break;
  200. case '5':
  201. //예약일자 유효성 체크 --
  202. if( isValidDateTime( model.getValue("/root/send/acptdd"), "YYYYMMDD") ){
  203. model.setValue("/root/send/acptdd", model.getValue("/root/send/acptdd"));
  204. //model.setValue("/root/send/rrgstno2", ipt_rrgstno2.currentText);
  205. //alert("aaaa");
  206. return (true);
  207. }else{
  208. //messageBox("예약일자를 정확히", "C001");
  209. return (false);
  210. }
  211. break;
  212. default :
  213. model.setFocus("cmb_cond");
  214. return( false );
  215. break;
  216. }
  217. }
  218. //입력값의 유효범위 체크
  219. function fInputValueCheck(){
  220. var cond = model.getValue("/root/send/srchcond");
  221. switch(cond){
  222. case '1':
  223. //환자등록번호 체크
  224. if(ipt_pid.currentText.length >= 1 ){
  225. model.setValue("/root/send/pid", ipt_pid.currentText);
  226. return (true);
  227. }else{
  228. messageBox("환자등록번호를 정확히", "C001");
  229. return (false);
  230. }
  231. break;
  232. case '2':
  233. //환자이름 체크
  234. //if( ipt_hngnm.currentText.length >= 2 ) return (true);
  235. if(ipt_hngnm.currentText.length >= 1 ){
  236. model.setValue("/root/send/hngnm", ipt_hngnm.currentText);
  237. return (true);
  238. }else{
  239. messageBox("환자이름을 2자리 이상", "C001");
  240. return (false);
  241. }
  242. break;
  243. case '3':
  244. //환자 주민번호 체크
  245. if( ipt_rrgstno1.currentText.length >= 1 || ipt_rrgstno2.currentText.length >= 1 ){
  246. model.setValue("/root/send/rrgstno1", ipt_rrgstno1.currentText);
  247. model.setValue("/root/send/rrgstno2", ipt_rrgstno2.currentText);
  248. return (true);
  249. }else{
  250. messageBox("환자 주민번호를", "C001");
  251. return (false);
  252. }
  253. break;
  254. case '4':
  255. //환자이름 유효성 체크. 환자 주민번호 체크
  256. if(ipt_hngnm.currentText.length >= 1 || ipt_rrgstno1.currentText.length >= 1 || ipt_rrgstno2.currentText.length >= 1){
  257. model.setValue("/root/send/hngnm", ipt_hngnm.currentText);
  258. model.setValue("/root/send/rrgstno1", ipt_rrgstno1.currentText);
  259. model.setValue("/root/send/rrgstno2", ipt_rrgstno2.currentText);
  260. }else{
  261. messageBox("환자이름 또는 주민번호를", "C001");
  262. return (false);
  263. }
  264. return( true );
  265. break;
  266. case '5':
  267. //예약일자 유효성 체크 --
  268. model.refresh();
  269. if( isValidDateTime( model.getValue("/root/send/acptdd"), "YYYYMMDD") ){
  270. //alert(model.getValue("/root/send/acptdd"));
  271. return (true);
  272. }else{
  273. messageBox("예약일자를 정확히", "C001");
  274. return (false);
  275. }
  276. break;
  277. default :
  278. messageBox("검색조건이 정확히 선택되지 않았습니다. 확인 후 다시 시도해 주십시요.", "E999", "");
  279. model.setFocus("cmb_cond");
  280. return( false );
  281. break;
  282. }
  283. }
  284. //조회 조건에 맞는 input 컨트롤을 세팅해 준다.
  285. function fChangeSearchCondition( cond){
  286. switch(cond){
  287. case '1':
  288. model.makeNode("/root/send/pid");
  289. ipt_pid.attribute("visibility") = "visible";
  290. ipt_pid.attribute("left") = "219px";
  291. ipt_pid.attribute("top") = "8px";
  292. ipt_hngnm.attribute("visibility") = "hidden";
  293. ipt_rrgstno1.attribute("visibility") = "hidden";
  294. ipt_rrgstno2.attribute("visibility") = "hidden";
  295. ipt_acptdd.attribute("visibility") = "hidden";
  296. model.setFocus("ipt_pid");
  297. break;
  298. case '2':
  299. model.makeNode("/root/send/hngnm");
  300. ipt_hngnm.attribute("visibility") = "visible";
  301. ipt_hngnm.attribute("left") = "219px";
  302. ipt_hngnm.attribute("top") = "8px";
  303. ipt_pid.attribute("visibility") = "hidden";
  304. ipt_rrgstno1.attribute("visibility") = "hidden";
  305. ipt_rrgstno2.attribute("visibility") = "hidden";
  306. ipt_acptdd.attribute("visibility") = "hidden";
  307. model.setFocus("ipt_hngnm");
  308. break;
  309. case '3':
  310. model.makeNode("/root/send/rrgstno1");
  311. model.makeNode("/root/send/rrgstno2");
  312. ipt_rrgstno1.attribute("visibility") = "visible";
  313. ipt_rrgstno2.attribute("visibility") = "visible";
  314. ipt_rrgstno1.attribute("left") = "219px";
  315. ipt_rrgstno1.attribute("top") = "8px";
  316. ipt_rrgstno2.attribute("left") = "307px";
  317. ipt_rrgstno2.attribute("top") = "8px";
  318. ipt_hngnm.attribute("visibility") = "hidden";
  319. ipt_pid.attribute("visibility") = "hidden";
  320. ipt_acptdd.attribute("visibility") = "hidden";
  321. model.setFocus("ipt_rrgstno1");
  322. break;
  323. case '4':
  324. //model.makeNode("/root/send/pid");
  325. model.makeNode("/root/send/hngnm");
  326. model.makeNode("/root/send/rrgstno1");
  327. model.makeNode("/root/send/rrgstno2");
  328. ipt_hngnm.attribute("visibility") = "visible";
  329. ipt_hngnm.attribute("left") = "219px";
  330. ipt_hngnm.attribute("top") = "8px";
  331. ipt_pid.attribute("visibility") = "hidden";
  332. ipt_rrgstno1.attribute("visibility") = "visible";
  333. ipt_rrgstno1.attribute("left") = "352px";
  334. ipt_rrgstno1.attribute("top") = "8px";
  335. ipt_rrgstno2.attribute("visibility") = "visible";
  336. ipt_rrgstno2.attribute("left") = "440px";
  337. ipt_rrgstno2.attribute("top") = "8px";
  338. ipt_acptdd.attribute("visibility") = "hidden";
  339. model.setFocus("ipt_hngnm");
  340. break;
  341. case '5':
  342. model.makeNode("/root/send/acptdd");
  343. ipt_acptdd.attribute("visibility") = "visible";
  344. ipt_acptdd.attribute("left") = "219px";
  345. ipt_acptdd.attribute("top") = "8px";
  346. ipt_hngnm.attribute("visibility") = "hidden";
  347. ipt_pid.attribute("visibility") = "hidden";
  348. ipt_rrgstno1.attribute("visibility") = "hidden";
  349. ipt_rrgstno2.attribute("visibility") = "hidden";
  350. //진료일 오늘 날짜 디폴트 세팅
  351. model.makeNode("/root/send/acptdd");
  352. model.setValue("/root/send/acptdd", getCurrentDate() );
  353. model.setFocus("ipt_acptdd");
  354. break;
  355. default :
  356. //messageBox("검색조건이 정확히 선택되지 않았습니다. 확인 후 다시 시도해 주십시요.", "E999", "");
  357. break;
  358. }
  359. }
  360. ]]>
  361. </script>
  362. </xhtml:head>
  363. <xhtml:body pagewidth="634" pageheight="343" guideline="2,343;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  364. <group id="group3" scroll="auto" style="left:0px; top:0px; width:618px; height:316px; ">
  365. <datagrid id="grd_patinfo2" nodeset="/root/main/patinfo/patinfolist" class="datagrid2" caption="등록번호^합번^기관코드^환자성명^영문이름^한문이름^주민등록번호^주민등록번호^최근보험유형^집전화번호^휴대전화번호^최근내원일^최근내원과^외래미수금^퇴원미수금^생년월일^성별^나이^합본등록번호^기타전화번호1^기타전화번호2^sms전송승인 여부^이메일 계정^우편번호^우편번호^우편번호순서^주소^상세주소^혈액형^RH혈액형^외국인여부^국적^여권번호^추천여부^추천인ID^추천인명^추천인관계^VIP여부^VIP비고^종교코드^세례명^성당명^사망여부^사망시각^사망일자^사망시간^내원사유^동물여부^원외예외사유코드^재원여부^장애인여부^특이/문제환자^당일퇴원여부^참고사항^최초등록자ID^최초등록일시^최종수정자ID^최종수정일시^pidflag" colsep="^" colwidth="60, 18, 100, 65, 65, 65, 50, 50, 100, 85, 100, 100, 100, 100, 100, 75, 100, 100, 100, 100, 100, 120, 100, 50, 50, 100, 250, 250, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 119, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="23" defaultrows="2" ellipsis="true" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="23" rowsep="|" tooltip="true" navindex="7" style="left:0px; top:65px; width:617px; height:250px; ">
  366. <col ref="pid"/>
  367. <col ref="bindyn"/>
  368. <col ref="instcd" visibility="hidden"/>
  369. <col ref="hngnm"/>
  370. <col ref="engnm" visibility="hidden"/>
  371. <col ref="chinm" visibility="hidden"/>
  372. <col ref="rrgstno1"/>
  373. <col ref="rrgstno3"/>
  374. <col ref="lastinsukind"/>
  375. <col ref="hometel" visibility="hidden"/>
  376. <col ref="mpphontel" visibility="hidden"/>
  377. <col ref="lastorddd" format="yyyy-mm-dd"/>
  378. <col disabled="true" ref="lastorddeptcd" type="combo">
  379. <choices>
  380. <itemset nodeset="/root/init/orddeptcd/orddeptcdlist">
  381. <label ref="nm"/>
  382. <value ref="cd"/>
  383. </itemset>
  384. </choices>
  385. </col>
  386. <col ref="outuncoamt" visibility="hidden"/>
  387. <col ref="dschuncoamt" visibility="hidden"/>
  388. <col ref="brthdd" visibility="hidden" format="yyyy-mm-dd"/>
  389. <col ref="sex" visibility="hidden"/>
  390. <col ref="age" visibility="hidden"/>
  391. <col ref="bindpid" visibility="hidden"/>
  392. <col ref="etctel1" visibility="hidden"/>
  393. <col ref="etctel2" visibility="hidden"/>
  394. <col ref="smsaprvyn" visibility="hidden"/>
  395. <col ref="email" visibility="hidden"/>
  396. <col ref="zipcd1" visibility="hidden"/>
  397. <col ref="zipcd2" visibility="hidden"/>
  398. <col ref="zipcdseq" visibility="hidden"/>
  399. <col ref="addr"/>
  400. <col ref="detladdr" visibility="hidden"/>
  401. <col ref="btype" visibility="hidden"/>
  402. <col ref="rh" visibility="hidden"/>
  403. <col ref="forgeryn" visibility="hidden"/>
  404. <col ref="nati" visibility="hidden"/>
  405. <col ref="psptno" visibility="hidden"/>
  406. <col ref="recmyn" visibility="hidden"/>
  407. <col ref="recmerid" visibility="hidden"/>
  408. <col ref="recmernm" visibility="hidden"/>
  409. <col ref="recmerrela" visibility="hidden"/>
  410. <col ref="vipyn" visibility="hidden"/>
  411. <col ref="viprem" visibility="hidden"/>
  412. <col ref="religncd" visibility="hidden"/>
  413. <col ref="baptnm" visibility="hidden"/>
  414. <col ref="chchnm" visibility="hidden"/>
  415. <col ref="dethyn" visibility="hidden"/>
  416. <col ref="dethdt" visibility="hidden"/>
  417. <col ref="dethdd" visibility="hidden"/>
  418. <col ref="dethtm" visibility="hidden"/>
  419. <col ref="chosresn" visibility="hidden"/>
  420. <col ref="animyn" visibility="hidden"/>
  421. <col ref="exptresncd" visibility="hidden"/>
  422. <col ref="inhospyn" visibility="hidden"/>
  423. <col ref="handicapryn" visibility="hidden"/>
  424. <col ref="patspcfyn" visibility="hidden"/>
  425. <col ref="tdaydsch" visibility="hidden"/>
  426. <col ref="remfact" visibility="hidden"/>
  427. <col ref="acptdd" visibility="hidden"/>
  428. <col ref="acptno" visibility="hidden"/>
  429. <col ref="lastupdtrid" visibility="hidden"/>
  430. <col ref="lastupdtdt" visibility="hidden"/>
  431. <col ref="pidflag" visibility="hidden"/>
  432. <script type="javascript" ev:event="ondblclick">
  433. <![CDATA[
  434. if ( checkOpener() ) {
  435. // row = grd_patinfo.row;
  436. //
  437. // if( row > 0 ){
  438. // if( getNodesetCount("/root/main/patinfo/patinfolist") > 0 ){
  439. // opener.model.copyNode("/root/main/patinfo/patinfolist", grd_patinfo.getNode( row ));
  440. // opener.model.makeNode("/root/main/popupendflag");
  441. // opener.model.setValue("/root/main/popupendflag", "ok");
  442. //
  443. // opener.model.refresh();
  444. // window.close();
  445. // }
  446. // }
  447. if( isDataCell() ){
  448. btn_confirm.dispatch("DOMActivate");
  449. }
  450. } else {
  451. messageBox("상위화면이 변경되어 데이터를 가져올 수", "I004");
  452. }
  453. ]]>
  454. </script>
  455. <script type="javascript" ev:event="onclick">
  456. <![CDATA[
  457. /*
  458. if ( checkOpener() ) {
  459. row = grd_patinfo.row;
  460. if( row > 0 ){
  461. if( getNodesetCount("/root/main/patinfo/patinfolist") > 1 ){
  462. opener.model.copyNode("/root/main/patinfo/patinfolist", grd_patinfo.getNode( row ));
  463. opener.model.refresh();
  464. }
  465. }
  466. } else {
  467. messageBox("상위화면이 변경되어 데이터를 가져올 수", "I004");
  468. }
  469. */
  470. ]]>
  471. </script>
  472. <script type="javascript" ev:event="onkeypress">
  473. <![CDATA[
  474. if( event.keyCode == 13 ){
  475. btn_confirm.dispatch("DOMActivate");
  476. }
  477. //alert("aaa");
  478. ]]>
  479. </script>
  480. </datagrid>
  481. <group id="group2" style="left:0px; top:0px; width:618px; height:35px; ">
  482. <shape id="roundrect1" appearance="roundrect" style="left:0px; top:0px; width:617px; height:35px; "/>
  483. <caption id="caption2" class="search_name" style="left:15px; top:8px; width:86px; height:17px; ">검색조건 :</caption>
  484. <button id="btn_search" class="btn1_letter2" navindex="6" style="left:545px; top:7px; width:56px; height:22px; ">
  485. <caption>조회</caption>
  486. <script type="javascript" ev:event="DOMActivate">
  487. <![CDATA[
  488. if( fInputValueCheck() ){
  489. if( submit("TRPMC02500") ){
  490. if(PatRefPamFlag == "SMP" || PatRefPamFlag == "SPP"){
  491. if( grd_patinfo.rows > 1 ){
  492. grd_patinfo.row = 1;
  493. model.setFocus("grd_patinfo");
  494. }else{
  495. fChangeSearchCondition( cmb_cond.value );
  496. }
  497. }else{
  498. if( grd_patinfo2.rows > 1 ){
  499. grd_patinfo2.row = 1;
  500. model.setFocus("grd_patinfo2");
  501. }else{
  502. fChangeSearchCondition( cmb_cond.value );
  503. }
  504. }
  505. }
  506. }
  507. ]]>
  508. </script>
  509. </button>
  510. <line id="line13" class="line_4" style="x1:529px; y1:7px; x2:529px; y2:29px; border-color:#ffe4bb; "/>
  511. <input id="ipt_hngnm" ref="/root/send/hngnm" class="input_search" navindex="1" visibility="hidden" autonext="false" imemode="hangul" style="left:224px; top:8px; width:130px; height:19px; ">
  512. <script type="javascript" ev:event="onkeypress">
  513. <![CDATA[
  514. inputEnterKey("btn_search", "DOMActivate");
  515. ]]>
  516. </script>
  517. </input>
  518. <input id="ipt_rrgstno1" ref="/root/send/rrgstno1" class="input_search" navindex="2" visibility="hidden" format="999999" style="left:247px; top:8px; width:85px; height:19px; ">
  519. <script type="javascript" ev:event="onkeypress">
  520. <![CDATA[
  521. inputEnterKey("btn_search", "DOMActivate");
  522. ]]>
  523. </script>
  524. </input>
  525. <select1 id="cmb_cond" ref="/root/send/srchcond" class="combo_search" navindex="10" appearance="minimal" style="left:106px; top:8px; width:110px; height:19px; ">
  526. <choices>
  527. <itemset nodeset="/root/init/P0350list/P0350">
  528. <label ref="cdnm"/>
  529. <value ref="cdid"/>
  530. </itemset>
  531. </choices>
  532. <script type="javascript" ev:event="xforms-value-changed">
  533. <![CDATA[
  534. var cond = model.getValue("/root/send/srchcond");
  535. //model.refresh();
  536. fChangeSearchCondition( cond );
  537. ]]>
  538. </script>
  539. </select1>
  540. <input id="ipt_rrgstno2" ref="/root/send/rrgstno2" class="input_search" navindex="3" visibility="hidden" autonext="false" format="9999999" style="left:285px; top:8px; width:85px; height:19px; ">
  541. <script type="javascript" ev:event="onkeypress">
  542. <![CDATA[
  543. inputEnterKey("btn_search", "DOMActivate");
  544. ]]>
  545. </script>
  546. </input>
  547. <input id="ipt_pid" ref="/root/send/pid" class="input_search" navindex="4" visibility="hidden" autonext="false" style="left:325px; top:8px; width:130px; height:19px; ">
  548. <script type="javascript" ev:event="onkeypress">
  549. <![CDATA[
  550. inputEnterKey("btn_search", "DOMActivate");
  551. ]]>
  552. </script>
  553. </input>
  554. <input id="ipt_acptdd" ref="/root/send/acptdd" class="input_search" navindex="5" visibility="hidden" autonext="false" inputtype="date" style="left:390px; top:8px; width:130px; height:19px; ">
  555. <script type="javascript" ev:event="onkeypress">
  556. <![CDATA[
  557. inputEnterKey("btn_search", "DOMActivate");
  558. ]]>
  559. </script>
  560. </input>
  561. </group>
  562. <caption id="caption1" class="tit_2" style="left:5px; top:45px; width:95px; height:14px; ">인적사항</caption>
  563. <line id="line1" class="line_1" style="x1:0px; y1:60px; x2:617px; y2:60px; "/>
  564. <datagrid id="grd_patinfo" nodeset="/root/main/patinfo/patinfolist" class="datagrid2" caption="등록번호^합번^기관코드^환자성명^영문이름^한문이름^주민등록번호^주민등록번호^최근보험유형^집전화번호^휴대전화번호^최근내원일^최근내원과^외래미수금^퇴원미수금^생년월일^성별^나이^합본등록번호^기타전화번호1^기타전화번호2^sms전송승인 여부^이메일 계정^우편번호^우편번호^우편번호순서^주소^상세주소^혈액형^RH혈액형^외국인여부^국적^여권번호^추천여부^추천인ID^추천인명^추천인관계^VIP여부^VIP비고^종교코드^세례명^성당명^사망여부^사망시각^사망일자^사망시간^내원사유^동물여부^원외예외사유코드^재원여부^장애인여부^특이/문제환자^당일퇴원여부^참고사항^최초등록자ID^최초등록일시^최종수정자ID^최종수정일시^pidflag" colsep="^" colwidth="60, 18, 100, 65, 65, 65, 50, 50, 100, 85, 100, 100, 100, 100, 100, 75, 100, 100, 100, 100, 100, 120, 100, 50, 50, 100, 250, 250, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 119, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="23" defaultrows="2" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheight="23" rowsep="|" navindex="7" style="left:0px; top:65px; width:617px; height:250px; ">
  565. <col ref="pid"/>
  566. <col ref="bindyn"/>
  567. <col ref="instcd" visibility="hidden"/>
  568. <col ref="hngnm"/>
  569. <col ref="engnm" visibility="hidden"/>
  570. <col ref="chinm" visibility="hidden"/>
  571. <col ref="rrgstno1"/>
  572. <col ref="rrgstno2"/>
  573. <col ref="lastinsukind"/>
  574. <col ref="hometel"/>
  575. <col ref="mpphontel"/>
  576. <col ref="lastorddd" format="yyyy-mm-dd"/>
  577. <col disabled="true" ref="lastorddeptcd" type="combo">
  578. <choices>
  579. <itemset nodeset="/root/init/orddeptcd/orddeptcdlist">
  580. <label ref="nm"/>
  581. <value ref="cd"/>
  582. </itemset>
  583. </choices>
  584. </col>
  585. <col ref="outuncoamt" visibility="hidden"/>
  586. <col ref="dschuncoamt" visibility="hidden"/>
  587. <col ref="brthdd" visibility="hidden" format="yyyy-mm-dd"/>
  588. <col ref="sex" visibility="hidden"/>
  589. <col ref="age" visibility="hidden"/>
  590. <col ref="bindpid" visibility="hidden"/>
  591. <col ref="etctel1" visibility="hidden"/>
  592. <col ref="etctel2" visibility="hidden"/>
  593. <col ref="smsaprvyn" visibility="hidden"/>
  594. <col ref="email" visibility="hidden"/>
  595. <col ref="zipcd1" visibility="hidden"/>
  596. <col ref="zipcd2" visibility="hidden"/>
  597. <col ref="zipcdseq" visibility="hidden"/>
  598. <col ref="addr"/>
  599. <col ref="detladdr"/>
  600. <col ref="btype" visibility="hidden"/>
  601. <col ref="rh" visibility="hidden"/>
  602. <col ref="forgeryn" visibility="hidden"/>
  603. <col ref="nati" visibility="hidden"/>
  604. <col ref="psptno" visibility="hidden"/>
  605. <col ref="recmyn" visibility="hidden"/>
  606. <col ref="recmerid" visibility="hidden"/>
  607. <col ref="recmernm" visibility="hidden"/>
  608. <col ref="recmerrela" visibility="hidden"/>
  609. <col ref="vipyn" visibility="hidden"/>
  610. <col ref="viprem" visibility="hidden"/>
  611. <col ref="religncd" visibility="hidden"/>
  612. <col ref="baptnm" visibility="hidden"/>
  613. <col ref="chchnm" visibility="hidden"/>
  614. <col ref="dethyn" visibility="hidden"/>
  615. <col ref="dethdt" visibility="hidden"/>
  616. <col ref="dethdd" visibility="hidden"/>
  617. <col ref="dethtm" visibility="hidden"/>
  618. <col ref="chosresn" visibility="hidden"/>
  619. <col ref="animyn" visibility="hidden"/>
  620. <col ref="exptresncd" visibility="hidden"/>
  621. <col ref="inhospyn" visibility="hidden"/>
  622. <col ref="handicapryn" visibility="hidden"/>
  623. <col ref="patspcfyn" visibility="hidden"/>
  624. <col ref="tdaydsch" visibility="hidden"/>
  625. <col ref="remfact" visibility="hidden"/>
  626. <col ref="acptdd" visibility="hidden"/>
  627. <col ref="acptno" visibility="hidden"/>
  628. <col ref="lastupdtrid" visibility="hidden"/>
  629. <col ref="lastupdtdt" visibility="hidden"/>
  630. <col ref="pidflag" visibility="hidden"/>
  631. <script type="javascript" ev:event="ondblclick">
  632. <![CDATA[
  633. if ( checkOpener() ) {
  634. // row = grd_patinfo.row;
  635. //
  636. // if( row > 0 ){
  637. // if( getNodesetCount("/root/main/patinfo/patinfolist") > 0 ){
  638. // opener.model.copyNode("/root/main/patinfo/patinfolist", grd_patinfo.getNode( row ));
  639. // opener.model.makeNode("/root/main/popupendflag");
  640. // opener.model.setValue("/root/main/popupendflag", "ok");
  641. //
  642. // opener.model.refresh();
  643. // window.close();
  644. // }
  645. // }
  646. if( isDataCell() ){
  647. btn_confirm.dispatch("DOMActivate");
  648. }
  649. } else {
  650. messageBox("상위화면이 변경되어 데이터를 가져올 수", "I004");
  651. }
  652. ]]>
  653. </script>
  654. <script type="javascript" ev:event="onclick">
  655. <![CDATA[
  656. /*
  657. if ( checkOpener() ) {
  658. row = grd_patinfo.row;
  659. if( row > 0 ){
  660. if( getNodesetCount("/root/main/patinfo/patinfolist") > 1 ){
  661. opener.model.copyNode("/root/main/patinfo/patinfolist", grd_patinfo.getNode( row ));
  662. opener.model.refresh();
  663. }
  664. }
  665. } else {
  666. messageBox("상위화면이 변경되어 데이터를 가져올 수", "I004");
  667. }
  668. */
  669. ]]>
  670. </script>
  671. <script type="javascript" ev:event="onkeypress">
  672. <![CDATA[
  673. if( event.keyCode == 13 ){
  674. btn_confirm.dispatch("DOMActivate");
  675. }
  676. //alert("aaa");
  677. ]]>
  678. </script>
  679. </datagrid>
  680. <!-- 수정이력 20100223 JHP 여의도 기준 다른팀에서 작업하기 싫어서 원무팀에 넘긴 일정임 원무팀에서 본 화면 열때는 원래대로 다른 팀 화면에서 열때는 하단의 그리드 보여지도록 수정함.-->
  681. </group>
  682. <group id="group1" scroll="auto" style="left:0px; top:316px; width:618px; height:27px; ">
  683. <button id="btn_confirm" class="btn4_letter2" navindex="8" style="left:502px; top:5px; width:56px; height:22px; ">
  684. <caption>확인</caption>
  685. <script type="javascript" ev:event="DOMActivate">
  686. <![CDATA[
  687. if ( checkOpener() ) {
  688. if(PatRefPamFlag == "SMP" || PatRefPamFlag == "SPP"){
  689. row = grd_patinfo.row;
  690. }else{
  691. row = grd_patinfo2.row;
  692. }
  693. opener.model.makeNode("/root/main/popupendflag");
  694. opener.model.setValue("/root/main/popupendflag", "cancel");
  695. if( row > 0 ){
  696. if( getNodesetCount("/root/main/patinfo/patinfolist") > 0 ){
  697. //합번된 등록번호 메세지 처리
  698. var sPid = model.getValue("/root/main/patinfo/patinfolist[" + row + "]/pid");
  699. var sHngnm = model.getValue("/root/main/patinfo/patinfolist[" + row + "]/hngnm");
  700. var sBindPid = model.getValue("/root/main/patinfo/patinfolist[" + row + "]/bindpid");
  701. if( sBindPid != '' && sBindPid != '-' && sBindPid != ' '){
  702. var retValue = messageBox(sPid + "(" + sHngnm + ") 환자의 등록번호가 [ " + sBindPid + " ] 로 합번 되었습니다. 합번된 등록번호로 재조회 하시겠습니까?", "Q999", "");
  703. if( retValue == '6' ){
  704. try{
  705. model.resetInstanceNode("/root/send");
  706. model.setValue("/root/send/srchcond", "1");
  707. fChangeSearchCondition( '1' );
  708. model.setValue("/root/send/pid", sBindPid);
  709. model.refresh();
  710. btn_search.dispatch("DOMActivate");
  711. }catch(e){
  712. return false;
  713. }
  714. }
  715. return false;
  716. }
  717. if(PatRefPamFlag == "SMP" || PatRefPamFlag == "SPP"){
  718. opener.model.copyNode("/root/main/patinfo/patinfolist", grd_patinfo.getNode( row ));
  719. }else{
  720. opener.model.copyNode("/root/main/patinfo/patinfolist", grd_patinfo2.getNode( row ));
  721. }
  722. opener.model.makeNode("/root/main/popupendflag");
  723. opener.model.setValue("/root/main/popupendflag", "ok");
  724. }
  725. //else{
  726. // opener.model.setValue("/root/main/popupendflag", "cancel");
  727. //}
  728. //opener.model.refresh();
  729. //window.close();
  730. }else {
  731. //opener.model.setValue("/root/main/popupendflag", "cancel");
  732. messageBox("행이 정확히 선택되지", "E007");
  733. //opener.model.refresh();
  734. //window.close();
  735. }
  736. } else {
  737. messageBox("상위화면이 변경되어 데이터를 가져올 수", "I004");
  738. //opener.model.setValue("/root/main/popupendflag", "cancel");
  739. //opener.model.refresh();
  740. //window.close();
  741. }
  742. opener.model.refresh();
  743. window.close();
  744. ]]>
  745. </script>
  746. </button>
  747. <button id="btn_cancel" class="btn4_letter2" navindex="9" style="left:561px; top:5px; width:56px; height:22px; ">
  748. <caption>취소</caption>
  749. <script type="javascript" ev:event="DOMActivate">
  750. <![CDATA[
  751. opener.model.makeNode("/root/main/popupendflag");
  752. opener.model.setValue("/root/main/popupendflag", "cancel");
  753. window.close();
  754. ]]>
  755. </script>
  756. </button>
  757. <line id="line32" class="line_6" style="x1:0px; y1:0px; x2:618px; y2:0px; "/>
  758. </group>
  759. </xhtml:body>
  760. </xhtml:html>