SMPMB01800_의사별질병코드관리.xrw 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710
  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. <orddrid/>
  11. <orddeptcd/>
  12. <drinfospec>
  13. </drinfospec>
  14. <result/>
  15. <checkflag/>
  16. <sickcd/>
  17. <drsccdspec>
  18. <drsccdspeclist/>
  19. <sickcdspeclist/>
  20. <drinfospeclist>
  21. </drinfospeclist>
  22. </drsccdspec>
  23. <sickcdcomb/>
  24. <orddept/>
  25. </main>
  26. <send>
  27. <orddrid/>
  28. <orddeptcd/>
  29. <updatedata>
  30. <orddeptcd/>
  31. <orddeptnm/>
  32. <orddrid/>
  33. <orddrnm/>
  34. <sickcd/>
  35. <sicknm/>
  36. <workflag/>
  37. <remfact/>
  38. <seqno/>
  39. </updatedata>
  40. <srchcnts/>
  41. <orddrnm/>
  42. </send>
  43. <init>
  44. <orddeptcd>
  45. <orddeptcdlist>
  46. <cd/>
  47. <nm/>
  48. </orddeptcdlist>
  49. </orddeptcd>
  50. <orddrid>
  51. <orddridlist>
  52. <cd/>
  53. <nm/>
  54. <dp/>
  55. <sp/>
  56. </orddridlist>
  57. </orddrid>
  58. <sickcd>
  59. <sickcdspecilist/>
  60. </sickcd>
  61. <drsccdspec>
  62. <sickdeptlist/>
  63. </drsccdspec>
  64. </init>
  65. <hidden>
  66. <tmp/>
  67. <desc/>
  68. </hidden>
  69. </root>
  70. </instance>
  71. <script type="javascript" ev:event="xforms-ready">
  72. <![CDATA[
  73. pamGetDeptCDDrIDList();
  74. //질병코드를 조회한다.
  75. model.setValue("/root/send/srchcnts","");
  76. submit("TRPMB01802");
  77. model.refresh();
  78. fInitialize();
  79. ]]>
  80. </script>
  81. <submission id="TRPAM00101" mediatype="application/x-www-form-urlencoded" method="post" resultref="/root/hidden/tmp"/>
  82. <submission id="TRPMB01801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/sickcdspec"/>
  83. <submission id="TRPMB01802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/sickcd"/>
  84. <submission id="TRPMB01803" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/drinfospec"/>
  85. <submission id="TXPMB01801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/updatedata" resultref="/root/main/result"/>
  86. <submission id="TRPMB01804" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/drsccdspec"/>
  87. <submission id="TXPMB01805" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/result"/>
  88. <submission id="TRPMB01702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/result"/>
  89. <submission id="TXPMB01702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/updatedata" resultref="/root/main/result"/>
  90. </model>
  91. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  92. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  93. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  94. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  95. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  96. <script type="javascript">
  97. <![CDATA[
  98. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  99. //조회조건부,입력부,조회부
  100. function fInitialize() {
  101. model.resetInstanceNode("/root/send");
  102. model.resetInstanceNode("/root/hidden/desc");
  103. model.removeNodeset("/root/main/drsccdspec/drinfospeclist");
  104. model.removeNodeset("/root/main/drsccdspec/sickcdspeclist");
  105. model.removeNodeset("/root/main/drsccdspec/drsccdspeclist");
  106. model.refresh();
  107. }
  108. function finsertdrsick() {
  109. if ( grd_drinfolist.Row < 1 ) {
  110. //messageBox("입력할 진료의사를 ", "C002"); //입력할 진료의사를 선택하십시오 !
  111. return;
  112. }
  113. var val = model.getValue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sickcd");
  114. if ( val == "" ) {
  115. messageBox("입력할 증상 및 질환을 ", "C002"); //입력할 질병코드를 선택하십시오 !
  116. return;
  117. }
  118. for ( var i = 1; i < grd_drsccdlist.rows; i++ ) {
  119. if ( model.getValue("/root/main/drsccdspec/drsccdspeclist[" + i + "]/sickcd") == model.getValue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sickcd") ) {
  120. if (model.getValue("/root/main/drsccdspec/drsccdspeclist[" + i + "]/orddrid") == model.getValue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddrid") ) {
  121. messageBox("해당 증상및 질환과 진료의사는 이미 등록되어 리스트", "E008"); //해당 질병코드는 이미 등록되어 있는 코드입니다.
  122. return;
  123. }
  124. }
  125. }
  126. grd_drsccdlist.addRow();
  127. bottom = grd_drsccdlist.bottomRow;
  128. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddrid", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddrid"));
  129. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddrnm", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddrnm"));
  130. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddeptcd", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddeptcd"));
  131. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddeptnm", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddeptnm"));
  132. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/sickcd", model.getvalue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sickcd"));
  133. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/sicknm", model.getvalue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sicknm"));
  134. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/seqno", model.getvalue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/seqno"));
  135. //model.makeValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/seqno", "1");
  136. model.makeValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/workflag", "I");
  137. //grd_drsccdlist.refresh();
  138. // 수정사항
  139. /*for ( var i = 1; i < grd_drsccdlist.rows; i++ ) {
  140. if ( model.getValue("/root/main/drsccdspec/drsccdspeclist[" + i + "]/workflag") == 'I' || model.getValue("/root/main/drsccdspec/drsccdspeclist[" + i + "]/workflag") == 'U') {
  141. model.resetInstanceNode( "/root/send/updatedata");
  142. model.copyNode( "/root/send/updatedata" , "/root/main/drsccdspec/drsccdspeclist[" + i + "]");
  143. submit("TXPMB01801") == true
  144. }
  145. }
  146. */
  147. model.resetInstanceNode( "/root/send/updatedata");
  148. model.copyNode( "/root/send/updatedata" , "/root/main/drsccdspec/drsccdspeclist[" + bottom + "]");
  149. submit("TXPMB01801") == true
  150. grd_drsccdlist.clearStatus(bottom);
  151. grd_drsccdlist.refresh();
  152. //btn_search.dispatch("DOMActivate"); //삭제처리 후, 내역 재조회(조회 이벤트 호출)
  153. //grd_drinfolist.dispatch("onclick");
  154. }
  155. function fGetSickAndDrList(){
  156. if (cmb_sickcd.value == ""){
  157. messageBox("조회하실 질병을 ", "C002");
  158. model.setFocus("cmb_sickcd");
  159. }
  160. //입력부, 조회부 초기화 후, 조회
  161. model.resetInstanceNode("/root/send/updatedata");
  162. model.resetInstanceNode("/root/hidden/desc");
  163. if( cmb_orddept.value == "" ){
  164. model.setValue("/root/send/orddeptcd","0000");
  165. }else {
  166. model.setValue("/root/send/orddeptcd",model.getValue("/root/main/orddept"));
  167. }
  168. model.setValue("/root/send/srchcnts", cmb_sickcd.label);
  169. //증상 및 질환 리스트 조회
  170. // 조회시에는 질병별 관련 진료과 의사들을 조회하는 것으로 수정됨 07.10.30
  171. //submit("TRPMB01801");
  172. //의사별 증상 및 질환 리스트 조회
  173. model.setValue("/root/send/updatedata/seqno","%%");
  174. submit("TRPMB01804");
  175. var rows = grd_drinfolist.rows;
  176. var fixedRows = grd_drinfolist.fixedRows;
  177. var dataRows = rows - fixedRows;
  178. for (var i = dataRows ; i>0; i--) {
  179. model.removenode("/root/main/drsccdspec/drinfospeclist["+i+"]");
  180. }
  181. model.setValue("/root/main/checkflag","search");
  182. model.setFocus("ipt_sickcd");
  183. model.refresh();
  184. // else {
  185. // messageBox("진료과를", "C002");
  186. // }
  187. }
  188. ]]>
  189. </script>
  190. </xhtml:head>
  191. <xhtml:body pagewidth="1211" pageheight="784" guideline="1,1180;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  192. <group id="group4" style="left:0px; top:14px; width:1180px; height:35px; vertical-align:top; ">
  193. <shape id="roundrect3" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1180px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  194. <line id="line3" class="line_4" style="x1:1105px; y1:5px; x2:1105px; y2:27px; border-color:#ffe4bb; border-left-style:solid; "/>
  195. </group>
  196. <group id="group1" style="left:0px; top:0px; width:1180px; height:13px; ">
  197. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:254px; height:14px; ">의사별 증상 및 질환 관리</caption>
  198. </group>
  199. <caption id="caption7" class="search_name" style="left:10px; top:23px; width:73px; height:17px; ">질병명 :</caption>
  200. <line id="line8" class="line_1" style="x1:268px; y1:89px; x2:493px; y2:90px; "/>
  201. <caption id="caption20" class="tit_2" style="left:268px; top:74px; width:152px; height:13px; ">진료의사 리스트</caption>
  202. <button id="btn_clear" class="btn4_letter3" navindex="8" style="left:1113px; top:65px; width:68px; height:22px; ">
  203. <caption>초기화</caption>
  204. <script type="javascript" ev:event="DOMActivate">
  205. <![CDATA[
  206. //화면 초기화
  207. fInitialize();
  208. ]]>
  209. </script>
  210. </button>
  211. <datagrid id="grd_drsccdlist" nodeset="/root/main/drsccdspec/drsccdspeclist" caption="진료과^진료과명^진료의사^의사ID^질병코드^질병명^참고사항^seqno" colsep="^" colwidth="16, 99, 94, 16, 17, 224, 175, 100" dataheight="25" defaultrows="0" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:530px; top:93px; width:650px; height:642px; ">
  212. <col class="text_center" disabled="true" ref="orddeptcd" visibility="hidden"/>
  213. <col ref="orddeptnm"/>
  214. <col ref="orddrnm"/>
  215. <col class="text_center" ref="orddrid" visibility="hidden"/>
  216. <col class="text_center" ref="sickcd" visibility="hidden"/>
  217. <col ref="sicknm"/>
  218. <col ref="remfact" type="input" maxlength="50"/>
  219. <col class="text_center" ref="seqno" visibility="hidden"/>
  220. <script type="javascript" ev:event="xforms-value-changed">
  221. <![CDATA[
  222. if ( model.getValue("/root/main/drsccdspec/drsccdspeclist[" + grd_drsccdlist.row + "]/workflag") != "I" ) {
  223. model.makeValue("/root/main/drsccdspec/drsccdspeclist[" + grd_drsccdlist.row + "]/workflag", "U");
  224. }
  225. ]]>
  226. </script>
  227. </datagrid>
  228. <line id="line2" class="line_1" style="x1:530px; y1:89px; x2:1179px; y2:90px; "/>
  229. <caption id="caption2" class="tit_2" style="left:530px; top:74px; width:180px; height:14px; ">의사별 증상 및 질환 리스트</caption>
  230. <button id="btn_search" class="btn1_letter2" navindex="3" style="left:1115px; top:20px; width:56px; height:22px; ">
  231. <caption>조회</caption>
  232. <script type="javascript" ev:event="DOMActivate">
  233. <![CDATA[
  234. fGetSickAndDrList();
  235. ]]>
  236. </script>
  237. </button>
  238. <datagrid id="grd_drinfolist" nodeset="/root/main/drsccdspec/drinfospeclist" caption="진료의사 ID^진료과^진료의사^선택진료^진료과코드^진료과" colsep="^" colwidth="11, 84, 61, 50, 100, 100" dataheight="25" defaultrows="2" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:265px; top:120px; width:229px; height:615px; ">
  239. <col class="text_center" ref="orddrid" visibility="hidden"/>
  240. <col disabled="true" ref="orddeptcd" type="combo">
  241. <choices>
  242. <itemset nodeset="/root/init/orddeptcd/orddeptcdlist">
  243. <label ref="nm"/>
  244. <value ref="cd"/>
  245. </itemset>
  246. </choices>
  247. </col>
  248. <col ref="orddrnm" style="text-align:center; "/>
  249. <col ref="specordyn" style="text-align:center; "/>
  250. <col ref="orddeptcd" visibility="hidden"/>
  251. <col ref="orddeptnm" visibility="hidden"/>
  252. <script type="javascript" ev:event="onclick">
  253. <![CDATA[
  254. // //조회된 리스트를 선택 시 의사별 질병코드 리스트를 조회한다
  255. // if ( grd_drinfolist.row > 0 ) {
  256. // model.resetInstanceNode("/root/send/orddrid");
  257. // model.resetInstanceNode("/root/send/orddrnm");
  258. // model.setValue("/root/send/orddrid", grd_drinfolist.valueMatrix(grd_drinfolist.row, 1));
  259. // model.setValue("/root/send/orddrnm", grd_drinfolist.valueMatrix(grd_drinfolist.row, 2));
  260. //
  261. // submit("TRPMB01802");
  262. // model.setValue("/root/main/checkflag","");
  263. //
  264. // }
  265. ]]>
  266. </script>
  267. <script type="javascript" ev:event="ondblclick">
  268. <![CDATA[
  269. finsertdrsick();
  270. ]]>
  271. </script>
  272. </datagrid>
  273. <line id="line4" class="line_3" style="x1:266px; y1:116px; x2:493px; y2:116px; "/>
  274. <caption id="caption9" class="cell_2" style="left:265px; top:93px; width:60px; height:23px; font-family:굴림체; font-size:9pt; vertical-align:middle; ">진료과</caption>
  275. <select1 id="combo1" ref="/root/send/orddeptcd" class="combo_s_essential" navindex="5" appearance="minimal" style="left:327px; top:94px; width:168px; height:19px; ">
  276. <choices>
  277. <itemset nodeset="/root/init/orddeptcd/orddeptcdlist">
  278. <label ref="nm"/>
  279. <value ref="cd"/>
  280. </itemset>
  281. </choices>
  282. <script type="javascript" ev:event="xforms-value-changed">
  283. <![CDATA[
  284. // model.resetInstanceNode("/root/main/drsccdspec/drsccdspeclist");
  285. model.removeNodeset("/root/main/drsccdspec/drinfospeclist");
  286. submit("TRPMB01803");
  287. model.setFocus("ipt_srchcnts");
  288. ]]>
  289. </script>
  290. </select1>
  291. <caption id="caption1" class="tit_2" style="left:0px; top:74px; width:187px; height:14px; ">증상 및 질환 관리</caption>
  292. <caption id="caption3" class="cell_2" style="left:0px; top:93px; width:60px; height:23px; font-family:굴림체; font-size:9pt; vertical-align:middle; ">질병명</caption>
  293. <datagrid id="grd_sickinfolist" nodeset="/root/main/drsccdspec/sickcdspeclist" caption="질병코드^질병명^seqno" colsep="^" colwidth="54, 201, 100" dataheight="25" defaultrows="0" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:0px; top:120px; width:260px; height:615px; ">
  294. <col ref="sickcd" visibility="hidden"/>
  295. <col ref="sicknm" type="input"/>
  296. <col ref="seqno" visibility="hidden"/>
  297. <script type="javascript" ev:event="ondblclick">
  298. <![CDATA[
  299. /*
  300. if ( grd_drinfolist.Row < 1 ) {
  301. //messageBox("입력할 진료의사를 ", "C002"); //입력할 진료의사를 선택하십시오 !
  302. return;
  303. }
  304. var val = model.getValue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sickcd");
  305. if ( val == "" ) {
  306. messageBox("입력할 증상 및 질환을 ", "C002"); //입력할 질병코드를 선택하십시오 !
  307. return;
  308. }
  309. for ( var i = 1; i < grd_drsccdlist.rows; i++ ) {
  310. if ( model.getValue("/root/main/drsccdspec/drsccdspeclist[" + i + "]/sickcd") == model.getValue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sickcd") ) {
  311. messageBox("해당 증상및 질환은 이미 등록되어 있는 코드", "E008"); //해당 질병코드는 이미 등록되어 있는 코드입니다.
  312. return;
  313. }
  314. }
  315. grd_drsccdlist.addRow();
  316. bottom = grd_drsccdlist.bottomRow;
  317. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddrid", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddrid"));
  318. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddrnm", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddrnm"));
  319. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddeptcd", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddeptcd"));
  320. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/orddeptnm", model.getvalue("/root/main/drsccdspec/drinfospeclist[" + grd_drinfolist.row + "]/orddeptnm"));
  321. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/sickcd", model.getvalue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sickcd"));
  322. model.setValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/sicknm", model.getvalue("/root/main/drsccdspec/sickcdspeclist[" + grd_sickinfolist.row + "]/sicknm"));
  323. model.makeValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/seqno", "1");
  324. model.makeValue("/root/main/drsccdspec/drsccdspeclist[" + bottom + "]/workflag", "I");
  325. grd_drsccdlist.refresh(); */
  326. model.setValue("/root/send/orddeptcd","0000");
  327. model.setValue("/root/send/srchcnts",grd_sickinfolist.labelmatrix(grd_sickinfolist.row, grd_sickinfolist.col));
  328. model.setValue("/root/send/updatedata/seqno", model.getValue("/root/main/drsccdspec/sickcdspeclist["+grd_sickinfolist.row+"]/seqno"));
  329. submit("TRPMB01804");
  330. model.setValue("/root/main/checkflag","search");
  331. model.refresh();
  332. ]]>
  333. </script>
  334. </datagrid>
  335. <line id="line1" class="line_1" style="x1:0px; y1:89px; x2:260px; y2:90px; "/>
  336. <line id="line5" class="line_3" style="x1:0px; y1:116px; x2:260px; y2:116px; "/>
  337. <button id="btn_search4" class="btn5_letter2" navindex="7" style="left:1065px; top:67px; width:42px; height:19px; ">
  338. <caption>삭제</caption>
  339. <script type="javascript" ev:event="DOMActivate">
  340. <![CDATA[
  341. row = grd_drsccdlist.row
  342. if ( row < 1 ) {
  343. //messageBox("삭제할 Data를 선택하지", "E007"); //삭제할 Data를 선택하지 않았습니다.
  344. return;
  345. }
  346. grd_drsccdlist.clearStatus(row);
  347. grd_drsccdlist.addStatus(row,"delete");
  348. model.refresh();
  349. //삭제확인-선택하신 질병코드를 삭제하시겠습니까? Yes(6),No(7)
  350. if (messageBox("선택하신 증상 및 질환을 ", "Q001") == '6') {
  351. if (model.getValue("/root/main/drsccdspec/drsccdspeclist[" + row + "]/workflag") == "I"){
  352. grd_drsccdlist.deleteItem(grd_drsccdlist.row);
  353. model.refresh();
  354. return true;
  355. }
  356. model.copyNode( "/root/send/updatedata" , "/root/main/drsccdspec/drsccdspeclist[" + row + "]");
  357. //삭제 작업구분 : D 세팅
  358. model.makeValue("/root/send/updatedata/workflag","D");
  359. if (submit("TXPMB01801") == true) {
  360. //btn_search.dispatch("DOMActivate"); //삭제처리 후, 내역 재조회(조회 이벤트 호출)
  361. if (model.getValue("/root/main/checkflag") == "search"){
  362. //의사별 증상 및 질환 리스트 조회
  363. //submit("TRPMB01804");
  364. model.removenode("/root/main/drsccdspec/drsccdspeclist[" + row + "]");
  365. model.refresh();
  366. }
  367. else {
  368. grd_drinfolist.dispatch("onclick");
  369. }
  370. }
  371. }else {
  372. grd_drsccdlist.clearStatus();
  373. var i = 0;
  374. for (i = 1; i <= grd_drsccdlist.rows; i++){
  375. if (model.getValue("/root/main/drsccdspec/drsccdspeclist["+i+"]/workflag") == "I"){
  376. grd_drsccdlist.addStatus(i,"insert"); // 행을 업데이트 상태로 변경
  377. }
  378. }
  379. }
  380. ]]>
  381. </script>
  382. </button>
  383. <caption id="caption5" class="search_name" style="left:465px; top:24px; width:73px; height:17px; ">진료과 :</caption>
  384. <select1 id="cmb_orddept" ref="/root/main/orddept" class="combo_s_essential" navindex="2" appearance="minimal" style="left:539px; top:23px; width:210px; height:19px; ">
  385. <choices>
  386. <itemset nodeset="/root/init/drsccdspec/sickdeptlist">
  387. <label ref="orddeptnm"/>
  388. <value ref="orddeptcd"/>
  389. </itemset>
  390. </choices>
  391. <script type="javascript" ev:event="xforms-value-changed">
  392. <![CDATA[
  393. // model.resetInstanceNode("/root/main/drsccdspec/drsccdspeclist")
  394. //
  395. // submit("TRPMB01803");
  396. fGetSickAndDrList();
  397. // model.setFocus("ipt_srchcnts");
  398. ]]>
  399. </script>
  400. </select1>
  401. <button id="button1" class="icon_right" style="left:499px; top:330px; width:26px; height:19px; ">
  402. <caption/>
  403. <script type="javascript" ev:event="DOMActivate">
  404. <![CDATA[
  405. finsertdrsick();
  406. ]]>
  407. </script>
  408. </button>
  409. <input id="ipt_sickcd" ref="/root/main/sickcd" class="input_s_essential" navindex="4" imemode="hangul" style="left:62px; top:94px; width:200px; height:19px; ">
  410. <script type="javascript" ev:event="onkeypress">
  411. <![CDATA[
  412. if (event.keyCode == '13') {
  413. //inputEnterKey("btn_search", "DOMActivate");
  414. var strSickNm = ipt_sickcd.currentText
  415. //증상 및 질환 리스트 조회
  416. model.setValue("/root/send/srchcnts",strSickNm);
  417. model.removeNodeset("/root/main/drsccdspec/drinfospeclist");
  418. model.removeNodeset("/root/main/drsccdspec/sickcdspeclist");
  419. model.removeNodeset("/root/main/drsccdspec/drsccdspeclist");
  420. if (submit("TRPMB01801")) {
  421. if( getNodesetCount("/root/main/drsccdspec/sickcdspeclist") > 0 ){
  422. return;
  423. }else {
  424. var message = messageBox("검색된 질병이 없습니다. 신규등록하시겠습니까? 신규등록", "S001");
  425. if (message == 6) {
  426. for (i = 1; i < grd_sickinfolist.rows+1; i++){
  427. if (strSickNm == model.getValue("/root/main/drsccdspec/sickcdspeclist["+i+"]/sicknm")){
  428. messageBox("증상 및 질환내역 리스트에 입력하신 질병명이", "E006");
  429. return false;
  430. }
  431. }
  432. //예
  433. //modal("../../../pam/pambaseinfomngtweb/xrw/SMPMB01700", "1","25", "25", "SMPMB01700", "", "" );
  434. model.setValue("/root/send/updatedata/sicknm", strSickNm);
  435. if (submit("TRPMB01702") == true) {
  436. if (model.getValue("/root/main/result/srchcnts/sicknm") == ""){
  437. //DB에 없는 내용이므로 새로 추가
  438. //model.setValue("/root/main/drsccdspec/sickcdspeclist["+cur_row+"]/sicknm", strSickNm);
  439. model.setValue("/root/send/updatedata/sicknm",strSickNm);
  440. model.setValue("/root/send/updatedata/sickcd","");
  441. model.setValue("/root/send/updatedata/seqno", "");
  442. }else {
  443. //DB에 이력상태로 존재함
  444. model.setValue("/root/send/updatedata/sicknm",model.getValue("/root/main/result/srchcnts/sicknm"));
  445. model.setValue("/root/send/updatedata/sickcd",model.getValue("/root/main/result/srchcnts/sickcd"));
  446. model.setValue("/root/send/updatedata/seqno", model.getValue("/root/main/result/srchcnts/seqno"));
  447. }//else end
  448. }
  449. //질병코드 저장
  450. submit("TXPMB01805");
  451. //다시 조회
  452. submit("TRPMB01801");
  453. //질병명 재조회
  454. model.setValue("/root/send/srchcnts","");
  455. submit("TRPMB01802");
  456. }else{
  457. //아니오
  458. return;
  459. }
  460. model.refresh();
  461. }
  462. }else {
  463. messageBox("질병명을 정확히", "C001");
  464. }
  465. }
  466. ]]>
  467. </script>
  468. </input>
  469. <button id="button2" class="btn3_letter7" style="left:0px; top:745px; width:116px; height:22px; ">
  470. <caption>증상및질환등록</caption>
  471. <script type="javascript" ev:event="DOMActivate">
  472. <![CDATA[
  473. modal("../../../pam/pambaseinfomngtweb/xrw/SMPMB01700", "1","25", "25", "SMPMB01700", "", "" );
  474. ]]>
  475. </script>
  476. </button>
  477. <button id="button3" class="btn5_letter2" navindex="6" style="left:1019px; top:67px; width:42px; height:19px; ">
  478. <caption>수정</caption>
  479. <script type="javascript" ev:event="DOMActivate">
  480. <![CDATA[
  481. for ( var i = 1; i < grd_drsccdlist.rows; i++ ) {
  482. if ( model.getValue("/root/main/drsccdspec/drsccdspeclist[" + i + "]/workflag") == 'U') {
  483. model.resetInstanceNode( "/root/send/updatedata");
  484. model.copyNode( "/root/send/updatedata" , "/root/main/drsccdspec/drsccdspeclist[" + i + "]");
  485. submit("TXPMB01801") == true
  486. }
  487. }
  488. grd_drsccdlist.clearStatus();
  489. grd_drsccdlist.refresh();
  490. ]]>
  491. </script>
  492. </button>
  493. <select1 id="cmb_sickcd" ref="/root/main/sickcdcomb" class="combo_s_essential" navindex="1" appearance="minimal" editmode="search" itemcount="10" input.imemode="hangul" style="left:87px; top:23px; width:353px; height:19px; ">
  494. <choices>
  495. <itemset nodeset="/root/init/sickcd/sickcdspeclist">
  496. <label ref="sicknm"/>
  497. <value ref="sickcd"/>
  498. </itemset>
  499. </choices>
  500. <script type="javascript" ev:event="xforms-value-changed">
  501. <![CDATA[
  502. //입력부, 조회부 초기화 후, 조회
  503. model.resetInstanceNode("/root/send/updatedata");
  504. model.resetInstanceNode("/root/hidden/desc");
  505. model.resetInstanceNode("/root/init/drsccdspec");
  506. model.resetInstanceNode("/root/main/orddept");
  507. if( cmb_orddept.value == "" ){
  508. model.setValue("/root/send/orddeptcd","0000");
  509. }
  510. //증상 및 질환 리스트 조회
  511. // 조회시에는 질병별 관련 진료과 의사들을 조회하는 것으로 수정됨 07.10.30
  512. //submit("TRPMB01801");
  513. model.setValue("/root/send/srchcnts", cmb_sickcd.label);
  514. model.setValue("/root/send/updatedata/seqno","%%");
  515. //의사별 증상 및 질환 리스트 조회
  516. submit("TRPMB01804");
  517. model.copyNode( "/root/init/drsccdspec" , "/root/main/drsccdspec");
  518. if(cmb_orddept.value != "") {
  519. addComboItem("cmb_orddept","전체","","above");
  520. }
  521. var rows = grd_drinfolist.rows;
  522. var fixedRows = grd_drinfolist.fixedRows;
  523. var dataRows = rows - fixedRows;
  524. for (var i = dataRows ; i>0; i--) {
  525. model.removenode("/root/main/drsccdspec/drinfospeclist["+i+"]");
  526. }
  527. model.setValue("/root/main/checkflag","search");
  528. model.setFocus("ipt_srchcnts");
  529. model.refresh();
  530. ]]>
  531. </script>
  532. </select1>
  533. <button id="button4" class="btn5_letter2" navindex="7" style="left:219px; top:67px; width:42px; height:19px; ">
  534. <caption>삭제</caption>
  535. <script type="javascript" ev:event="DOMActivate">
  536. <![CDATA[
  537. var row = grd_sickinfolist.row
  538. if ( grd_sickinfolist.selectedRow(0) < 0 ) {
  539. messageBox("삭제할 내역이 선택되지", "E007"); //삭제할 내역이 선택되지 않았습니다.
  540. return;
  541. }
  542. //삭제확인-선택하신 질병코드를 삭제하시겠습니까? Yes(6),No(7)
  543. if (messageBox("선택하신 질병코드를 ", "Q001") == '6') {
  544. //Yes 이면, 질병코드 삭제처리
  545. //seqno가 "9999999999"이면 화면에서만 생성된 질병리스트
  546. model.setValue("/root/send/updatedata/sickcd ", model.getValue("/root/main/drsccdspec/sickcdspeclist["+row+"]/sickcd"));
  547. model.setValue("/root/send/updatedata/sicknm", model.getValue("/root/main/drsccdspec/sickcdspeclist["+row+"]/sicknm"));
  548. model.setValue("/root/send/updatedata/seqno", model.getValue("/root/main/drsccdspec/sickcdspeclist["+row+"]/seqno"));
  549. if (submit("TXPMB01702") == true) {
  550. messageBox("질병이 정상적으로 삭제", "I001");
  551. model.removenode("/root/main/drsccdspec/sickcdspeclist["+row+"]");
  552. model.removeNodeset("/root/main/drsccdspec/drinfospeclist");
  553. model.removeNodeset("/root/main/drsccdspec/drsccdspeclist");
  554. model.setValue("/root/send/srchcnts","");
  555. submit("TRPMB01802");
  556. model.refresh();
  557. //btn_search.dispatch("DOMActivate"); //삭제처리 후, 내역 재조회(조회 이벤트 호출)
  558. }
  559. }
  560. ]]>
  561. </script>
  562. </button>
  563. <button id="button5" class="btn5_letter2" navindex="6" style="left:172px; top:67px; width:42px; height:19px; ">
  564. <caption>수정</caption>
  565. <script type="javascript" ev:event="DOMActivate">
  566. <![CDATA[
  567. var update = getGridUpdateData(grd_sickinfolist);
  568. if(update == ""){
  569. messageBox("변경된 내역이 없어, 저장하지", "E007");
  570. return;
  571. }
  572. messageBox("수정된 내역을", "Q002");
  573. for ( var i = 1; i < grd_sickinfolist.rows; i++ ) {
  574. // 각 row마다 status를 확인한다.
  575. var status = grd_sickinfolist.rowStatus(i);
  576. if(status == "2") {
  577. model.makeValue("/root/send/updatedata/workflag","U");
  578. //변경사항이 있는 각 row의 cell값을 변수에 저장한다.
  579. model.setValue("/root/send/updatedata/sickcd ", model.getValue("/root/main/drsccdspec/sickcdspeclist["+i+"]/sickcd"));
  580. model.setValue("/root/send/updatedata/sicknm", model.getValue("/root/main/drsccdspec/sickcdspeclist["+i+"]/sicknm"));
  581. model.setValue("/root/send/updatedata/seqno", model.getValue("/root/main/drsccdspec/sickcdspeclist["+i+"]/seqno"));
  582. //model.copyNode( "/root/send/updatedata" , "/root/main/drsccdspec/sickinfolist[" + i + "]");
  583. submit("TXPMB01702") == true
  584. }
  585. }
  586. grd_sickinfolist.clearStatus();
  587. grd_sickinfolist.refresh();
  588. pamGetDeptCDDrIDList();
  589. //질병코드를 조회한다.
  590. model.setValue("/root/send/srchcnts","");
  591. submit("TRPMB01802");
  592. fGetSickAndDrList();
  593. model.resetInstanceNode("/root/main/sickcdcomb");
  594. model.resetInstanceNode("/root/main/orddept");
  595. model.refresh();
  596. ]]>
  597. </script>
  598. </button>
  599. </xhtml:body>
  600. </xhtml:html>