SMPIB02700_단순영상체감기준등록관리.xrw 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet ype="text/css" href="../../../com/commonweb/css/common.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. <list1>
  11. <updtlist/>
  12. </list1>
  13. <list2>
  14. <orgnllist/>
  15. </list2>
  16. </main>
  17. <send>
  18. <seqno/>
  19. <orddeptcd/>
  20. <calcscorcd/>
  21. <edicd/>
  22. <ioflag/>
  23. <updatedata>
  24. <updtlist/>
  25. <orgnllist/>
  26. <seldeptlist/>
  27. </updatedata>
  28. <item2>
  29. <grdsrchnm>
  30. <iptsearch/>
  31. <searchkind/>
  32. </grdsrchnm>
  33. </item2>
  34. <item3>
  35. <srchdiag>
  36. <basedd/>
  37. <diagcd/>
  38. <diagnm/>
  39. <selectedrdodiagkind/>
  40. </srchdiag>
  41. </item3>
  42. <con1/>
  43. <large/>
  44. <middle/>
  45. <small/>
  46. </send>
  47. <send2>
  48. <seqno/>
  49. <orddeptcd/>
  50. </send2>
  51. <hidden>
  52. <sppiz00400>
  53. <rslt>
  54. <diagcd/>
  55. <diaghngnm/>
  56. <diagengnm/>
  57. </rslt>
  58. </sppiz00400>
  59. <mode/>
  60. <smpic00200>
  61. <cond>
  62. <calcnm/>
  63. </cond>
  64. </smpic00200>
  65. <seldeptlist>
  66. <selyn/>
  67. <deptcd/>
  68. <deptnm/>
  69. <oldselyn/>
  70. </seldeptlist>
  71. <seldeptbase>
  72. <seqno/>
  73. <calcscorcd/>
  74. <orddeptcd/>
  75. </seldeptbase>
  76. </hidden>
  77. <init>
  78. <orddeptcd>
  79. <orddeptcdlist>
  80. <nm>전체</nm>
  81. <cd>-</cd>
  82. </orddeptcdlist>
  83. </orddeptcd>
  84. <P0002list>
  85. <P0002>
  86. <cdnm/>
  87. <cdid/>
  88. </P0002>
  89. </P0002list>
  90. <P0391list>
  91. <P0391>
  92. <cdnm/>
  93. <cdid/>
  94. </P0391>
  95. </P0391list>
  96. <earnclslist/>
  97. </init>
  98. <temp>
  99. <calcdiagnm>
  100. <hngnm/>
  101. </calcdiagnm>
  102. <picmmech>
  103. <picmmech_calcscorcd/>
  104. <picmmech_hngnm/>
  105. <picmmech_insuedicd/>
  106. <picmmech_earncls1/>
  107. <picmmech_earncls2/>
  108. <picmmech_earncls3/>
  109. <picmmech_earncls1nm/>
  110. <picmmech_earncls2nm/>
  111. <picmmech_earncls3nm/>
  112. </picmmech>
  113. </temp>
  114. <maxgrup>
  115. <maxno>
  116. <maxseqno/>
  117. </maxno>
  118. </maxgrup>
  119. </root>
  120. </instance>
  121. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  122. <submission id="TRZBC00102" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  123. <submission id="TRPAM00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance" resultref="/root/hidden/tmp"/>
  124. <submission id="TRPIB02701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list1"/>
  125. <submission id="TRPIB02702" mediatype="application/x-www-form-urlencoded" method="post" resultref="/root/maxgrup"/>
  126. <submission id="TRPIB00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/item2/grdsrchnm" resultref="/root/temp"/>
  127. <submission id="TXPIB02701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/updatedata" resultref="/root/result"/>
  128. <submission id="TXPIB02702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/updatedata" replace="instance" resultref="/root/result"/>
  129. <submission id="TRPIB02703" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send2" resultref="/root/main/list2"/>
  130. <submission id="TRPIS00510" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/earnclslist"/>
  131. </model>
  132. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  133. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  134. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  135. <script type="javascript" src="../../../pam/pamcomnweb/js/PAM.js"/>
  136. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  137. <script type="javascript" ev:event="xforms-ready">
  138. <![CDATA[
  139. //zbcfGetCodeList(new Array("P0002", "P0391"), new Array("/root/init/P0002list", "/root/init/P0391list"), false);
  140. submit("TRPIS00510"); // 수가 수익분류 리스트
  141. fInitialize();
  142. ]]>
  143. </script>
  144. <script type="javascript">
  145. <![CDATA[
  146. function fInitialize() {
  147. // grid를 인스턴스에 mapping후 인스턴스에 해당하는 빈줄 1줄이 생기므로 grid 초기화
  148. model.removeNodeset("/root/main/list1/updtlist");
  149. model.removeNodeset("/root/main/list2/orgnllist");
  150. // (PAM.js) submission id="TRPAM00101" 를 사용하여 Combo item을 가져온다.
  151. pamGetDeptCDDrIDList();
  152. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/cd","-");
  153. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/nm","전체");
  154. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/deptengabbgr","-");
  155. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/reqdeptno","-");
  156. copyNodeType("/root/init/orddeptcd","/root/hidden/orddeptcd","before");
  157. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/cd","");
  158. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/nm","");
  159. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/deptengabbgr","-");
  160. model.makeValue("/root/hidden/orddeptcd/orddeptcdlist/reqdeptno","-");
  161. copyNodeType("/root/init/orddeptcd","/root/hidden/orddeptcd","before");
  162. cmb_orddeptcd.refresh();
  163. model.resetInstanceNode("/root/send");
  164. model.setValue("/root/send/con1", "U");
  165. //처방대분류 단순방사선검사로 자동 세팅
  166. model.setValue("/root/send/large", "18");
  167. cmb_middle.choices.itemset.attribute("nodeset") = "/root/init/hidden";
  168. cmb_small.choices.itemset.attribute("nodeset") = "/root/init/hidden";
  169. cmb_middle.value = "";
  170. cmb_small.value = "";
  171. cmb_middle.choices.itemset.attribute("nodeset") = "/root/init/hidden/earnclslist[step='M' and earncls1='" + cmb_large.value + "']";
  172. cmb_middle.refresh();
  173. //cmb_large.value = "18";
  174. model.removeNodeset("/root/init/orddrid");
  175. model.removeNodeset("/root/init/centcd");
  176. model.removeNodeset("/root/init/subdeptcd");
  177. model.removeNodeset("/root/hidden/seldeptlist");
  178. for( i = 1; i <= model.getXPathValue( "count(/root/init/orddeptcd/orddeptcdlist)" ) ; i++ ) {
  179. model.makeNode("root/hidden/seldeptlist[" + i + "]/selyn");
  180. model.makeNode("root/hidden/seldeptlist[" + i + "]/deptcd");
  181. model.makeNode("root/hidden/seldeptlist[" + i + "]/deptnm");
  182. model.makeNode("root/hidden/seldeptlist[" + i + "]/oldselyn");
  183. model.setValue("/root/hidden/seldeptlist[" + i + "]/deptcd", model.getValue("/root/init/orddeptcd/orddeptcdlist[" + i + "]/cd") );
  184. model.setValue("/root/hidden/seldeptlist[" + i + "]/deptnm", model.getValue("/root/init/orddeptcd/orddeptcdlist[" + i + "]/nm") );
  185. }
  186. model.refresh();
  187. }
  188. // 처방이나 상병코드로 명칭을 검색 결과가 단일일때 명칭을 표기 아닐경우는 상병조회,수가조회 팝업과 연동
  189. function fSearchNm(mode) {
  190. var srchkind = model.getValue("/root/send/searchkind");
  191. var hngnm = model.getValue("/root/temp/calcdiagnm/hngnm");
  192. var calc_col = grd_tstdiagrgst.colRef("calcscorcd");
  193. var frd_col = grd_tstdiagrgst.colRef("diagcd");
  194. model.resetInstanceNode("/root/main/temp");
  195. model.resetInstanceNode("/root/hidden/sppiz00400");
  196. model.setValue("/root/hidden/mode",mode);
  197. // srchkind - 1 : 수가 , 2 : 상병 , 3 : 처방
  198. // mode - 1 : 검색조건 , 2 : 그리드
  199. if ( (srchkind == 1 && mode == 1) || (grd_tstdiagrgst.col == calc_col && mode == 2) ) { // 수가검색
  200. if (grd_tstdiagrgst.col == calc_col && mode == 2) {
  201. model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/calcscornm",model.getValue("/root/temp/calcdiagnm/hngnm"));
  202. }
  203. if (hngnm == "") { // 검색된 건수가 2건이상이면 팝업을 통해 조회한다.
  204. var trgtManWindow = getChildWindow("SMPIC00200"); // 수가 조회
  205. if (trgtManWindow == null) {
  206. if (mode == 1) { // 조회창에서 검색
  207. modal("SMPIC00200" ,"", "10", "10", "SMPIC00200", "/root/send/iptsearch", "/root/temp", "", "");
  208. model.setValue("/root/send/iptsearch",model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  209. model.setValue("/root/send/srchnm",model.getValue("/root/temp/picmmech/picmmech_hngnm"));
  210. }
  211. else if (mode == 2 && grd_tstdiagrgst.col == calc_col) { // 그리드에서 검색
  212. modal("SMPIC00200" ,"", "10", "10", "SMPIC00200", "/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/calcscorcd", "/root/temp", "", "");
  213. model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/calcscorcd",model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  214. model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/calcscornm",model.getValue("/root/temp/picmmech/picmmech_hngnm"));
  215. var srchnm = model.getValue("/root/temp/picmmech/picmmech_hngnm");
  216. if (srchnm == "") {
  217. //model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+" ]/calcscorcd","");
  218. //model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+" ]/calcscornm","");
  219. }
  220. }
  221. } else {
  222. trgtManWindow.javascript.fSearchDiag();
  223. activateChild("SMPIC00200");
  224. }
  225. model.refresh();
  226. }
  227. } else if ( (srchkind == 2 && mode == 1) || (grd_tstdiagrgst.col == frd_col && mode == 2)) { // 상병조회
  228. model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/diagnm",model.getValue("/root/temp/calcdiagnm/hngnm"));
  229. if (hngnm == "") { // 검색된 건수가 2건이상이면 팝업을 통해 조회한다.
  230. var trgtManWindow = getChildWindow("SPPIZ00400"); // 상병 조회
  231. if (trgtManWindow == null) {
  232. model.setValue("/root/send/item1/srchdiag/basedd", model.getValue("/root/send/badd"));
  233. if (mode == 1) { // 조회창에서 검색
  234. model.setValue("/root/send/item1/srchdiag/diagcd", model.getValue("/root/send/iptsearch"));
  235. } else if (mode == 2) { // 그리드에서 검색
  236. model.setValue("/root/send/item1/srchdiag/diagcd", model.getValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/diagcd"));
  237. }
  238. model.setValue("/root/send/item1/srchdiag/selectedrdodiagkind","1"); // icd10으로
  239. modal("SPPIZ00400" ,"", "10", "10", "SPPIZ00400", "/root/send/item1/srchdiag", "/root/init", "", "");
  240. var srchnm = model.getValue("/root/hidden/sppiz00400/rslt/diaghngnm");
  241. if (srchnm == "") {
  242. //model.setValue("/root/main/list1/listautd[" +grd_tstdiagrgst.row+ " ]/diagcd","");
  243. //model.setValue("/root/main/list1/listautd[" +grd_tstdiagrgst.row+ " ]/diagnm","");
  244. }
  245. } else {
  246. trgtManWindow.javascript.fSearchDiag();
  247. activateChild("SPPIZ00400");
  248. }
  249. model.refresh();
  250. }
  251. }
  252. }
  253. // 상병조회 팝업에서 상병을 더블클릭 했을경우 상병 그리드에 반영, 상병명은 상병조회팝업의 상병명을 사용하지 않고 ICD10 사용
  254. function fSetDiagCdNm() {
  255. var mode = model.getValue("/root/hidden/mode");
  256. if (mode == 1) {
  257. model.setValue("/root/send/iptsearch",model.getValue("/root/hidden/sppiz00400/rslt/diagcd"));
  258. model.setValue("/root/send/srchnm",model.getValue("/root/hidden/sppiz00400/rslt/diaghngnm"));
  259. } else if (mode == 2) {
  260. model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/diagcd", model.getValue("/root/hidden/sppiz00400/rslt/diagcd"));
  261. model.setValue("/root/main/list1/listautd["+grd_tstdiagrgst.row+"]/diagnm", model.getValue("/root/hidden/sppiz00400/rslt/diaghngnm"));
  262. }
  263. model.refresh();
  264. }
  265. // 조회시 데이터의 유효성체크
  266. function fCheckSrchData() {
  267. var srchkind = model.getValue("/root/send/searchkind");
  268. var iptsearch = model.getValue("/root/send/iptsearch");
  269. if (srchkind == "-") {
  270. return true;
  271. }
  272. if (iptsearch == "") {
  273. if (srchkind == "1") {
  274. messageBox("처방코드는","I003"); // 처방코드는 필수입력입니다.
  275. return false;
  276. }
  277. if (srchkind == "2") {
  278. messageBox("상병코드는","I003"); // 상병코드는 필수입력입니다.
  279. return false;
  280. }
  281. return true;
  282. }
  283. return true;
  284. }
  285. // 저장시 데이터의 유효성체크
  286. function fCheckSaveData() {
  287. var gupdtdata = getGridUpdateData(grd_updtprcplist);
  288. var mupdtdata = getGridUpdateData(grd_orgnprcplist);
  289. if (gupdtdata == "" && mupdtdata =="" ) {
  290. messageBox("변경된 데이터가","I004");
  291. return false;
  292. }
  293. for(var i = 1 ; i < grd_updtprcplist.rows ; i++) {
  294. var status = grd_updtprcplist.rowStatus(i);
  295. if(status == "1" || status == "2" || status =="3" ) {
  296. if ( model.getValue("/root/main/list1/updtlist[" + i + "]/calcscorcd") == "" ) {
  297. messageBox("변경처방 목록 수가코드는","I003");
  298. return false;
  299. }
  300. }
  301. }
  302. for(var i = 1 ; i < grd_updtprcplist.rows ; i++) {
  303. var status = grd_updtprcplist.rowStatus(i);
  304. if(status == "1" || status == "2" || status =="3" ) {
  305. if ( model.getValue("/root/main/list1/updtlist[" + i + "]/edicd") == "" ) {
  306. messageBox("변경처방 목록 EDI코드는","I003");
  307. return false;
  308. }
  309. }
  310. }
  311. //
  312. for(var i = 1 ; i < grd_updtprcplist.rows ; i++) {
  313. var status = grd_orgnprcplist.rowStatus(i);
  314. if(status == "1" || status == "2" || status =="3" ) {
  315. if ( model.getValue("/root/main/list2/orgnllist[" + i + "]/calcscorcd") == "" ) {
  316. messageBox("원처방 목록 수가코드는","I003");
  317. return false;
  318. }
  319. }
  320. }
  321. return true;
  322. }
  323. function fCallSubList() {
  324. var rtn = null;
  325. model.removeNodeset("/root/main/list2/orgnllist");
  326. var row = grd_updtprcplist.selectedRow(0);
  327. var seqno = grd_updtprcplist.textmatrix(row, 1); // 일련번호
  328. var orddeptcd = grd_updtprcplist.textmatrix(row, 6); // 적용과
  329. model.setValue( "root/send2/seqno" , seqno);
  330. model.setValue( "root/send2/orddeptcd", orddeptcd);
  331. if ( seqno == "" || orddeptcd == "" ) {
  332. grd_orgnprcplist.refresh();
  333. return; // 조회할 코드 없으면 그냥 리턴
  334. }
  335. rtn = submit("TRPIB02703");
  336. }
  337. function fSrchUpdtSnglCalcscorNm() {
  338. var col = grd_updtprcplist.col;
  339. var row = grd_updtprcplist.row;
  340. /*
  341. model.setValue("/root/send/item2/grdsrchnm/iptsearch",model.getValue("/root/main/list1/updtlist["+row+"]/calcscorcdd"));
  342. model.setValue("/root/send/item2/grdsrchnm/searchkind","1");
  343. submit("TRPIB00202");
  344. var hngnm = model.getValue("/root/temp/calcdiagnm/hngnm");
  345. if (hngnm == "") {
  346. */
  347. setParameter("openflag", '');
  348. modal("SMPIC00200" ,"", "10", "10", "SMPIC00200","/root/send/item2/grdsrchnm/iptsearch", "/root/temp", "", "");
  349. model.setValue("/root/main/list1/updtlist["+row+"]/calcscorcd",model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  350. model.setValue("/root/main/list1/updtlist["+row+"]/edicd",model.getValue("/root/temp/picmmech/picmmech_insuedicd"));
  351. model.setValue("/root/main/list1/updtlist["+row+"]/hngnm",model.getValue("/root/temp/picmmech/picmmech_ordnm"));
  352. model.setValue("/root/main/list1/updtlist["+row+"]/earncls1",model.getValue("/root/temp/picmmech/picmmech_earncls1"));
  353. model.setValue("/root/main/list1/updtlist["+row+"]/earncls2",model.getValue("/root/temp/picmmech/picmmech_earncls2"));
  354. model.setValue("/root/main/list1/updtlist["+row+"]/earncls3",model.getValue("/root/temp/picmmech/picmmech_earncls3"));
  355. model.setValue("/root/main/list1/updtlist["+row+"]/earncls1nm",model.getValue("/root/temp/picmmech/picmmech_earncls1nm"));
  356. model.setValue("/root/main/list1/updtlist["+row+"]/earncls2nm",model.getValue("/root/temp/picmmech/picmmech_earncls2nm"));
  357. model.setValue("/root/main/list1/updtlist["+row+"]/earncls3nm",model.getValue("/root/temp/picmmech/picmmech_earncls3nm"));
  358. var srchnm = model.getValue("/root/temp/picmmech/picmmech_hngnm");
  359. if (srchnm == "") {
  360. model.setValue("/root/main/list1/updtlist[" + row + " ]/calcscorcd","");
  361. model.setValue("/root/main/list1/updtlist[" + row + " ]/hngnm","");
  362. }
  363. /*
  364. } else {
  365. model.setValue("/root/main/list1/updtlist["+row+"]/hngnm",model.getValue("/root/temp/calcdiagnm/hngnm"));
  366. }
  367. */
  368. }
  369. function fSrchUpdtEdiCdNm() {
  370. var col = grd_updtprcplist.col;
  371. var row = grd_updtprcplist.row;
  372. /*
  373. model.setValue("/root/send/item2/grdsrchnm/iptsearch",model.getValue("/root/main/list1/updtlist["+row+"]/edicd"));
  374. model.setValue("/root/send/item2/grdsrchnm/searchkind","1");
  375. submit("TRPIB00202");
  376. var hngnm = model.getValue("/root/temp/calcdiagnm/hngnm");
  377. if (hngnm == "") {
  378. */
  379. setParameter("openflag", 'edicd');
  380. modal("SMPIC00200" ,"", "10", "10", "SMPIC00200","/root/send/item2/grdsrchnm/iptsearch", "/root/temp", "", "");
  381. model.setValue("/root/main/list1/updtlist["+row+"]/calcscorcd",model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  382. model.setValue("/root/main/list1/updtlist["+row+"]/edicd",model.getValue("/root/temp/picmmech/picmmech_insuedicd"));
  383. model.setValue("/root/main/list1/updtlist["+row+"]/hngnm",model.getValue("/root/temp/picmmech/picmmech_ordnm"));
  384. model.setValue("/root/main/list1/updtlist["+row+"]/earncls1",model.getValue("/root/temp/picmmech/picmmech_earncls1"));
  385. model.setValue("/root/main/list1/updtlist["+row+"]/earncls2",model.getValue("/root/temp/picmmech/picmmech_earncls2"));
  386. model.setValue("/root/main/list1/updtlist["+row+"]/earncls3",model.getValue("/root/temp/picmmech/picmmech_earncls3"));
  387. model.setValue("/root/main/list1/updtlist["+row+"]/earncls1nm",model.getValue("/root/temp/picmmech/picmmech_earncls1nm"));
  388. model.setValue("/root/main/list1/updtlist["+row+"]/earncls2nm",model.getValue("/root/temp/picmmech/picmmech_earncls2nm"));
  389. model.setValue("/root/main/list1/updtlist["+row+"]/earncls3nm",model.getValue("/root/temp/picmmech/picmmech_earncls3nm"));
  390. var srchnm = model.getValue("/root/temp/picmmech/picmmech_hngnm");
  391. if (srchnm == "") {
  392. model.setValue("/root/main/list1/updtlist[" + row + " ]/edicd","");
  393. model.setValue("/root/main/list1/updtlist[" + row + " ]/hngnm","");
  394. }
  395. /*
  396. } else {
  397. model.setValue("/root/main/list1/updtlist["+row+"]/hngnm",model.getValue("/root/temp/calcdiagnm/hngnm"));
  398. }
  399. */
  400. }
  401. function fSrchOrgnlSnglCalcscorNm() {
  402. var col = grd_orgnprcplist.col;
  403. var row = grd_orgnprcplist.row;
  404. /*
  405. model.setValue("/root/send/item2/grdsrchnm/iptsearch",model.getValue("/root/main/list2/orgnllist["+row+"]/calcscorcdd"));
  406. model.setValue("/root/send/item2/grdsrchnm/searchkind","1");
  407. submit("TRPIB00202");
  408. var hngnm = model.getValue("/root/temp/calcdiagnm/hngnm");
  409. if (hngnm == "") {
  410. */
  411. setParameter("openflag", '');
  412. modal("SMPIC00200" ,"", "10", "10", "SMPIC00200","/root/send/item2/grdsrchnm/iptsearch", "/root/temp", "", "");
  413. model.setValue("/root/main/list2/orgnllist["+row+"]/calcscorcd",model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  414. model.setValue("/root/main/list2/orgnllist["+row+"]/edicd",model.getValue("/root/temp/picmmech/picmmech_insuedicd"));
  415. model.setValue("/root/main/list2/orgnllist["+row+"]/hngnm",model.getValue("/root/temp/picmmech/picmmech_ordnm"));
  416. var srchnm = model.getValue("/root/temp/picmmech/picmmech_hngnm");
  417. if (srchnm == "") {
  418. model.setValue("/root/main/list2/orgnllist[" + row + " ]/calcscorcd","");
  419. model.setValue("/root/main/list2/orgnllist[" + row + " ]/hngnm","");
  420. }
  421. /*
  422. } else {
  423. model.setValue("/root/main/list2/orgnllist["+row+"]/hngnm",model.getValue("/root/temp/calcdiagnm/hngnm"));
  424. }
  425. */
  426. }
  427. function fSrchOrgnlEdiCdNm() {
  428. var col = grd_orgnprcplist.col;
  429. var row = grd_orgnprcplist.row;
  430. /*
  431. model.setValue("/root/send/item2/grdsrchnm/iptsearch",model.getValue("/root/main/list2/orgnllist["+row+"]/edicd"));
  432. model.setValue("/root/send/item2/grdsrchnm/searchkind","1");
  433. submit("TRPIB00202");
  434. var hngnm = model.getValue("/root/temp/calcdiagnm/hngnm");
  435. if (hngnm == "") {
  436. */
  437. setParameter("openflag", 'edicd');
  438. modal("SMPIC00200" ,"", "10", "10", "SMPIC00200","/root/send/item2/grdsrchnm/iptsearch", "/root/temp", "", "");
  439. model.setValue("/root/main/list2/orgnllist["+row+"]/calcscorcd",model.getValue("/root/temp/picmmech/picmmech_calcscorcd"));
  440. model.setValue("/root/main/list2/orgnllist["+row+"]/edicd",model.getValue("/root/temp/picmmech/picmmech_insuedicd"));
  441. model.setValue("/root/main/list2/orgnllist["+row+"]/hngnm",model.getValue("/root/temp/picmmech/picmmech_ordnm"));
  442. var srchnm = model.getValue("/root/temp/picmmech/picmmech_hngnm");
  443. if (srchnm == "") {
  444. model.setValue("/root/main/list2/orgnllist[" + row + " ]/edicd","");
  445. model.setValue("/root/main/list2/orgnllist[" + row + " ]/hngnm","");
  446. }
  447. /*
  448. } else {
  449. model.setValue("/root/main/list2/orgnllist["+row+"]/hngnm",model.getValue("/root/temp/calcdiagnm/hngnm"));
  450. }
  451. */
  452. }
  453. //진료과 선택창 띄위기전에 초기작업을 한다.
  454. function fSelectDeptInit() {
  455. model.setValue("/root/hidden/seldeptbase/seqno" , model.getValue("/root/main/list1/updtlist[" + grd_updtprcplist.row + "]/seqno") );
  456. model.setValue("/root/hidden/seldeptbase/calcscorcd", model.getValue("/root/main/list1/updtlist[" + grd_updtprcplist.row + "]/calcscorcd") );
  457. model.setValue("/root/hidden/seldeptbase/orddeptcd", model.getValue("/root/main/list1/updtlist[" + grd_updtprcplist.row + "]/orddeptcd") );
  458. // 일단 기존꺼 지우고
  459. for( i = 1; i <= model.getXPathValue( "count(/root/init/orddeptcd/orddeptcdlist)" ) ; i++ ) {
  460. model.setValue("/root/hidden/seldeptlist[" + i + "]/selyn", "false" );
  461. model.setValue("/root/hidden/seldeptlist[" + i + "]/oldselyn", "false" );
  462. grd_seldeptlist.clearStatus();
  463. }
  464. for( i = grd_updtprcplist.fixedRows; i < grd_updtprcplist.rows ; i++ ) {
  465. if ( model.getValue("/root/hidden/seldeptbase/seqno") == model.getValue("/root/main/list1/updtlist[" + i + "]/seqno") ) {
  466. var tmpDeptcd = model.getValue("/root/main/list1/updtlist[" + i + "]/orddeptcd");
  467. for( j = grd_seldeptlist.fixedRows; j < grd_seldeptlist.rows ; j++ ) {
  468. if ( tmpDeptcd == grd_seldeptlist.valueMatrix(j,1) ) {
  469. model.setValue("/root/hidden/seldeptlist[" + j + "]/selyn","true");
  470. model.setValue("/root/hidden/seldeptlist[" + j + "]/oldselyn","true");
  471. }
  472. }
  473. }
  474. }
  475. model.refresh();
  476. }
  477. // 김용민 ... 진료과 선택창 완료시 체크
  478. function fSelectDeptChk() {
  479. var changecnt = 0;
  480. var alldept = 0;
  481. var etcdept = 0;
  482. for( i = grd_seldeptlist.fixedRows; i < grd_seldeptlist.rows ; i++ ) {
  483. if ( model.getValue("/root/hidden/seldeptlist[" + i + "]/selyn") != model.getValue("/root/hidden/seldeptlist[" + i + "]/oldselyn") )
  484. {
  485. changecnt++;
  486. }
  487. if ( model.getValue("/root/hidden/seldeptlist[" + i + "]/selyn") == "true" ) {
  488. if ( model.getValue("/root/hidden/seldeptlist[" + i + "]/deptcd") == "-" ) {
  489. alldept++;
  490. } else {
  491. etcdept++;
  492. }
  493. }
  494. }
  495. if ( changecnt == 0 ) {
  496. messageBox("변경된 데이터가","I004");
  497. return false;
  498. }
  499. if ( alldept != 0 && etcdept != 0 ) {
  500. messageBox("전체과와 타과를 같이 선택할수","I004");
  501. return false;
  502. }
  503. if ( alldept == 0 && etcdept == 0 ) {
  504. messageBox("선택된 진료과가 하나도","I004");
  505. return false;
  506. }
  507. return true;
  508. }
  509. // 김용민 - 선택된 진료과를 입력한다.
  510. function fSelectDeptInput() {
  511. var jobrow = 0;
  512. model.removeNodeset("/root/temp/save/seldeptlist");
  513. for( i = grd_seldeptlist.fixedRows; i < grd_seldeptlist.rows ; i++ ) {
  514. if ( model.getValue("root/hidden/seldeptlist[" + i + "]/selyn") == "true"
  515. && model.getValue("root/hidden/seldeptlist[" + i + "]/oldselyn") == "false"
  516. )
  517. {
  518. // 신규입력
  519. jobrow++;
  520. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/seqno");
  521. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/basedept");
  522. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/orddeptcd");
  523. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/status");
  524. model.setValue("/root/temp/save/seldeptlist[" + jobrow+ "]/seqno", model.getValue("/root/hidden/seldeptbase/seqno") );
  525. model.setValue("/root/temp/save/seldeptlist[" + jobrow + "]/basedept", model.getValue("/root/hidden/seldeptbase/orddeptcd") );
  526. model.setValue("/root/temp/save/seldeptlist[" + jobrow + "]/orddeptcd", model.getValue("/root/hidden/seldeptlist[" + i + "]/deptcd") );
  527. model.setValue("/root/temp/save/seldeptlist[" + jobrow+ "]/status", "i" );
  528. } else if ( model.getValue("root/hidden/seldeptlist[" + i + "]/selyn") == "false"
  529. && model.getValue("root/hidden/seldeptlist[" + i + "]/oldselyn") == "true"
  530. )
  531. {
  532. // 삭제
  533. jobrow++;
  534. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/seqno");
  535. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/basedept");
  536. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/orddeptcd");
  537. model.makeNode("/root/temp/save/seldeptlist[" + jobrow + "]/status");
  538. model.setValue("/root/temp/save/seldeptlist[" + jobrow+ "]/seqno", model.getValue("/root/hidden/seldeptbase/seqno") );
  539. model.setValue("/root/temp/save/seldeptlist[" + jobrow + "]/basedept", "" );
  540. model.setValue("/root/temp/save/seldeptlist[" + jobrow + "]/orddeptcd", model.getValue("/root/hidden/seldeptlist[" + i + "]/deptcd") );
  541. model.setValue("/root/temp/save/seldeptlist[" + jobrow+ "]/status", "d" );
  542. }
  543. }
  544. model.setValue("/root/send/updatedata/seldeptlist", getNodeListCSV(instance1.selectNodes("/root/temp/save/seldeptlist")) );
  545. }
  546. // 김용민 - 화면 display 버튼 사용여부 제어
  547. function fSetDisplayDisable(iFlag) {
  548. if ( iFlag == true ) {
  549. grd_tstdiagrgst.disabled = true;
  550. grd_tstmech.disabled = true;
  551. grd_tstdiag.disabled = true;
  552. btn_search.disabled = true;
  553. btn_save.disabled = true;
  554. btn_init.disabled = true;
  555. btn_sel_dept.disabled = true;
  556. btn_addrow.disabled = true;
  557. btn_delrow.disabled = true;
  558. btn_copy.disabled = true;
  559. btn_autdiag_insrow.disabled = true;
  560. btn_autdiag_delrow.disabled = true;
  561. btn_autmech_insrow.disabled = true;
  562. btn_autmech_delrow.disabled = true;
  563. } else {
  564. grd_tstdiagrgst.disabled = false;
  565. grd_tstmech.disabled = false;
  566. grd_tstdiag.disabled = false;
  567. btn_search.disabled = false;
  568. btn_save.disabled = false;
  569. btn_init.disabled = false;
  570. btn_sel_dept.disabled = false;
  571. btn_addrow.disabled = false;
  572. btn_delrow.disabled = false;
  573. btn_copy.disabled = false;
  574. btn_autdiag_insrow.disabled = false;
  575. btn_autdiag_delrow.disabled = false;
  576. btn_autmech_insrow.disabled = false;
  577. btn_autmech_delrow.disabled = false;
  578. }
  579. }
  580. ]]>
  581. </script>
  582. </xhtml:head>
  583. <xhtml:body pagewidth="1211" pageheight="784" guideline="1,1195;" style="vertical-align:bottom; margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  584. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  585. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:171px; height:14px; ">단순영상체감기준등록관리</caption>
  586. </group>
  587. <group id="group3" scroll="test" style="left:0px; top:13px; width:1195px; height:771px; ">
  588. <group id="group2" style="left:0px; top:10px; width:1194px; height:68px; vertical-align:top; ">
  589. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1194px; height:65px; "/>
  590. <button id="btn_search" class="btn1_letter2" style="left:1124px; top:23px; width:56px; height:22px; ">
  591. <caption>조회</caption>
  592. <script type="javascript" ev:event="DOMActivate">
  593. <![CDATA[
  594. model.removenode("/root/main/list1/updtlist");
  595. model.removeNodeset("/root/main/list2/orgnllist");
  596. model.makeNode("/root/main/list1/updtlist");
  597. submit("TRPIB02701");
  598. model.refresh();
  599. ]]>
  600. </script>
  601. </button>
  602. <line id="line13" class="line_4" style="x1:1106px; y1:12px; x2:1106px; y2:54px; "/>
  603. <caption id="caption11" class="search_name" style="left:215px; top:9px; width:98px; height:17px; ">수가코드 :</caption>
  604. <input id="ipt_srchspclcd" ref="/root/send/calcscorcd" class="input_search" style="left:321px; top:8px; width:110px; height:19px; "/>
  605. <select1 id="cmb_orddeptcd" ref="/root/send/orddeptcd" navindex="4" appearance="minimal" style="left:530px; top:8px; width:140px; height:19px; ">
  606. <choices>
  607. <itemset nodeset="/root/init/orddeptcd/orddeptcdlist">
  608. <label ref="nm"/>
  609. <value ref="cd"/>
  610. </itemset>
  611. </choices>
  612. </select1>
  613. <caption id="caption7" class="search_name" style="left:447px; top:9px; width:86px; height:17px; ">진료과 :</caption>
  614. <caption id="caption17" class="search_name" style="left:700px; top:9px; width:99px; height:17px; ">내원구분 :</caption>
  615. <select1 id="combo1" ref="/root/send/ioflag" appearance="minimal" style="left:800px; top:10px; width:100px; height:19px; ">
  616. <choices>
  617. <item>
  618. <label>전체</label>
  619. <value>A</value>
  620. </item>
  621. <item>
  622. <label>외래</label>
  623. <value>O</value>
  624. </item>
  625. <item>
  626. <label>입원</label>
  627. <value>I</value>
  628. </item>
  629. </choices>
  630. </select1>
  631. <select1 id="cmb_middle" ref="/root/send/middle" navindex="1" visibility="visible" appearance="minimal" style="left:530px; top:39px; width:110px; height:19px; ">
  632. <choices>
  633. <itemset nodeset="/root/init/hidden/">
  634. <label ref="earncls2nm"/>
  635. <value ref="earncls2"/>
  636. </itemset>
  637. </choices>
  638. <script type="javascript" ev:event="xforms-select">
  639. <![CDATA[
  640. cmb_small.choices.itemset.attribute("nodeset") = "/root/init/hidden/earnclslist[step='S' and earncls1='" + cmb_large.value + "' and earncls2='" + cmb_middle.value + "']";
  641. cmb_small.refresh();
  642. ]]>
  643. </script>
  644. </select1>
  645. <caption id="cp_middle" class="search_name" style="left:447px; top:40px; width:73px; height:17px; ">중분류 :</caption>
  646. <select1 id="cmb_small" ref="/root/send/small" navindex="1" visibility="visible" appearance="minimal" style="left:800px; top:40px; width:110px; height:19px; ">
  647. <choices>
  648. <itemset nodeset="/root/init/hidden/">
  649. <label ref="earncls3nm"/>
  650. <value ref="earncls3"/>
  651. </itemset>
  652. </choices>
  653. </select1>
  654. <caption id="cp_small" class="search_name" style="left:700px; top:40px; width:73px; height:17px; ">소분류 :</caption>
  655. <select1 id="cmb_large" ref="/root/send/large" navindex="1" visibility="visible" appearance="minimal" style="left:321px; top:39px; width:110px; height:19px; ">
  656. <choices>
  657. <itemset nodeset="/root/init/hidden/earnclslist[step='L']">
  658. <label ref="earncls1nm"/>
  659. <value ref="earncls1"/>
  660. </itemset>
  661. </choices>
  662. <script type="javascript" ev:event="xforms-select">
  663. <![CDATA[
  664. cmb_middle.choices.itemset.attribute("nodeset") = "/root/init/hidden";
  665. cmb_small.choices.itemset.attribute("nodeset") = "/root/init/hidden";
  666. cmb_middle.value = "";
  667. cmb_small.value = "";
  668. cmb_middle.choices.itemset.attribute("nodeset") = "/root/init/hidden/earnclslist[step='M' and earncls1='" + cmb_large.value + "']";
  669. cmb_middle.refresh();
  670. ]]>
  671. </script>
  672. </select1>
  673. <caption id="cp_large" class="search_name" style="left:215px; top:40px; width:99px; height:17px; ">처방대분류 :</caption>
  674. <select1 id="radio2" ref="/root/send/con1" overflow="visible" appearance="full" cols="5" rows="1" style="left:10px; top:20px; width:195px; height:15px; border-style:none; ">
  675. <choices>
  676. <item>
  677. <label>변경처방코드</label>
  678. <value>U</value>
  679. </item>
  680. <item>
  681. <label>원처방코드</label>
  682. <value>O</value>
  683. </item>
  684. </choices>
  685. </select1>
  686. </group>
  687. <button id="btn_delrow" class="btn2_letter3" style="left:1133px; top:82px; width:53px; height:19px; ">
  688. <caption>행삭제</caption>
  689. <script type="javascript" ev:event="DOMActivate">
  690. <![CDATA[
  691. /*
  692. if ( model.getValue("root/main/list1/listautd[ "+ grd_tstdiagrgst.row + "]/testgrup") == "9999" ) {
  693. messageBox("9999 (제외상병) 은 행삭제","E001");
  694. return;
  695. }
  696. */
  697. var row = grd_orgnprcplist.row;
  698. var rowstatus = grd_orgnprcplist.rowstatus(row);
  699. // 행추가를 한 행을 [행삭제]하면 행을 그리드에서 삭제, 기존에 존재하는 행을 [행삭제]하면 플래그를 D로 변경
  700. if (rowstatus == 1 || rowstatus == 3) {
  701. grd_orgnprcplist.deleteRow(row,true);
  702. } else {
  703. grd_orgnprcplist.rowstatus(row) = 4;
  704. }
  705. ]]>
  706. </script>
  707. </button>
  708. <button id="btn_addrow" class="btn2_letter3" style="left:1077px; top:82px; width:53px; height:19px; ">
  709. <caption>행추가</caption>
  710. <script type="javascript" ev:event="DOMActivate">
  711. <![CDATA[
  712. if ( model.getValue("/root/main/list1/updtlist[ "+ grd_updtprcplist.row + "]/orddeptcd") == "" ) { return; }
  713. grd_orgnprcplist.addRow(false,true);
  714. model.setValue("/root/main/list2/orgnllist["+grd_orgnprcplist.row+"]/seqno",model.getValue("/root/main/list1/updtlist["+grd_updtprcplist.row+"]/seqno"));
  715. model.setValue("/root/main/list2/orgnllist["+grd_orgnprcplist.row+"]/orddeptcd",model.getValue("/root/main/list1/updtlist["+grd_updtprcplist.row+"]/orddeptcd"));
  716. model.setValue("/root/main/list2/orgnllist["+grd_orgnprcplist.row+"]/calcscorcd",""); // 적용과 전체
  717. model.setValue("/root/main/list2/orgnllist["+grd_orgnprcplist.row+"]/edicd","");
  718. model.setValue("/root/main/list2/orgnllist["+grd_orgnprcplist.row+"]/hngnm","");
  719. grd_orgnprcplist.col = 1; // 추가된 row로 이동
  720. ]]>
  721. </script>
  722. </button>
  723. <datagrid id="grd_updtprcplist" nodeset="/root/main/list1/updtlist" caption="번호^수가코드^EDI코드^처방명^내원구분^적용과^처방대^처방중^처방소^처방대코드^처방중코드^처방소코드" colsep="^" colwidth="35, 100, 80, 188, 65, 100, 100, 65, 65, 65, 65, 65" dataheight="23" defaultrows="0" ellipsis="true" explorerbar="sortshow" frozencols="2" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:5px; top:110px; width:785px; height:630px; ">
  724. <col ref="seqno" visibility="hidden"/>
  725. <col imemode="disabled" ref="calcscorcd" type="inputbutton" _chartype="upper"/>
  726. <col imemode="disabled" ref="edicd" type="inputbutton" _chartype="upper"/>
  727. <col ref="hngnm" type="output"/>
  728. <col ref="ioflag" type="combo">
  729. <choices>
  730. <item>
  731. <label>전체</label>
  732. <value>A</value>
  733. </item>
  734. <item>
  735. <label>외래</label>
  736. <value>O</value>
  737. </item>
  738. <item>
  739. <label>입원</label>
  740. <value>I</value>
  741. </item>
  742. </choices>
  743. </col>
  744. <col disabled="true" ref="orddeptcd" type="combo">
  745. <choices>
  746. <itemset nodeset="/root/init/orddeptcd/orddeptcdlist">
  747. <label ref="nm"/>
  748. <value ref="cd"/>
  749. </itemset>
  750. </choices>
  751. </col>
  752. <col ref="earncls1nm"/>
  753. <col ref="earncls2nm"/>
  754. <col ref="earncls3nm"/>
  755. <col ref="earncls1" visibility="hidden"/>
  756. <col ref="earncls2" visibility="hidden"/>
  757. <col ref="earncls3" visibility="hidden"/>
  758. <script type="javascript" ev:event="onbuttonclick">
  759. <![CDATA[
  760. var col = grd_updtprcplist.col;
  761. var row = grd_updtprcplist.row;
  762. // 수가코드
  763. if (col == grd_updtprcplist.colRef("calcscorcd")) {
  764. fSrchUpdtSnglCalcscorNm();
  765. }
  766. // EDI코드
  767. if (col == grd_updtprcplist.colRef("edicd")) {
  768. fSrchUpdtEdiCdNm();
  769. }
  770. ]]>
  771. </script>
  772. <script type="javascript" ev:event="ondblclick">
  773. <![CDATA[
  774. fCallSubList();
  775. ]]>
  776. </script>
  777. </datagrid>
  778. <datagrid id="grd_orgnprcplist" nodeset="/root/main/list2/orgnllist" caption="번호^수가코드^EDI^처방명^생성번호^적용과" colsep="^" colwidth="35, 100, 90, 190, 100, 100" dataheight="23" defaultrows="0" ellipsis="true" explorerbar="sortshow" frozencols="2" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:793px; top:109px; width:402px; height:629px; ">
  779. <col ref="seqno" type="output" visibility="hidden"/>
  780. <col imemode="disabled" ref="calcscorcd" type="inputbutton" _chartype="upper"/>
  781. <col imemode="disabled" ref="edicd" type="inputbutton" _chartype="upper"/>
  782. <col ref="hngnm" type="output"/>
  783. <col ref="cretno" type="output" visibility="hidden"/>
  784. <col ref="orddeptcd" type="output" visibility="hidden"/>
  785. <script type="javascript" ev:event="onbuttonclick">
  786. <![CDATA[
  787. var col = grd_orgnprcplist.col;
  788. var row = grd_orgnprcplist.row;
  789. // 수가코드
  790. if (col == grd_orgnprcplist.colRef("calcscorcd")) {
  791. fSrchOrgnlSnglCalcscorNm();
  792. }
  793. // EDI코드
  794. if (col == grd_orgnprcplist.colRef("edicd")) {
  795. fSrchOrgnlEdiCdNm();
  796. }
  797. ]]>
  798. </script>
  799. </datagrid>
  800. <caption id="caption4" class="tit_2" style="left:10px; top:86px; width:162px; height:13px; ">변경처방목록</caption>
  801. <group id="grp_dept_select" visibility="hidden" style="left:435px; top:160px; width:360px; height:530px; border-color:#333333; border-style:solid; ">
  802. <datagrid id="grd_seldeptlist" nodeset="/root/hidden/seldeptlist" caption="선택^진료과코드^진료과명^기존선택" colsep="^" colwidth="56, 88, 162, 9, 100, 100, 100" mergecellsfixedrows="bycolrec" rowsep="|" style="left:14px; top:74px; width:330px; height:400px; border-color:#333333; ">
  803. <col ref="selyn" type="checkbox"/>
  804. <col ref="deptcd"/>
  805. <col ref="deptnm"/>
  806. <col ref="oldselyn" visibility="hidden"/>
  807. </datagrid>
  808. <caption id="caption15" class="tit_2" style="left:5px; top:5px; width:344px; height:13px; ">자동메모 진료과 선택 (그룹코드로 조회후 사용하세요)</caption>
  809. <button id="button6" class="btn4_letter2" style="left:281px; top:492px; width:56px; height:22px; ">
  810. <caption>취소</caption>
  811. <script type="javascript" ev:event="DOMActivate">
  812. <![CDATA[
  813. grp_dept_select.visible = false;
  814. //fSetDisplayDisable(false); // 화면 사용여부 제어
  815. ]]>
  816. </script>
  817. </button>
  818. <button id="button7" class="btn4_letter2" style="left:216px; top:492px; width:56px; height:22px; ">
  819. <caption>확인</caption>
  820. <script type="javascript" ev:event="DOMActivate">
  821. <![CDATA[
  822. if ( fSelectDeptChk() == false ) return;
  823. if ( messageBox("선택된 진료과로 선택하신 목록이 복사됩니다.", "Q003") != 6 ) return;
  824. fSelectDeptInput(); // 저장 데이타 생성
  825. grp_dept_select.visible = false;
  826. //fSetDisplayDisable(false); // 화면 사용여부 제어
  827. if (submit("TXPIB02702")) {
  828. messageBox("저장", "I002");
  829. }
  830. // 4. 재조회
  831. model.removeNodeset("/root/main/list2/orgnllist"); // 조회시 상병 그리드도 지운다.
  832. submit("TRPIB02701");
  833. model.refresh();
  834. ]]>
  835. </script>
  836. </button>
  837. <line id="line4" class="line_1" style="x1:4px; y1:20px; x2:354px; y2:20px; "/>
  838. <output id="opt_seldeptcd" ref="/root/hidden/seldeptbase/seqno" class="output_fix" appearance="output" style="left:14px; top:29px; width:75px; height:19px; color:#ff00ff; "/>
  839. <output id="opt_seldeptnm" ref="/root/hidden/seldeptbase/calcscorcd" class="output_fix" appearance="output" style="left:94px; top:29px; width:245px; height:19px; color:#ff00ff; "/>
  840. <button id="btn_selall" class="btn2_letter4" navindex="5" style="left:214px; top:51px; width:64px; height:19px; ">
  841. <caption>전체선택</caption>
  842. <script type="javascript" ev:event="DOMActivate">
  843. <![CDATA[
  844. for( i = grd_seldeptlist.fixedRows; i < grd_seldeptlist.rows ; i++ ) {
  845. model.setValue("/root/hidden/seldeptlist[" + i + "]/selyn","true");
  846. }
  847. model.refresh();
  848. ]]>
  849. </script>
  850. </button>
  851. <button id="btn_selno" class="btn2_letter4" navindex="5" style="left:279px; top:51px; width:64px; height:19px; ">
  852. <caption>전체취소</caption>
  853. <script type="javascript" ev:event="DOMActivate">
  854. <![CDATA[
  855. for( i = grd_seldeptlist.fixedRows; i < grd_seldeptlist.rows ; i++ ) {
  856. model.setValue("/root/hidden/seldeptlist[" + i + "]/selyn","false");
  857. }
  858. model.refresh();
  859. ]]>
  860. </script>
  861. </button>
  862. <output id="opt_seldeptorddeptcd" ref="/root/hidden/seldeptbase/orddeptcd" class="output_fix" visibility="hidden" appearance="output" style="left:14px; top:52px; width:145px; height:19px; color:#ff00ff; "/>
  863. </group>
  864. <button id="button3" class="btn2_letter3" style="left:681px; top:82px; width:53px; height:19px; ">
  865. <caption>행삭제</caption>
  866. <script type="javascript" ev:event="DOMActivate">
  867. <![CDATA[
  868. var row = grd_updtprcplist.row;
  869. var rowstatus = grd_updtprcplist.rowstatus(row);
  870. // 행추가를 한 행을 [행삭제]하면 행을 그리드에서 삭제, 기존에 존재하는 행을 [행삭제]하면 플래그를 D로 변경
  871. if (rowstatus == 1 || rowstatus == 3) {
  872. grd_updtprcplist.deleteRow(row,true);
  873. } else {
  874. grd_updtprcplist.rowstatus(row) = 4;
  875. }
  876. ]]>
  877. </script>
  878. </button>
  879. <button id="button4" class="btn2_letter3" style="left:625px; top:82px; width:53px; height:19px; ">
  880. <caption>행추가</caption>
  881. <script type="javascript" ev:event="DOMActivate">
  882. <![CDATA[
  883. /*
  884. submit("TRPIB02702");
  885. var maxseqno = model.getValue("/root/maxgrup/maxno/maxseqno");
  886. */
  887. //model.alert(maxtestgrup);
  888. grd_updtprcplist.addRow(false);
  889. //model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/seqno", maxseqno);
  890. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/calcscorcd","-");
  891. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/edicd","-");
  892. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/hngnm","-");
  893. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/ioflag","O");
  894. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/orddeptcd","-");
  895. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/earncls1","-");
  896. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/earncls2","-");
  897. model.setValue("/root/main/list1/updtlist["+ grd_updtprcplist.row +"]/earncls3","-");
  898. grd_updtprcplist.col = 1; // 추가된 row로 이동
  899. ]]>
  900. </script>
  901. </button>
  902. <caption id="caption1" class="tit_2" style="left:795px; top:85px; width:162px; height:13px; ">원처방목록</caption>
  903. <line id="line1" class="line_1" style="x1:5px; y1:103px; x2:790px; y2:103px; "/>
  904. <line id="line5" class="line_1" style="x1:794px; y1:103px; x2:1194px; y2:103px; "/>
  905. <button id="button5" class="btn2_letter5" navindex="5" style="left:547px; top:82px; width:75px; height:19px; ">
  906. <caption>진료과선택</caption>
  907. <script type="javascript" ev:event="DOMActivate">
  908. <![CDATA[
  909. if ( model.getValue("/root/main/list1/updtlist[ "+ grd_updtprcplist.row + "]/orddeptcd") == "" ) { return; }
  910. var gupdtdata = getGridUpdateData(grd_updtprcplist);
  911. var mupdtdata = getGridUpdateData(grd_orgnprcplist);
  912. if (gupdtdata != "" || mupdtdata != "") {
  913. messageBox("작업중인 내역을 저장후","I008");
  914. return false;
  915. }
  916. fSelectDeptInit();
  917. grp_dept_select.attribute("top") = 110;
  918. grp_dept_select.attribute("left") = 380;
  919. grd_seldeptlist.row = 1;
  920. grp_dept_select.visible = true;
  921. //fSetDisplayDisable(true); // 화면 사용여부 제어
  922. ]]>
  923. </script>
  924. </button>
  925. </group>
  926. <group id="group4" scroll="test" style="left:0px; top:755px; width:1194px; height:27px; ">
  927. <line id="line23" class="line_6" style="x1:0px; y1:0px; x2:700px; y2:0px; "/>
  928. <button id="btn_init" class="btn4_letter3" style="left:1126px; top:4px; width:68px; height:22px; ">
  929. <caption>초기화</caption>
  930. <script type="javascript" ev:event="DOMActivate">
  931. <![CDATA[
  932. fInitialize();
  933. ]]>
  934. </script>
  935. </button>
  936. <button id="btn_save" class="btn4_letter2" style="left:1068px; top:4px; width:56px; height:22px; ">
  937. <caption>저장</caption>
  938. <script type="javascript" ev:event="DOMActivate">
  939. <![CDATA[
  940. // 1. 저장데이터 유효성 체크
  941. if (!fCheckSaveData()) return;
  942. // 2. 저장하시겠습니까?
  943. var rtn = messageBox("단순영상체감 기준정보를", "Q002");
  944. if (rtn != 6) {
  945. return;
  946. }
  947. // 3. 저장
  948. model.setValue("/root/send/updatedata/updtlist",grd_updtprcplist.getupdatedata());
  949. model.setValue("/root/send/updatedata/orgnllist",grd_orgnprcplist.getupdatedata());
  950. /*
  951. model.alert(model.getValue("/root/send/updatedata/gruplist"));
  952. return;
  953. */
  954. if (submit("TXPIB02701")) {
  955. messageBox("저장", "I002");
  956. }
  957. // 4. 재조회
  958. model.removeNodeset("/root/main/list2/orgnllist"); // 조회시 처방 그리드도 지운다
  959. submit("TRPIB02701");
  960. model.refresh();
  961. // model.removeNodeset("/root/main/list2/listmech");
  962. // model.removeNodeset("/root/main/list2/listdiag");
  963. ]]>
  964. </script>
  965. </button>
  966. </group>
  967. </xhtml:body>
  968. </xhtml:html>